text2vec 这个 R 包提供了高性能和简洁的 API 来进行文本分析、自然语言处理。
分词器
word_tokenizer(strings)
英语分词器
jieba<-jiebaR::worker()
中文分词器
#RUN THIS EXAMPLE: |
I/O 处理(迭代器):支持create_<type>
函数
#RUN THIS EXAMPLE: |
向量化
- 创建词汇表:(N-grams参数)
#RUN THIS EXAMPLE: |
- 修剪词汇:
prune_vocabulary(vocabulary, #词汇表 |
#RUN THIS EXAMPLE: |
- 词汇向量化:
vocab_vectorizer()
,hash_vectorizer()
vectorizer <- vocab_vectorizer(pruned_vocab)
- DTM,TCM: (Document-Term matrices, Term co-occurence matrices)
dtm_train <- create_dtm(it_train, vectorizer)
tcm_train <- create_tcm(it_train, vectorizer)
主题模型
- 处理模型的统一规范
model$new(...)
生成一个模型对象,设置初始化参数。
model$fit(x, ...)
拟合模型
model$fit_transform(x, ...)
拟合模型并转换数据
model$transform(x_new, ...)
使用已经训练好的模型转换数据
Tf-idf 转换,Global Vectors (GloVe) 词向量
- 常用模型
LSA$new()
潜在语义分析(LSA)
LDA$new()
潜在Dirichlet分配模型(LDA)
- 文档相似性和距离(不相似性)
sim2(x, y, method)
矩阵x和y,每一行的使用指定方法的相似性
dist2(x, y, method)
矩阵x和y,每一行的使用指定方法的距离
psim2(x, y, method)
, dist2(x, y, method)
并行计算
参数method:“cosine”, “euclidean”, “jaccard”
余弦距离,欧式距离,Jaccard距离,RelaxedWordMover’sDistance
评论