สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler

ในโพสต์นี้ เราจะแนะนำเทคนิคการสุ่มตัวอย่างสองแบบใน Amazon SageMaker ข้อมูล Wrangler เพื่อให้คุณสามารถสร้างเวิร์กโฟลว์การประมวลผลสำหรับข้อมูลของคุณได้อย่างรวดเร็ว เราครอบคลุมทั้งเทคนิคการสุ่มตัวอย่างและเทคนิคการสุ่มตัวอย่างแบบแบ่งชั้นเพื่อช่วยคุณสุ่มตัวอย่างข้อมูลตามความต้องการเฉพาะของคุณ

Data Wrangler ช่วยลดเวลาในการรวบรวมและเตรียมข้อมูลสำหรับการเรียนรู้ของเครื่อง (ML) จากสัปดาห์เหลือเป็นนาที คุณสามารถลดความซับซ้อนของกระบวนการเตรียมข้อมูลและวิศวกรรมคุณลักษณะ และดำเนินการแต่ละขั้นตอนของเวิร์กโฟลว์การเตรียมข้อมูล ซึ่งรวมถึงการเลือกข้อมูล การล้างข้อมูล การสำรวจ และการแสดงภาพ จากอินเทอร์เฟซภาพเดียว ด้วยเครื่องมือการเลือกข้อมูลของ Data Wrangler คุณสามารถเลือกข้อมูลที่คุณต้องการจากแหล่งข้อมูลต่างๆ และนำเข้าได้ด้วยคลิกเดียว Data Wrangler มีการแปลงข้อมูลในตัวมากกว่า 300 แบบ คุณจึงสามารถทำให้เป็นมาตรฐาน แปลง และรวมคุณลักษณะต่างๆ ได้อย่างรวดเร็วโดยไม่ต้องเขียนโค้ดใดๆ ด้วยเทมเพลตการแสดงภาพของ Data Wrangler คุณสามารถดูตัวอย่างและตรวจสอบได้อย่างรวดเร็วว่าการแปลงเหล่านี้เสร็จสมบูรณ์ตามที่คุณตั้งใจไว้โดยการดูใน สตูดิโอ Amazon SageMaker, สภาพแวดล้อมการพัฒนาแบบครบวงจร (IDE) ตัวแรกสำหรับ ML หลังจากที่เตรียมข้อมูลของคุณแล้ว คุณสามารถสร้างเวิร์กโฟลว์ ML แบบอัตโนมัติทั้งหมดด้วย ท่อส่ง Amazon SageMaker และเก็บไว้ใช้ซ้ำใน Amazon SageMaker ฟีเจอร์สโตร์.

การสุ่มตัวอย่างคืออะไรและจะช่วยได้อย่างไร

ในการวิเคราะห์ทางสถิติ ชุดการสังเกตทั้งหมดเรียกว่า ประชากร. เมื่อทำงานกับข้อมูล มักจะไม่มีความเป็นไปได้ในการคำนวณที่จะวัดทุกการสังเกตจากประชากร การสุ่มตัวอย่างทางสถิติ เป็นขั้นตอนที่ช่วยให้คุณเข้าใจข้อมูลของคุณโดยการเลือกชุดย่อยจากประชากร

การสุ่มตัวอย่างนำเสนอโซลูชันที่ใช้งานได้จริงซึ่งเสียสละความแม่นยำบางส่วนเพื่อประโยชน์ในการใช้งานจริงและความสะดวก เพื่อให้แน่ใจว่ากลุ่มตัวอย่างของคุณเป็นตัวแทนที่ดีของประชากรโดยรวม คุณสามารถใช้กลยุทธ์การสุ่มตัวอย่างได้ Data Wrangler รองรับสองกลยุทธ์ที่พบบ่อยที่สุด: การสุ่มตัวอย่าง และ การสุ่มตัวอย่างแบบแบ่งชั้น.

การสุ่มตัวอย่าง

