راهنمای کار طبقه بندی متون

وظیفه MediaPipe Text Classifier به شما امکان می دهد متن را به مجموعه ای از دسته بندی های تعریف شده، مانند احساسات مثبت یا منفی طبقه بندی کنید. دسته ها در طول آموزش مدل تعریف می شوند. این وظیفه بر روی داده های متنی با مدل یادگیری ماشین (ML) به عنوان داده ایستا عمل می کند و لیستی از دسته ها و امتیازات احتمال آنها را خروجی می دهد.

آن را امتحان کنید!

شروع کنید

با دنبال کردن یکی از این راهنماهای پیاده سازی برای پلتفرمی که روی آن کار می کنید، استفاده از این کار را شروع کنید:

این راهنماهای مخصوص پلتفرم شما را از طریق اجرای اساسی این کار، از جمله یک مدل توصیه شده و نمونه کد با گزینه های پیکربندی توصیه شده، راهنمایی می کنند.

جزئیات کار

این بخش قابلیت ها، ورودی ها، خروجی ها و گزینه های پیکربندی این کار را شرح می دهد.

امکانات

  • پردازش متن ورودی - از توکن‌سازی خارج از نمودار برای مدل‌های بدون نشانه‌سازی درون گراف پشتیبانی می‌کند
  • سرهای طبقه بندی چندگانه - هر سر می تواند از مجموعه دسته بندی خود استفاده کند
  • برچسب محلی نقشه - زبان مورد استفاده برای نام های نمایشی را تنظیم کنید
  • آستانه امتیاز - نتایج را بر اساس نمرات پیش بینی فیلتر کنید
  • نتایج طبقه بندی Top-k - تعداد نتایج تشخیص را فیلتر کنید
  • برچسب لیست مجاز و رد لیست - دسته های شناسایی شده را مشخص کنید
ورودی های وظیفه خروجی های وظیفه
Text Classifier نوع داده ورودی زیر را می پذیرد:
  • رشته
Text Classifier لیستی از دسته بندی ها را خروجی می دهد که شامل:
  • شاخص دسته: شاخص دسته در خروجی های مدل
  • امتیاز: امتیاز اطمینان برای این دسته که به صورت احتمال بین صفر و یک به عنوان مقدار ممیز شناور بیان می شود.
  • نام دسته (اختیاری): نام دسته که در فراداده مدل TensorFlow Lite مشخص شده است، در صورت موجود بودن.
  • نام نمایشی دسته (اختیاری): یک نام نمایشی برای دسته که در فراداده مدل TensorFlow Lite مشخص شده است، به زبانی که از طریق گزینه‌های محلی نام‌های نمایشی، در صورت موجود بودن، مشخص شده است.

گزینه های پیکربندی

این کار دارای گزینه های پیکربندی زیر است:

نام گزینه شرح محدوده ارزش مقدار پیش فرض
displayNamesLocale زبان برچسب‌ها را برای استفاده برای نام‌های نمایشی ارائه شده در فراداده مدل کار، در صورت وجود، تنظیم می‌کند. پیش فرض برای انگلیسی en است. با استفاده از TensorFlow Lite Metadata Writer API می‌توانید برچسب‌های محلی را به ابرداده یک مدل سفارشی اضافه کنید. کد محلی en
maxResults حداکثر تعداد اختیاری نتایج طبقه بندی با امتیاز بالا را برای بازگشت تنظیم می کند. اگر < 0 باشد، تمام نتایج موجود برگردانده خواهند شد. هر عدد مثبت -1
scoreThreshold آستانه امتیاز پیش‌بینی را تنظیم می‌کند که بر آستانه ارائه‌شده در فراداده مدل (در صورت وجود) لغو می‌شود. نتایج زیر این مقدار رد می شوند. هر شناور تنظیم نشده
categoryAllowlist فهرست اختیاری نام‌های دسته‌بندی مجاز را تنظیم می‌کند. در صورت خالی نبودن، نتایج طبقه بندی که نام دسته آنها در این مجموعه نیست فیلتر می شود. نام‌های دسته‌بندی تکراری یا ناشناخته نادیده گرفته می‌شوند. این گزینه با categoryDenylist منحصر به فرد است و از هر دو نتیجه در یک خطا استفاده می کند. هر رشته تنظیم نشده
categoryDenylist فهرست اختیاری نام‌های دسته‌هایی را که مجاز نیستند را تنظیم می‌کند. در صورت خالی نبودن، نتایج طبقه بندی که نام دسته آنها در این مجموعه است فیلتر می شود. نام‌های دسته‌بندی تکراری یا ناشناخته نادیده گرفته می‌شوند. این گزینه با categoryAllowlist منحصر به فرد است و از هر دو نتیجه در خطا استفاده می کند. هر رشته تنظیم نشده

