问题描述
vectorizer = CountVectorizer(min_df=10,ngram_range=(1,4),max_features=15000)
vectorizer.fit(X_train['essay'].values) # fit has to happen only on train data
X_train_essay_bow = vectorizer.transform(X_train['essay'].values)
feature_names= vectorizer.get_feature_names()
手套矢量的特征名称是什么?
with open('glove_vectors','rb') as f:
model = pickle.load(f)
glove_words = set(model.keys())
手套矢量的300个维度的名称是什么?
解决方法
“手套”功能没有名称。 countvectorizer对每个句子中每个标记的出现进行计数。因此,这些功能具有易于理解的名称。功能“猫”是标记“猫”的每个句子中的计数。
对于Glove Vectors,其策略完全不同,并且没有等效的特征表示。手套向量是单词在抽象N维空间中的嵌入。
令牌的手套向量来自将令牌作为输入传递到经过训练的神经网络,并在中间进行自动编码层的激活。
如果您曾经训练过深度神经网络,请想象在其中选择一些隐藏层。该隐藏层中每个节点的feature_name是什么?这是一个毫无意义的问题,因为节点不是要素。它们存在以将激活传递到下一层。手套矢量特征也是如此。它们是网络中隐藏层的激活值。