تصنيف متعدد الفئات

مكتمل

يستخدم التصنيف متعدد الفئات للتنبؤ بفئات محتملة متعددة تنتمي إليها الملاحظة. كتقنيه التعلم الآلي الخاضع للإشراف، فإنه يتبع نفس التدريب التكراري والتحقق من صحة وتقييم العملية مثل الانحدار والتصنيف الثنائي حيث يتم إعادة مجموعة فرعية من بيانات التدريب للتحقق من صحة النموذج المدرب.

مثال - تصنيف متعدد الفئات

تستخدم خوارزميات التصنيف متعددة الفئات لحساب قيم الاحتمال لتسميات فئات متعددة، ما يتيح للنموذج التنبؤ بالفئة الأكثر احتمالا لملاحظة معينة.

دعونا نستكشف مثالا لدينا فيه بعض الملاحظات عن البطاريق، حيث يتم تسجيل طول الزعانف (x) لكل بطريق. لكل ملاحظة، تتضمن البيانات أنواع البطريق (y)، والتي يتم ترميزها على النحو التالي:

  • 0: أميلي
  • 1: Gentoo
  • 2: Chinstrap

إشعار

كما هو الحال مع الأمثلة السابقة في هذه الوحدة النمطية، قد يتضمن السيناريو الحقيقي قيم ميزة متعددة (x). سنستخدم ميزة واحدة لإبقاء الأمور بسيطة.

Diagram of a measuring ruler. Diagram of three penguins.
طول الزعانف (x) الأنواع (y)
167 0
172 0
225 2
197 1
189 1
232 2
158 0

تدريب نموذج تصنيف متعدد الفئات

لتدريب نموذج تصنيف متعدد الفئات، نحتاج إلى استخدام خوارزمية لملاءمة بيانات التدريب مع دالة تحسب قيمة احتمالية لكل فئة ممكنة. هناك نوعان من الخوارزميات التي يمكنك استخدامها للقيام بذلك:

  • خوارزميات One-vs-Rest (OvR)
  • خوارزميات متعددة الحدود

خوارزميات One-vs-Rest (OvR)

تقوم خوارزميات One-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).

تقييم نموذج تصنيف متعدد الفئات

يمكنك تقييم مصنف متعدد الفئات عن طريق حساب مقاييس التصنيف الثنائي لكل فئة على حدة. بدلا من ذلك، يمكنك حساب المقاييس الإجمالية التي تأخذ جميع الفئات في الاعتبار.

لنفترض أننا قمنا بالتحقق من صحة المصنف متعدد الفئات، وحصلنا على النتائج التالية:

طول الزعانف (x) الأنواع الفعلية (y) الأنواع المتوقعة (ŷ)
165 1 1
171 1 1
205 2 1
195 1 1
183 1 1
221 2 2
214 2 2

تشبه مصفوفة الارتباك لمصنف متعدد الطبقات مصفوفة المصنف الثنائي، باستثناء أنها تعرض عدد التنبؤات لكل مجموعة من التسميات المتوقعة (ŷ) والفئات الفعلية (y):

Diagram of a multiclass confusion matrix.

من مصفوفة الارتباك هذه، يمكننا تحديد المقاييس لكل فئة فردية على النحو التالي:

الفصل Tp TN Fp الجبهه الوطنيه الدقة الاستدعاء الدقة F1-Score
0 2 5 1 1 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 الإجمالية باستخدام مقاييس الاستدعاء والدقة الإجمالية:

  • إجمالي درجة F1 = (2x0.86x0.86)÷(0.86+0.86) = 0.86