مدل ها

Text Classifier را می توان با بیش از یک مدل ML استفاده کرد. هنگامی که شروع به توسعه با این کار می کنید، با مدل پیش فرض و توصیه شده برای پلتفرم هدف خود شروع کنید. سایر مدل‌های موجود معمولاً بین عملکرد، دقت، وضوح و نیازهای منابع، معاوضه ایجاد می‌کنند و در برخی موارد، ویژگی‌های اضافی را نیز شامل می‌شوند.

مدل های از پیش آموزش دیده برای تحلیل احساسات آموزش دیده اند و پیش بینی می کنند که آیا احساسات متن ورودی مثبت یا منفی است. این مدل‌ها بر روی مجموعه داده SST-2 (Stanford Sentiment Treebank) آموزش داده شده‌اند که شامل نقدهای فیلم است که دارای برچسب مثبت یا منفی هستند. توجه داشته باشید که مدل ها فقط از زبان انگلیسی پشتیبانی می کنند. از آنجایی که آنها بر روی مجموعه داده ای از نقدهای فیلم آموزش دیده اند، ممکن است کیفیت متنی را که سایر حوزه های موضوعی را پوشش می دهد کاهش یابد.

این مدل از معماری مبتنی بر BERT (مخصوصاً مدل MobileBERT ) استفاده می کند و به دلیل دقت بالا توصیه می شود. این شامل ابرداده است که به کار اجازه می دهد تا توکن سازی BERT خارج از نمودار را انجام دهد.

نام مدل شکل ورودی نوع کوانتیزاسیون نسخه ها
دسته بندی BERT [1x128]، [1x128]، [1x128] محدوده دینامیکی آخرین

مدل تعبیه کلمه متوسط

این مدل از معماری تعبیه کلمه متوسط ​​استفاده می کند. این مدل اندازه مدل کوچکتر و تاخیر کمتری را به قیمت دقت پیش‌بینی کمتر در مقایسه با طبقه‌بندی BERT ارائه می‌دهد. سفارشی کردن این مدل از طریق آموزش اضافی نیز سریعتر از انجام آموزش طبقه بندی کننده مبتنی بر BERT است. این مدل حاوی ابرداده است که به کار اجازه می دهد تا توکن سازی regex خارج از نمودار را انجام دهد.

نام مدل شکل ورودی نوع کوانتیزاسیون نسخه ها
میانگین جاسازی کلمه 1 × 256 هیچکدام (float32) آخرین

معیارهای وظیفه

در اینجا معیارهای کار برای کل خط لوله بر اساس مدل های از پیش آموزش دیده بالا آمده است. نتیجه تأخیر، متوسط ​​تأخیر پیکسل 6 با استفاده از CPU / GPU است.

نام مدل تاخیر CPU تاخیر GPU
میانگین جاسازی کلمه 0.14 میلی‌ثانیه -
دسته بندی BERT 57.68 میلی‌ثانیه -

مدل های سفارشی

اگر می‌خواهید قابلیت‌های مدل‌های ارائه‌شده را بهبود یا تغییر دهید، می‌توانید از یک مدل ML سفارشی‌شده برای این کار استفاده کنید. می توانید از Model Maker برای اصلاح مدل های موجود استفاده کنید یا با استفاده از ابزارهایی مانند TensorFlow یک مدل بسازید. مدل‌های سفارشی مورد استفاده با MediaPipe باید در قالب TensorFlow Lite باشند و باید شامل ابرداده‌های خاصی باشند که پارامترهای عملیاتی مدل را توصیف می‌کنند. قبل از اینکه مدل خود را بسازید، باید از Model Maker برای اصلاح مدل های ارائه شده برای این کار استفاده کنید.