في وقت سابق، واجهت التصنيف الثنائي التي يمكنها الاختيار من بين اثنين من الخيارات المحتملة، مثل:
- يُرجى اعتبار رسالة إلكترونية معيّنة رسالة غير مرغوب فيها أو ليست رسالة غير مرغوب فيها.
- يكون ورم معين ورمًا خبيثًا أو حميدًا.
في هذا القسم، سنتقصى التصنيف متعدد الفئات التي يمكنها الاختيار من بين الاحتمالات المتعددة. على سبيل المثال:
- هل هذا الكلب بيغل أم كلب صيد باسات أم كلب دموي؟
- هل هذه الزهرة هي زهرة سيبيريا أم سوسن هولندي أم سوسن علم أزرق؟ أو السوسن القزم ذو اللحية؟
- هل هذه الطائرة من طراز Boeing 747 أو Airbus 320 أو Boeing 777 أو Embraer 190؟
- هل هذه صورة لتفاحة أو دب أو حلوى أو كلب أو بيضة؟
بعض المشاكل الواقعية المتعددة الفئات تتطلب الاختيار من بين الملايين من فئات منفصلة. فعلى سبيل المثال، بالنظر إلى التصنيف متعدد الفئات النموذج الذي يمكنه تحديد صورة أي شيء تقريبًا.
يفصّل هذا القسم المتغيرين الرئيسيين للتصنيف متعدد الفئات:
- واحد مقابل الكل
- one-vs.-one، والتي تُعرف عادةً باسم softmax
واحد مقابل الكل
توفّر دالة واحد مقابل الكل طريقة لاستخدام التصنيف الثنائي. لسلسلة من التنبؤات بنعم أو لا عبر التصنيفات المحتملة المتعددة.
بناءً على مشكلة التصنيف مع ن من الحلول الممكنة، يمكن حساب واحد مقابل الكل أن يتألف الحل من مصنِّفات ثنائية منفصلة عن N — أي مُصنِّف ثنائي منفصل لكل نتيجة محتملة. أثناء التدريب، يقوم النموذج بتشغيل من خلال سلسلة من المصنِّفات الثنائية، مع تطبيق المصنِّفات الثنائية لحل نزُل سؤال التصنيف.
فعلى سبيل المثال، إذا كانت صورة قطعة فاكهة واحدة، وهي أربعة قد يتم تدريب أدوات تعرّف مختلفة، يجيب كل منها بنعم أو لا مختلفة السؤال:
- هل هذه الصورة تفاحة؟
- هل هذه الصورة برتقالية؟
- هل هذه الصورة موزة؟
- هل هذه الصورة عنب؟
توضح الصورة التالية كيفية عمل ذلك عمليًا.
![الشكل 7. صورة كمثرى يتم تمريرها كإدخال في 4 أشكال مختلفة
نماذج المصنِّف الثنائي. يتنبأ النموذج الأول بـ "apple" أو "لا"
apple'، وتنبؤها هو "ليس apple". يتنبأ النموذج الثاني
"برتقالي" أو "ليس برتقاليًا"، وتوقعه "ليس برتقاليًا". تشير رسالة الأشكال البيانية
يتنبأ النموذج الثالث بـ "كمثرى" أو 'not pear'، ويكون تنبؤها
"كمثرى". يتنبأ النموذج الرابع بمصطلح "العنب" أو "ليس عنب"،
التنبؤ هو "ليس عنب".](https://developers.google.cn/static/machine-learning/crash-course/neural-networks/images/one_vs_all_binary_classifiers.png?authuser=6&hl=ar)
ويكون هذا المنهج معقولاً إلى حد ما عندما يتجمع العدد الإجمالي للفئات صغيرة، لكنها تصبح غير فعالة بشكل متزايد مع زيادة يرتفع.
يمكننا إنشاء نموذج أكثر فعالية مقارنةً بالكل. بشبكة عصبية عميقة تمثل فيها كل عقدة ناتج الصف. توضح الصورة التالية هذا الأسلوب.
![الشكل 8. شبكة عصبية ذات البنية التالية: طبقة إدخال ذات
عقدة واحدة، طبقة مخفية فيها 3 عقد، طبقة مخفية مع 4 عقد،
طبقة إخراج تضم 4 عُقد. تتم تغذية عقدة الإدخال بصورة كمثرى.
يتم تطبيق دالة التفعيل السيني على طبقة الإخراج. على كل
تمثل عقدة المخرجات احتمالية أن تكون الصورة محددة
فاكهة تمثل عقدة الإخراج 1 "هل تفاح؟" بقيمة 0.34.
تمثل عقدة الإخراج 2 "هل برتقالي؟" بقيمة 0.18.
تمثل عقدة الإخراج 3 "هل يبدو الكمثرى؟" بقيمة 0.84.
تمثل عقدة الإخراج 4 "هل العنب؟" بقيمة 0.07.](https://developers.google.cn/static/machine-learning/crash-course/neural-networks/images/one_vs_all_neural_net.png?authuser=6&hl=ar)
واحد مقابل واحد (softmax)
ربما لاحظت أن قيم الاحتمالات في طبقة الإخراج للشكل 8 لا مجموعها 1.0 (أو 100٪). (في الواقع، يبلغ مجموعها 1.43). في منظور واحد مقابل الكل منهجًا، تُحدد احتمالية كل مجموعة ثنائية من النتائج بشكل مستقل عن جميع المجموعات الأخرى. أي أننا نحدد احتمالية من "apple" مقابل "not apple" دون مراعاة احتمالية خيارات الفواكه: "البرتقال" أو "الكمثرى" أو "العنب".
ولكن ماذا لو أردنا التنبؤ باحتمالات كل فاكهة بالنسبة إلى بعضها البعض؟ في هذه الحالة، بدلًا من التنبؤ بكلمة apple مقابل "not" apple"، نريد التنبؤ بـ "apple" مقابل "البرتقالي" مقابل "الكمثرى" مقابل "العنب". يُطلق على هذا النوع من التصنيفات المتعددة الفئات اسم تصنيف واحد مقابل واحد.
يمكننا تنفيذ تصنيف واحد مقابل واحد باستخدام نفس النوع من التجميع العصبوني بنية الشبكة المستخدمة في التصنيف "واحد مقابل الكل"، مع تغيير رئيسي واحد. نحتاج إلى تطبيق تحويل مختلف على طبقة الإخراج.
معامل واحد مقابل الكل، طبقنا دالة التفعيل السيني على كل ناتج العقدة بشكل مستقل، مما أدى إلى ظهور قيمة ناتج بين 0 و1 لكل منهما ولكن لم يضمن جمع هذه القيم مع 1 بالضبط.
بالنسبة إلى معامل واحد مقابل واحد، يمكننا بدلاً من ذلك تطبيق دالة تُسمى softmax، وهي الاحتمالات العشرية لكل فئة في مشكلة متعددة الفئات، بحيث جمع جميع الاحتمالات ما يصل إلى 1.0. هذا القيد الإضافي يساعد التطبيق على التواصل بشكل أسرع مما لو كان ممكنًا.
تعيد الصورة التالية تطبيق التصنيف واحد مقابل الكل متعدد الفئات مهمة كمهمة مقارنة واحدة. لاحظ أنه من أجل تنفيذ softmax، فإن البيانات الطبقة التي تسبق طبقة الإخراج مباشرةً (تسمى طبقة softmax) يجب أن تحتوي نفس عدد العقد الموجودة في طبقة المخرجات.
![الشكل 9. شبكة عصبية ذات البنية التالية: المدخلات
طبقة بها عقدة واحدة، وطبقة مخفية بها 3 عقد، وطبقة مخفية من 4 عقد،
طبقة إخراج تضم 4 عُقد. تتم تغذية عقدة الإدخال بصورة كمثرى.
يتم تطبيق دالة تفعيل softmax على طبقة الإخراج. على كل
تمثل عقدة المخرجات احتمالية أن تكون الصورة محددة
فاكهة تمثل عقدة الإخراج 1 "هل تفاح؟" بقيمة 0.19.
تمثل عقدة الإخراج 2 "هل برتقالي؟" وقيمتها 0.12.
تمثل عقدة الإخراج 3 "هل يبدو الكمثرى؟" بقيمة 0.63.
تمثل عقدة الإخراج 4 "هل العنب؟" بقيمة 0.06.](https://developers.google.cn/static/machine-learning/crash-course/neural-networks/images/one_vs_one_neural_net.png?authuser=6&hl=ar)
خيارات Softmax
ضع في الاعتبار خيارات softmax التالية:
تمثّل سمة Full softmax تجربة softmax التي نناقشها. أي، تحسب softmax الاحتمالية لكل فئة محتملة.
تعني أخذ العينات المرشّح أنّ حملة softmax تحسب الاحتمالية. لجميع التصنيفات الموجبة ولكن فقط لعينة عشوائية من أو تصنيفات سلبية. على سبيل المثال، إذا كنا مهتمين بتحديد سواء كانت صورة الإدخال عبارة عن بيغل أو كلب دموي، فليس علينا تقدم الاحتمالات لكل مثال لغير الكلاب.
تكون softmax الكاملة رخيصة نوعًا ما عندما يكون عدد الفئات صغيرًا ولكنها تصبح باهظة الثمن عند زيادة عدد الفصول. يمكن أن يؤدي أخذ عينات المرشح إلى تحسين الكفاءة في المشكلات التي لها وعدد الصفوف الدراسية.
تصنيف واحد مقابل تصنيفات متعددة
تفترض Softmax أن كل مثال هو عضو في فئة واحدة بالضبط. ومع ذلك، يمكن أن تكون بعض الأمثلة عضوًا في صفوف متعددة في الوقت نفسه. في ما يلي أمثلة على ذلك:
- لا يجوز لك استخدام softmax.
- فينبغي عليك الاعتماد على الانحدار اللوجستي المتعدد.
على سبيل المثال، يفترض نموذج واحد مقابل واحد في الشكل 9 أعلاه أن كل إدخال ستصوِّر نوعًا واحدًا بالضبط من الفاكهة: تفاحة أو برتقال أو كمثرى أو عنب ومع ذلك، إذا كانت صورة تم إدخالها قد تحتوي على أنواع متعددة من الفاكهة، من التفاح والبرتقال - سيتعين عليك استخدام خدمات لوجستية متعددة عمليات التحويل بدلاً من ذلك.