البرمجة اللغوية العصبية مع واجهة برمجة تطبيقات Google Cloud Natural Language
نشرت: 2022-03-11أصبحت معالجة اللغة الطبيعية (NLP) ، وهي مزيج من التعلم الآلي واللغويات ، واحدة من أكثر الموضوعات التي تم بحثها بشكل مكثف في مجال الذكاء الاصطناعي. في السنوات القليلة الماضية ، تم الوصول إلى العديد من المعالم الجديدة ، أحدثها نموذج OpenAI's GPT-2 ، القادر على إنتاج مقالات واقعية ومتماسكة حول أي موضوع من مدخلات قصيرة.
هذا الاهتمام مدفوع بالعديد من التطبيقات التجارية التي تم طرحها في السوق في السنوات الأخيرة. نتحدث إلى مساعدينا المنزليين الذين يستخدمون البرمجة اللغوية العصبية لنسخ البيانات الصوتية وفهم أسئلتنا وأوامرنا. تحول المزيد والمزيد من الشركات جزءًا كبيرًا من جهود اتصالات العملاء إلى روبوتات الدردشة الآلية. تستخدمه الأسواق عبر الإنترنت لتحديد المراجعات المزيفة ، وتعتمد الشركات الإعلامية على البرمجة اللغوية العصبية لكتابة مقالات إخبارية ، وتطابق شركات التوظيف السير الذاتية مع المناصب ، وعمالقة وسائل التواصل الاجتماعي يقومون تلقائيًا بتصفية المحتوى البغيض ، وتستخدم الشركات القانونية البرمجة اللغوية العصبية لتحليل العقود.
كان التدريب ونشر نماذج التعلم الآلي لمهام مثل هذه عملية معقدة في الماضي ، والتي تطلبت فريقًا من الخبراء وبنية تحتية باهظة الثمن. لكن ارتفاع الطلب على مثل هذه التطبيقات دفع كبار مقدمي الخدمات إلى تطوير خدمات متعلقة بمعالجة اللغات الطبيعية ، مما يقلل عبء العمل وتكاليف البنية التحتية بشكل كبير. انخفض متوسط تكلفة الخدمات السحابية لسنوات ، ومن المتوقع أن يستمر هذا الاتجاه.
المنتجات التي سأقدمها في هذه المقالة هي جزء من Google Cloud Services وتسمى "Google Natural Language API" و "Google AutoML Natural Language".
واجهة برمجة تطبيقات Google Natural Language
تعد Google Natural Language API واجهة سهلة الاستخدام لمجموعة من نماذج البرمجة اللغوية العصبية القوية التي تم تدريبها مسبقًا بواسطة Google لأداء مهام مختلفة. نظرًا لأن هذه النماذج قد تم تدريبها على مجموعات كبيرة جدًا من المستندات ، فإن أداؤها عادة ما يكون جيدًا جدًا طالما يتم استخدامها في مجموعات البيانات التي لا تستخدم لغة شديدة الخصوصية.
أكبر ميزة لاستخدام هذه النماذج المدربة مسبقًا عبر واجهة برمجة التطبيقات هي عدم الحاجة إلى مجموعة بيانات تدريبية. تسمح واجهة برمجة التطبيقات للمستخدم بالبدء فورًا في إجراء تنبؤات ، والتي يمكن أن تكون ذات قيمة كبيرة في المواقف التي يتوفر فيها القليل من البيانات المصنفة.
تتكون واجهة برمجة تطبيقات اللغة الطبيعية من خمس خدمات مختلفة:
- تحليل النحو
- تحليل المشاعر
- تحليل الكيان
- تحليل معنويات الكيان
- تصنيف النص
تحليل النحو
بالنسبة إلى نص معين ، سيعرض تحليل بناء الجملة في Google تفصيلاً لجميع الكلمات مع مجموعة غنية من المعلومات اللغوية لكل رمز مميز. يمكن تقسيم المعلومات إلى قسمين:
جزء من الكلام: يحتوي هذا الجزء على معلومات حول مورفولوجيا كل رمز. لكل كلمة ، يتم إرجاع تحليل دقيق يحتوي على نوعها (الاسم ، الفعل ، إلخ) ، الجنس ، الحالة النحوية ، التوتر ، الحالة المزاجية ، الصوت النحوي ، وأكثر من ذلك بكثير.
على سبيل المثال ، بالنسبة إلى الجملة المدخلة "ضربني كمبيوتر مرة في لعبة الشطرنج ، لكنها لم تكن مطابقة لي في لعبة الكيك بوكسينغ." (Emo Philips) تحليل جزء من الكلام هو:
أ | علامة: DET |
'الحاسوب' | العلامة: رقم الاسم: SINGULAR |
'بمجرد' | علامة: ADV |
'يهزم' | علامة: مزاج الفعل: صيغة إرشادية: الماضي |
'أنا' | العلامة: حالة PRON: رقم الاتهام: شخص واحد: الأول |
في | علامة: ADP |
'شطرنج' | العلامة: رقم الاسم: SINGULAR |
"،" | علامة: عقبة |
'لكن' | علامة: CONJ |
'هو - هي' | العلامة: حالة PRON: الجنس الاسمي: الرقم القريب: الشخص المفرد: الثالث |
'كنت' | العلامة: مزاج الفعل: الرقم الإرشادي: الشخص المفرد: الفعل الثالث: الماضي |
'رقم' | علامة: DET |
'تطابق' | العلامة: رقم الاسم: SINGULAR |
'بالنسبة' | علامة: ADP |
'ركلة' | العلامة: رقم الاسم: SINGULAR |
'ملاكمة' | العلامة: رقم الاسم: SINGULAR |
"." | علامة: عقبة |
أشجار التبعية: الجزء الثاني من العائد يسمى شجرة التبعية ، والتي تصف البنية النحوية لكل جملة. يوضح الرسم البياني التالي لاقتباس كينيدي الشهير شجرة التبعية هذه. لكل كلمة ، تشير الأسهم إلى الكلمات التي تم تعديلها بواسطتها.
تحتوي مكتبات Python الشائعة الاستخدام nltk و spaCy على وظائف متشابهة. جودة التحليل عالية باستمرار عبر جميع الخيارات الثلاثة ، ولكن واجهة برمجة تطبيقات Google Natural Language أسهل في الاستخدام. يمكن الحصول على التحليل أعلاه باستخدام عدد قليل جدًا من سطور التعليمات البرمجية (انظر المثال أدناه). ومع ذلك ، في حين أن spaCy و nltk مفتوحان المصدر وبالتالي مجانيان ، فإن استخدام Google Natural Language API يكلف المال بعد عدد معين من الطلبات المجانية (انظر قسم التكلفة).
بصرف النظر عن اللغة الإنجليزية ، يدعم التحليل النحوي عشر لغات إضافية: الصينية (المبسطة) والصينية (التقليدية) والفرنسية والألمانية والإيطالية واليابانية والكورية والبرتغالية والروسية والإسبانية .
تحليل المشاعر
تُستخدم خدمة تحليل بناء الجملة في الغالب في وقت مبكر من خط الأنابيب لإنشاء ميزات يتم إدخالها لاحقًا في نماذج التعلم الآلي. على العكس من ذلك ، يمكن استخدام خدمة تحليل المشاعر مباشرة خارج الصندوق.
سيوفر تحليل المشاعر من Google الرأي العاطفي السائد داخل النص المقدم. تُرجع واجهة برمجة التطبيقات قيمتين: تصف "النتيجة" الميل العاطفي للنص من -1 (سلبي) إلى +1 (إيجابي) ، مع كون الصفر محايدًا.
يقيس "الحجم" قوة العاطفة.
لنلقِ نظرة على بعض الأمثلة:
جملة الإدخال | نتائج المشاعر | تفسير |
القطار المتجه إلى لندن يغادر الساعة الرابعة | الدرجة: 0.0 الحجم: 0.0 | بيان محايد تمامًا ، لا يحتوي على أي عاطفة على الإطلاق. |
هذا بلوق وظيفة جيدة. | الدرجة: 0.7 القوة: 0.7 | شعور ايجابي لكنه لم يعبر عنه بقوة. |
هذا بلوق وظيفة جيدة. كانت مفيدة جدا. المؤلف مذهل. | الدرجة: 0.7 القوة: 2.3 | نفس الشعور ، لكنه أعرب عن أقوى من ذلك بكثير. |
هذه المدونة جيدة جدا. عادة ما يكون هذا المؤلف كاتبًا فظيعًا ، لكن هنا حالفه الحظ. | الدرجة: 0.0 الحجم: 1.6 | يوضح لنا الحجم أن هناك مشاعر معبر عنها في هذا النص ، لكن المشاعر تظهر أنها مختلطة وليست إيجابية أو سلبية بشكل واضح. |
يتم تدريب نموذج تحليل المشاعر في Google على مجموعة بيانات كبيرة جدًا. لسوء الحظ ، لا توجد معلومات حول هيكلها التفصيلي المتاحة. كنت أشعر بالفضول حيال أدائه في العالم الحقيقي ، لذلك اختبرته على جزء من مجموعة بيانات مراجعة الأفلام الكبيرة ، التي أنشأها علماء من جامعة ستانفورد في عام 2011.
لقد اخترت عشوائيًا 500 تقييم إيجابي و 500 فيلم سلبي من مجموعة الاختبار وقارنت المشاعر المتوقعة بملصق المراجعة الفعلي. بدت مصفوفة الارتباك كما يلي:
الشعور الايجابي | المشاعر السلبية | |
مراجعة جيدة | 470 | 30 |
تقييم سيء | 29 | 471 |
كما يوضح الجدول ، فإن النموذج مناسب لحوالي 94٪ من الوقت لمراجعات الأفلام الجيدة والسيئة. هذا ليس أداء سيئًا لحل خارج الصندوق دون أي ضبط دقيق للمشكلة المحددة.
ملاحظة: تحليل المشاعر متاح لنفس اللغات المستخدمة في تحليل النحو باستثناء اللغة الروسية.
تحليل الكيان
تحليل الكيان هو عملية الكشف عن الكيانات المعروفة مثل الشخصيات العامة أو المعالم من نص معين. يعد اكتشاف الكيانات مفيدًا جدًا لجميع أنواع مهام التصنيف ونمذجة الموضوعات.
توفر واجهة برمجة تطبيقات Google Natural Language بعض المعلومات الأساسية حول كل كيان تم اكتشافه وحتى توفر رابطًا لمقالة Wikipedia المعنية إذا كانت موجودة. أيضا ، يتم احتساب درجة البروز. توفر هذه الدرجة الخاصة بالكيان معلومات حول أهمية أو مركزية هذا الكيان بالنسبة إلى نص المستند بأكمله. الدرجات الأقرب إلى 0 تكون أقل بروزًا ، في حين أن الدرجات الأقرب من 1.0 تكون بارزة للغاية.
عندما نرسل طلبًا إلى API مع هذا المثال الجملة: "تحدث روبرت دينيرو إلى مارتن سكورسيزي في هوليوود عشية عيد الميلاد في ديسمبر 2011." نتلقى النتيجة التالية:
الكيان المكتشف | معلومة اضافية |
روبرت دي نيرو | النوع: بروز الأشخاص: 0.5869118 wikipedia_url: https://en.wikipedia.org/wiki/Robert_De_Niro |
هوليوود | النوع: بروز الموقع: 0.17918482 wikipedia_url: https://en.wikipedia.org/wiki/Hollywood |
مارتن سكورسيزي | اكتب: بروز الموقع: 0.17712952 wikipedia_url: https://en.wikipedia.org/wiki/Martin_Scorsese |
اليوم الذي يسبق ليلة الميلاد | النوع: بروز الشخص: 0.056773853 wikipedia_url: https://en.wikipedia.org/wiki/Christmas |
ديسمبر 2011 | النوع: التاريخ السنة: 2011 الشهر: 12 البروز: 0.0 wikipedia_url: - |
2011 | النوع: عدد البروز: 0.0 wikipedia_url: - |
كما ترى ، تم تحديد جميع الكيانات وتصنيفها بشكل صحيح ، باستثناء ظهور 2011 مرتين. بالإضافة إلى الحقل الموجود في مثال الإخراج ، ستكتشف واجهة برمجة تطبيقات تحليل الكيان أيضًا المؤسسات والأعمال الفنية والسلع الاستهلاكية وأرقام الهواتف والعناوين والأسعار.
تحليل معنويات الكيان
إذا كانت هناك نماذج لاكتشاف الكيانات وتحليل المشاعر ، فمن الطبيعي فقط المضي قدمًا والجمع بينها لاكتشاف المشاعر السائدة تجاه الكيانات المختلفة في النص.
بينما تعثر واجهة برمجة التطبيقات لتحليل المشاعر على جميع عروض المشاعر في المستند وتجمعها ، يحاول تحليل مشاعر الكيان العثور على التبعيات بين أجزاء مختلفة من المستند والكيانات المحددة ثم ينسب المشاعر في هذه الأجزاء النصية إلى الكيانات المعنية.
على سبيل المثال ، النص المعبر: "المؤلف كاتب فظيع. من ناحية أخرى ، فإن القارئ ذكي للغاية ". يؤدي إلى النتائج:
شخصية | المشاعر |
مؤلف | البروز: 0.8773350715637207 المشاعر: المقدار: 1.899999976158142 الدرجة: -0.8999999761581421 |
قارئ | البروز: 0.08653714507818222 المشاعر: المقدار: 0.8999999761581421 الدرجة: 0.8999999761581421 |
يعمل تحليل معنويات الكيانات حتى الآن على اللغة الإنجليزية واليابانية والإسبانية فقط.
تصنيف النص
أخيرًا ، تأتي واجهة برمجة تطبيقات Google Natural Language مع نموذج تصنيف نصي للتوصيل والتشغيل.
يتم تدريب النموذج على تصنيف مستندات الإدخال إلى مجموعة كبيرة من الفئات. الفئات منظمة بشكل هرمي ، على سبيل المثال ، تشتمل فئة "الهوايات وأوقات الفراغ" على عدة فئات فرعية ، إحداها ستكون "الهوايات وأوقات الفراغ / في الهواء الطلق" والتي تحتوي بحد ذاتها على فئات فرعية مثل "الهوايات وأوقات الفراغ / في الهواء الطلق / صيد الأسماك."
هذا مثال لنص من إعلان كاميرا نيكون:
"يلتقط المستشعر الكبير 24.2 ميجابكسل بصيغة DX في كاميرا D3500 صورًا غنية بالتفاصيل وأفلام عالية الدقة بالكامل - حتى عند التصوير في الإضاءة المنخفضة. بالاقتران مع قوة عرض عدسة NIKKOR ، يمكنك البدء في إنشاء صور شخصية فنية مع ضبابية خلفية سلسة. بسهولة."

