ชุดข้อมูล: ชุดข้อมูลที่ไม่สมดุล

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

ตารางต่อไปนี้แสดงชื่อและช่วงที่ได้รับการยอมรับโดยทั่วไปสำหรับความไม่สมดุลในระดับต่างๆ

เปอร์เซ็นต์ของข้อมูลที่อยู่ในคลาสที่น้อย ระดับความไม่สมดุล
20-40% ของชุดข้อมูล ผ่อนปรน
1-20% ของชุดข้อมูล ปานกลาง
<1% ของชุดข้อมูล สูงสุด

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

รูปที่ 5 แผนภูมิแท่งที่มี 2 แท่ง แท่งหนึ่งแสดงชั้นเรียนเชิงลบประมาณ 200 ชั้นเรียน ส่วนอีกแท่งแสดงชั้นเรียนเชิงบวก 1 ชั้นเรียน
รูปที่ 5 ชุดข้อมูลที่ไม่สมดุลอย่างมาก

 

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

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

การลดขนาดและการเพิ่มน้ำหนัก

วิธีจัดการชุดข้อมูลที่ไม่สมดุลอย่างหนึ่งคือการลดขนาดตัวอย่างและเพิ่มน้ำหนักของคลาสส่วนใหญ่ คําจํากัดความของคําใหม่ 2 คําดังกล่าวมีดังนี้

ขั้นตอนที่ 1: ดาวน์แซมเปิลคลาสส่วนใหญ่ พิจารณาชุดข้อมูลไวรัสที่แสดงในรูปที่ 5 ซึ่งมีสัดส่วนป้ายกำกับบวก 1 รายการต่อป้ายกำกับลบ 200 รายการ การลดขนาดลง 10 เท่าช่วยเพิ่มความสมดุลเป็น 1 รายการเชิงบวกต่อ 20 รายการเชิงลบ (5%) แม้ว่าชุดการฝึกที่ได้จะยังคงไม่สมดุลในระดับปานกลาง แต่สัดส่วนระหว่างตัวอย่างเชิงบวกกับเชิงลบนั้นดีกว่าสัดส่วนเดิมที่ไม่สมดุลอย่างมาก (0.5%) มาก

รูปที่ 6 แผนภูมิแท่งที่มี 2 แท่ง แท่งหนึ่งแสดงชั้นเรียนเชิงลบ 20 ชั้นเรียน ส่วนอีกแท่งแสดงชั้นเรียนเชิงบวก 1 ชั้นเรียน
รูปที่ 6 การลดขนาด

 

ขั้นตอนที่ 2: เพิ่มน้ำหนักของคลาสที่ลดขนาด: เพิ่มตัวอย่างน้ำหนักลงในคลาสที่ลดขนาด หลังจากลดขนาดเป็น 10 เท่า น้ำหนักตัวอย่างควรเป็น 10 (ใช่ นี่อาจฟังดูขัดกับสัญชาตญาณ แต่เราจะอธิบายเหตุผลในภายหลัง)

รูปที่ 7 แผนภาพ 2 ขั้นตอนของการลดขนาดการสุ่มตัวอย่างและการถ่วงน้ำหนัก
            ขั้นตอนที่ 1: การลดขนาดจะดึงตัวอย่างแบบสุ่มจากคลาสส่วนใหญ่ ขั้นตอนที่ 2: การเพิ่มน้ำหนักจะเพิ่มน้ำหนักให้กับตัวอย่างที่ลดขนาด
รูปที่ 7 การเพิ่มน้ำหนัก

 

คําว่า weight ไม่ได้หมายถึงพารามิเตอร์โมเดล (เช่น w1 หรือ w2) ในที่นี้ weight หมายถึงน้ำหนักตัวอย่าง ซึ่งจะเพิ่มความสำคัญของตัวอย่างแต่ละรายการในระหว่างการฝึก ตัวอย่างที่มีน้ำหนัก 10 หมายความว่าโมเดลจะถือว่าตัวอย่างนั้นสำคัญกว่า (เมื่อคํานวณการสูญเสีย) 10 เท่าเมื่อเทียบกับตัวอย่างที่มีน้ำหนัก 1

weight ควรเท่ากับปัจจัยที่คุณใช้ลดขนาด ดังนี้

\[\text{ \{example weight\} = \{original example weight\} × \{downsampling factor\} }\]

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

ปรับอัตราส่วนให้สมดุล

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

  • ขนาดกลุ่ม
  • อัตราส่วนความไม่สมดุล
  • จํานวนตัวอย่างในชุดการฝึก

โดยแต่ละกลุ่มควรมีตัวอย่างของคลาสที่ไม่ใช่ส่วนมากหลายรายการ กลุ่มที่ไม่มีคลาสของชนกลุ่มน้อยเพียงพอจะทําให้การฝึกมีประสิทธิภาพต่ำมาก ขนาดกลุ่มควรมากกว่าอัตราส่วนความไม่สมดุลหลายเท่า เช่น หากอัตราส่วนความไม่สมดุลคือ 100:1 ขนาดกลุ่มควรเป็นอย่างน้อย 500

แบบฝึกหัด: ทดสอบความเข้าใจ

ลองพิจารณาสถานการณ์ต่อไปนี้

  • ชุดข้อมูลการฝึกมีตัวอย่างมากกว่า 1 พันล้านรายการ
  • ขนาดกลุ่มคือ 128
  • อัตราส่วนความไม่สมดุลคือ 100:1 ชุดการฝึกจึงแบ่งออกเป็นดังนี้
    • ตัวอย่างคลาสส่วนใหญ่ประมาณ 1 พันล้านรายการ
    • ตัวอย่างของชนกลุ่มน้อยประมาณ 10 ล้านรายการ
ข้อความใดต่อไปนี้เป็นจริง
การเพิ่มขนาดกลุ่มเป็น 1,024 รายการจะช่วยปรับปรุงโมเดลที่ได้
เมื่อใช้ขนาดกลุ่ม 1,024 กลุ่มแต่ละกลุ่มจะมีตัวอย่างคลาสที่ไม่ใช่ส่วนมากประมาณ 10 รายการ ซึ่งจะช่วยฝึกโมเดลให้ดีขึ้นได้อย่างมาก
การรักษาขนาดกลุ่มที่ 128 แต่ลดขนาดการสุ่มตัวอย่าง (และเพิ่มน้ำหนัก) เป็น 20:1 จะปรับปรุงโมเดลที่ได้
การลดขนาดทำให้แต่ละกลุ่ม 128 รายการมีตัวอย่างคลาสที่น้อยประมาณ 21 รายการ ซึ่งน่าจะเพียงพอสำหรับการฝึกโมเดลที่มีประโยชน์ โปรดทราบว่าการสุ่มตัวอย่างลงจะลดจํานวนตัวอย่างในชุดการฝึกจากกว่า 1 พันล้านรายการเหลือประมาณ 60 ล้านรายการ
ไฮเปอร์พารามิเตอร์ปัจจุบันก็ใช้ได้
เมื่อใช้ขนาดกลุ่ม 128 กลุ่มแต่ละกลุ่มจะมีตัวอย่างคลาสที่ไม่ใช่ส่วนมากประมาณ 1 รายการ ซึ่งอาจไม่เพียงพอที่จะฝึกโมเดลที่มีประโยชน์