0

我一直在尝试使用该作者撰写的多个文本对作者进行分类,然后我将使用这些文本在其他文本中找到相似之处,以在测试组中识别该作者。

我已经成功地进行了一些预测,但是我仍然得到了无法预测作者的结果。

我已经预先对文本进行了预处理,包括词干、标记、停用词、删除标点符号等,以使其更准确。

我不熟悉 OneClassSVM 参数的工作原理。我可以使用哪些参数来最适合我的问题,如何让我的模型在预测中更准确?

这是我到目前为止所拥有的:

vectorizer = TfidfVectorizer()

author_corpus = self.pre_process(author_corpus)
test_corpus = self.pre_process(test_corpus)

train = author_corpus
test = test_corpus

train_vectors = vectorizer.fit_transform(train)

test_vectors = vectorizer.transform(test)

model = OneClassSVM(kernel='linear', gamma='auto', nu=0.01)

model.fit(train_vectors)

test_predictions = model.predict(test_vectors)

print(test_predictions[:10])

print(model.score_samples(test_vectors)[:10])

4

2 回答 2

0

我听说过关于 Andrew Ng 在 Coursera 上的深度学习课程的正面评价。我通过 edx 上的 Microsoft 专业 AI 认证了解了我对 AI 的所有了解。

于 2020-03-04T01:06:06.010 回答
0

你可以使用 SVM,但深度学习非常适合这个。我参加了一场 Kaggle 比赛,对文档进行分类,这对我来说非常棒。

如果您认为自己的数据集不够大,您可能只想采用文本分类器模型并重新训练作者的最后一层,然后微调模型的其余部分。

于 2020-03-03T07:27:57.037 回答