ant*_*nde 4 nlp machine-learning text-classification
我有一个关于定义文本分类中特征提取所需的词汇集的问题。在实验中,我可以想到两种方法:
1. 使用训练数据和测试数据定义词汇量大小,这样测试数据中的任何单词都不会在测试过程中被视为“未知”。
2.仅根据训练数据中的数据定义词汇量大小,并将测试数据中未出现在训练数据中的每个单词都视为“未知”。
乍一看,更科学的方法是第二种。不过值得注意的是,虽然我们无法知道实际系统中词汇量的真实大小,但将词汇量大小设置为比训练数据中出现的大小稍大一点似乎没有问题。以涵盖潜在的更大问题。这很有用,因为它实际上将不同的未知单词视为不同,而不是将它们总结为“未知”。这有什么不切实际的原因吗?
机器学习新手。非常感谢帮助。
如果您将训练集中没有出现的测试集词包含在模型中(例如分类模型),那么由于它们没有出现在训练集中,它们在训练模型中的权重将为零,因此它们不会除了增加模型大小之外,没有任何影响。所以选项2更好。
话虽如此,为了补偿测试数据不断变化的性质,一种解决方案是定期重新训练模型,另一种是使用 word2vec 来构建表示和 K-Nearest Neighbor 模型,该模型给出测试集中每个看不见的词为您提供训练集中最接近的单词,以便您可以使用该单词而不是未知单词。