假设我的数据集包含一些非常小的文档(每个大约 20 个单词)。他们每个人都可能有至少两种语言的单词(例如马来语和英语的组合)。每个里面也有一些数字。
只是出于好奇,虽然通常是可定制的,但为什么一些标记器选择忽略默认情况下只是数字的标记,或者任何不符合特定长度的标记?例如,scikit-learn 中的CountVectorizer会忽略不超过 1 个字母数字的单词。gensim中的标记器实用程序会忽略带数字的单词。
我最后使用了 CountVectorizer 并使它接受包含数字的单词和长度为 1 的单词。这是因为我需要完全匹配,因为这些长度为 1 的单词的细微差别可能指向不同的文档。
我目前正在尝试主题建模(gensim 的 LSI)来执行主题分析,但这样做的主要目的是能够减少维度,以便我可以将其提供给 spotify 的annoy库以进行快速近似搜索(从 58k 特征到 500话题)。此外,我希望它能够减少计算分类器模型所花费的时间和内存。
所以问题是,如果我对长度为 1 的单词进行标记,执行主题建模是否有意义?即使我只通过比较余弦相似度(没有花哨的人工神经网络)进行蛮力搜索,它是否会影响精度或准确性(即它是否能够识别查询中长度为 1 的单词的细微变化并检索正确的文档) ?