หากคุณมีชุดข้อมูลขนาดใหญ่ การทดลองกับชุดข้อมูลนั้นอาจใช้เวลานาน Data Wrangler มีการสุ่มตัวอย่างเพื่อให้คุณสามารถประมวลผลและแสดงข้อมูลของคุณได้อย่างมีประสิทธิภาพ ตัวอย่างเช่น คุณอาจต้องการคำนวณจำนวนการซื้อโดยเฉลี่ยสำหรับลูกค้าภายในกรอบเวลาหนึ่ง หรือคุณอาจต้องการคำนวณอัตราการออกจากบัญชีของสมาชิก คุณสามารถใช้ตัวอย่างแบบสุ่มเพื่อแสดงภาพการประมาณค่าเมตริกเหล่านี้

ตัวอย่างสุ่มจากชุดข้อมูลของคุณจะถูกเลือกเพื่อให้แต่ละองค์ประกอบมีความน่าจะเป็นที่จะถูกเลือกเท่ากัน การดำเนินการนี้ดำเนินการในลักษณะที่มีประสิทธิภาพซึ่งเหมาะสมกับชุดข้อมูลขนาดใหญ่ ดังนั้นขนาดตัวอย่างที่ส่งคืนจะเท่ากับขนาดที่ร้องขอโดยประมาณ และไม่จำเป็นต้องเท่ากับขนาดที่ร้องขอ

คุณสามารถใช้การสุ่มตัวอย่างหากต้องการทำการคำนวณโดยประมาณอย่างรวดเร็วเพื่อทำความเข้าใจชุดข้อมูลของคุณ เมื่อขนาดกลุ่มตัวอย่างมีขนาดใหญ่ขึ้น กลุ่มตัวอย่างแบบสุ่มสามารถประมาณชุดข้อมูลทั้งหมดได้ดีกว่า แต่ถ้าคุณไม่รวมจุดข้อมูลทั้งหมด ตัวอย่างสุ่มของคุณอาจไม่รวมค่าผิดปกติและกรณีขอบทั้งหมด หากคุณต้องการเตรียมชุดข้อมูลทั้งหมดแบบโต้ตอบ คุณสามารถเปลี่ยนไปใช้ประเภทอินสแตนซ์ที่ใหญ่ขึ้นได้

ตามกฎทั่วไป ข้อผิดพลาดในการสุ่มตัวอย่างในการคำนวณค่าเฉลี่ยประชากรโดยใช้กลุ่มตัวอย่างแบบสุ่มมีแนวโน้มที่ 0 เมื่อกลุ่มตัวอย่างมีขนาดใหญ่ขึ้น เมื่อขนาดกลุ่มตัวอย่างเพิ่มขึ้น ข้อผิดพลาดจะลดลงเมื่อค่าผกผันของสแควร์รูทของขนาดกลุ่มตัวอย่าง การนำกลับบ้าน ยิ่งกลุ่มตัวอย่างมาก การประมาณการก็จะยิ่งดีขึ้น

การสุ่มตัวอย่างแบบแบ่งชั้น

ในบางกรณี ประชากรของคุณสามารถแบ่งออกเป็นชั้นหรือกลุ่มที่ไม่เกิดร่วมกัน เช่น ที่ตั้งทางภูมิศาสตร์สำหรับที่อยู่ ปีที่พิมพ์เพลง หรือวงเล็บภาษีสำหรับรายได้ การสุ่มตัวอย่างแบบสุ่มเป็นเทคนิคการสุ่มตัวอย่างที่ได้รับความนิยมมากที่สุด แต่ถ้าชั้นบางกลุ่มมีความผิดปกติในประชากรของคุณ คุณสามารถใช้การสุ่มตัวอย่างแบบแบ่งชั้นใน Data Wrangler เพื่อให้แน่ใจว่าแต่ละชั้นจะแสดงตามสัดส่วนในกลุ่มตัวอย่างของคุณ ซึ่งอาจเป็นประโยชน์ในการลดข้อผิดพลาดในการสุ่มตัวอย่าง และเพื่อให้แน่ใจว่าคุณกำลังจับภาพกรณีขอบระหว่างการทดสอบของคุณ

