Recommender ¡Systems ¡ Collabora2ve ¡Filtering ¡and ¡Matrix ¡Factoriza2on ¡ Narges ¡Razavian ¡ Thanks ¡to ¡lecture ¡slides ¡from ¡Alex ¡Smola@CMU ¡ ¡Yahuda ¡Koren@Yahoo ¡labs ¡and ¡ ¡Bing ¡Liu@UIC ¡ ¡
We ¡Know ¡What ¡You ¡Ought ¡ To ¡Be ¡Watching ¡This ¡Summer ¡
Amazon.com ¡
An ¡example ¡ Training ¡data ¡ Test ¡data ¡ user movie score user movie score 1 21 1 1 62 ? 1 213 5 1 96 ? 2 345 4 2 7 ? 2 123 4 2 3 ? 2 768 3 3 47 ? 3 76 5 3 15 ? 4 45 4 4 41 ? 5 568 1 4 28 ? 5 342 2 5 93 ? 5 234 2 5 74 ? 6 76 5 6 69 ? 6 56 4 6 83 ?
Two ¡basic ¡approaches ¡ ¡ • Content-‑based ¡recommenda2ons: ¡ ¡ • The ¡user ¡will ¡be ¡recommended ¡items ¡based ¡on ¡profile ¡ informa2on ¡or ¡similar ¡to ¡the ¡ones ¡the ¡user ¡preferred ¡in ¡ the ¡past; ¡ • Collabora2ve ¡filtering ¡(or ¡collabora2ve ¡ recommenda2ons): ¡ ¡ • The ¡user ¡will ¡be ¡recommended ¡items ¡that ¡people ¡with ¡ similar ¡tastes ¡and ¡preferences ¡liked ¡in ¡the ¡past. ¡ • Hybrids : ¡Combine ¡collabora2ve ¡and ¡content-‑based ¡ methods. ¡ ¡ 5 ¡
Road ¡Map ¡ • Introduc2on ¡ • Content-‑based ¡recommenda@on ¡ • Collabora2ve ¡filtering ¡based ¡recommenda2on ¡ – K-‑nearest ¡neighbor ¡ – Matrix ¡factoriza2on ¡ 6 ¡
Content-‑Based ¡Recommenda2on ¡ • Recommend ¡items ¡that ¡matches ¡the ¡ User ¡ Profile. ¡ • The ¡Profile ¡is ¡based ¡on ¡ items ¡user ¡has ¡liked ¡in ¡ the ¡past ¡or ¡ explicit ¡interests ¡that ¡he ¡defines. ¡ • A ¡content-‑based ¡recommender ¡system ¡matches ¡ the ¡profile ¡of ¡the ¡item ¡to ¡the ¡user ¡profile ¡to ¡ decide ¡on ¡its ¡relevancy ¡to ¡the ¡user. ¡ 7
Road ¡Map ¡ • Introduc2on ¡ • Content-‑based ¡recommenda2on ¡ • Collabora2ve ¡filtering ¡based ¡recommenda2ons ¡ – K-‑nearest ¡neighbor ¡ – Matrix ¡factoriza2on ¡ 8 ¡
Collabora2ve ¡Filtering ¡Idea ¡ A ¡ ¡9 ¡ A ¡ ¡ ¡ A ¡ ¡5 ¡ A ¡ ¡ ¡ A ¡ ¡6 ¡ A ¡10 ¡ ¡ ¡ ¡User ¡ B ¡ ¡3 ¡ B ¡ ¡ ¡ B ¡ ¡3 ¡ B ¡ ¡ ¡ B ¡ ¡4 ¡ B ¡ ¡4 ¡ Database ¡ C ¡ C ¡ ¡9 ¡ C ¡ C ¡ ¡8 ¡ C ¡ C ¡ ¡8 ¡ : ¡ ¡ ¡ ¡: ¡ : ¡ ¡ ¡ ¡: ¡ : ¡ ¡ ¡ ¡: ¡ ¡ ¡ : ¡ ¡ ¡: ¡ ¡ : ¡ ¡ ¡ ¡: ¡ . ¡ ¡ ¡. ¡ Z ¡ ¡5 ¡ Z ¡10 ¡ Z ¡ ¡7 ¡ Z ¡ ¡ ¡ Z ¡ ¡ ¡ Z ¡ ¡1 ¡ A ¡ ¡9 ¡ A ¡10 ¡ B ¡ ¡3 ¡ B ¡ ¡4 ¡ Correla2on ¡ C ¡ C ¡ ¡8 ¡ Match ¡ : ¡ ¡ ¡ ¡: ¡ . ¡ ¡ ¡. ¡ Z ¡ ¡5 ¡ Z ¡ ¡1 ¡
Collabora2ve ¡filtering ¡ • Collabora2ve ¡filtering ¡(CF): ¡most ¡widely-‑used ¡ recommenda2on ¡approach ¡in ¡prac2ce. ¡ ¡ • k -‑nearest ¡neighbor, ¡ • matrix ¡factoriza2on ¡ • Key ¡characteris2c ¡of ¡CF: ¡it ¡predicts ¡the ¡u2lity ¡ of ¡items ¡for ¡a ¡user ¡based ¡on ¡the ¡items ¡ previously ¡rated ¡by ¡ other ¡like-‑minded ¡users . ¡ 10 ¡
k -‑Nearest ¡Neighbor ¡ • k NN ¡: ¡ – u2lizes ¡the ¡en2re ¡user-‑item ¡database ¡to ¡generate ¡ predic2ons ¡directly, ¡i.e., ¡there ¡is ¡no ¡model ¡building. ¡ ¡ • This ¡approach ¡includes ¡both ¡ ¡ • User-‑based ¡methods ¡ • Item-‑based ¡methods ¡ • Two ¡primary ¡phases: ¡ ¡ • the ¡neighborhood ¡forma2on ¡phase ¡and ¡ ¡ • the ¡recommenda2on ¡phase. ¡ 11 ¡
Neighborhood ¡forma2on ¡phase ¡ • The ¡similarity ¡between ¡the ¡target ¡user, ¡ u , ¡and ¡a ¡ neighbor, ¡ v , ¡can ¡be ¡calculated ¡using ¡the ¡ Pearson’s ¡ correla@on ¡coefficient : ¡ • r u,i ¡ is ¡the ¡ra2ng ¡given ¡to ¡item ¡I ¡by ¡user ¡u. ¡C ¡is ¡the ¡ list ¡of ¡items ¡rated ¡by ¡BOTH ¡users, ¡u ¡and ¡v ¡ 12 ¡
Recommenda2on ¡Phase ¡ • Then ¡we ¡can ¡compute ¡the ¡ra2ng ¡predic2on ¡of ¡ item ¡ i ¡ for ¡target ¡user ¡ u ¡ ¡where ¡ V ¡is ¡the ¡set ¡of ¡ k ¡similar ¡users(could ¡be ¡ all ¡users), ¡ r v ,i ¡is ¡the ¡ra2ng ¡of ¡user ¡ v ¡given ¡to ¡ item ¡ i , ¡ 13 ¡
Issue ¡with ¡the ¡user-‑based ¡ k NN ¡CF ¡ • Lack ¡of ¡scalability: ¡ ¡ • it ¡requires ¡the ¡real-‑2me ¡comparison ¡of ¡the ¡target ¡ user ¡to ¡all ¡user ¡records ¡in ¡order ¡to ¡generate ¡ predic2ons. ¡ ¡ • Any ¡sugges2ons ¡to ¡improve ¡this? ¡ • A ¡varia2on ¡of ¡this ¡approach ¡that ¡remedies ¡this ¡ problem ¡is ¡called ¡ item-‑based ¡CF . ¡ 14 ¡
Item-‑based ¡CF ¡ • The ¡item-‑based ¡approach ¡works ¡by ¡comparing ¡ items ¡based ¡on ¡their ¡pacern ¡of ¡ra2ngs ¡across ¡ users. ¡The ¡similarity ¡of ¡items ¡ i ¡and ¡ j ¡is ¡ computed ¡as ¡follows: ¡ ¡ 15 ¡
Recommenda2on ¡phase ¡ • Ader ¡compu2ng ¡the ¡similarity ¡between ¡items ¡ we ¡select ¡a ¡set ¡of ¡ k ¡most ¡similar ¡items ¡to ¡the ¡ target ¡item ¡and ¡generate ¡a ¡predicted ¡value ¡of ¡ user ¡ u ’s ¡ra2ng ¡ ¡ ¡where ¡ J ¡is ¡the ¡set ¡of ¡ k ¡similar ¡items ¡ 16 ¡
Prac2cal ¡Issues ¡: ¡Cold ¡Start ¡ • New ¡user ¡ – Rate ¡some ¡ini2al ¡items ¡ – Non-‑personalized ¡recommenda2ons ¡ – Describe ¡tastes ¡ – Demographic ¡info. ¡ • New ¡Item ¡ – Non-‑CF ¡: ¡content ¡analysis, ¡metadata ¡
Road ¡Map ¡ • Introduc2on ¡ • Content-‑based ¡recommenda2on ¡ • Collabora2ve ¡filtering ¡based ¡recommenda2ons ¡ – K-‑nearest ¡neighbor ¡ – Matrix ¡factoriza@on ¡ 18 ¡
Latent factor models serious ¡ Braveheart The Color Amadeus Purple Lethal Sense and Weapon Sensibility Ocean’s 11 Geared ¡ Geared ¡ towards ¡ ¡ towards ¡ ¡ males ¡ females ¡ Dave ¡ The Lion King Dumb and Dumber The Princess Independence Diaries Day Gus ¡ escapist ¡
Latent ¡factor ¡models ¡ users ¡ 1 3 5 5 4 5 4 4 2 1 3 items ¡ ~ ¡ 2 4 1 2 3 4 3 5 2 4 5 4 2 4 3 4 2 2 5 1 3 3 2 4 users ¡ 1.1 -.2 .3 .5 -2 -.5 .8 -.4 .3 1.4 2.4 -.9 .1 -.4 .2 items ¡ -.8 .7 .5 1.4 .3 -1 1.4 2.9 -.7 1.2 -.1 1.3 -.5 .6 .5 ~ ¡ 2.1 -.4 .6 1.7 2.4 .9 -.3 .4 .8 .7 -.6 .1 -.2 .3 .5 1.1 2.1 .3 -.7 2.1 -2 -1 .7 .3
Es2mate ¡unknown ¡ra2ngs ¡as ¡inner-‑products ¡of ¡factors: ¡ users ¡ 1 3 5 5 4 ¡ ¡? ¡ 5 4 4 2 1 3 items ¡ ~ ¡ 2 4 1 2 3 4 3 5 2 4 5 4 2 4 3 4 2 2 5 1 3 3 2 4 users ¡ 1.1 -.2 .3 .5 -2 -.5 .8 -.4 .3 1.4 2.4 -.9 .1 -.4 .2 items ¡ -.8 .7 .5 1.4 .3 -1 1.4 2.9 -.7 1.2 -.1 1.3 -.5 .6 .5 ~ ¡ 2.1 -.4 .6 1.7 2.4 .9 -.3 .4 .8 .7 -.6 .1 -.2 .3 .5 1.1 2.1 .3 -.7 2.1 -2 -1 .7 .3
Es2mate ¡unknown ¡ra2ngs ¡as ¡inner-‑products ¡of ¡factors: ¡ users ¡ 1 3 5 5 4 ¡ ¡? ¡ 5 4 4 2 1 3 items ¡ ~ ¡ 2 4 1 2 3 4 3 5 2 4 5 4 2 4 3 4 2 2 5 1 3 3 2 4 users ¡ 1.1 -.2 .3 .5 -2 -.5 .8 -.4 .3 1.4 2.4 -.9 .1 -.4 .2 items ¡ -.8 .7 .5 1.4 .3 -1 1.4 2.9 -.7 1.2 -.1 1.3 -.5 .6 .5 ~ ¡ 2.1 -.4 .6 1.7 2.4 .9 -.3 .4 .8 .7 -.6 .1 -.2 .3 .5 1.1 2.1 .3 -.7 2.1 -2 -1 .7 .3
Es2mate ¡unknown ¡ra2ngs ¡as ¡inner-‑products ¡of ¡factors: ¡ users ¡ 1 3 5 5 4 2.4 ¡ 5 4 4 2 1 3 items ¡ ~ ¡ 2 4 1 2 3 4 3 5 2 4 5 4 2 4 3 4 2 2 5 1 3 3 2 4 users ¡ 1.1 -.2 .3 .5 -2 -.5 .8 -.4 .3 1.4 2.4 -.9 .1 -.4 .2 items ¡ -.8 .7 .5 1.4 .3 -1 1.4 2.9 -.7 1.2 -.1 1.3 -.5 .6 .5 ~ ¡ 2.1 -.4 .6 1.7 2.4 .9 -.3 .4 .8 .7 -.6 .1 -.2 .3 .5 1.1 2.1 .3 -.7 2.1 -2 -1 .7 .3
Challenges ¡ • Similar ¡to ¡SVD, ¡but ¡less ¡constrained: ¡ – ¡Factorize ¡with ¡missing ¡values! ¡ • Re-‑define ¡objec2ve ¡func2on: ¡ To ¡avoid ¡over-‑filng ¡ • Can ¡use ¡gradient ¡descent ¡to ¡deal ¡with ¡missing ¡ values ¡
Recommend
More recommend