كيف أصبحت ميثوديوس آنا: تجربة تطوير وإطلاق مصنفات الرسائل الصوتية. الجزء 1

الهدف والهدف


في سلسلة من المقالات ، نعتبر المصنفين للمكالمات الصوتية ، ولماذا تكون هناك حاجة إليها ، وكيفية إيصالها سريعًا إلى المنتجين. سوف أخبرك عن الأساليب التي ستقلل الوقت من تعيين مهمة إلى بدء تشغيل نموذج والحصول على نتيجة أعمال.
بالنسبة لهذه المقالة ، يمكنك رؤية التقرير على الرابط


كيف أصبح ميثوديوس آنا. سلسلة رقم 1


لنبدأ!


اسمي جوليا ، أنا مهندس في قسم التعلّم الآلي لمزود كبير. حوالي 3000 مكالمة من العملاء تصل إلى مركز الاتصال الخاص بنا يوميًا. يستقبل كل مشغل 100 مكالمة في اليوم. ماذا بعد؟ يبدو أن هذا يقبل 100 مكالمة. ولكن هناك الكثير من موضوعات المكالمات إلى الشركة ، يحتاج المشغل إلى فهم جميع المنتجات والخدمات والعمليات الخاصة بالشركة. إذا أخذنا طلبات العملاء الأكثر شيوعًا ، فيمكن تجميعها في 40 موضوعات (!) ، ولا تزال هناك تطبيقات غير نمطية تحتاج أيضًا إلى معالجتها.
صورة


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


فكرة جيدة ، لماذا لا تجعل ... IVR بسيطة؟ (نظام من الرسائل الصوتية المسجلة مسبقًا التي تقوم بتوجيه المكالمات داخل مركز الاتصال باستخدام المعلومات التي أدخلها العميل على لوحة مفاتيح الهاتف باستخدام الاتصال بالألوان . wiki )


صورة


لكن قلة من الناس تحب الاستماع إلى صوت مسجل لفترة طويلة ، والانتظار ، ما الرقم الذي يجب الضغط عليه ، لكن في النهاية ما زالوا لا يحصلون على المعلومات اللازمة.


لا نريد تعذيب عملائنا باستخدام تقنية الرد الآلي (IVR) وقمنا بتعيين المهمة - لتصنيف طلب المشترك وفقًا للجملة الأولى. وبالتالي ، وفقًا للطلب المعبر عنه ، سيحدث التوجيه بين المشغلين.


معطيات


يقوم مشغلو الدعم الفني في نتائج كل مكالمة بتعريف موضوع المكالمة لمدة 10 سنوات تقريبًا. حددنا أكثر من 16 مجموعة ، وظهرت العلامات من هذه المواضيع. بعد ذلك ، قمنا بتحميل سجلات لمحادثات 120 ألفًا حول مواضيع مختلفة ، وتعرّفنا على تسجيل محادثة أحد العملاء باستخدام Yandex.SpeechKit ، وقسمناها إلى عبارات بالصمت. لذلك حصلنا على قطع من الصوت مع عبارات منفصلة.


اسمحوا لي أن أذكرك أن هدفي هو تصنيف طلب العميل الأولي ، لذلك تم اختيار العبارة الأولى فقط من كل مكالمة. في المجموع ، كانت البيانات عبارة عن عبارات 120 ألف عميل بتنسيق نصي مع ترميز من المشغلين. المعالجة المسبقة للنص القياسي: حذف كلمات التوقف وتطبيع النص (الرقائق: إرفاق جسيم "غير" بالكلمة التالية) والبيانات جاهزة. سوف أخبركم المزيد عن خط أنابيب المعالجة المسبقة في مقال آخر.


تصنيف


بعد ذلك ، بعد تلقي النص المعالج ، أجرينا العديد من التجارب ، تم فرزها من خلال تكوينات مختلفة من النماذج والزخارف.


الجدول مع مقارنة النتائج التجريبية
ساذج بايزSVMالانحدار اللوجستيغابة عشوائيةLightGBMXGBoostالشبكة العصبية
TF-IDF unigram66.969.669.764.368.268.270.3
TF- جيش الدفاع الإسرائيلي bigram68.470.470.564.368.468.370.5
TF- جيش الدفاع الإسرائيلي trigram68.470.370.564.268.368.170.5
Word2Vec67.969.369.668.770.269.370.7
Word2Vec + TF-IDF66.469.869.468.370.269.970.3
سياق TF-IDF +70.671.772.467.371.370.371.2
Word2Vec + السياق69.271.871.169.271.470.972.1
سياق Word2Vec + TF-IDF +69.770.471.070.371.271.371.8

أعطيت أفضل نتيجة من قبل المجموعة القياسية من TF-IDF والانحدار اللوجستي. يُظهر الجدول مقياس درجة f. في بعض التجارب ، بالإضافة إلى النص ، تمت إضافة 11 علامة إضافية حول العميل (السياق) في وقت الاتصال. على أمل أن هذا سوف يرفع الجودة بطريقة أو بأخرى. السياق - هذه هي علامات منطقية ، سواء كان لدى العميل رصيد سالب الآن ، وما إذا كان يتم تعيين الإصلاح إلى العنوان والآخرين الذين يميزون العميل في الوقت الحالي. لكن حتى مع السياق ، الجودة رديئة ، 72٪ فقط تم تحقيقها.