ในโลกแห่งความเป็นจริง ธุรกรรมบัตรเครดิตที่เป็นการฉ้อโกงเป็นเหตุการณ์ที่เกิดขึ้นได้ยาก และโดยทั่วไปแล้วจะประกอบด้วยข้อมูลของคุณน้อยกว่า 1% ถ้าเราสุ่มตัวอย่าง ไม่ใช่เรื่องแปลกที่กลุ่มตัวอย่างจะมีธุรกรรมฉ้อโกงน้อยมากหรือไม่มีเลย ด้วยเหตุนี้ เมื่อฝึกแบบจำลอง เราจะมีตัวอย่างที่เป็นการฉ้อโกงน้อยเกินไปที่จะเรียนรู้แบบจำลองที่แม่นยำ เราสามารถใช้การสุ่มตัวอย่างแบบแบ่งชั้นเพื่อให้แน่ใจว่าเรามีการแสดงธุรกรรมฉ้อโกงตามสัดส่วน

ในการสุ่มตัวอย่างแบบแบ่งชั้น ขนาดของแต่ละชั้นในกลุ่มตัวอย่างจะเป็นสัดส่วนกับขนาดของชั้นในประชากร วิธีนี้ใช้ได้ผลโดยการแบ่งข้อมูลของคุณออกเป็นชั้นตามคอลัมน์ที่ระบุ เลือกตัวอย่างสุ่มจากแต่ละชั้นที่มีสัดส่วนที่ถูกต้อง และรวมตัวอย่างเหล่านั้นเข้าเป็นกลุ่มตัวอย่างแบบแบ่งชั้นของประชากร

การสุ่มตัวอย่างแบบแบ่งชั้นเป็นเทคนิคที่มีประโยชน์เมื่อคุณต้องการทำความเข้าใจว่ากลุ่มต่างๆ ในข้อมูลของคุณเปรียบเทียบกันอย่างไร และคุณต้องการให้แน่ใจว่าคุณมีการนำเสนอที่เหมาะสมจากแต่ละกลุ่ม

การสุ่มตัวอย่างเมื่อนำเข้าจาก Amazon S3

ในส่วนนี้ เราใช้การสุ่มตัวอย่างกับชุดข้อมูลที่ประกอบด้วยเหตุการณ์ที่เป็นการฉ้อโกงและไม่ใช่การฉ้อโกงจากระบบตรวจจับการฉ้อโกงของเรา คุณสามารถ ดาวน์โหลด ชุดข้อมูลที่จะตามมาด้วยโพสต์นี้ (CC 4.0 ใบอนุญาตแสดงที่มาระหว่างประเทศ).

ในขณะที่เขียนนี้ คุณสามารถนำเข้าชุดข้อมูลจาก บริการจัดเก็บข้อมูลอย่างง่ายของ Amazon (อเมซอน เอส3) อเมซอน อาเธน่า, อเมซอน Redshiftและเกล็ดหิมะ ชุดข้อมูลของเรามีขนาดใหญ่มาก มี 1 ล้านแถว ในกรณีนี้ เราต้องการสุ่มตัวอย่าง 1,0000 แถวในการนำเข้าจาก Amazon S3 สำหรับการทดลองเชิงโต้ตอบภายใน Data Wrangler

  1. เปิด SageMaker Studio และสร้างโฟลว์ Data Wrangler ใหม่
  2. ภายใต้ นำเข้าข้อมูลเลือก Amazon S3.
    สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.
  3. เลือกชุดข้อมูลที่จะนำเข้า
  4. ตัว Vortex Indicator ได้ถูกนำเสนอลงในนิตยสาร รายละเอียด ให้ระบุชื่อชุดข้อมูลและประเภทไฟล์ของคุณ
  5. สำหรับ การสุ่มตัวอย่างเลือก สุ่ม.
  6. สำหรับ ขนาดตัวอย่างป้อน 10000.
  7. Choose นำเข้า เพื่อโหลดชุดข้อมูลลงใน Data Wrangler
    สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

คุณสามารถเห็นภาพสองขั้นตอนที่แตกต่างกันบนหน้าโฟลว์ข้อมูลใน Data Wrangler ขั้นตอนแรกระบุการโหลดชุดข้อมูลตัวอย่างตามกลยุทธ์การสุ่มตัวอย่างที่คุณกำหนด หลังจากที่โหลดข้อมูลแล้ว Data Wrangler จะทำการตรวจจับประเภทข้อมูลสำหรับแต่ละคอลัมน์ในชุดข้อมูลโดยอัตโนมัติ ขั้นตอนนี้จะเพิ่มโดยค่าเริ่มต้นสำหรับชุดข้อมูลทั้งหมด

