Як обчислити схожість косинуса між 2 Spark Vector. Я використовую новий пакет ml.
Іскра 2.1.1
EDIT:
Spark забезпечує RowMatrix, який можна використовувати для обчислення подібності, але він приймає mllib.vector
не а ml.vector
.
Чи є спосіб конвертувати вектори з різних пакетів? Чи існує реалізація, яка використовує ml.vector
?
Відповіді:
1 для відповіді № 1Найпростіший спосіб конвертувати з mllib
вектор до ml
вектор - використовувати Vectors.fromML
метод, див Вектори документації. Приклад:
val mlVector = org.apache.spark.ml.linalg.Vectors.dense((Array(1.0,2.0,3.0)))
println(mlVector.getClass())
val mllibVector = org.apache.spark.mllib.linalg.Vectors.fromML(mlVector)
println(mllibVector.getClass())
Виводить:
class org.apache.spark.ml.linalg.DenseVector
class org.apache.spark.mllib.linalg.DenseVector