本文簡要介紹
pyspark.mllib.linalg.distributed.RowMatrix.columnSimilarities
的用法。用法:
columnSimilarities(threshold=0.0)
計算此矩陣的列之間的相似性。
閾值參數是估計質量和計算成本之間的權衡旋鈕。
默認閾值設置 0 保證確定性正確的結果,但使用計算歸一化點積的蠻力方法。
將閾值設置為正值使用采樣方法,並且比蠻力方法產生的計算成本要低得多。然而,計算的相似性將是估計值。
對於相似度大於給定相似度閾值的那些列對,抽樣保證relative-error 的正確性。
為了說明保證,我們設置了一些符號:
令 A 為該矩陣中幅值最小的非零元素。
令 B 為該矩陣中幅度最大的非零元素。
令 L 為每行的最大非零數。
例如,對於 {0,1} 矩陣:A=B=1。另一個例子,對於 Netflix 矩陣:A=1, B=5
對於那些高於閾值的列對,計算出的相似度在 20% 的相對誤差內是正確的,概率至少為 1 - (0.981)^10/B^
shuffle 大小由以下兩個表達式中的較小者限定:
O(n log(n) L /(閾值 * A))
O(m L^2^)
後者是蠻力方法的成本,因此對於非零閾值,成本總是比蠻力方法便宜。
2.0.0 版中的新函數。
- threshold:浮點數,可選
設置為 0 以獲得確定性保證的正確性。使用上述成本與估計質量權衡來估計高於此閾值的相似性。
CoordinateMatrix
該矩陣各列之間餘弦相似度的 n x n 稀疏上三角CoordinateMatrix。
參數:
返回:
例子:
>>> rows = sc.parallelize([[1, 2], [1, 5]]) >>> mat = RowMatrix(rows)
>>> sims = mat.columnSimilarities() >>> sims.entries.first().value 0.91914503...
2.0.0 版中的新函數。
相關用法
- Python pyspark RowMatrix.computePrincipalComponents用法及代碼示例
- Python pyspark RowMatrix.computeSVD用法及代碼示例
- Python pyspark RowMatrix.computeCovariance用法及代碼示例
- Python pyspark RowMatrix.computeGramianMatrix用法及代碼示例
- Python pyspark RowMatrix.computeColumnSummaryStatistics用法及代碼示例
- Python pyspark RowMatrix.numCols用法及代碼示例
- Python pyspark RowMatrix.multiply用法及代碼示例
- Python pyspark RowMatrix.rows用法及代碼示例
- Python pyspark RowMatrix.numRows用法及代碼示例
- Python pyspark RowMatrix.tallSkinnyQR用法及代碼示例
- Python pyspark Row.asDict用法及代碼示例
- Python pyspark Row用法及代碼示例
- Python pyspark Rolling.mean用法及代碼示例
- Python pyspark Rolling.max用法及代碼示例
- Python pyspark RobustScaler用法及代碼示例
- Python pyspark Rolling.count用法及代碼示例
- Python pyspark Rolling.sum用法及代碼示例
- Python pyspark Rolling.min用法及代碼示例
- Python pyspark RDD.saveAsTextFile用法及代碼示例
- Python pyspark RDD.keyBy用法及代碼示例
- Python pyspark RDD.sumApprox用法及代碼示例
- Python pyspark RDD.lookup用法及代碼示例
- Python pyspark RDD.zipWithIndex用法及代碼示例
- Python pyspark RDD.sampleByKey用法及代碼示例
- Python pyspark RDD.coalesce用法及代碼示例
注:本文由純淨天空篩選整理自spark.apache.org大神的英文原創作品 pyspark.mllib.linalg.distributed.RowMatrix.columnSimilarities。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。