PySparks mllib包提供train()和trainimplicit()方法,分別用於在顯式和隱式數據上訓練推薦模型。PySpark如何在構建推薦人時融入用戶物品功能?
我想訓練隱式數據模型。更具體的物品購買數據。既然是在我的情況非常罕見,用戶將購買的物品超過一次,在「收視率」或「偏愛」始終爲1。所以,我的數據集的樣子:
u1, i1, 1 u1, i2, 1 u2, i2, 1 u2, i3, 1 ... un, im, 1
其中u是一個用戶和我一個項目。
我對用戶的人口統計,位置等以及項目功能都有很多功能。但是我不能在pyspark.mllib.als.train
或pyspark.mllib.als.trainimplicit
方法中包含用戶或項目功能。
或者,我考慮過使用fastFM或libfm。兩者都是分解因子化機器的軟件包,它實現了ALS求解器和框架推薦作爲迴歸/分類問題。使用這些情況下,我可以在訓練數據中包含用戶,項目和更多功能,如X
。然而,預測變量y
將只是一個向量(我沒有顯式評級只購買)。
我該如何解決這個問題?