В PySpark нет метода getVectors, доступного для Word2VecModel
Я пытаюсь получить доступ к getVectors()
метод pyspark 1.2.0 версии Spark, но состояния pyspark -
input.cache()
word2vec = Word2Vec()
model = word2vec.fit(input)
vector = model.getVectors()
AttributeError: 'Word2VecModel' object has no attribute 'getVectors'
Так что у меня есть единственный способ получить доступ к этому, используя Scala/Java, или я могу кое-что сделать.
1 ответ
Я пытаюсь создать воспроизводимый код с игрушечным файлом, работающим на Spark 1.2.
# cat data.txt
crazy crazy fox jumped
crazy fox jumped
fox is fast
fox is smart
dog is smart
>> lines = sc.textFile('data.txt', 1);
>> lines.collect()
[
u'crazy crazy fox jumped',
u'crazy fox jumped',
u'fox is fast',
u'fox is smart',
u'dog is smart'
]
from pyspark.mllib.feature import Word2Vec
model = Word2Vec().fit(lines)
Теперь, если я бегу dir(model)
выход
['__class__',
'__del__',
'__delattr__',
'__dict__',
'__doc__',
'__format__',
'__getattribute__',
'__hash__',
'__init__',
'__module__',
'__new__',
'__reduce__',
'__reduce_ex__',
'__repr__',
'__setattr__',
'__sizeof__',
'__str__',
'__subclasshook__',
'__weakref__',
'_java_model',
'_sc',
'call',
'findSynonyms',
'transform']
из которых последние 3 являются методами-членами, и getvectors() не является частью этого.