تحليل الأخطاء


بدون تحليل الأخطاء ، لا يمكن تحسين جودة التصنيف. بعد فحص الحالات التي تكون فيها النماذج خاطئة ، حددنا المشكلات النموذجية التالية:


  • العلامات سيئة
  • الخلل الطبقي
  • من الصعب على الناس صياغة الفكر
  • التعرف على الكلام

وسم


غالبًا ما كانت العلامات غير صحيحة بسبب حقيقة أن المحادثة يمكن أن تبدأ بموضوع واحد وتنتهي بموضوع آخر ، وقام المشغل بتعيين موضوع المكالمة ، والذي قيل في نهاية الحوار. إعادة توزيع هذه الحالات يدويًا واختفت المشكلة.


الرصيد الطبقي


هناك عدة طرق لتحقيق التوازن بين الطبقات.


مزيد من التفاصيل
  1. تحت أخذ العينات. إزالة عشوائية من الأمثلة من الطبقات الكبيرة.
  2. الإفراط في أخذ العينات. إضافة عشوائية من الأمثلة من الطبقات الثانوية.
  3. أقلية أخذ العينات الاصطناعية. إضافة عشوائية من الأمثلة من أصغر الفصول ، ولكن تغييرها قليلاً.

يعتمد أي أسلوب للاختيار على المهمة وكمية البيانات. كجزء من هذه المهمة ، كان من الممكن تحقيق التوازن بين مجموعة البيانات عن طريق إزالة أمثلة من معظم فئات التردد إلى القيمة المتوسطة لعدد الأمثلة ، ولكن ظلت الفئات الثانوية دون تغيير.


يصعب على الناس صياغة الأفكار


بعد قراءة العبارات القليلة الأولى ، لاحظنا أن 36٪ من طلبات البحث تحتوي على نص غير مُعلِّم ، على سبيل المثال: "مرحبًا ، مرحبًا" أو "مرحبًا ، لدي سؤال". فقط بعد أن سأل المشغل: "ما هو سؤالك؟" ، صاغ العميل المشكلة.


وبالتالي ، كان من الخطأ أخذ العبارة الأولى فقط من العميل من المحادثة ؛ لم يكن بإمكان شخص ما ببساطة صياغة طلب على الفور. لذلك ، لكل عبارة أولى ، تم حساب "المعلوماتية". إذا لم يعزو النموذج الطلب بثقة عالية إلى أي من الفئات ، أي أن جميع الفئات تلقت قيمة احتمالية متساوية ، تكون الرسالة غير معلوماتية وتحتاج إلى أخذ العبارة الثانية. وإذا تم تحديد الفصل بالفعل باحتمال كبير ، فستكون العبارة الأولى كافية.


هنا قد يظهر السؤال الصحيح ، ولكن ماذا تفعل في المنتج ، لأنه سيكون هناك نفس الاستعلامات غير المفيدة. سأتحدث عن هذا لاحقًا في المقالة التالية.


التعرف على الكلام


عند تحليل الأخطاء ، لاحظنا وجود أخطاء في التعرف على النص ، بسبب تحديد الفئة بشكل غير صحيح. على سبيل المثال ، تم استبدال كلمة "الرصيد" أحيانًا بكلمة "banana". قررنا مقارنة الاعتراف من Yandex و Google. لقد أظهرت Google نفسها على نحو أفضل في بياناتنا ، لكن ليس بقدر ارتفاع المبلغ الزائد عنها ، فقد ارتفع السعر إلى الضعف تقريبًا.


مقارنة التعرف على الكلام بين نظامين.

صورة


ملخص تحليل الخطأ


بعد تحليل الأخطاء وتصحيحها ، تمكنا من تحسين الجودة إلى معدل f متوسط ​​بلغ 84 ٪ ؛ وكانت أفضل جودة لا تزال نتيجة الانحدار اللوجستي.


زيادة الجودة لكل فصل
فئةكانأصبح
مشاكل الانترنت59.9786.5
مشاكل مع KTV86.7189.02
الاتصال الداخلي51.585.74
اتفاقية57.8169.13
دفع46.8174.26
.........
متوسط72.4484.39

النتائج


تلخيص المرحلة الأولى من التنمية ، يمكننا استخلاص النتيجة التالية.


بادئ ذي بدء ، تحتاج إلى التعامل مع البيانات والترميز. يجب عدم تدريب الشبكات العصبية على الفور ، على البيانات غير الصحيحة لن يكون هناك فائدة كبيرة من هذا. لتجنب إهدار الوقت والطاقة ، يكفي تحليل الأخطاء في الطرز "البسيطة".


نراكم في السلسلة الثانية ، حيث سنتحدث عن كيفية تشغيل نموذج مدرّب بطريقة إنتاجية. سوف نستمع إلى أمثلة حول كيفية تلقي Methodode للروبوت ، وسنفهم سبب تحوله إلى Anna.

Source: https://habr.com/ru/post/ar472350/


All Articles