الشبكات العصبية العميقة لتقييم المكالمات التلقائي

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

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



كيف قمنا بتدريب شبكة عصبية عميقة


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

في العينات المحايدة ، عامل التشغيل:

  • لم يرفعوا أصواتهم.
  • تزويد العملاء بجميع المعلومات المطلوبة ؛
  • لم ترد على استفزازات العميل.

في الأنماط المشبوهة ، قام المشغلون غالبًا بما يلي:

  • استخدام لغة فاحشة
  • رفع أصواتهم أو الصراخ على العملاء ؛
  • ذهبت إلى الشخص ؛
  • رفض تقديم المشورة بشأن القضايا.

عندما انتهت الخوارزمية من معالجة الملفات ، وضعت علامة على 200 ملف على أنها غير صالحة. لا تحتوي هذه الملفات على أي علامات مشبوهة أو محايدة. اكتشفنا ما كان في هذه الملفات 200:

  • قام العميل بإنهاء المكالمة مباشرة بعد أن رد عليه عامل الهاتف ؛
  • لم يقل العميل أي شيء بعد الرد عليه ؛
  • كان هناك الكثير من الضجيج من جانب العميل أو المشغل.

عندما قمنا بحذف هذه الملفات ، قمنا بتقسيم الـ 1500 المتبقية إلى حالات تدريب واختبار. في المستقبل ، استخدمنا مجموعات البيانات هذه للتدريب واختبار شبكة عصبية عميقة.

الخطوة 1: استخراج الميزات


يلعب استخراج الميزات عالية المستوى دورًا مهمًا في التعلم الآلي ، مثل يؤثر بشكل مباشر على كفاءة الخوارزمية. بعد تحليل جميع المصادر الممكنة ، اخترنا الأعراض التالية:

إحصائيات الوقت


  • معدل العبور صفر : السرعة التي تتغير بها الإشارة من زائد إلى ناقص والعكس صحيح.
  • متوسط ​​طاقة الإطار : مجموع الإشارات مربعة ومعايرة الطول المطول للإطار.
  • إنتروبيا طاقة الإطار الفرعي: إنتروبيا طاقة الإطار الفرعي المقيسة. يمكن تفسيره على أنه مقياس للتغيرات الجذرية.
  • الانحراف المتوسط ​​/ المتوسط ​​/ القياسي للإطار .

إحصائيات الطيفية (بفترات التردد)


  1. طيفي Centroid.
  2. التوزيع الطيفي.
  3. الكون الطيفي.
  4. الإشعاع الطيفي.
  5. التوهين الطيفي.

تكون المعاملات cepstral لتردد الدرجة اللونية ومتجه التشبع حساسة لطول إشارة الإدخال. يمكننا استخراجها من الملف بأكمله في وقت واحد ، ومع ذلك ، سنفقد تطوير السمة في الوقت المناسب. نظرًا لأن هذه الطريقة لا تناسبنا ، قررنا تقسيم الإشارة إلى "نوافذ" (كتل زمنية).

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

حجم النافذة - 0.2 ثانية ؛ خطوة النافذة - 0.1 ثانية.

الخطوة 2: تحديد نبرة الصوت في عبارات منفصلة


نهجنا الأول لحل المشكلة هو تحديد ومعالجة كل عبارة في الدفق بشكل منفصل.

بادئ ذي بدء ، قمنا بالتعديل وعزل جميع العبارات باستخدام مكتبة LIUM . كانت ملفات الإدخال ذات جودة رديئة ، لذلك عند المخرج قمنا أيضًا بتطبيق التسوية والعتبة التكيفية لكل ملف.



معالجة الانقطاعات والصمت الطويل


عندما حددنا الحدود الزمنية لكل عبارة (كل من العميل والعامل) ، قمنا بفرضها على بعضنا البعض وكشفنا عن الحالات التي يتحدث فيها كلا الشخصين في نفس الوقت ، وكذلك الحالات عندما يكون كلاهما صامتًا. بقي فقط لتحديد قيمة العتبة. اتفقنا على أنه إذا تحدث المشاركون لمدة 3 ثوانٍ أو أكثر في نفس الوقت ، فسيعتبر ذلك انقطاعًا. للصمت ، تم تعيين عتبة 3 ثوان بالضبط.



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

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


ثم قمنا بتدريب شبكة LSTM الخاصة بنا لتحديد نغمة كل عبارة.

كمجموعة تدريب ، أخذنا 70 ملفًا مع 30 عبارة في المتوسط ​​(15 عبارة لكل جانب).

كان الهدف الرئيسي هو تقييم عبارات مشغل مركز الاتصال ، لذلك لم نستخدم خطاب العميل للتدريب. استخدمنا 750 عبارة كمجموعة بيانات تدريبية و 250 عبارة كاختبار. ونتيجة لذلك ، تعلم العصبون تصنيف الكلام بدقة 72٪.

