يشير مصطلح السمة إلى عدد العناصر في متجه السمات. بعض الخصائص الفئوية منخفضة الأبعاد. على سبيل المثال:
اسم العنصر | عدد الفئات | أمثلة على الفئات |
---|---|---|
snowed_today | 2 | صحيح، خطأ |
skill_level | 3 | مبتدئ، ممارس، خبير |
season | 4 | الشتاء والربيع والصيف والخريف |
day_of_week | 7 | الاثنين والثلاثاء والأربعاء |
كوكب | 8 | عطارد والزهرة والأرض |
عندما تتضمّن إحدى الميزات الفئوية عددًا قليلاً من الفئات المحتملة، يمكنك ترميزها باعتبارها مفردات. باستخدام ترميز المفردات، يتعامل النموذج مع كل قيمة فئوية ممكنة على أنّها سمة منفصلة. أثناء التدريب، يتعرّف ال نموذج على أوزان مختلفة لكل فئة.
على سبيل المثال، لنفترض أنّك تنشئ نموذجًا لتوقّع سعر سيارة استنادًا،
جزئيًا، إلى سمة تصنيفية باسم car_color
.
ربما تكون السيارات الحمراء أكثر قيمة من السيارات الخضراء.
بما أنّ المصنّعين يوفّرون عددًا محدودًا من الألوان الخارجية، فإنّ car_color
هو
سمة تصنيفية منخفضة الأبعاد.
يوضّح الرسم التوضيحي التالي مفردات (قيم محتملة) لسمة
car_color
:
التمرين: التحقّق من حدسك
"Red"
ليست عددًا عشريًا. عليك
تحويل السلاسل مثل "Red"
إلى أعداد نقطية عائمة.
أرقام الفهرس
يمكن لنماذج تعلُّم الآلة معالجة أعداد النقاط العائمة فقط. وبالتالي، يجب تحويل كل سلسلة إلى رقم فهرس فريد، كما في الرسم التوضيحي التالي:
تمرين: تحقق من حدسك
"Black"
(فهرس رقم 5) أكثر أهمية
بالنسبة إلى النموذج بمقدار 5 مرات مقارنةً ب"Orange"
(فهرس رقم 1).
"Black"
(رقم الفهرس 5)
أكثر أهمية للنموذج بمقدار 5 مرات من "Orange"
(رقم الفهرس 1).
ترميز أحادي
الخطوة التالية في إنشاء قاموس هي تحويل كل رقم فهرس إلى ترميز واحد ساخن. في ترميز واحد فعال:
- يتم تمثيل كل فئة بمتجه (صفيف) من N عنصرًا، حيث يكون N
هو عدد الفئات. على سبيل المثال، إذا كان لدى
car_color
ثمانية تصانيف ممكنة، سيكون للمتجه الثنائي الحالة الذي يمثّلcar_color
ثمانية عناصر. - يكون عنصر واحد بالضبط في متجه أحادي القيمة له القيمة 1.0، ويحمل كل العناصر المتبقية القيمة 0.0.
على سبيل المثال، يعرض الجدول التالي ترميز "واحدة ساخنة" لكلّ في
car_color
:
الميزة | أحمر | Orange | بالأزرق | أصفر | أخضر | أسود | أرجواني | بالبني |
---|---|---|---|---|---|---|---|---|
"أحمر" | 1 | 0 | 0 | 0 | 0 | 0 | 0 | 0 |
"برتقال" | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 |
"أزرق" | 0 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
"أصفر" | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 0 |
"أخضر" | 0 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
"أسود" | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 0 |
"الأرجواني" | 0 | 0 | 0 | 0 | 0 | 0 | 1 | 0 |
"بني" | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
إنّ الخطّ المتجه للقيمة الواحدة، وليس السلسلة أو رقم الفهرس، هو الذي يتم تمريره إلى خطّ الميزة المتجه. يتعرّف النموذج على وزن منفصل لكل عنصر من ملف تعريف الميزة.
يوضّح الرسم التوضيحي التالي عمليات التحويل المختلفة في تمثيل المفردات:
التمثيل المتناثر
تُعرف السمة التي تكون قيمها غالبًا صفرًا (أو فارغة) باسم
سمة متناثرة. غالبًا ما تكون العديد من
السمات الفئوية، مثل car_color
، سمات متناثرة.
التمثيل المحدود
يعني تخزين موضع 1.0
في متجه متفرق. على سبيل المثال، ناقل القيمة الواحدة لـ "Blue"
هو:
[0، 0، 1، 0، 0، 0، 0، 0]
بما أنّ 1
في الموضع 2 (عند بدء العد من 0)، فإنّ
التمثيل المبعثر للصفيف أحادي القيمة السابق هو:
2
يُرجى ملاحظة أنّ التمثيل المتفرق يستهلك ذاكرة أقل بكثير من المتجه الثنائي القيمة المكوّن من ثمانية عناصر. من المهم أن يتم تدريب النموذج على المتجه أحادي الحالة، وليس على التمثيل المتفرق.
القيم الشاذة في البيانات الفئوية
مثل البيانات الرقمية، تحتوي البيانات الفئوية أيضًا على قيم استثنائية. لنفترض أنّ
car_color
لا يحتوي فقط على الألوان الرائجة، بل يحتوي أيضًا على بعض الألوان الاستثنائية التي نادرًا ما يتم استخدامها، مثل "Mauve"
أو "Avocado"
.
وبدلاً من تصنيف كل لون من هذه الألوان الاستثنائية ضمن فئة منفصلة، يمكنك
تجميعها في فئة واحدة "شاملة" باسم خارج المفردات
(OOV). بعبارة أخرى، يتم تجميع جميع ألوان القيم الشاذة في مجموعة واحدة
للقيم الشاذة. يتعرّف النظام على وزن واحد لحزمة القيم الشاذة هذه.
ترميز السمات الفئوية العالية الأبعاد
تحتوي بعض السمات الفئوية على عدد كبير من السمات، مثل تلك الواردة في الجدول التالي:
اسم العنصر | عدد الفئات | أمثلة على الفئات |
---|---|---|
words_in_english | ~500,000 | "سعيد"، "يمشي" |
US_postal_codes | 42000 تقريبًا | "02114", "90301" |
last_names_in_Germany | ~850,000 | "Schmidt"، "Schneider" |
عندما يكون عدد الفئات مرتفعًا، يكون ترميز One-hot عادةً خيارًا سيئًا. تكون فيديوهات التضمين، المفصّلة في وحدة تضمين منفصلة، خيارًا أفضل بكثير. تؤدّي عمليات التضمين إلى تقليل عدد السمات بشكل كبير، ما يعود بالفائدة على النماذج بطريقتَين مهمتَين:
- يتم عادةً تدريب النموذج بشكل أسرع.
- عادةً ما يستنتج النموذج الذي تم إنشاؤه التوقّعات بشكل أسرع. وهذا يعني أنّ زمن استجابة النموذج أقل.
التجزئة (المعروفة أيضًا باسم خدعة التجزئة ) هي طريقة أقل شيوعًا لتقليل عدد السمات.