Meet Yambda: One of the world’s largest open datasets for RecSys. سفارش کرنے والے الگورتھم لوگوں کو صحیح مصنوعات، فلموں، موسیقی، اور زیادہ کو تلاش کرنے میں مدد کرتے ہیں. وہ آن لائن دکانوں سے سٹریم پلیٹ فارمز تک کی خدمات کی بنیاد ہیں. ان الگورتھموں کی ترقی براہ راست تحقیق پر منحصر ہے، جس میں اعلی معیار، بڑے پیمانے پر ڈیٹا سیٹ کی ضرورت ہوتی ہے. تاہم، زیادہ سے زیادہ کھلے ذریعہ ڈیٹا سیٹ چھوٹے یا قدیم ہیں، کیونکہ کمپنیاں جو terabytes کے اعداد و شمار کو جمع کرتے ہیں، عام طور پر ان کو پرائیویسی کی نگرانیوں کی وجہ سے عوامی طور پر دستیاب کرتے ہیں. اس ڈیٹا سیٹ میں 4.79 بلین نامعلوم صارف کے تعاملات شامل ہیں، 10 ماہ کے صارف سرگرمی سے جمع کیا گیا ہے. ہم نے موسیقی سروس کا انتخاب کیا کیونکہ یہ روس میں سب سے بڑا سائن اپ پر مبنی سٹریمنگ سروس ہے، جس میں ماہانہ اوسط زائرین 28 ملین صارفین ہیں. ڈیٹا سیٹ کا ایک اہم حصہ مجموعی سننے، پسند، اور پسند نہیں کرتا، اور ذاتی سفارش کے نظام سے متعلق ٹریک خصوصیات بھی شامل ہے. تمام صارفین اور ٹریک ڈیٹا نامعلوم ہیں: ڈیٹا سیٹ میں صرف شمسی شناختیات شامل ہیں، صارف کی رازداری کو یقینی بناتا ہے. میں Vibe Yambda کی طرح بڑے کھلے ڈیٹا سیٹ کو جاری کرنے سے کئی مسائل کو حل کرنے میں مدد ملتی ہے۔ اعلی معیار، بڑے پیمانے پر ڈیٹا تک رسائی سائنسدانوں کے لئے نئے راستے کھولتی ہے اور نوجوان محققین کو حقیقی دنیا کے مسائل کے لئے مشین سیکھنے کو لاگو کرنے کے لئے ملتی ہے. میں Alexander Ploshkin ہوں، اور میں Yandex میں ذاتی سازی کی معیار کی ترقی کا رہنما ہوں. In this article, I’ll explain what the dataset consists of, how we collected it, and how you can use it to evaluate new recommender algorithms. چلو شروع کریں! بڑے پیمانے پر کھلے ڈیٹا سیٹ کیوں اہم ہیں؟ Recommender سسٹموں نے حالیہ برسوں میں ایک حقیقی renessance کا تجربہ کیا ہے. تکنیکی کمپنیوں کو بڑھتی ہوئی تعداد میں ٹرانسفررز پر مبنی ماڈلوں کو قبول کر رہے ہیں، دوسرے شعبوں میں بڑے زبان ماڈلوں (LLMs) کی کامیابی کی طرف سے حوصلہ افزائی کی جاتی ہے. ہم نے کمپیوٹر بصیرت اور قدرتی زبان کی پروسیسنگ سے سیکھا ہے کہ ڈیٹا حجم ان طریقوں کے کام کے لئے بہت اہم ہے: ٹرانسفررز چھوٹے ڈیٹا سیٹ پر بہت مؤثر نہیں ہیں لیکن ایک بار جب وہ لاکھوں ٹوکن تک پیمائش کرتے ہیں تو تقریبا ضروری بن جاتے ہیں. حقیقی طور پر بڑے پیمانے پر کھلے ڈیٹا سیٹ ڈومینر سسٹمز کے ڈومین میں ایک نادر ہے. مشہور ڈیٹا سیٹ جیسے LFM-1B، LFM-2B، اور موسیقی سننے کی تاریخ ڈیٹا سیٹ (27B) لائسنس کی حدود کی وجہ سے وقت کے ساتھ دستیاب نہیں ہوسکتے ہیں. Currently, the record for the number of user interactions is held by Criteo’s advertising dataset, with approximately 4 billion events. This creates a challenge for researchers: most don’t have access to web-scale services, meaning they can’t test algorithms under conditions that resemble real-world deployments. مقبول ڈیٹا سیٹ جیسے MovieLens، Steam، یا Netflix Prize میں، بہترین میں، دس ملین تعاملات ہیں اور عام طور پر واضح پیغامات، جیسے درجہ بندی اور جائزے پر توجہ مرکوز کرتے ہیں. اس کے باوجود، پیداوار کی سفارش کرنے والے سسٹموں کو بہت زیادہ متنوع اور متغیر سیگنالوں کے ساتھ کام کرتا ہے: کلک، پسند، مکمل سننے، دیکھنے، خریداری، وغیرہ. بہت سے ڈیٹا سیٹ ٹریننگ اور ٹیسٹ سیٹز کے درمیان ایک عادلانہ chronological تقسیم کی اجازت نہیں دیتے ہیں، جو مستقبل کی پیش گوئی کرنے کے لئے ڈیزائن کا اندازہ کرنے کے لئے اہم ہے، نہ صرف ماضی کی وضاحت. ان چیلنجز کو حل کرنے اور سفارش کرنے والے نظام میں نئے الگورتھم کی ترقی کی حمایت کرنے کے لئے، ہم Yambda کو جاری کر رہے ہیں. یہ ڈیٹا سیٹ فی الحال سفارش ڈومین میں صارف کے تعاملات کے لئے سب سے بڑا کھلی وسائل ہے. Yambda کے اندر کیا ہے؟ اس ڈیٹا سیٹ میں 1 ملین صارفین اور موسیقی سروس سے 9 ملین سے زائد موسیقی ٹریکوں کے ساتھ بات چیت شامل ہیں، مجموعی طور پر 4.79 بلین واقعات. سب سے پہلے، واضح ہونا چاہئے: تمام واقعات anonimized ہیں. ڈیٹا سیٹ صرف صارفین، ٹریڈز، آلبوموں اور فنکاروں کے لئے شماریاتی شناختیات کا استعمال کرتا ہے. ڈیٹا سیٹ میں اہم ناممکن اور واضح صارف کے اقدامات شامل ہیں: سننے: صارف نے ایک موسیقی ٹریک سنایا. مثال کے طور پر: صارف نے ٹریک کو پسند کیا (“thumbs up”). مختلف: صارف نے Like کو ہٹا دیا. غیر پسند: صارف نے ایک ٹریک کو پسند نہیں کیا (“پاس نیچے”). Unlike: صارف نے ایک dislike کو ہٹا دیا. ڈیٹا سیٹ کو زیادہ قابل رسائی بنانے کے لئے، ہم نے 480 ملین اور 48 ملین واقعات کے ساتھ چھوٹے نمونے بھی جاری کیے ہیں. ان subsets کے لئے مجموعی اعداد و شمار مندرجہ ذیل ٹیبل میں فراہم کی جاتی ہیں: ڈیٹا Apache Parquet فارمیٹ میں ذخیرہ کیا جاتا ہے، جو پائٹون ڈیٹا تجزیہ لائبریریوں جیسے Pandas اور Polars کی طرف سے لاگ ان کی حمایت کرتا ہے. فلیٹ: ہر لائن ایک صارف اور ٹریک کے درمیان ایک منفرد تعامل کی نمائندگی کرتا ہے. سلسلہ: ہر لائن میں ایک صارف کے مکمل تعامل کی تاریخ شامل ہے. The dataset structure is as follows: Yambda کی اہم خصوصیات یہ ہیں کہ یہ پرچم صارفین کے اعمال کے درمیان فرق کرنے میں مدد ملتی ہے جو قدرتی طور پر واقع ہوتے ہیں اور سفارشات کی طرف سے پیدا ہوتے ہیں. is_organic اگر اس کا مطلب یہ ہے کہ واقعہ ایک سفارش کی طرف سے شروع کیا گیا تھا. is_organic = 0 مثال کے طور پر، ایک اپنی مرضی کے مطابق موسیقی سٹریم یا ایک سفارش شدہ پریمیم لسٹ میں. تمام دیگر واقعات مصنوعی طور پر سمجھا جاتا ہے، جس کا مطلب ہے کہ صارف نے مواد کو اپنے آپ کو تلاش کیا. مندرجہ ذیل ٹیبلٹ مشورہ ڈھانچے کے واقعات کے بارے میں اعداد و شمار فراہم کرتا ہے: صارف کے تعامل کی تاریخ ذاتی سفارشات بنانے کے لئے اہم ہے. یہ طویل مدتی ترجیحات اور موقتی دلچسپیوں کو پکڑتا ہے جو کنکٹیکٹ کے ساتھ تبدیل ہوسکتا ہے. To help you better understand the data structure, here are some quick statistics on our dataset: مندرجہ بالا گرافوں سے پتہ چلتا ہے کہ صارف کی تاریخ کی لمبائی ایک سنگین ریٹائرمنٹ کی پیروی کرتی ہے. اس کا مطلب یہ ہے کہ جبکہ زیادہ تر صارفین کو نسبتا کم تعاملات ہیں، ایک چھوٹا سا لیکن اہم گروپ کو بہت طویل تعاملات کی تاریخ ہوتی ہے. یہ خاص طور پر سفارشات کے ماڈل بنانے کے دوران غور کرنے کے لئے اہم ہے، زیادہ فعال صارفین کے لئے فراہمی سے بچنے کے لئے اور کم دلچسپی والے صارفین کے "بھارت" کے لئے معیار کو برقرار رکھنے کے لئے. اس کے برعکس، ٹریکوں کے درمیان تقسیم ایک بہت مختلف کہانی بتاتا ہے. یہ گرافک واضح طور پر بہت مقبول ٹریڈز اور بڑے پیمانے پر نیچ مواد کے درمیان عدم توازن کو ظاہر کرتا ہے: 90٪ سے زائد ٹریڈز نے پورے ڈیٹا جمع کے دوران 100 سے کم ٹریڈز حاصل کیے. اس کے باوجود، سفارش کرنے والے سسٹموں کو پورے کیٹٹل کے ساتھ بات چیت کرنے کی ضرورت ہے تاکہ ذاتی صارف کی ترجیحات کے ساتھ اچھی طرح سے مطابقت رکھنے والے کم مقبولیت کے ٹریڈز بھی سامنے آ جائیں. algorithmic کارکردگی کا اندازہ کرنے کے لئے Yambda کا استعمال تجزیہ کرنے والا algorithm کے معیار پر تعلیمی مطالعہ اکثر Leave-one-Out (LOO) نظام کا استعمال کرتے ہیں، جہاں ایک صارف کے عمل کو ٹیسٹ کے لئے برقرار رکھا جاتا ہے اور باقی کو تربیت کے لئے استعمال کیا جاتا ہے. This method, however, comes with two serious drawbacks: ٹائم غیر متوازن: ٹیسٹ کے واقعات میں کارروائیوں کو شامل کیا جا سکتا ہے جو تربیت کے سیٹ میں ان سے پہلے ہوا. صارفین کا مساوی وزن: غیر فعال صارفین کو فعال صارفین کے طور پر توازن میٹرک پر اثر انداز ہوتا ہے، جس سے نتائج کو گمراہ کیا جا سکتا ہے. To bring evaluation conditions closer to real-world recommender system scenarios, we propose an alternative: . global temporal split یہ سادہ طریقہ وقت (T) میں ایک نقطہ منتخب کرتا ہے، تربیت سیٹ سے تمام بعد کے واقعات کو خارج کرتا ہے. اس بات کو یقینی بناتا ہے کہ ماڈل تاریخی اعداد و شمار پر چلتا ہے اور مستقبل کے اعداد و شمار کے مقابلے میں ٹیسٹ کیا جاتا ہے، حقیقی پیداوار کے ماحول کی پیروی کرتا ہے. ہمارے تجزیہ کے لئے، ہم دو بنیادی وجوہات کے لئے ہولڈوٹ سیٹ کے طور پر ایک دن کے اعداد و شمار کو محفوظ کرتے ہیں: یہاں تک کہ ایک ہی دن کے اعداد و شمار کے اعداد و شمار کو اعداد و شمار کے کارکردگی کا قابل اعتماد اندازہ کرنے کے لئے کافی حجم فراہم کرتا ہے. حقیقی دنیا کی پیداوار میں ماڈل مختلف خصوصیات ہیں: کچھ عام طور پر اعداد و شمار کی اپ ڈیٹس کی ضرورت ہوتی ہے (مثال کے طور پر، مقبولیت پر مبنی سفارشات)، دوسروں کو معمول کے طور پر اچھی طرح سے تنصیب یا دوبارہ تربیت کی جاتی ہے (بوریجنگ، میٹرکس factorization، دو ٹاور ماڈل)، اور کچھ مسلسل اپ ڈیٹ کردہ صارف کے تبادلے کی تاریخ پر منحصر ہے (متبادل اور ٹرانسفارمر پر مبنی ماڈل). ہماری نقطہ نظر سے، ایک دن کے ونڈوز ماڈل کو اسٹیٹک رکھنے کے لئے بہترین جائزہ لینے کا وقت ہے جبکہ اب بھی مختصر مدت کے رجحانات کو پکڑنا ہے. اس نقطہ نظر کا منفی یہ ہے کہ یہ طویل مدتی ماڈلوں، جیسے موسیقی سننے کے رویے میں ہفتہ وار تبدیلیوں کا مطلب نہیں ہے. باسلین ہم نے مستقبل کے مطالعہ اور موازنہ کے لئے بنیادی خطوط قائم کرنے کے لئے Yambda پر کئی مقبول تجویز کرنے والے الگورتھمز کا جائزہ لیا. ہم نے ٹیسٹ کیا Algorithms میں شامل ہیں: MostPop، DecayPop، ItemKNN، iALS، BPR، SANSA، اور SASRec. تجزیہ کے لئے، ہم مندرجہ ذیل میٹرک استعمال کرتے ہیں: NDCG@k (Normalized Discounted Cumulative Gain)، جو سفارشات میں درجہ بندی کی کیفیت کا اندازہ کرتا ہے. Recall@k، جس میں الگورتھم کی مجموعی بیل سے متعلق سفارشات حاصل کرنے کی صلاحیت کا اندازہ ہوتا ہے. Coverage@k، جس میں اشارہ ہوتا ہے کہ سفارش کیٹیکل کتنی وسیع پیمانے پر نمائندگی کیا جاتا ہے. نتائج ٹیبلوں میں فراہم کی جاتی ہیں، اور کوڈ پر دستیاب ہے . Hugging Face چہرے کو پکڑنا نتیجہ Yambda بڑے پیمانے پر اعداد و شمار پر سفارش کے الگورتھموں میں تحقیق کے لئے قابل قدر ہوسکتا ہے، جہاں کارکردگی اور رویے کی ڈینمیکس کو ماڈل کرنے کی صلاحیت دونوں اہم ہیں. ڈیٹا سیٹ تین ورژن میں دستیاب ہے: 5 ارب واقعات کے ساتھ ایک مکمل سیٹ، اور 500 ملین اور 50 ملین واقعات کے ساتھ چھوٹے حصوں. ڈویلپرز اور محققین اس ورژن کو منتخب کرسکتے ہیں جو سب سے بہتر ان کے منصوبے اور کمپیوٹنگ وسائل کے ساتھ ملتا ہے. . چہرے کو پکڑنا چہرے کو پکڑنا چہرے کو پکڑنا ہم امید کرتے ہیں کہ یہ ڈیٹا سیٹ آپ کے تجربات اور تحقیق میں مفید ثابت ہوتا ہے! پڑھنے کے لئے شکریہ!