2016-08-01 14 views
0

Ich versuche ein Basis-Vorhersagemodell für Filmbewertungen (ähnlich den verschiedenen Grundlinienmodellen aus dem NetFlix-Preis) zu implementieren, mit Parametern, die durch stochastischen Gradientenabfall gelernt werden. Da jedoch beide erklärenden Variablen kategorisch sind (Benutzer und Filme), ist die Design-Matrix sehr groß und kann nicht in mein RAM passen.Stochastic Gradient Descent Design-Matrix zu groß für R

Ich dachte, dass das SGD-Paket automatisch seinen Weg finden würde (da es für große Datenmengen ausgelegt ist), aber das scheint nicht der Fall zu sein.

Kennt jemand einen Weg um dies? Vielleicht eine Möglichkeit, die Design-Matrix als dünne Matrix aufzubauen.

Cheers,

Antwort

0

Sie können versuchen, Matrix::sparseMatrix zu verwenden, um ein Triplett zu schaffen, um die Matrix in einer effizienteren Weise zu beschreiben. Sie können auch versuchen, Ihr Problem auf Amazon EC2 zu exportieren und mehr RAM zu verwenden und zu instanziieren, oder den Cluster konfigurieren, um einen zugeordneten reduzierten Job zu erstellen. Überprüfen Sie die xgboost Pakethttps://github.com/dmlc/xgboost und ihre Dokumentation, um zu verstehen, wie mit Speicherproblemen umzugehen.

Dies ist auch ein praktischer Tutorial: https://cran.r-project.org/web/packages/xgboost/vignettes/discoverYourData.html

+0

Vielen Dank, ist das xgboost Tutorial wirklich hilfreich! –

+0

Gern geschehen! –