首页 理论教育 基于LDA的特征抽取过程-《Python中文文本分析》改进版

基于LDA的特征抽取过程-《Python中文文本分析》改进版

时间:2023-11-06 理论教育 版权反馈
【摘要】:1.LDA类采用Scikit-learn工具实现文本特征抽取,对Scikit-learn提供的LDA类描述如下:参数:n_components:整型类型,是指隐含主题数n,缺省默认为10。主题-词矩阵为:每个主题的前2个特征词为:

基于LDA的特征抽取过程-《Python中文文本分析》改进版

1.LDA类

采用Scikit-learn工具实现文本特征抽取,对Scikit-learn提供的LDA类描述如下:

(1)参数:

n_components:整型类型,是指隐含主题数n,缺省默认为10。

doc_topic_prior:float类型数据,指文本文档主题分布θ的先验分布α,如果没有主题分布的先验知识,默认值为1/n。

topic_word_prior:float类型数据,指主题词语分布φ的先验分布β,如果没有词语分布的先验知识,默认值为1/n。

learning_method:其值可选“batch”和“online”,默认为“online”。

max_iter:整型数,缺省默认为10,是指最大迭代次数。

total_samples:整型数,指文档总数,只使用在partial_fit方法中。

batch_size:整型数,缺省默认为128,在每个EM迭代中使用的文档数量,仅用于在线学习

(2)主要方法:

fit(D[,y]):利用文本数据集D训练模型。(www.xing528.com)

fit_transform(D[,y]):利用文本数据集D训练模型,返回文本数据的主题分布。

partial_fit(D[,y]):分步训练,利用小批数据进行模型训练,逐步更新模型。

transform(D):利用已经训练好的模型获取语料D中每篇文档的主题分布。

2.采用LDA的文本特征抽取

运行结果说明:

(1)原始文本的文本-特征矩阵为:

(2)选择主题数为2,经过LDA模型降维后的文档-主题矩阵为

通过这个矩阵可看出文本文档的维度从11维降至2维,从值的分布可以看出文档1属于主题0,文档2属于主题1。

(3)主题-词矩阵为:

(4)每个主题的前2个特征词为:

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