دليل مهام تصنيف النصوص

تتيح لك مهمة MediaPipe Text Classife تصنيف النص إلى مجموعة من الفئات المحددة، مثل الآراء الإيجابية أو السلبية. يتم تحديد الفئات أثناء تدريب النموذج. تعمل هذه المهمة على البيانات النصية باستخدام نموذج تعلُّم الآلة (ML) كبيانات ثابتة وتُخرج قائمة بالفئات ونتائج احتمالية حدوثها.

تجربة الميزة

البدء

ابدأ في استخدام هذه المهمة باتباع أحد أدلة التنفيذ هذه للمنصة التي تعمل عليها:

ترشدك هذه الأدلة الخاصة بنظام التشغيل خلال التنفيذ الأساسي لهذه المهمة، بما في ذلك النموذج المُقترح ومثال الرمز البرمجي مع خيارات الضبط المُقترَحة.

تفاصيل المهمة

يصف هذا القسم الإمكانات والمدخلات والمخرجات وخيارات الضبط لهذه المهمة.

الميزات

  • معالجة نص الإدخال - إتاحة إنشاء رموز مميّزة خارج الرسم البياني للنماذج التي لا تتضمّن الترميز
  • رؤوس التصنيف المتعددة - يمكن لكل رأس استخدام مجموعة الفئات الخاصة به
  • لغة خريطة التصنيف - ضبط اللغة المستخدمة للأسماء المعروضة
  • الحد الأدنى للنتيجة - فلترة النتائج استنادًا إلى نتائج التوقعات
  • نتائج التصنيف الأعلى - فلترة عدد نتائج الرصد
  • قائمة التصنيفات المسموح بها وقائمة الحظر: تحديد الفئات التي تم رصدها
إدخالات المهام نتائج المهام
يقبل Text Classifier نوع بيانات الإدخال التالي:
  • سلسلة
تقدِّم أداة Text Classifier قائمة بالفئات التي تحتوي على:
  • مؤشر الفئة: فهرس الفئة في مخرجات النموذج
  • النتيجة: نتيجة الثقة لهذه الفئة، ويتم التعبير عنها باحتمالية بين صفر وواحد كقيمة نقطة عائمة.
  • اسم الفئة (اختياري): اسم الفئة كما هو محدّد في البيانات الوصفية لنموذج TensorFlow Lite، في حال توفّرها.
  • الاسم المعروض للفئة (اختياري): الاسم المعروض للفئة على النحو المحدّد في البيانات الوصفية لنموذج TensorFlow Lite، وذلك باللغة المحدَّدة من خلال خيارات اللغة الخاصة بالأسماء المعروضة، في حال توفّرها.

خيارات الضبط

تتضمن هذه المهمة خيارات الإعداد التالية:

اسم الخيار الوصف نطاق القيمة القيمة التلقائية
displayNamesLocale تحدِّد هذه السياسة لغة التصنيفات التي سيتم استخدامها للأسماء المعروضة في البيانات الوصفية لنموذج المهمة، إذا كان ذلك متاحًا. الإعداد التلقائي هو en للغة الإنجليزية. يمكنك إضافة تصنيفات مترجَمة إلى البيانات الوصفية لنموذج مخصّص باستخدام TensorFlow Lite Metadata Scriptr API. رمز اللغة en
maxResults يضبط الحد الأقصى الاختياري لعدد نتائج التصنيف ذات أعلى الدرجات التي تريد عرضها. وإذا كانت القيمة أقل من 0، سيتم عرض جميع النتائج المتاحة. أي أرقام موجبة -1
scoreThreshold لتعيين الحد الأدنى لدرجة التنبؤ الذي يتجاوز الحد المقدم في البيانات الوصفية للنموذج (إن يتوفر). يتم رفض النتائج التي تقلّ عن هذه القيمة. أي عائم لم يتم الضبط.
categoryAllowlist تُحدِّد القائمة الاختيارية لأسماء الفئات المسموح بها. وإذا لم يكن هذا الحقل فارغًا، ستتم فلترة نتائج التصنيف التي لا يكون اسم فئتها ضمن هذه المجموعة. ويتم تجاهل أسماء الفئات المكررة أو غير المعروفة. لا يمكن استخدام هذا الخيار مع categoryDenylist، ويؤدي استخدام كلاهما إلى حدوث خطأ. أي سلاسل لم يتم الضبط.
categoryDenylist تُحدِّد القائمة الاختيارية لأسماء الفئات غير المسموح بها. وإذا لم تكن نتائج التصنيف فارغة، فستتم تصفية نتائج التصنيف التي يوجد اسم فئتها في هذه المجموعة. ويتم تجاهل أسماء الفئات المكررة أو غير المعروفة. لا يمكن استخدام هذا الخيار إلّا مع categoryAllowlist، ويؤدي استخدام كلا الخيارين إلى حدوث خطأ. أي سلاسل لم يتم الضبط.

