يجتمع الناس أنظمة التوصية. العوملة

لقد تغلغل التعلم الآلي في حياتنا اليومية. لم يعد البعض يفاجأ عندما يتم إخبارهم عن الشبكات العصبية في هواتفهم الذكية. واحدة من المجالات الكبيرة في هذا العلم هي أنظمة التوصية. إنها في كل مكان: عندما تستمع إلى الموسيقى أو تقرأ الكتب أو تشاهد البرامج التلفزيونية أو مقاطع الفيديو. يتم تطوير هذا العلم في الشركات العملاقة مثل YouTube و Spotify و Netfilx . وبطبيعة الحال، ويتم نشر جميع الإنجازات العلمية في هذا المجال سواء على شهرة NeurIPS أو المؤتمرات ICML ، وفي أقل قليلا معروفة RecSysشحذ هذا الموضوع. وفي هذه المقالة سنتحدث عن كيفية تطور هذا العلم ، وما هي الأساليب المستخدمة في التوصيات بين الحين والآخر ، وما هي الرياضيات وراء كل هذا.



كان مصدر إلهام لي لكتابة هذا المقال من خلال العمل في StatML مختبر في Skoltech المتعلقة بنظم المزكي.


لماذا ولمن هذه المقالة


لماذا يمكن أن يكون هذا مهمًا لكل منا؟ ألق نظرة على القائمة أدناه:


  • توصيات الفيديو: YouTube و Netlix و HBO و Amazon Prime و Disney + و Hulu و Okko
  • التوصيات الصوتية: Spotify و Yandex.Music و Yandex.Radio و Apple Music
  • توصيات المنتج: أمازون ، أفيتو ، لتر ، ماي بوك
  • توصيات البحث: Google ، Yandex ، Bing ، Yahoo ، Mail
  • : Booking, Twitter, Instagram, ., , GitHub

, . , . , , YouTube.


( ), . , , . , ( ). -, . , -, , - . , . , , , , .


, , , , - . , (, , , ..). , .



, . : UI— . ruiui. , , , , . :


D={(u,i)| if rui,uU,iI}


f:


f(u,i)=r^uirui


, rui1 5 ( ) : 1 -1 ( / )



3 :


  • Content-based (CB)
  • Collaborative filtering (CF)
  • Hybrid recommendations


. — , . : — , — , . . , : , ..


, . - , .


. , , , .


, , . . , , . .


Matrix Factorization



, . : . .


  • :
    • Singular Value Decomposition (SVD)
    • Singular Value Decomposition with implicit feedback (SVD++)
    • Collaborative Filtering with Temporal Dynamics (TimeSVD++)
    • Weighted Matrix Factorization (WMF or ALS)
    • Sparse Linear Methods (SLIM)
    • Factorization Machines (FM)
  • :
    • Probabilistic Matrix Factorization (PMF)
    • Bayesian Probabilistic Matrix Factorization (BPMF)
    • Bayesian Factorization Machines (BFM)
    • Gaussian Process Factorization Machines (GPFM)

Singular Value Decomposition (SVD)


SVD. An×m, n=|U|, m=|I|. DAui=rui, . SVD , A: U, Σ, V. k, A.


A=UΣVT,AA^=U^Σ^V^T.


QP. A:


P=(U^Σ^)T,Q=V^T,APTQ.


:


ruir^ui=puTqi.


, puqiui- k. . . :


Θ={pu,qi|uU,iI}.


c :


(u,i)D(ruir^ui)2+λθΘθ2=(u,i)D(ruipuTqi)2+λuUpu2+λiIqi2.


, , , , . r^ui. (GD) (ALS). Habr- , . , , .


( SVD, SVDbias). , , . . SVD . (bias):


r^ui=μ+bu+bi+puTqi,


bu— , bi— , μ— . :


Θ={μ,bu,bi,pu,qi|uU,iI}.


SVD++


Factorization Meets the Neighborhood SVD . (explicit and implicit user feedback). rui, . . : R(u)— ( ) N(u)— ( ).


SVD++ :


r^ui=μ+bu+bi+qiT(pu+|N(u)|1/2jN(u)yj).


:


Θ={μ,bu,bi,pu,qi,yi|uU,iI}.


, N(u)R(u), .. R(u)N(u). (item-item recommendation).


Asymmetric-SVD


SVD++ . . :


r^ui=bui+qiT(|R(u)|1/2jR(u)(rujbuj)xj+|N(u)|1/2jN(u)yj),


bui=μ+bu+bi


TimeSVD++


TimeSVD++. (MovieLens, Netflix) , . , . Collaborative Filtering with Temporal Dynamics SVD++ :


r^ui(t)=μ+bu(t)+bi(t)+qiT(pu(t)+|R(u)|1/2jR(u)yj).


دعنا نكتشف كيف يؤثر الوقت بالضبط على كل مصطلح:
انحياز العنصر: إذا قمت بتقسيم الفاصل الزمني عندما تم وضع التقييمات في شرائح (تم اقتراح 30 جزءًا في العمل) وإضافة المعلمات الخاصة بكbi,Bin(t) لكل منتج ، يتم تحديده وفقًا للفاصل الزمني الذي يكون فيه المتغير t:

bi(t)=bi+bi,Bin(t)


