我有1000篇与科学技术相关的新闻文章。我需要训练一个分类器来预测每篇文章在三个领域(计算机科学、电子学、电气工程)的置信度得分。每篇文章在每个领域的得分代表它属于该领域的程度。置信度得分是一个介于0和1之间的数值。
但数据集没有训练标签。
我该如何继续?需要什么样的数据?我如何训练这样的模型?
回答:
因此,这不是一个分类问题。只要你没有任何标签,这就属于无监督学习。
你可以尝试使用K-Means(一种无监督机器学习算法),它允许你将数据聚类到预定义的簇数(这里是3个):
https://scikit-learn.org/stable/modules/generated/sklearn.cluster.KMeans.html#sklearn.cluster.KMeans
但是,你将无法验证“真实情况”。
如果你真的想更进一步,可以尝试自己标记这些文章(比如标记为计算机科学、电子学和电气工程),然后尝试一些有监督的算法(使用scikit-learn)或神经网络(使用tensorflow)。
思路是将你的输入数据向量化(你可以看看TF-IDF),然后尝试任何有监督的模型。
这被称为自然语言处理。你还有一些库可以帮助你完成这项工作。
NLTK和Spacy是一个不错的开始: