У меня есть следующие ошибки при попытке проанализировать вывод из pyspark.ml.features.word2vec в pyspark.mllib.linalg.distributed.RowMatrix.
Файл "/ databricks / spark / python / pyspark /mllib / linalg / init .py ", строка 83, в _convert_to_vector поднять TypeError (« Невозможно преобразовать тип% s в вектор »% type (l)) TypeError: Невозможно преобразовать тип в Vector
Я запустил pyspark.ml.features.word2vec для набора данных, что привело к ожидаемому выводу в новом столбце.
Я пытаюсь вычислить косинусные сходства между каждым из слов и создать косинусное сходствоМатрица, которая может быть передана в многомерный скаляр для визуализации.
Я пробовал несколько разных вещей, включая приведение каждого значения в vec1 = vectors.select ("vectors) .rdd to float.
На данный момент у меня есть следующий код:
tokenizer = RegexTokenizer(pattern="[^a-zA-Z-_']", inputCol="SUBJECTS", outputCol="WORDS")
df = tokenizer.transform(df_droped_null)
word2Vec = Word2Vec(vectorSize=100, seed=42, inputCol="STEMMED", outputCol="VECTORS")
w2v = word2Vec.fit(df)
df_w2v = w2v.transform(df)
vectors = w2v.getVectors()
vec1 = vectors.select("vector").rdd
mat = RowMatrix(vec1)
mat.numRows()
Я ожидаю ROWMATRIX из столбца, содержащего векторы word2vec, так что .columnSimilities () можно вызвать.
Я получаю следующие ошибки:
File "/databricks/spark/python/pyspark/util.py", line 99, in wrapper return f(*args, **kwargs)
File "/databricks/spark/python/pyspark/mllib/linalg/__init__.py", line 83, in _convert_to_vector raise TypeError("Cannot convert type %s into Vector" % type(l)) TypeError: Cannot convert type <class 'pyspark.sql.types.Row'> into Vector