Model gensim包装器中的访问模型

Model gensim包装器中的访问模型,model,wrapper,gensim,Model,Wrapper,Gensim,我使用以下gensim包装器来训练单词向量模型: import numpy as np import pandas as pd from gensim.sklearn_api import W2VTransformer from gensim.utils import simple_preprocess # Load synthetic data data = pd.read_csv('https://pastebin.com/raw/EPCmabvN') data = data.head(1

我使用以下gensim包装器来训练单词向量模型:

import numpy as np
import pandas as pd
from gensim.sklearn_api import W2VTransformer
from gensim.utils import simple_preprocess

# Load synthetic data
data = pd.read_csv('https://pastebin.com/raw/EPCmabvN')
data = data.head(10)
# Set random seed
np.random.seed(0)

X_train = data.apply(lambda r: simple_preprocess(r['text'], min_len=2), axis=1)
y_train = data.label

model = W2VTransformer(size=10, min_count=1)
model.fit(X_train)

model.wv.vocab
但是,一旦我尝试访问经过训练的模型,即
model.wv.vocab
,它就会输出错误:

AttributeError:“W2VTTransformer”对象没有属性“wv”

我可以以某种方式访问词汇表和其他模型参数吗,或者这在包装器中是不可能的

Current workaround: 

from gensim.models.doc2vec import TaggedDocument
from gensim.models.doc2vec import Doc2Vec

#Defining model without wrapper
documents = data.apply(lambda r: TaggedDocument(words=simple_preprocess(r['text'], min_len=2), tags=[r.label]), axis=1)
d2v = Doc2Vec(documents, window=2, vector_size=10, min_count=1, seed=0)
d2v.wv.vocab

是什么让您认为
W2V变压器
具有
wv
特性?未在类文档中列出:

而且,像这样访问
转换器的内部状态(在scikit learn中)并不太习惯。取而代之的是,你可以要求一个已经安装了
fit()
的模型,然后
transform()
一个单词列表,以获取一个单词向量列表

事实上,这些
gensim
文档顶部的示例中显示了这一点,在一行中同时执行
fit()
和'transform()(即使您不想这样做):

如果您确实希望直接访问本机
gensim
Word2Vec
模型,即具有
wv
属性的模型,则必须使用不同的方法。例如,您可以查看
W2VTransformer
源代码以查看内部模型的保存位置:

在那里,您将看到
fit()
方法将当前
Word2Vec
实例存储在名为
gensim\u model
的属性中

因此,出现错误的线路,
型号
W2V变压器
的一个实例,可以改为:

model.gensim_model.wv.vocab

谢谢你,戈乔莫,我找到了,而且很有效。请原谅我的gensim相关问题,我是一个初学者,所有的调试和源代码检查对我来说仍然是一个全新的过程。
model.gensim_model.wv.vocab