ولكن في النهاية ، لم نكن راضيين عن أداء شبكة LSTM: استغرق العمل معها وقتًا طويلاً ، في حين أن النتائج بعيدة عن الكمال. لذلك ، تقرر استخدام نهج مختلف.

حان الوقت لمعرفة كيفية تحديد نغمة الصوت باستخدام XGBoost بالإضافة إلى مزيج من LSTM و XGB.

تحديد النغمة الصوتية للملف بأكمله


وضعنا علامة على الملفات على أنها مريبة إذا احتوت على عبارة واحدة على الأقل تنتهك القواعد. لذا وضعنا علامة على 2500 ملف.

لاستخراج السمات ، استخدمنا نفس الأسلوب ونفس بنية ANN ، ولكن مع اختلاف واحد: قمنا بتغيير البنية لتناسب الأبعاد الجديدة للسمات.

مع المعلمات المثلى ، أنتجت الشبكة العصبية دقة 85 ٪.


XGBoost


يتطلب نموذج XGBoost عددًا ثابتًا من السمات لكل ملف. لتلبية هذا المطلب ، قمنا بإنشاء العديد من الإشارات والمعلمات.



تم استخدام الإحصائيات التالية:

  1. متوسط ​​قيمة الإشارة.
  2. متوسط ​​قيمة أول 10 ثوانٍ من الإشارة.
  3. متوسط ​​قيمة آخر 3 ثوانٍ من الإشارة.
  4. متوسط ​​قيمة الحدود القصوى المحلية في الإشارة.
  5. متوسط ​​قيمة الحد الأقصى المحلي في أول 10 ثوانٍ من الإشارة.
  6. متوسط ​​قيمة الحد الأقصى المحلي في آخر 3 ثوانٍ من الإشارة.

تم حساب جميع المؤشرات بشكل منفصل لكل إشارة. العدد الإجمالي للسمات هو 36 ، باستثناء طول السجل. ونتيجة لذلك ، كان لدينا 37 علامة رقمية لكل سجل.

دقة التنبؤ لهذه الخوارزمية هي 0.869.

مزيج من LSTM و XGB


لدمج المصنفات ، تجاوزنا هذين النموذجين. عند الإخراج ، زادت هذه الدقة بنسبة 2٪.


أي أننا استطعنا زيادة دقة التنبؤ إلى 0.9 ROC - AUC (المنطقة تحت المنحنى).

النتيجة


اختبرنا شبكتنا العصبية العميقة على 205 ملفات (177 محايدة ، 28 مشبوهة). كان على الشبكة معالجة كل ملف وتحديد المجموعة التي تنتمي إليها. فيما يلي النتائج:

  • تم تحديد 170 ملفًا محايدًا بشكل صحيح ؛
  • تم تحديد 7 ملفات محايدة على أنها مريبة ؛
  • تم تحديد 13 ملفًا مشبوهًا بشكل صحيح ؛
  • تم تحديد 15 ملفًا مشبوهًا على أنها محايدة.

لتقدير النسبة المئوية للنتائج الصحيحة / الخاطئة ، استخدمنا مصفوفة الخطأ في شكل جدول 2x2.

ابحث عن عبارة معينة في محادثة


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

أخذنا 200 عبارة بمتوسط ​​1.5 ثانية ، حيث يطلق المشغلون اسمهم واسم الشركة.

استغرق البحث عن هذه الملفات يدويًا وقتًا طويلاً ، لأن كان علي الاستماع إلى كل ملف للتحقق مما إذا كان يحتوي على العبارات اللازمة. لتسريع المزيد من التدريب ، قمنا "بشكل مصطنع" بزيادة مجموعة البيانات: قمنا بتغيير كل ملف 6 مرات بشكل عشوائي - أضفنا ضوضاء ، غيرنا التردد و / أو الحجم لذا لدينا مجموعة بيانات من 1500 ملف.

الملخص


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


قمنا بتشغيل 300 ملف آخر عبر الشبكة لمعرفة ما إذا تم نطق العبارة المطلوبة في الثواني العشر الأولى. بالنسبة لهذه الملفات ، كانت الدقة 87٪.

في الواقع ، ما كل هذا؟


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

فيما يلي بعض الأمثلة عن كيفية مساعدة التعرف على الكلام للمنظمات:

  • جمع البيانات وتحليلها لتحسين تجربة المستخدم الصوتية ؛
  • تحليل سجلات المكالمات لتحديد العلاقات والاتجاهات ؛
  • التعرف على الناس بالصوت ؛
  • ابحث عن انفعالات العملاء وحددها لتحسين رضا المستخدم
  • زيادة متوسط ​​الإيرادات لكل مكالمة ؛
  • تقليل التدفق ؛
  • وغير ذلك الكثير!

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


All Articles