我有一个文档分类项目,我在其中获取网站内容,然后根据内容将众多标签之一分配给网站。
我发现tf-idf可能对此非常有用。但是,我不确定何时使用它。
假设一个关注特定主题的网站反复提及它,这是我目前的流程:
- 检索网站内容,解析为纯文本
- 规范化和主干内容
- 标记成一元组(也可能是二元组)
- 检索给定文档的每个 unigram 的计数,过滤低长度和低出现的单词
- 在结果集上训练分类器,例如 NaiveBayes
我的问题如下:tf-idf 适合在这里吗?在规范化/词干之前?在规范化之后但在标记化之前?代币化后?
任何见解将不胜感激。
编辑:
经过仔细检查,我想我可能对 TF-IDF 的运作方式产生了误解。在我描述的上述第 4 步中,我是否必须一次将全部数据输入 TF-IDF?例如,如果我的数据如下:
[({tokenized_content_site1}, category_string_site1),
({tokenized_content_site2}, category_string_site2),
...
({tokenized_content_siten}, category_string_siten)}]
在这里,最外层的结构是一个列表,包含元组、字典(或哈希图)和一个字符串。
我是否必须一次将全部数据输入 TF-IDF 计算器才能达到预期的效果?具体来说,我一直在研究scikit-learn TfidfVectorizer 来做到这一点,但我有点不确定它的用途,因为示例非常稀少。