انحياز المستخدم: عند تحليل بيانات Neflix ، لاحظنا أنه لكل مستخدم في المتوسط ​​لا يوجد سوى 40 يومًا يضع فيها التقييمات. لذلك ، سنعمل كما هو الحال مع السلع وإضافة المعلمات الخاصة بناbu,tلكل مستخدم. نضيف اعتمادًا خطيًا على الوقت - نقدم مصطلحًا إضافيًاαu مع نسبة الاستهلاك:

bi(t)=bi+αudevu(t)+bu,tdevu(t)=sign(ttu)|ttu|β


.
هناك خيارات أخرى حول كيفية إضافة تبعية زمنية للمستخدمين: يتم وصفه بمزيد من التفصيل في مقالة
تضمين المستخدم: سنضيف خدعة مماثلة لكل مكون من تمثيلنا الكامنpu(t)=(pu1(t),,puf(t))T:

puk(t)=puk+αukdevu(t)+puk,t.



معامل المصفوفة الموزونة (WMF) والمربعات الصغرى البديلة (ALS)


واحدة من المشاكل الرئيسية التي يعاني منها SVD هي استخدام استجابة صريحة فقط من المستخدم. تم حل هذه المشكلة جزئيًا في SVD ++ . ولكن هناك طريقة أخرى - عامل المصفوفة المرجحة ( WMF ). في هذه المقالة ، اقترحوا عدم تغيير النموذج تقريبًا (r^ui=puTqi) ، وتغيير عملية التعلم. تعيين للتقييماتruiالتي لا نعرفها (أي للأزواج (u,i)D) القيمة 0. ثم لكل زوج (u,i)أدخل المعلمة cui, rui. , . - . YouTube , . , , , . , , , :


(u,i)cui(ruir^ui)2+λθΘθ2.


: cui=1+αrui. : rui>0rui=0. αα=40.


, (ALS) . WMF, ALS, .


Fast Alternating Least Squares


ALS , eALS . , . , . .


, cuiALS :


cui=ci+αrui,ci=c0fiβjIfjβ,


c0β, .


Sparse Linear Methods (SLIM)


Sparse Linear Methods (SLIM) . , SVD . . SLIM :


a^ui=auTwiA^=AW


WRm×m. : W0diag(W)=0. :


12AAWF2+β2WF2+λW1


W.


Factorization Machines (FM)


, Factorization Machines (FM). , ( 2- ). :


r^(x)=w0+i=1nwixi+i=1ni=j+1nviTvj xixj,w0R   wRn   VRn×k.


(SGD) ( ). , x(u,i). . , — . — ( ). ( ).



, SVD, SVD++FM. SVD , :


n=|UI|,xj=δ(j=u  j=i).


δ— . .. xui. FM :


r^(x)=w0+wu+wi+vuTvi.


, x: , . , , , , , , . .


Probabilistic Matrix Factorization (PMF)


, , , .


(PMF), . , SVD: puqi— . , :


p(r|P,Q,σ)=(u,i)DN(rui|g(puTqi),σ2),


N— , a g(x)=11+ex— (). , , :


p(P|σp)=uUp(pu|0,σp2I),p(Q|σq2)=iIp(qi|0,σq2I).


( ) , :


12(u,i)D(ruipuTqi)2+λp2uUpu2+λq2iIqi2,


λp=σpσλq=σqσ— . , SVD , .


Constrained PMF


PMF Constrained PMF. , SVD SVD++. , , pu:


pu+iR(u)yi|R(u)|,


R(u)— , u.


Bayesian Probabilistic Matrix Factorization (BPMF)


PMF BPMF. PMF , , . :


p(P|μp,Λp)=uUp(pu|μp,Λp),p(Q|μq,Λq)=iIp(qi|μq,Λq).


Θp={μp,Λp}Θq={μq,Λq}- Θ0={μ0,ν0,W0}. , .


Bayesian Factorization Machines (BFM)


, Bayesian, . , Θ={w0,wi,vi}., - . : ΘH={λθ,μθ|θΘ}. .


Gaussian Process Factorization Machines (GPFM)


GPFM . fθ. θu, , :


r^ui=f(qi,θu)


, . , f, . , , , .


.


: Bayesian Personalized Ranking (BPR)


BPR , "". , BPR — , , Bayesian Personalized Ranking. . , , iju. (u,i)rui(u,i,j)ij((+) i, j(-) ). DS. . ( personalized ):


p(i<uj|Θ)=σ(r^uij(Θ)),


σ— , a r^uij— . (MLE), , :


minΘ(u,i,j)DSlnσ(r^uij)λΘ2


(SGD):


ΘΘ+α(er^uij1+er^uijΘr^uij+λΘ)


, . , , . SVD:


r^uij=r^uir^ujr^ui=puTqi


:


Θr^uij={(qikqjk)   if θ=pukpuk               if θ=qikpuk            if θ=qjk


BPR ( ) , . , . . , (pairwise approach) (pointwise approach). . , 5 , . , , . — BPR - , . , .


Show must go on


هذه المرة ناقشنا العديد من التحليل للعوامل الأساليب في أنظمة التوصية، ولكن الرسم البياني و الشبكات العصبية ، التي لديها أيضا الكثير من الأمور المثيرة للاهتمام ، بقي دون تغيير .

Source: https://habr.com/ru/post/undefined/


All Articles