recomandare folosind matrice factorizare
În epoca lumii digitale, vom vedea recomandare în fiecare vreme domeniu este site-ul de e-commerce sau site-ul de divertisment sau site-uri de rețele sociale. Recomandarea nu numai că oferă utilizatorului alegerea recomandată (pe baza activității anterioare), dar spune și despre comportamentul utilizatorului (analiză sentimentală sau emoție ai).
deci, în primul rând, să înțelegem ce recomandare este. Acesta este, practic, recomanda element de utilizator pe baza de căutare/activitate din trecut.
Figura 1 prezintă recomandarea Amazon pe baza istoricului de navigare din trecut și a căutărilor din trecut. Deci, putem spune că recomandarea este practic prezicerea comportamentului viitor bazat pe comportamentul trecut. Există două tipuri de abordări care sunt utilizate în sistemul de recomandări
1 – filtrarea bazată pe conținut
2 – filtrarea bazată pe colaborare
filtrarea bazată pe conținut-
se bazează pe ideea de a recomanda elementul utilizatorului K, care este similar cu elementul anterior foarte apreciat de K. conceptul de bază în filtrarea bazată pe conținut este TF-IDF (Term frequency — inverse document frequency), care este utilizat pentru a determina importanța documentului/cuvântului/filmului etc. Filtrarea bazată pe conținut arată transparență în recomandare, dar spre deosebire de filtrarea colaborativă nu poate funcționa eficient pentru date mari
filtrarea bazată pe colaborare
se bazează pe ideea că persoanele care împărtășesc același interes pentru anumite tipuri de articole vor împărtăși, de asemenea, același interes pentru alte tipuri de articole, spre deosebire de conținutul bazat, care se bazează practic pe metadate în timp ce se ocupă de activitatea din viața reală. Acest tip de filtrare este flexibil pentru cea mai mare parte a domeniului (sau putem spune că este domeniu gratuit), dar din cauza problemei de pornire la rece, raritatea datelor (care a fost gestionată de factorizarea matricei), acest tip de algoritm se confruntă cu un anumit obstacol în unele scenarii.
factorizarea matricei
factorizarea matricei vine în lumina reflectoarelor după competiția Netflix (2006), când Netflix a anunțat un premiu în bani de 1 milion de dolari celor care își vor îmbunătăți performanța medie pătrată cu 10%. Netflix a oferit un set de date de instruire de 100.480.507 evaluări pe care 480.189 de utilizatori le-au acordat pentru 17.770 de filme.
factorizarea matricei este metoda de filtrare bazată pe colaborare în care matricea m*n este descompusă în m*k și k*N . Acesta este utilizat în principal pentru calcularea funcționării matricei complexe. Diviziunea matricei este astfel încât, dacă înmulțim matricea factorizată, vom obține matricea originală așa cum se arată în Figura 2. Acesta este folosit pentru a descoperi caracteristici latente între două entități (poate fi folosit pentru mai mult de două entități, dar acest lucru va veni sub factorizare tensor)
prin urmare, valoarea actualizată pentru P și u va deveni acum:
Where alpha is learning rate generally its value is very small as higher alpha can overshoot the minimum value.
Regularization in Recommendation
When we fit the model to the training data it returns some decision line . Pe baza acestei linii de decizie putem distinge distribuția datelor
figura 4: underfit vs overfit
în figura 2 primul grafic este locul în care modelul este montat liniar, în timp ce în al doilea grafic este echipat cu grad polinomial. La prima vedere, se pare că al doilea complot este mult mai bun decât primul complot, deoarece oferă o precizie de 99% asupra datelor de antrenament, dar dacă introducem date de testare și oferim o precizie de 50% asupra datelor de testare . Acest tip de problemă se numește suprasolicitare și pentru a depăși această problemă introducem un concept numit regularizare.
ca overfitting problemă este comună în mașină de învățare, astfel încât există două tipuri de abordare regularizare, care pot fi utilizate pentru a elimina overfitting
1 – L1 regularizare
2 – L2 regularizare
L1 regularizare adăuga magnitudine liniară a coeficientului ca termen de penalizare în timp ce în L2 se adaugă magnitudine pătrată a coeficientului la funcția de pierdere / funcția de eroare (așa cum sa discutat mai sus). L1 întoarcere matrice rare în timp ce L2 nu. Regularizarea L1 funcționează bine în selectarea caracteristicilor în matricea rară.
în setul de date recomandare, de asemenea, există șanse mari de overfitting de date. Deci, pentru a elimina problema overfitting putem adăuga L2 regularizare (ca matrice este deja rare nu avem nevoie de L1 regularizare aici)în funcția de pierdere, prin urmare, noua ecuație a funcției de pierdere va fi:
din nou, putem găsi gradient pe MSE actualizate și să obțină puncte actualizate urmând aceeași abordare așa cum sa discutat mai sus
un lucru important să fie luate în considerare în scenariul de mai sus matricea P și q sunt non-negative, prin urmare, aceste tipuri de factorizare este, de asemenea, numit non-negativ factorizare. Deoarece factorizarea non-negativă extrage automat informații pentru setul non-negativ de vector. NMF este utilizat pe scară largă în procesarea imaginilor ,extragerea textului, analiza datelor cu dimensiuni ridicate