כתבות עם התגית Elad Dvash

אמנם, האתגר לא באמת נגמר כמו שצריך בגלל הוירוס. אבל עבדתי די קשה, אני מרשה לעצמי לסכם בכל מקרה!

לפני שבועיים Uri Goren פרסם את אתגר מערכות ההמלצה של jul.
אני מתעסק במערכות המלצה בתור (חצי) תחביב כבר כמעט שנה והרבה זמן חיפשתי תירוץ לצלול לעומק העניין.
אז למארגנים: תודה על הFOMO, אחלה תירוץ!

הבעיה: אנשים קנו מוצרים. אנחנו צריכים לאמר איזה מוצר הם יקנו בפעם הבאה.
הדאטה: טרנזקציות – אדם x קנה מוצר y בתאריך z.
ניקוד: אם קלענו למוצר אחד מתוך רשימת המוצרים העתידיים, האדם נספר לנו לחישוב הדיוק הסופי, שהוא לא יותר מאחוז האנשים בהם צדקנו.
עוד פרט חשוב: מספיק לנו לקלוע למוצר אחד. (ובדקתי את הפרט הזה דרך ההגשות ללידרבורד!)
ועוד פרט חשוב: אנחנו לא יודעים מה המוצרים! יש לנו רק id. זה חכם מצד המארגנים, היתי מנצל את זה לרעה אם זה לא היה ככה.

התחלתי לירות בייסליינים כבר בעשר הדקות הראשונות מפתיחת הטבלה.

הבייסליין הראשון כמובן: "תציע לכולם את המוצר הכי נפוץ".
השני היה: "תציע לכולם את המוצר הכי KNN.predict"

אחרי שניקיתי קצת, העפתי את העברית (כי זה דפק כל דבר אפשרי), העפתי את כל האנשים שאני יודע עליהם רק קניה אחת והגשתי את הבייסליין "תציע לכל אדם פשוט מה שהוא קנה ממנו הכי הרבה" ואת הבייסליין "תציע לכל אדם מה שכולם קונים הכי הרבה" והבייסליין "תציע לכל אדם מה שקונים ממנו הכי הרבה באותו החודש"
והכי חשוב,הרצתי את הבייסליין:

for cols_combination in כל_הקומבינציות(cols):
תציע לאותו אדם: df.groupby(cols_combination).agg(lambda x: x.value_counts().index[0])

שבאופן ממש מביך הביא אותי למקום הראשון בטבלה..
חצי שעה מפתיחת התחרות..

ואז התחלתי לעבוד באמת. לכתבה המלאה >>

X