haku: @keyword singular value decomposition / yhteensä: 2
viite: 1 / 2
« edellinen | seuraava »
Tekijä:Klapuri, Jussa
Työn nimi:Collaborative filtering methods on a very sparse reddit recommendation dataset
Yhteistoiminnalliset suodattamismenetelmät hyvin harvalle Reddit-datalle
Julkaisutyyppi:Diplomityö
Julkaisuvuosi:2013
Sivut:vii + 48      Kieli:   eng
Koulu/Laitos/Osasto:Tietotekniikan laitos
Oppiaine:Informaatiotekniikka   (T-61)
Valvoja:Oja, Erkki
Ohjaaja:Nieminen, Ilari
Digitoitu julkaisu: https://aaltodoc.aalto.fi/handle/123456789/100622
OEVS:
Digitoitu arkistokappale on julkaistu Aaltodocissa
Sijainti:P1 Ark Aalto  7112   | Arkisto
Avainsanat:recommender systems
collaborative filtering
sparse dataset
singular value decomposition
variational Bayesian PCA
k-nearest neighbors
stochastic gradient descent
Reddit
netflix
suositusjärjestelmät
yhteistoiminnallinen suodattaminen
harva-data
pääakselihajotelma
pääkomponenttianalyysi
Tiivistelmä (fin): Diplomityön tutkimuskysymys on, kuinka tarkasti on mahdollista estimoida käyttäjien tulevaa äänestyskäyttäytymistä heidän äänestyshistoriansa perusteella, kun äänet ovat joko puolesta tai vastaan.
Estimointi suoritetaan laajalle ja hyvin harvalle data-aineistolle, joka koostuu 23 miljoonasta äänestä Reddit-sivustolta.
Koska yli 84 % äänistä on puolesta, vastaan olevien äänien estimointi on vielä vaikeampaa.
Samaten kuin Netflix prize -kilpailussa, yhteistoiminnallisia suodattamismenetelmiä (collaborative filtering, CF) voi käyttää tämän ongelman ratkaisuun.

Kaksi päälähestymistapaa CF-menetelmillä ovat naapurusto- ja latenttimuuttujamallit, joista kummastakin toteutetaan ja testataan menetelmiä.
Naapurustomenetelmä toteutetaan k:n lähimmän naapurin (k-NN) menetelmän avulla ja aliavaruusmenetelmistä käytetään esimerkkinä pääakselihajotelmaa (SVD) sekä variaatioapproksimoitua pääkomponenttianalyysia (VBPCA).
Vaikka molemmat SVD ja VBPCA on toteutettu regularisaatiolla, VBPCA käyttää myös bayesilaista päättelyä lisäämällä kohinatermin malliin sekä mallintamalla priorijakaumat mallin parametreille.

Kokeita varten koko Reddit-aineisto esikäsitellään kolmeksi erikokoiseksi aineistoksi, joista isoin vastaa melkein koko Reddit-aineistoa kun datasta on ensin poistettu kohinaa ja poikkeavia havaintoja.
Pienin aineisto vastaa koko aineiston ydintä, siis kaikkein aktiivisimpia käyttäjiä ja äänestetyimpiä linkkejä.
Keskimmäinen aineisto sisältää ominaisuuksia sekä pienestä että isosta aineistosta.
Kaikki menetelmät ajetaan kaikille aineistoille ja suorituskykyä mitataan eri mittareilla, pääasiassa keskineliövirheen neliöjuurella (RMSE).

Kokeissa havaitaan, että VBPCA ja linkkipohjainen k-NN osoittautuvat testattavista menetelmistä parhaiksi kaikille aineistoille.
Vaikka VBPCA onkin parempi kahdelle pienimmälle aineistolle, linkkipohjainen k-NN on parempi suurimmalle aineistolle.
Tiivistelmä (eng): The research question in this thesis concerns how accurately it is possible to estimate users' future votes based on their voting history when votes can only be for or against (up votes or down votes).
This estimation is done on a large and very sparse dataset of over 23 million votes gathered from the website Reddit, which is a very popular social news and entertainment website where users may vote content up or down.
Since over 84% of all the votes are up votes, down vote estimation is made even more difficult.
Similar to the Netflix Prize, collaborative filtering (CF) methods can be used to approach this problem.

The two main approaches in CF are neighbourhood models and latent factor models.
Models using both approaches are implemented and tested in this thesis.
Neighbourhood approach is implemented by using a k-nearest-neighbour (k-NN) classifier with 3 different types of feature vectors and latent factor models are represented by the classical Singular Value Decomposition (SVD) and more advanced Variational Bayesian Principal Component Analysis (VBPCA).
While both SVD and VBPCA are implemented with regularization, VBPCA also uses Bayesian inference methods by adding the noise term into the model and introducing prior distributions over the model parameters.

For the experiments, the full Reddit dataset is pre-processed into 3 different sized datasets (k-cores), where the biggest dataset represents the full dataset after removing some noise and outliers and the smallest dataset represents the core of the data, i.e., the most active users and the most voted links.
The middle dataset has some properties from both the small and the big dataset.
All models are tested for each dataset and the results are measured using different metrics, most notably RMSE.
VBPCA and link based k-KN model are shown to perform best on all datasets.
While VBPCA is better in terms of down vote estimation for the small and the middle datasets, link-based k-NN performs best on the big dataset.
ED:2013-02-25
INSSI tietueen numero: 45847
+ lisää koriin
« edellinen | seuraava »
INSSI