การจัดประเภทแบบหลายคลาส
หมายเหตุ
ดูแท็บ ข้อความและรูปภาพ สําหรับรายละเอียดเพิ่มเติม!
การจัดประเภทแบบหลายคลาส ใช้เพื่อคาดเดาว่าคลาสใดที่เป็นไปได้หลายชั้นที่มีการสังเกต เป็นเทคนิคการเรียนรู้ของเครื่องที่ได้รับการดูแลจะเป็นไปตามรถไฟวนซ้ําเดียวกัน ตรวจสอบและประเมิน กระบวนการเป็นการถดถอยและการจําแนกประเภทไบนารีซึ่งชุดย่อยของข้อมูลการฝึกจะถูกเก็บไว้เพื่อตรวจสอบแบบจําลองที่ได้รับการฝึก
ตัวอย่าง - การจัดประเภทแบบหลายประเภท
อัลกอริทึมการจัดประเภทแบบหลายคลาสจะใช้ในการคํานวณค่าความน่าจะเป็นสําหรับป้ายชื่อหลายชั้น ซึ่งทําให้สามารถคาดการณ์ระดับชั้น ที่น่าจะเป็นมากที่สุด สําหรับการสังเกตการณ์ที่กําหนด
ลองสํารวจตัวอย่างที่เรามีข้อสังเกตบางอย่างของนกเพนกวินซึ่งความยาวครีบ (x) ของนกเพนกวินแต่ละตัวถูกบันทึกไว้ สําหรับการสังเกตการณ์แต่ละครั้งข้อมูลรวมถึงนกเพนกวินสายพันธุ์ (y) ซึ่งมีการเข้ารหัสดังนี้:
- 0: อเดลี่
- 1: เจนทู
- 2: ชินสเตรป
หมายเหตุ
เช่นเดียวกับตัวอย่างก่อนหน้านี้ในโมดูลนี้ สถานการณ์จริงจะรวมค่าคุณลักษณะ (x) หลายค่า เราจะใช้คุณลักษณะเดียวเพื่อทําให้สิ่งต่างๆ เป็นเรื่องง่าย
|
|
|---|---|
| ความยาวของ Flipper (x) | สปีชี่ส์ (y) |
| 167 | 0 |
| 172 | 0 |
| 225 | 2 |
| 197 | 1 |
| 189 | 1 |
| 232 | 2 |
| 158 | 0 |
การฝึกแบบจําลองการจัดประเภทแบบหลายคลาส
ในการฝึกแบบจําลองการจัดประเภทแบบหลายคลาส เราจําเป็นต้องใช้อัลกอริทึมเพื่อให้พอดีกับข้อมูลการทดสอบการใช้งานกับฟังก์ชันที่คํานวณค่าความน่าจะเป็นสําหรับแต่ละคลาส มีอัลกอริทึมสองชนิดที่คุณสามารถใช้เพื่อทําสิ่งนี้ได้:
- อัลกอริทึมหนึ่ง vs-Rest (OvR)
- อัลกอริทึมแบบหลายมิติ
อัลกอริทึมหนึ่ง vs-Rest (OvR)
อัลกอริทึมหนึ่ง vs-Rest จะฝึกฟังก์ชันการจัดประเภทไบนารีสําหรับแต่ละคลาส โดยแต่ละคลาสจะคํานวณความน่าจะเป็นที่การสังเกตการณ์เป็นตัวอย่างของคลาสเป้าหมาย แต่ละฟังก์ชันจะคํานวณความน่าจะเป็นของการสังเกตการณ์เป็นคลาสเฉพาะเมื่อเทียบกับคลาสอื่น ๆ สําหรับแบบจําลองการจัดประเภทนกเพนกวินชนิดนี้ อัลกอริทึมจะสร้างฟังก์ชันการจัดประเภทไบนารีสามอย่างเป็นหลัก:
- f0(x) = P(y=0 | x)
- f1(x) = P(y=1 | x)
- f2(x) = P(y=2 | x)
อัลกอริทึมแต่ละอันจะสร้างฟังก์ชัน sigmoid ที่คํานวณค่าความน่าจะเป็นระหว่าง 0.0 และ 1.0 แบบจําลองที่ได้รับการฝึกโดยใช้อัลกอริทึมชนิดนี้ทํานายคลาสสําหรับฟังก์ชันที่สร้างเอาต์พุตความน่าจะเป็นสูงสุด
อัลกอริทึมแบบหลายมิติ
อีกวิธีหนึ่งคือการใช้อัลกอริทึมแบบหลายมิติ ซึ่งสร้างฟังก์ชันเดียวที่แสดงผลลัพธ์แบบหลายค่า ผลลัพธ์คือ เวกเตอร์ (อาร์เรย์ของค่า) ที่ประกอบด้วย การแจกแจงความน่าจะเป็น สําหรับคลาสที่เป็นไปได้ทั้งหมด โดยมีคะแนนความน่าจะเป็นสําหรับแต่ละคลาสซึ่งรวมยอดแล้วเพิ่มขึ้นเป็น 1.0:
f(x) =[P(y=0|x), P(y=1|x), P(y=2|x)]
ตัวอย่างของฟังก์ชันชนิดนี้คือฟังก์ชัน softmax ซึ่งสามารถสร้างเอาต์พุตเช่นตัวอย่างต่อไปนี้:
[0.2, 0.3, 0.5]
องค์ประกอบของเวกเตอร์แสดงถึงความน่าจะเป็นสําหรับคลาส 0, 1 และ 2 ตามลําดับ ดังนั้นในกรณีนี้ คลาสที่มีความน่าจะเป็นสูงสุดคือ 2
โดยไม่คํานึงถึงชนิดของอัลกอริทึมที่ใช้ แบบจําลองจะใช้ฟังก์ชันผลลัพธ์เพื่อกําหนดคลาสที่น่าจะเป็นไปได้มากที่สุดสําหรับชุดคุณลักษณะ (x) ที่กําหนดและคาดการณ์ป้ายชื่อระดับชั้นที่สอดคล้องกัน (y)
การประเมินแบบจําลองการจัดประเภทแบบหลายคลาส
คุณสามารถประเมินตัวจําแนกประเภทแบบหลายคลาสโดยการคํานวณเมตริกการจัดประเภทไบนารีสําหรับแต่ละคลาส อีกวิธีหนึ่งคือ คุณสามารถคํานวณเมตริกรวมที่คํานึงถึงทุกชั้นเรียน
สมมติว่าเราได้ตรวจสอบตัวจัดประเภทแบบหลายคลาสของเราแล้ว และได้รับผลลัพธ์ดังต่อไปนี้:
| ความยาวของ Flipper (x) | เผ่าพันธุ์จริง (y) | ชนิดที่ทํานาย (ŷ) |
|---|---|---|
| 165 | 0 | 0 |
| 171 | 0 | 0 |
| 205 | 2 | 1 |
| 195 | 1 | 1 |
| 183 | 1 | 1 |
| 221 | 2 | 2 |
| 214 | 2 | 2 |
เมทริกซ์ความสับสนสําหรับตัวจําแนกประเภทแบบหลายคลาสนั้นคล้ายกับของตัวจําแนกประเภทไบนารี เว้นแต่ว่าจะแสดงจํานวนการคาดการณ์สําหรับแต่ละการรวมกันของ การคาดการณ์ (ŷ) และป้ายชื่อระดับชั้น จริง (y):
จากเมทริกซ์ความสับสนนี้ เราสามารถกําหนดเมตริกสําหรับแต่ละคลาสได้ดังนี้:
| คลาส | บวกที่แท้จริง | ลบจริง | ผลบวกเท็จ | ลบเท็จ | ความถูกต้อง | การจดจำได้ | ความแม่นยำ | F1-Score |
|---|---|---|---|---|---|---|---|---|
| 0 | 2 | 5 | 0 | 0 | 1.0 | 1.0 | 1.0 | 1.0 |
| 1 | 2 | 4 | 1 | 0 | 0.86 | 1.0 | 0.67 | 0.8 |
| 2 | 2 | 4 | 0 | 1 | 0.86 | 0.67 | 1.0 | 0.8 |
หากต้องการคํานวณความแม่นยําโดยรวม การเรียกใช้และเมตริกความแม่นยํา คุณต้องใช้ผลรวมของเมตริก TP, TN, FP และ FN :
- ความแม่นยําโดยรวม = (13+6)÷(13+6+1+1) = 0.90
- การเรียกคืนโดยรวม = 6÷(6+ 1) = 0.86
- ความแม่นยําโดยรวม = 6÷(6+ 1) = 0.86
F1-score โดยรวมจะถูกคํานวณโดยใช้เมตริกการเรียกคืนและความแม่นยําโดยรวม:
- โดยรวม F1 คะแนน = (2x0.86x0.86)÷(0.86 + 0.86) = 0.86