إذا قمت بتسجيل الدخول إلى
Spotify.me ، يمكنك الحصول على ملخص
مخصص لكيفية تفهمك Spotify من خلال الموسيقى التي تستمع إليها على موقع Spotify هذا. هذا رائع!
أستمع إلى الكثير من الموسيقى وأستمتع بالعمل مع البيانات ، لذلك ألهمني لمحاولة تحليل مجموعتي الموسيقية.
كنت فضولية للغاية إذا كان هناك أي مكونات محددة تتكون من الأغاني الناجحة. ما الذي يجعلها باردة؟ لماذا نحب الزيارات ، وهل لديهم "DNA" معين؟
مهمة
قادني ذلك إلى محاولة الإجابة على سؤالين باستخدام بيانات Spotify:
- كيف تبدو قائمة تشغيل الموسيقى الخاصة بي؟
- هل هناك سمات صوتية محددة مشتركة بين جميع الأغاني الناجحة؟
الأدوات
لحسن الحظ ، هناك أدوات بسيطة جدًا للاتصال بـ Spotify ، واستقبال البيانات ، ثم تصورها.
سنعمل مع
لغة البرمجة
Python 3 ،
مكتبة Spotipy Python ، التي تتيح لك الاتصال بـ
Spotify Web API ،
وسنتصور البيانات باستخدام
plot.ly و
Seaborn .
مجموعة البيانات
في نهاية كل رمز ، يقوم Spotify بتجميع قائمة تشغيل تضم أكثر 100 أغنية تم تشغيلها. تم تحميل مجموعة البيانات التي استخدمتها بالفعل على Kaggle:
Top Spotify Tracks of 2018 . تبدو قائمة أفضل 100 أغنية مع Spotify وكأنها كمية معقولة من البيانات لدراسة الزيارات ، أليس كذلك؟
لنبدأ!
للبدء ، تحتاج إلى إنشاء حساب على
developer.spotify.com . بعد ذلك ، يمكنك الوصول مباشرة إلى
Spotify Web API Console والبدء في استكشاف نقاط نهاية API المختلفة.
ملاحظة : رابط الكود الذي استخدمته للمشروع هو في نهاية المنشور.
بعد الاتصال بـ Spotify Web API ، سنقوم بإنشاء كائن Spotify باستخدام مكتبة Spotipy Python ، والتي سنستخدمها بعد ذلك لإرسال الطلبات إلى نقطة نهاية Spotify.
import spotipy from spotipy.oauth2 import SpotifyClientCredentials from spotipy import util cid =”Your-client-ID” secret = “Your-Secret” client_credentials_manager = SpotifyClientCredentials(client_id=cid, client_secret=secret) sp = spotipy.Spotify(client_credentials_manager=client_credentials_manager)
تحليل بيانات قائمة التشغيل الخاصة بي
هذه هي واحدة من أهم الخطوات في علم البيانات. هدفنا هنا هو فهم نوع الموسيقى في قائمة التشغيل الخاصة بي ، واستخراج أي ملاحظات مثيرة للاهتمام ومقارنتها مع الخصائص الصوتية لمئات الأغاني الشعبية لعام 2018.
الرسم البياني تردد الأداء
كم مرة يظهر الفنانون في قائمة التشغيل الخاصة بيبالنظر إلى هذا الرسم البياني ، أستطيع أن أفهم عدد المرات التي يجتمع فيها الفنانون في واحدة من قوائم التشغيل الخاصة بي.
مواصفات الصوت
الآن دعونا نلقي نظرة على ميزات الصوت للأغاني من قائمة التشغيل. قامت Spotify بتجميع قائمة
بمواصفات الصوت لكل مسار على Spotify! فيما يلي وصف موجز للميزات التي سنستخدمها في هذه المقالة:
الآلات : تتنبأ بعدم وجود غناء في المسار. في هذا السياق ، تعتبر الأصوات "أوه" و "aaaa" مفيدة. من الواضح أن موسيقى الراب أو المسارات التي تحتوي على كلمات "صوتي". كلما اقتربت قيمة الأداة من 1.0 ، زاد احتمال ألا يحتوي المسار على صوت.
الطاقة : هذه قيمة في النطاق من 0.0 إلى 1.0 تميز معيار إدراك "السطوع" و "النشاط" للأغنية. عادة ما تكون التراكيب النشطة سريعة وصاخبة وصاخبة. على سبيل المثال ، يحتوي معدن الموت على طاقة عالية ، ومقدمة باخ لديها مؤشرات منخفضة على هذا النطاق.
الصوتي : مقياس للثقة في أن التكوين صوتي في حدود 0.0 إلى 1.0. قيمة 1.0 تعني ثقة عالية في أن التكوين صوتي.
Liveness : يتعرف على وجود المستمعين في التسجيل. كلما ارتفعت قيمة الثقل ، زاد احتمال إجراء الأغنية على الهواء مباشرة. قيمة أعلى من 0.8 تعطي ثقة جادة في الأداء الحي.
Speechiness (text) : يكتشف Speechiness وجود النص في أغنية. إذا كانت نسبة الكلام أعلى من 0.66 ، فمن المرجح أن تتكون من نص ، فالقيمة من 0.33 إلى 0.66 تعني أن الأغنية يمكن أن تحتوي على كل من الموسيقى والكلمات ، والقيمة أدناه 0.33 تعني أنه لا توجد كلمات في الأغنية.
Danceability : تصف Danceability مدى ملاءمة مسار الرقص استنادًا إلى عناصر موسيقية مثل الإيقاع واستقرار الإيقاع وقوة النبض والثبات العام. التركيبات بقيمة 0.0 هي الأقل رقصًا ، والقيمة 1.0 هي الأكثر رقصًا.
التكافؤ : تصف هذه القيمة في النطاق من 0.0 إلى 1.0 الإيجابية الموسيقية التي تنقلها الأغنية. الأغاني ذات التكافؤ العالي تبدو أكثر إيجابية (أي أنها تنقل السعادة والفرح أو النشوة) ، والأغاني ذات التكافؤ المنخفض تبدو أكثر سلبية (بمعنى أنها حزينة أو مكتئبة أو غاضبة).
توزيع أنماط الموسيقى في قائمة التشغيل الخاصة بينتائج الملاحظة:
- تحتوي معظم الأغاني في قائمة التشغيل الخاصة بي على توزيع واسع للرقص ولا يوجد فيها العديد من الأغاني "السعيدة" ، كما يتضح من التردد العالي للأغاني التي تقل قيمها عن 0.5 درجة. لذلك ، يمكننا أن نقول أنني أحب الأغاني التي يمكنك الرقص عليها (وهذا صحيح!)
- هناك انحدار حاد على الرسم البياني للخطاب ، والأداء والقليل من الحيوية . هذا يخبرنا أنه في الموسيقى من قائمة التشغيل الخاصة بي نادراً ما توجد كلمات ، وهناك القليل من المؤلفات الموسيقية والأغاني التي يتم تنفيذها مباشرة.
- يتم توزيع الصوت بالتساوي تقريبًا بين 0 و 1 ، أي أنه ليس لدي تفضيلات في هذه السمة. (عادة ما أحب الأغاني الصوتية ، لكنني لا أبحث عن أغلفة صوتية لكل أغنية).
- أخيرًا ، يتم توزيع الطاقة بشكل طبيعي ولها ذيول صغيرة في كلا الطرفين ، مما يعني فرصة أقل لإضافتها إلى قائمة التشغيل الخاصة بي. وهذا هو ، في الواقع ، أنا أحب التراكيب مع الطاقة المتوسطة.
- مؤلفاتي ليست شعبية للغاية
2018 أفضل 100 أغنية تحليل البيانات
بعد تنزيل واستيراد مجموعة البيانات من Kaggle إلى طلبي ، بدأت بتحليل أشهر الفنانين ، وتحدد بعدد الزيارات في هذه القائمة.
2018 أفضل 100 أغنية أداء من قبل الترددالفنانون الأكثر مشاهدة في أفضل 100 أغنية 2018مقتطف الشفرةنشر Malone و XXXTENTACIONالآن دعونا نتفحص الخصائص الصوتية للمئات الأغاني الأكثر شعبية في مجموعة البيانات الخاصة بنا ، ونرى كيف تبدو! سننشئ نفس الرسم البياني لقائمة التشغيل الخاصة بي حتى تتمكن من مقارنتها لاحقًا.
توزيع أنماط الموسيقى في أفضل 100 أغنية 2018بالنظر إلى الرسم البياني ، يمكننا أن نرى أن أفضل 100 مؤلف لها الخصائص التالية:
- رقص وطاقة مرتفعان للغاية ، لكن هناك احتمال ضئيل للأداء المباشر ، ووجود نص وصوتيات (نرى بالفعل بعض العلامات على أن قائمة التشغيل الخاصة بي ليست باردة مثل أفضل 100).
على سبيل المثال ، تتمتع أغنية "In My Feelings" التي قام بها Drake من مجموعة البيانات الخاصة بنا بقيمة طاقة عالية ومرتفعة نسبيًا.
أخيرًا ، قررت إنشاء مخطط بتلات لأفضل 100 أغنية وألقي عليها خصائص الصوت في قائمة التشغيل الخاصة بي.
يتم عرض أفضل 100 أغنية باللون الأزرق وأغاني تظهر باللون البرتقالي.
استنتاج
لذلك يبدو أن لدي إجابات لكلا السؤالين من بداية المنشور. تمكنت من رؤية كيف تبدو موسيقاي وعثرت على الحمض النووي للأغاني الناجحة. تشبه خصائص الصوت من قائمة التشغيل الخاصة بي إلى حد ما أفضل 100 أغنية ، لكن لديّ أغانٍ صوتية أكثر وأداءً مباشرًا أقل.
تريد أن تكتب أغنية ناجحة؟ اجعل رقصها ، مع طاقة كبيرة وقليل من الإيجابية.
أنا سعيد بالنتائج ، لكنني أريد مواصلة البحث.
تم نشر رمز المشروع بأكمله على
جيثب .
إليك ما أوصي
به بعد ذلك :
- تعرف على كيفية استخدام قائمة التشغيل لتحديد تفضيلاتك الشخصية والإعلانات الموصى بها التي قد ترغب فيها.
- استخدم خوارزمية التعلم التجميعي K-Secondary Machine للتعرف على الأغاني المشابهة لأغانيك. حتى تتمكن من البحث عن الأغاني الجديدة التي قد تعجبك.
- استخدم التعلم الآلي للتنبؤ بـ "شعبية" الأغاني بناءً على خصائصها الصوتية
شكرًا لألفين تشون وآشريث وجون كوخ على مقالات مفيدة عن هذا الموضوع. سبوتيفي وسبوتي ، شكرا على واجهة برمجة التطبيقات الرائعة ومكتبة!