اگه اهل موسیقی و مخصوصاً اسپاتیفای باشی، حتماً دیدی که هر روز یه چارت جذاب داره که پر از آهنگای پرطرفدار و ترند روزه. این چارتها خیلی مهمن؛ چون فقط یه لیست خشک نیستن! هم میتونن کلی به کسب درآمد کمک کنن، هم باعث میشن یه آهنگ بین آدمها معروف بشه و حتی به دنیای پلیلیستها هم راه پیدا کنه. حالا یه سوال: واقعاً چی باعث میشه یه آهنگ تو این چارتها رتبه بگیره و بترکونه؟ اگه بشه اینو بفهمیم، حسابی به موسیقیدونا، مارکتینگ و حتی کسایی که میخوان سرمایهگذاری کنن کمک میکنه.
خب، تو این پروژه جالب اومدن سعی کردن با کمک هوش مصنوعی و علم داده، پیشبینی کنن کدوم آهنگا میتونن تو چارت اسپاتیفای آمریکا موفق بشن. یعنی فقط با بررسی اطلاعات خود آهنگ (مثل ویژگیهای صوتی، مثلاً ریتم، تمپو، انرژی؛ اینا رو بهشون میگن audio features) و دادههایی مثل اینکه اوایل آهنگِ چند بار پخش شده و چه بازخوردی گرفته (که بهش engagement داده اولیه میگن)، یه سیستم ساختن.
برای این کار، کلی اطلاعات از ۱۴،۶۳۹ تا آهنگ منحصربهفرد جمع کردن. هم دادههای متادیتا (مثلاً اسم خواننده، سال انتشار، ژانر و…) و هم دادههای صوتی رو با API رسمی اسپاتیفای گرفتن (این API یه جور رابط برنامهنویسیه که میذاره دیتای اسپاتیفای رو راحت برداری).
پروژه رو تو دو فاز اجرا کردن: فاز اول، چند مدل مختلف یادگیری ماشین رو امتحان کردن. این مدلها چرا مهمن؟ خب، هرکدومشون یه جور با دادهها کار میکنن تا الگوهای موفقیت رو کشف کنن. مدلهایی که استفاده کردن اینا بودن:
- Logistic Regression (مدل رگرسیون لجستیک: با احتمال موفقیت یا شکست پیشبینی میکنه)
- K Nearest Neighbors یا KNN (اینم با شبیهترین آهنگای قبلی مقایسه میکنه)
- Random Forest (جنگل تصادفی: یه مدل قوی با کلی درخت تصمیم مختلف که نتیجش همیشه حسابی دقیق درمیاد)
- XGBoost (یه مدل خیلی خفن مخصوص رقابتهای علم داده که فوقالعاده سریع و قویه)
نتیجه چی شد؟ مدلهای Tree-based یعنی مدلایی که با درخت تصمیم کار میکنن مثل Random Forest و XGBoost، واقعاً ترکوندن و دو تا معیار مهم رو تقریباً بینقص آوردن بالا: Macro F1-score نزدیک ۰.۹۵ و دقت (Accuracy) حدود ۹۷ درصد! یعنی واقعاً کارشون معرکه بوده.
توی مرحله دوم، اومدن حسابی مدلها رو سختگیرانهتر تست کردن، یعنی مثلاً با دادههای مختلف ارزیابی کردن (به این روش میگن cross-validation)، تنظیمات مدل رو بهینه کردن (اصطلاحش hyperparameter tuning هست)، و حتی ریز به ریز کلاسها رو هم بررسی کردن که یهویی یه گروه آهنگ جا نمونه.
یه نکته جالب دیگه هم این بود که حتی وقتی دادههایی مثل تعداد پخش (stream count) و تاریخ رتبهبندی (rank history) رو حذف کردن و فقط با دادههای صوتی کار کردن، باز هم مدل میتونست با قدرت پیشبینی کنه. این خیلی باحاله؛ یعنی فقط از روی خود ویژگیهای موزیک هم میشه احتمال موفقیت آهنگ رو درآورد.
خلاصه اینکه: این تحقیق نشون میده مدلسازی فقط با دادههای آهنگ (audio-based modeling) واقعاً میتونه به کسایی که دنبال کشف استعداد جدید هستن (این کارو بهش میگن A&R scouting)، ساختن پلیلیستهای بهتر و حتی پیشبینی آهنگایی که تو آینده موفق میشن، کمک کنه—اونم خیلی قبل از اینکه آهنگ به اوج شهرت و پخش برسه.
پس دفعه بعدی که داری به یه آهنگ ترند گوش میدی، بدون شاید یه ماشینی پشتپرده از قبل خبر داشته این آهنگ قراره کولاک کنه!
منبع: +