🚀 جرب Zilliz Cloud، الـ Milvus المدارة بالكامل، مجاناً — تجربة أداء أسرع بـ 10 أضعاف! جرب الآن>>

milvus-logo
LFAI

تقنيات المعالجة

  • Scenarios
July 27, 2021
Shiyu Chen

الصوت هو نوع بيانات كثيف المعلومات. على الرغم من أنه قد يبدو قديمًا في عصر محتوى الفيديو، إلا أن الصوت لا يزال مصدرًا أساسيًا للمعلومات بالنسبة للعديد من الأشخاص. على الرغم من الانخفاض طويل الأجل في عدد المستمعين، فقد استمع 83% من الأمريكيين الذين تبلغ أعمارهم 12 عامًا أو أكثر إلى الراديو الأرضي (AM / FM) في أسبوع معين في عام 2020 (انخفاضًا من 89% في عام 2019). وعلى العكس من ذلك، شهد الصوت عبر الإنترنت ارتفاعًا مطردًا في عدد المستمعين على مدار العقدين الماضيين، حيث أفادت دراسة مركز بيو للأبحاث نفسها أن 62% من الأمريكيين يستمعون إلى شكل من أشكاله أسبوعيًا.

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

وباعتباره ناقل للمعلومات، يمكن تصنيف الصوت إلى ثلاث فئات:

  1. الكلام: وسيط تواصل يتألف من كلمات وقواعد نحوية. يمكن تحويل الكلام إلى نص باستخدام خوارزميات التعرّف على الكلام.
  2. الموسيقى: أصوات صوتية و/أو آلات موسيقية مدمجة لإنتاج مقطوعة تتألف من اللحن والتناغم والإيقاع والجرس. يمكن تمثيل الموسيقى بنوتة موسيقية.
  3. الشكل الموجي: إشارة صوتية رقمية يتم الحصول عليها من خلال رقمنة الأصوات التناظرية. يمكن أن تمثل الأشكال الموجية الكلام والموسيقى والأصوات الطبيعية أو المركبة.

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

تقنيات المعالجة

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

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

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

استخراج ميزات الصوت

يعتبر استخلاص الميزات أهم تقنية في أنظمة استرجاع الصوت لأنه يتيح البحث عن تشابه الصوت. تنقسم طرق استخراج الميزات الصوتية إلى فئتين:

  • نماذج استخراج الميزات الصوتية التقليدية مثل نماذج المزيج الغوسي (GMMs) ونماذج ماركوف المخفية (HMMs);
  • نماذج استخراج السمات الصوتية القائمة على التعلم العميق، مثل الشبكات العصبية المتكررة (RNNs)، وشبكات الذاكرة طويلة المدى (LSTM)، وأطر الترميز وفك التشفير، وآليات الانتباه، وما إلى ذلك.

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

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

في هذه المقالة، يتم استخدام الشبكات العصبية الصوتية واسعة النطاق المدربة مسبقًا للتعرف على الأنماط الصوتية (PANNs) لاستخراج متجهات السمات بمتوسط دقة (mAP) يبلغ 0.439 (هيرشي وآخرون، 2017).

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

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

يصور الرسم البياني التالي عملية البحث عن التشابه العامة باستخدام ميلفوس: how-does-milvus-work.pngكيف-يفعل-ميلفوس-عمل.png

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

نظرة عامة على النظام

يتكون نظام استرجاع الصوت بشكل أساسي من جزأين: الإدراج (الخط الأسود) والبحث (الخط الأحمر).

audio-retrieval-system.png Audio-retrieval-نظام-استرجاع الصوت.png

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

الخطوة 1: إدراج البيانات

فيما يلي مثال على الكود البرمجي لتوليد تضمينات صوتية باستخدام نموذج استدلال PANNs المدرب مسبقًا وإدراجها في Milvus، والذي يعيّن معرّفًا فريدًا لكل تضمين متجه.

1 wav_name, vectors_audio = get_audio_embedding(audio_path)  
2 if vectors_audio:    
3     embeddings.append(vectors_audio)  
4     wav_names.append(wav_name)  
5 ids_milvus = insert_vectors(milvus_client, table_name, embeddings)  
6 

ثم يتم تخزين معرفات ids_milvus التي تم إرجاعها مع المعلومات الأخرى ذات الصلة (مثل wav_name) للبيانات الصوتية المحفوظة في قاعدة بيانات MySQL للمعالجة اللاحقة.

1 get_ids_correlation(ids_milvus, wav_name)  
2 load_data_to_mysql(conn, cursor, table_name)    
3  

يقوم Milvus بحساب مسافة الضرب الداخلي بين متجهات الميزات المخزنة مسبقًا ومتجهات ميزات الإدخال، المستخرجة من بيانات الصوت المستعلم باستخدام نموذج الاستدلال PANNs، وإرجاع ids_milvus لمتجهات الميزات المتشابهة، والتي تتوافق مع البيانات الصوتية التي تم البحث عنها.

1 _, vectors_audio = get_audio_embedding(audio_filename)    
2 results = search_vectors(milvus_client, table_name, [vectors_audio], METRIC_TYPE, TOP_K)  
3 ids_milvus = [x.idfor x in results[0]]  
4 audio_name = search_by_milvus_ids(conn, cursor, ids_milvus, table_name)    
5

مرجع واجهة برمجة التطبيقات والعرض التوضيحي

واجهة برمجة التطبيقات

تم بناء نظام استرجاع الصوت هذا بكود مفتوح المصدر. ميزاته الرئيسية هي إدراج البيانات الصوتية وحذفها. يمكن عرض جميع واجهات برمجة التطبيقات عن طريق كتابة 127.0.0.1: /docs في المتصفح.

العرض التوضيحي

نستضيف عرضًا توضيحيًا مباشرًا لنظام استرجاع الصوت المستند إلى Milvus عبر الإنترنت يمكنك تجربته باستخدام بياناتك الصوتية الخاصة.

audio-search-demo.png Audio-search-demo.png

الخلاصة

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

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

المراجع

Hershey, S., Chaudhuri, S., Ellis, D.P., Gemmeke, J.F., Jansen, A., Moore, R.C., Plakal, M., Platt, D., Saurous, R.A., Seybold, B. and Slaney, M., 2017, March. بنية شبكة CNN لتصنيف الصوت على نطاق واسع. في مؤتمر IEEE الدولي للصوتيات والكلام ومعالجة الإشارات (ICASSP) لعام 2017، ص 131-135، 2017

لا تكن غريبًا

  • ابحث أو ساهم في Milvus على GitHub.

  • تفاعل مع المجتمع عبر Slack.

  • تواصل معنا على تويتر.

Like the article? Spread the word

استمر في القراءة