ตอนนี้คุณสามารถตรวจสอบข้อมูลสุ่มตัวอย่างใน Data Wrangler โดยเพิ่มการวิเคราะห์

  1. เลือกเครื่องหมายบวกถัดจาก ประเภทข้อมูล และเลือก การวิเคราะห์.
    สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.
  2. สำหรับ ประเภทการวิเคราะห์¸ เลือก พล็อตกระจาย.
  3. Choose ความสำเร็จ_1 และ ความสำเร็จ_2 ส่วน แกน X และ แกน Yตามลำดับ
  4. สำหรับ สีโดยเลือก is_fraud.

เมื่อคุณพอใจกับชุดข้อมูลแล้ว ให้ดำเนินการแปลงข้อมูลเพิ่มเติมตามความต้องการทางธุรกิจของคุณเพื่อเตรียมข้อมูลของคุณสำหรับ ML

ในภาพหน้าจอต่อไปนี้ เราสามารถสังเกตธุรกรรมที่เป็นการฉ้อโกง (สีน้ำเงินเข้ม) และไม่เป็นการฉ้อโกง (สีน้ำเงินอ่อน) ในการวิเคราะห์ของเรา
สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ในหัวข้อถัดไป เราจะหารือเกี่ยวกับการใช้การสุ่มตัวอย่างแบบแบ่งชั้นเพื่อให้แน่ใจว่ากรณีการฉ้อโกงได้รับการคัดเลือกตามสัดส่วน

การสุ่มตัวอย่างแบบแบ่งชั้นด้วยการแปลง

Data Wrangler ให้คุณสุ่มตัวอย่างในการนำเข้า รวมถึงการสุ่มตัวอย่างผ่านการแปลง ในส่วนนี้ เราจะพูดถึงการใช้การสุ่มตัวอย่างแบบแบ่งชั้นผ่านการแปลงหลังจากที่คุณนำเข้าชุดข้อมูลของคุณไปยัง Data Wrangler แล้ว

  1. เพื่อเริ่มการสุ่มตัวอย่าง บน การไหลของข้อมูล แท็บ เลือกเครื่องหมายบวกถัดจากชุดข้อมูลที่นำเข้าแล้วเลือก เพิ่มการแปลง.
    สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ในขณะที่เขียนนี้ Data Wrangler ให้มากกว่า 300 การแปลงในตัว. นอกเหนือจากการแปลงในตัวแล้ว คุณยังสามารถเขียนการแปลงแบบกำหนดเองของคุณใน Pandas หรือ PySpark

  1. จาก เพิ่มการแปลง รายการให้เลือก การสุ่มตัวอย่าง.
    สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ตอนนี้คุณสามารถใช้กลยุทธ์สุ่มตัวอย่างที่แตกต่างกันสามแบบ: จำกัด สุ่ม และแบ่งชั้น
สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

  1. สำหรับ วิธีการเก็บตัวอย่างเลือก แบ่งชั้น.
  2. ใช้ is_fraud คอลัมน์เป็นคอลัมน์แบ่งชั้น
  3. Choose ดูตัวอย่าง เพื่อดูตัวอย่างการแปลง จากนั้นเลือก เพิ่ม เพื่อเพิ่มการเปลี่ยนแปลงนี้เป็นขั้นตอนในสูตรการแปลงของคุณ
    สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

กระแสข้อมูลของคุณสะท้อนถึงขั้นตอนการสุ่มตัวอย่างที่เพิ่มเข้ามา
สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

ตอนนี้ เราสามารถตรวจทานข้อมูลสุ่มตัวอย่างโดยเพิ่มการวิเคราะห์

  1. เลือกเครื่องหมายบวกแล้วเลือก การวิเคราะห์.
  2. สำหรับ ประเภทการวิเคราะห์¸ เลือก Histogram.
  3. Choose is_fraud สำหรับทั้ง แกน X และ สีโดย.
  4. Choose ดูตัวอย่าง.