النماذج

يمكن استخدام أداة تصنيف النص مع أكثر من نموذج تعلُّم الآلة. ابدأ بالنموذج الافتراضي الموصى به للنظام الأساسي المستهدف عند بدء التطوير باستخدام هذه المهمة. تُجري النماذج الأخرى المتاحة عادةً مقايضة بين الأداء والدقة والدقة ومتطلبات الموارد، وفي بعض الحالات، تتضمن ميزات إضافية.

ويتم تدريب النماذج المدرّبة مسبقًا على تحليل المشاعر، وتتنبأ بما إذا كان العاطفة في نص الإدخال إيجابية أم سلبية. تم تدريب النماذج على مجموعة بيانات SST-2 (ستانفورد سينتيمنت تريبانك)، التي تتكون من مراجعات للأفلام مصنفة على أنها إما إيجابية أو سلبية. تجدر الإشارة إلى أنّ النماذج تدعم اللغة الإنجليزية فقط. نظرًا لأنهم تم تدريبهم على مجموعة بيانات من مراجعات الأفلام، فقد تلاحظ انخفاضًا في جودة النص الذي يتناول مجالات موضوعية أخرى.

يستخدم هذا النموذج بنية مستندة إلى BERT (على وجه التحديد، نموذج MobileBERT) ويُنصح باستخدامه بسبب دقته العالية. يحتوي على بيانات تعريف تسمح للمهمة بتنفيذ ترميز BERT خارج الرسم البياني.

اسم النموذج إدخال الشكل نوع الكمية الإصدارات
مصنِّف BERT [1x128],[1x128],[1x128] النطاق الديناميكي الأحدث

متوسط نموذج تضمين الكلمات

يستخدم هذا النموذج بنية متوسطة تتضمن الكلمات. ويوفر هذا النموذج حجم نموذج أصغر ووقت استجابة أقل على حساب دقة التنبؤ الأقل مقارنة بمُصنِّفات BERT. كما أن تخصيص هذا النموذج عبر تدريب إضافي أسرع من التدريب على المصنِّف المستند إلى BERT. يحتوي هذا النموذج على بيانات وصفية تسمح للمهمة بتنفيذ إنشاء رمز مميّز للتعبير العادي خارج الرسم البياني.

اسم النموذج إدخال الشكل نوع الكمية الإصدارات
متوسط تضمين الكلمات 1 x 256 لا شيء (float32) الأحدث

مقاييس أداء المهام

إليك مقاييس أداء المهمة لمسار العملية بأكمله بناءً على النماذج المدربة مسبقًا أعلاه. وتكون نتيجة وقت الاستجابة هي متوسط وقت الاستجابة على هاتف Pixel 6 باستخدام وحدة المعالجة المركزية (CPU)/وحدة معالجة الرسومات.

اسم النموذج وقت استجابة وحدة المعالجة المركزية (CPU) وقت استجابة وحدة معالجة الرسومات
متوسط تضمين الكلمات 0.14 ملي ثانية -
مصنِّف BERT 57.68 ملي ثانية -

النماذج المخصَّصة

يمكنك استخدام نموذج تعلّم الآلة المخصّص مع هذه المهمة إذا كنت تريد تحسين أو تغيير إمكانات النماذج المقدَّمة. يمكنك استخدام مصمم النماذج لتعديل النماذج الموجودة أو إنشاء نموذج باستخدام أدوات مثل TensorFlow. يجب أن تكون النماذج المخصّصة المستخدَمة مع MediaPipe بتنسيق TensorFlow Lite وأن تتضمّن بيانات وصفية محدّدة تصف مَعلمات تشغيل النموذج. يجب أن تفكر في استخدام مصمم النماذج لتعديل النماذج المقدمة لهذه المهمة قبل إنشاء النماذج الخاصة بك.