【发布时间】:2019-08-22 23:59:03
【问题描述】:
我正在构建一个多标签文本分类程序,我正在尝试使用 OneVsRestClassifier+XGBClassifier 对文本进行分类。最初,我使用 Sklearn 的 Tf-Idf Vectorization 来对文本进行矢量化,它可以正常工作。现在我正在使用 Gensim 的 Word2Vec 来矢量化文本。但是,当我将矢量化数据输入 OneVsRestClassifier+XGBClassifier 时,在拆分测试数据和训练数据的行出现以下错误:
TypeError: 单例数组array(, dtype=object) 不能被认为是一个有效的集合。
我尝试将矢量化数据转换为特征数组 (np.array),但这似乎不起作用。 以下是我的代码:
x = np.array(Word2Vec(textList, size=120, window=6, min_count=5, workers=7, iter=15))
vectorizer2 = MultiLabelBinarizer()
vectorizer2.fit(tagList)
y = vectorizer2.transform(tagList)
# Split test data and convert test data to arrays
xTrain, xTest, yTrain, yTest = train_test_split(x, y, test_size=0.20)
变量textList 和tagList 是一个字符串列表(我正在尝试分类的文本描述)。
【问题讨论】:
标签: python machine-learning scikit-learn gensim