nlp 多标签分类 tf vs tfidf
nlp multilabel classification tf vs tfidf
我正在尝试解决 NLP 多标签分类问题。我有大量的文档,应该分为 29 个类别。
我解决这个问题的方法是,在清理文本、删除停用词、标记化等之后,执行以下操作:
为了创建特征矩阵,我查看了每个文档的术语的频率分布,然后创建了这些术语的 table(删除了重复的术语),然后我计算了术语频率对应文本中的每个单词 (tf
)。所以,最终我得到了大约 1000 个术语以及它们在每个文档中的频率。
然后我使用 selectKbest
将它们缩小到 490 左右。在缩放它们之后,我使用 OneVsRestClassifier(SVC
) 进行分类。
我在 0.58
左右获得了 F1 score
,但它根本没有改善,我需要获得 0.62
。
我是否正确处理了问题?
我是否需要使用 tfidf vectorizer
而不是 tf
,如何使用?
我是 NLP 的新手,我完全不确定下一步该做什么以及如何提高分数。
在这个问题上的任何帮助都是无价的。
谢谢
Tf
方法可以比必要的更重视常用词,而不是使用 Tfidf
方法,该方法赋予数据集中特定文档中罕见且独特的词的重要性。
此外,在选择 Kbest 之前,宁愿对整组特征进行训练,然后使用特征重要性来获得最佳特征。
您也可以尝试使用 Tree Classifiers
或 XGB
来更好地建模,但 SVC
也是非常好的分类器。
尝试使用 Naive Bayes
作为 f1 score
的最低标准,并尝试在 grid search
的帮助下改进其他分类器的结果。
我正在尝试解决 NLP 多标签分类问题。我有大量的文档,应该分为 29 个类别。
我解决这个问题的方法是,在清理文本、删除停用词、标记化等之后,执行以下操作:
为了创建特征矩阵,我查看了每个文档的术语的频率分布,然后创建了这些术语的 table(删除了重复的术语),然后我计算了术语频率对应文本中的每个单词 (tf
)。所以,最终我得到了大约 1000 个术语以及它们在每个文档中的频率。
然后我使用 selectKbest
将它们缩小到 490 左右。在缩放它们之后,我使用 OneVsRestClassifier(SVC
) 进行分类。
我在 0.58
左右获得了 F1 score
,但它根本没有改善,我需要获得 0.62
。
我是否正确处理了问题?
我是否需要使用 tfidf vectorizer
而不是 tf
,如何使用?
我是 NLP 的新手,我完全不确定下一步该做什么以及如何提高分数。
在这个问题上的任何帮助都是无价的。
谢谢
Tf
方法可以比必要的更重视常用词,而不是使用 Tfidf
方法,该方法赋予数据集中特定文档中罕见且独特的词的重要性。
此外,在选择 Kbest 之前,宁愿对整组特征进行训练,然后使用特征重要性来获得最佳特征。
您也可以尝试使用 Tree Classifiers
或 XGB
来更好地建模,但 SVC
也是非常好的分类器。
尝试使用 Naive Bayes
作为 f1 score
的最低标准,并尝试在 grid search
的帮助下改进其他分类器的结果。