MatrixFactorizationModel

pyspark.mllib.recommendation。 MatrixFactorizationModel ( java_model:py4j.java_gateway.JavaObject )

一個矩陣factorisation正規化交替最小二乘模型訓練。

例子

> > >r1=(1,1,1.0)> > >r2=(1,2,2.0)> > >r3=(2,1,2.0)> > >評級=sc並行化([r1,r2,r3])> > >模型=肌萎縮性側索硬化症trainImplicit(評級,1,種子=10)> > >模型預測(2,2)0.4……
> > >testset=sc並行化(((1,2),(1,1)))> > >模型=肌萎縮性側索硬化症火車(評級,2,種子=0)> > >模型predictAll(testset)收集()[評級(用戶= 1,產品= 1,等級= 1.0…),評級(用戶= 1,產品= 2,評級= 1.9…))
> > >模型=肌萎縮性側索硬化症火車(評級,4,種子=10)> > >模型userFeatures()收集()[(1,數組(“d”,[…])),(2,數組(“d”, […])))
> > >模型recommendUsers(1,2)[評級(用戶= 2,產品= 1,等級= 1.9…),評級(用戶= 1,產品= 1,等級= 1.0…))> > >模型recommendProducts(1,2)[評級(用戶= 1,產品= 2,評級= 1.9…),評級(用戶= 1,產品= 1,等級= 1.0…))> > >模型排名4
> > >first_user=模型userFeatures()(1)[0]> > >潛在的=first_user(1]> > >len(潛在的)4
> > >模型productFeatures()收集()[(1,數組(“d”,[…])),(2,數組(“d”, […])))
> > >first_product=模型productFeatures()(1)[0]> > >潛在的=first_product(1]> > >len(潛在的)4
> > >products_for_users=模型recommendProductsForUsers(1)收集()> > >len(products_for_users)2> > >products_for_users(0](1,(評級(用戶= 1,產品= 2,評級=…),))
> > >users_for_products=模型recommendUsersForProducts(1)收集()> > >len(users_for_products)2> > >users_for_products(0](1,(評級(用戶= 2,產品= 1,等級=…),))
> > >模型=肌萎縮性側索硬化症火車(評級,1,非負=真正的,種子=123456789)> > >模型預測(2,2)3.73……
> > >df=sqlContextcreateDataFrame([評級(1,1,1.0),評級(1,2,2.0),評級(2,1,2.0)))> > >模型=肌萎縮性側索硬化症火車(df,1,非負=真正的,種子=123456789)> > >模型預測(2,2)3.73……
> > >模型=肌萎縮性側索硬化症trainImplicit(評級,1,非負=真正的,種子=123456789)> > >模型預測(2,2)0.4……
> > >進口操作係統,tempfile> > >路徑=tempfilemkdtemp()> > >模型保存(sc,路徑)> > >sameModel=MatrixFactorizationModel負載(sc,路徑)> > >sameModel預測(2,2)0.4……> > >sameModelpredictAll(testset)收集()(評級(…> > >shutil進口rmtree> > >試一試:rmtree(路徑)除了OSError:通過

方法

調用(名字,*一個)

調用的方法java_model

負載(sc路徑)

從給定的路徑加載模型

預測(用戶、產品)

預測評級為給定的用戶和產品。

predictAll(user_product)

返回一個列表的預測輸入用戶和產品的評級對。

productFeatures()

返回一個配對抽樣,其中第一個元素是產品,第二個是一個數組對應產品的特性。

recommendProducts(用戶、num)

建議頂部“num”數量的產品對於一個給定的用戶並返回一個列表的評級對象按預測評級的降序排序。

recommendProductsForUsers(num)

建議頂部“num”為所有用戶數量的產品。

recommendUsers(產品,num)

建議“num”頂部的用戶數量對於一個給定的產品評級對象並返回一個列表按預測評級的降序排序。

recommendUsersForProducts(num)

建議頂部“num”對所有產品的用戶數量。

保存(sc路徑)

這個模型保存到給定的路徑。

userFeatures()

返回一個配對抽樣,其中第一個元素是用戶和第二個是數組的特性相應的用戶。

屬性

排名

軍銜在這個模型的特性

方法的文檔

調用 ( 的名字:str,*一個:任何 )→任何

調用的方法java_model

classmethod 負載 ( sc:pyspark.context.SparkContext,路徑:str )pyspark.mllib.recommendation.MatrixFactorizationModel

從給定的路徑加載模型

預測 ( 用戶:int,產品:int )→浮動

預測評級為給定的用戶和產品。

predictAll ( user_product:pyspark.rdd.RDD(元組(int,int]] )→pyspark.rdd.RDD( pyspark.mllib.recommendation.Rating ]

返回一個列表的預測輸入用戶和產品的評級對。

productFeatures ( )→pyspark.rdd.RDD(元組(int,array.array] ]

返回一個配對抽樣,其中第一個元素是產品,第二個是一個數組對應產品的特性。

recommendProducts ( 用戶:int,全國礦工工會:int )→列表( pyspark.mllib.recommendation.Rating ]

建議頂部“num”數量的產品對於一個給定的用戶並返回一個列表的評級對象按預測評級的降序排序。

recommendProductsForUsers ( 全國礦工工會:int )→pyspark.rdd.RDD(元組(int,元組(pyspark.mllib.recommendation.Rating,…]]]

建議頂部“num”為所有用戶數量的產品。建議每用戶返回的數量可能不到“num”。

recommendUsers ( 產品:int,全國礦工工會:int )→列表( pyspark.mllib.recommendation.Rating ]

建議“num”頂部的用戶數量對於一個給定的產品評級對象並返回一個列表按預測評級的降序排序。

recommendUsersForProducts ( 全國礦工工會:int )→pyspark.rdd.RDD(元組(int,元組(pyspark.mllib.recommendation.Rating,…]]]

建議頂部“num”對所有產品的用戶數量。建議返回的每個產品的數量可能不到“num”。

保存 ( sc:pyspark.context.SparkContext,路徑:str )→沒有

這個模型保存到給定的路徑。

userFeatures ( )→pyspark.rdd.RDD(元組(int,array.array] ]

返回一個配對抽樣,其中第一個元素是用戶和第二個是數組的特性相應的用戶。

屬性的文檔

排名

軍銜在這個模型的特性