这次希望尝试用简单的技术(TF-IDF和相似度矩阵)做一次实践,即文档分类。
任务定义:对于任意给定的一个字符串,判断它与目前哪个文档最为相似,从而进行归类。首先要对当前的文档(数据见github.com/hope-data-sc)做词嵌入(就用最简单的TF-IDF模型),然后对于任意的新字符串,进行向量化之后,与先前的标准库做相似性的分析,看看与哪个文档相似性最近,就属于哪一个类别。
1 读入文件
library(pacman)
p_load(tidyverse,data.table)
fread("classification_corpus_raw.csv",encoding = "UTF-8") %>%
as_tibble() %>%
mutate(id = 1:n())-> raw
这样,文件就在raw中了。
2 计算TF-IDF
这一部分参考HopeR:R语言自然语言处理:关键词提取(TF-IDF),先进行分词,然后对所有的词计算TF-IDF。
## 快速分词
p_load(jiebaR)
worker() -> wk
raw %>%
m