تعرض Google API النتيجة:
فئة | ثقة |
فنون وترفيه / فنون بصرية وتصميم / فنون تصوير فوتوغرافي ورقمية | 0.95 |
الهوايات وأوقات الفراغ | 0.94 |
أجهزة الكمبيوتر والإلكترونيات / إلكترونيات المستهلك / معدات التصوير والكاميرا | 0.85 |
كل هذه الفئات الثلاث منطقية ، على الرغم من أننا سنصنف بشكل حدسي الإدخال الثالث أعلى من الثاني. ومع ذلك ، يجب على المرء أن يأخذ في الاعتبار أن مقطع الإدخال هذا ليس سوى جزء قصير من مستند إعلان الكاميرا بالكامل وأن أداء نموذج التصنيف يتحسن بطول النص.
بعد تجربته مع الكثير من المستندات ، وجدت أن نتائج نموذج التصنيف مفيدة في معظم الحالات. ومع ذلك ، كما هو الحال مع جميع الطرز الأخرى من Google Natural Language API ، يأتي المصنف كحل أسود لا يمكن تعديله أو حتى ضبطه بواسطة مستخدم واجهة برمجة التطبيقات. خاصة في حالة تصنيف النص ، سيكون لدى الغالبية العظمى من الشركات فئات نصية خاصة بها تختلف عن فئات نموذج Google ، وبالتالي ، قد لا تكون خدمة تصنيف نصوص واجهة برمجة تطبيقات اللغة الطبيعية قابلة للتطبيق على غالبية المستخدمين.
أحد القيود الأخرى لنموذج التصنيف هو أنه يعمل فقط مع نصوص اللغة الإنجليزية.
كيفية استخدام واجهة برمجة تطبيقات اللغة الطبيعية
الميزة الرئيسية لـ Google Natural Language API هي سهولة استخدامها. ليست هناك حاجة إلى مهارات تعلم الآلة وتقريبًا لا توجد مهارات في البرمجة. على موقع Google Cloud على الويب ، يمكنك العثور على مقتطفات التعليمات البرمجية للاتصال بواجهة برمجة التطبيقات للعديد من اللغات.
على سبيل المثال ، كود Python لاستدعاء API لتحليل المشاعر قصير مثل:
from google.cloud import language_v1 from google.cloud.language_v1 import enums import six def sample_analyze_sentiment(content): client = language_v1.LanguageServiceClient() if isinstance(content, six.binary_type): content = content.decode('utf-8') type_ = enums.Document.Type.PLAIN_TEXT document = {'type': type_, 'content': content} response = client.analyze_sentiment(document) sentiment = response.document_sentiment print('Score: {}'.format(sentiment.score)) print('Magnitude: {}'.format(sentiment.magnitude))
يتم استدعاء وظائف API الأخرى بطريقة مماثلة ، ببساطة عن طريق تغيير client.analyze_sentiment
إلى الوظيفة المناسبة.
التكلفة الإجمالية لواجهة برمجة تطبيقات Google Natural Language
تفرض Google رسومًا على مستخدميها على أساس كل طلب لجميع خدمات Natural Language API. هذا له ميزة أنه لا توجد تكاليف ثابتة لأي خوادم نشر. العيب هو أنه يمكن أن يصبح باهظ الثمن لمجموعات البيانات الكبيرة جدًا.
يوضح هذا الجدول الأسعار (لكل 1000 طلب) حسب عدد الطلبات الشهرية:
إذا كان المستند يحتوي على أكثر من 1000 حرف ، فسيتم احتسابه كطلبات متعددة. على سبيل المثال ، إذا كنت ترغب في تحليل المشاعر الخاصة بـ 10000 مستند ، يحتوي كل منها على 1500 حرف ، فسيتم تحصيل 20000 طلب منك. نظرًا لأن أول 5000 مجاني ، فستصل التكاليف الإجمالية إلى 15 دولارًا. سيكلف تحليل مليون مستند من نفس الحجم 1،995 دولارًا أمريكيًا.
مريح ، لكن غير مرن
تعد Google Natural Language API خيارًا مناسبًا جدًا للحلول السريعة وغير التقليدية. مطلوب القليل جدًا من المعرفة التقنية وعدم فهم نماذج التعلم الآلي الأساسية.
العيب الرئيسي هو عدم المرونة وعدم القدرة على الوصول إلى النماذج. لا يمكن ضبط النماذج لمهمة معينة أو مجموعة بيانات.
في بيئة العالم الحقيقي ، من المحتمل أن تتطلب معظم المهام حلاً مخصصًا أكثر مما يمكن أن توفره وظائف واجهة برمجة تطبيقات اللغة الطبيعية الموحدة.
بالنسبة لهذا السيناريو ، تعد Google AutoML Natural Language أكثر ملاءمة.
اللغة الطبيعية لـ Google AutoML
إذا لم تكن واجهة برمجة تطبيقات Natural Language مرنة بما يكفي لأغراض عملك ، فقد تكون AutoML Natural Language هي الخدمة المناسبة. AutoML هي خدمة جديدة في السحاب من Google (لا تزال في مرحلة تجريبية) تمكن المستخدم من إنشاء نماذج مخصصة للتعلم الآلي. على عكس واجهة برمجة التطبيقات للغة الطبيعية ، سيتم تدريب نماذج AutoML على بيانات المستخدم وبالتالي تناسب مهمة محددة.
تكون نماذج التعلم الآلي المخصصة لتصنيف المحتوى مفيدة عندما تكون الفئات المحددة مسبقًا والمتاحة من واجهة برمجة تطبيقات اللغة الطبيعية عامة جدًا أو لا تنطبق على حالة الاستخدام أو مجال المعرفة الخاص بك.
تتطلب خدمة AutoML مزيدًا من الجهد للمستخدم ، ويرجع ذلك أساسًا إلى أنه يتعين عليك توفير مجموعة بيانات لتدريب النموذج. ومع ذلك ، فإن تدريب النماذج وتقييمها بشكل مؤتمت بالكامل ولا يتطلب معرفة تعلم الآلة. يمكن إجراء العملية برمتها دون كتابة أي رمز باستخدام وحدة تحكم Google Cloud. بالطبع ، إذا كنت تريد أتمتة هذه الخطوات ، فهناك دعم لجميع لغات البرمجة الشائعة.
ما الذي يمكن فعله باستخدام لغة Google AutoML الطبيعية؟
تغطي خدمة AutoML ثلاث حالات استخدام. تدعم كل حالات الاستخدام هذه اللغة الإنجليزية فقط في الوقت الحالي.
1. تصنيف النص AutoML
بينما يتم تدريب مصنف النص الخاص بـ Natural Language API مسبقًا وبالتالي يحتوي على مجموعة ثابتة من فئات النص ، فإن تصنيف النص AutoML يبني نماذج تعلم الآلة المخصصة ، مع الفئات التي توفرها في مجموعة بيانات التدريب الخاصة بك.
2. تحليل المشاعر AutoML
كما رأينا ، يعمل تحليل المشاعر الخاص بـ Natural Language API بشكل رائع في حالات الاستخدام العامة مثل مراجعات الأفلام. نظرًا لأن نموذج المشاعر يتم تدريبه على مجموعة عامة جدًا ، فقد يتدهور أداء المستندات التي تستخدم الكثير من اللغات الخاصة بالمجال. في هذه المواقف ، يسمح لك تحليل المشاعر AutoML بتدريب نموذج المشاعر المخصص لمجالك.
3. استخراج الكيان AutoML
في العديد من سياقات الأعمال ، هناك كيانات خاصة بالمجال (عقود قانونية ، مستندات طبية) لن تتمكن واجهة برمجة تطبيقات اللغة الطبيعية من تحديدها. إذا كانت لديك مجموعة بيانات يتم فيها تمييز الكيانات ، فيمكنك تدريب مستخرج كيان نموذج مخصص باستخدام AutoML. إذا كانت مجموعة البيانات كبيرة بما فيه الكفاية ، فسيكون نموذج استخراج الكيان المدرب قادرًا أيضًا على اكتشاف الكيانات غير المرئية من قبل.
كيفية استخدام AutoML Natural Language
يعد استخدام AutoML الثلاثة عملية من أربع خطوات وهي متشابهة جدًا لجميع المنهجيات الثلاثة:
تحضير مجموعة البيانات
يجب أن تكون مجموعة البيانات بتنسيق معين (CSV أو JSON) ويجب تخزينها في حاوية تخزين. بالنسبة لنماذج التصنيف والمشاعر ، تحتوي مجموعات البيانات على عمودين فقط ، النص والتسمية. بالنسبة لنموذج استخراج الكيان ، تحتاج مجموعة البيانات إلى النص ومواقع جميع الكيانات في النص.تدريب نموذجي
تدريب النموذج آلي بالكامل. إذا لم يتم تقديم أي تعليمات بخلاف ذلك ، فسيقوم AutoML بتقسيم مجموعة التدريب تلقائيًا إلى مجموعات تدريب واختبار والتحقق من الصحة. يمكن أيضًا أن يقرر المستخدم هذا الانقسام ، ولكن هذه هي الطريقة الوحيدة للتأثير على تدريب النموذج. ما تبقى من التدريب مؤتمت بالكامل بطريقة الصندوق الأسود.تقييم
عند انتهاء التدريب ، سيعرض AutoML الدقة واستدعاء الدرجات بالإضافة إلى مصفوفة الارتباك. لسوء الحظ ، لا توجد معلومات على الإطلاق حول النموذج نفسه ، مما يجعل من الصعب تحديد أسباب الأداء السيئ للنماذج.تنبؤ
بمجرد أن تكون سعيدًا بأداء النموذج ، يمكن نشر النموذج بسهولة ببضع نقرات. تستغرق عملية النشر بضع دقائق فقط.
أداء نموذج AutoML
عملية التدريب بطيئة للغاية ، ربما لأن النماذج الأساسية كبيرة جدًا. لقد قمت بتدريب مهمة تصنيف اختبار صغيرة مع 15000 عينة و 10 فئات واستغرق التدريب عدة ساعات. استغرق مني مثال من العالم الحقيقي مع مجموعة بيانات أكبر عدة أيام.
بينما لم تنشر Google أي تفاصيل حول النماذج المستخدمة ، أعتقد أن نموذج BERT من Google يُستخدم مع تعديلات صغيرة لكل مهمة. تعد عملية الضبط الدقيق للنماذج الكبيرة مثل BERT عملية مكلفة من الناحية الحسابية ، خاصةً عند إجراء الكثير من التحقق المتبادل.
اختبرت نموذج تصنيف AutoML في مثال واقعي مقابل نموذج قمت بتطويره بنفسي ، والذي كان قائمًا على BERT. والمثير للدهشة أن نموذج AutoML كان أداؤه أسوأ بكثير من نموذجي عندما تم تدريبه على نفس البيانات. حقق AutoML دقة بلغت 84٪ ، بينما حقق النموذج الخاص بي 89٪.
هذا يعني أنه أثناء استخدام AutoML قد يكون مناسبًا للغاية ، فمن المنطقي بالنسبة لمهام الأداء الحرجة استثمار الوقت وتطوير النموذج بنفسك.
تسعير AutoML
يعد تسعير AutoML للتنبؤات التي تبلغ 5 دولارات لكل 1000 سجل نصي أغلى بكثير من واجهة برمجة تطبيقات اللغة الطبيعية. بالإضافة إلى ذلك ، بالنسبة لتدريب النموذج ، يتقاضى AutoML 3 دولارات للساعة. في حين أن هذا لا يكاد يذكر في البداية ، بالنسبة لحالات الاستخدام التي تتطلب إعادة تدريب متكررة ، يمكن أن يضيف هذا مبلغًا كبيرًا ، خاصة وأن التدريب يبدو بطيئًا للغاية.
دعنا نستخدم نفس المثال لواجهة برمجة تطبيقات اللغة الطبيعية:
أنت تريد تحليل المشاعر الخاصة بـ 10000 مستند ، كل منها يحتوي على 1500 حرف ، لذلك سيتم تحصيل 20000 طلب منك. لنفترض أن تدريب النموذج يستغرق 20 ساعة ، وهو ما يكلف 48 دولارًا. لن يكلفك التنبؤ أي شيء ، لأن أول 30000 طلب مجانية. بالنسبة لمجموعات البيانات الصغيرة مثل هذه ، يعد AutoML اقتصاديًا للغاية.
ومع ذلك ، إذا كانت مجموعة البيانات الخاصة بك أكبر وتحتاج إلى توقع شعور مليون من نفس الحجم ، فسيتكلف ذلك 9850 دولارًا ، وهو مكلف للغاية. بالنسبة لمجموعات البيانات الكبيرة مثل هذه ، من المنطقي تطوير النموذج الخاص بك ونشره بنفسك دون استخدام AutoML.
Google Natural Language API مقابل AutoML Natural Language
تعد Google AutoML Natural Language أقوى بكثير من واجهة برمجة تطبيقات اللغة الطبيعية لأنها تتيح للمستخدم تدريب النماذج المخصصة لمجموعة البيانات والمجالات الخاصة بهم.
إنه سهل الاستخدام ولا يتطلب معرفة تعلم الآلة. الجانبان السلبيان هما التكاليف المرتفعة وضرورة توفير مجموعة بيانات عالية الجودة تحتاج إلى تدريب النماذج التي تعمل بشكل جيد.
يدعم الإصدار التجريبي من AutoML ثلاث مهام في البرمجة اللغوية العصبية فقط في الوقت الحالي (التصنيف ، وتحليل المشاعر ، واستخراج الكيان) ويدعم مستندات اللغة الإنجليزية فقط. عندما يتم إصدار هذه الخدمة بالكامل ، أتوقع إضافة لغات أخرى ومهام البرمجة اللغوية العصبية بمرور الوقت.