ในภาพหน้าจอต่อไปนี้ เราสามารถสังเกตรายละเอียดของคดีฉ้อโกง (สีน้ำเงินเข้ม) และไม่ใช่การฉ้อโกง (สีน้ำเงินอ่อน) ที่เลือกผ่านการสุ่มตัวอย่างแบบแบ่งชั้นในสัดส่วนที่ถูกต้องของการฉ้อโกง 20% และไม่มีการฉ้อโกง 80%

สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.

สรุป

จำเป็นต้องสุ่มตัวอย่างข้อมูลอย่างถูกต้องเมื่อทำงานกับชุดข้อมูลขนาดใหญ่มาก และเลือกกลยุทธ์การสุ่มตัวอย่างที่เหมาะสมเพื่อตอบสนองความต้องการทางธุรกิจของคุณ ประสิทธิผลของการสุ่มตัวอย่างของคุณขึ้นอยู่กับปัจจัยต่างๆ รวมถึงผลลัพธ์ทางธุรกิจ ความพร้อมใช้งานของข้อมูล และการกระจาย ในโพสต์นี้ เราได้กล่าวถึงวิธีใช้ Data Wrangler และกลยุทธ์การสุ่มตัวอย่างในตัวเพื่อเตรียมข้อมูลของคุณ

คุณสามารถเริ่มใช้ความสามารถนี้ได้แล้ววันนี้ในทุกภูมิภาคที่ SageMaker Studio พร้อมให้บริการ ในการเริ่มต้น โปรดไปที่ เตรียมข้อมูล ML ด้วย Amazon SageMaker Data Wrangler.

กิตติกรรมประกาศ

ผู้เขียนขอขอบคุณ Jonathan Chung (นักวิทยาศาสตร์ประยุกต์) สำหรับการทบทวนและข้อเสนอแนะอันมีค่าเกี่ยวกับบทความนี้


เกี่ยวกับผู้เขียน

สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.เบนแฮร์ริส เป็นวิศวกรซอฟต์แวร์ที่มีประสบการณ์ในการออกแบบ ปรับใช้ และบำรุงรักษาไปป์ไลน์ข้อมูลที่ปรับขนาดได้และโซลูชันการเรียนรู้ของเครื่องในโดเมนต่างๆ

สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.วิชาล กาปูร์ เป็นนักวิทยาศาสตร์ประยุกต์อาวุโสที่มี AWS AI เขาหลงใหลในการช่วยให้ลูกค้าเข้าใจข้อมูลของพวกเขาใน Data Wrangler ในเวลาว่าง เขาปั่นจักรยานเสือภูเขา เล่นสโนว์บอร์ด และใช้เวลาอยู่กับครอบครัว

สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.มีนคชีสันดาราม ทันดาวารายัน เป็นผู้เชี่ยวชาญด้าน AI/ML อาวุโสของ AWS เขาช่วยบัญชีเชิงกลยุทธ์ไฮเทคในการเดินทาง AI และ ML เขาหลงใหลเกี่ยวกับ AI ที่ขับเคลื่อนด้วยข้อมูลเป็นอย่างมาก

สร้างตัวอย่างข้อมูลแบบสุ่มและแบ่งชั้นด้วย Amazon SageMaker Data Wrangler PlatoBlockchain Data Intelligence ค้นหาแนวตั้ง AI.อาจาย ชาร์มา เป็น Principal Product Manager สำหรับ Amazon SageMaker ซึ่งเขาเน้นที่ Data Wrangler ซึ่งเป็นเครื่องมือการเตรียมข้อมูลด้วยภาพสำหรับนักวิทยาศาสตร์ด้านข้อมูล ก่อนหน้าร่วมงานกับ AWS Ajai เป็นผู้เชี่ยวชาญด้าน Data Science Expert ที่ McKinsey and Company ซึ่งเขาเป็นผู้นำการนัดหมายที่เน้น ML ให้กับบริษัทการเงินและประกันภัยชั้นนำทั่วโลก Ajai หลงใหลเกี่ยวกับวิทยาศาสตร์ข้อมูลและชอบที่จะสำรวจอัลกอริธึมล่าสุดและเทคนิคการเรียนรู้ของเครื่อง

ประทับเวลา:

เพิ่มเติมจาก AWS Machine Learning AWS