贝叶斯案例3:文本关键词提取、新闻分类(python实现)

本文介绍了文本分析的基础概念,包括停用词表、关键词提取(TF-IDF)、相似度计算(夹角余弦)以及LDA主题模型。通过Python实现了新闻数据的预处理、LDA建模和贝叶斯分类,以进行关键词提取和新闻分类。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

文本分析的基本概念:

1、停用词表:

    在信息检索中,为节省存储空间和提高搜索效率,在处理自然语言数据(或文本)之前或之后会自动过滤掉某些字或词,这些字或词即被称为Stop Words(停用词)。也即检索中碰到这些词,自动忽略。

    对于一个给定的目的,任何一类的词语都可以被选作停用词。大致可分为两类:

  • 功能词,大量出现,比如语气助词、副词、介词、连接词等,通常自身并无明确的意义,比如英文的(“the”,“a”,“an”,“that”,“those”,“over”,“under”,“above” ),中文词(的,一些,在,哎呦等)

  • 应用十分广泛的词汇量,比如Internet上随处可见的“Web”一词,几乎在每个网站上均会出现,难以帮助缩小搜索范围,同时还会降低搜索的效率

2、关键词提取

    TF-IDF(term frequency–inverse document frequency)词频--反转文件频率,用以评估一个词对于一个文件或者一个语料库中的一个领域文件集的重要程度。字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。计算公式如下:

  •     词频(term frequency,TF):某一个给定的词语在该文件中出现的次数。计算公式:


  • 逆向文件频率(inverse document frequency,IDF):是一个词语普遍重要性的度量。计算公式如下:

    其中1为了防止分母为0

计算案例;

    假如一篇文件的总词语数是100个,而词语“养殖”出现了3次,那么“养殖”一词在该文件中的词频就是 0.03 (3/100)。一个计算文件频率 (DF) 的方法是测定有多少份文件出现过“养殖”一词,然后除以文件集里包含的文件总数。所以,如果“养殖”一词在1,000份文件出现过,而文件总数是10,000,000份的话,其逆向文件频率就是 9.21=( ln(10,000,000 / 1,000) )。最后的TF-IDF的分数为0.28=( 0.03 * 9.21)。

3、相似度与夹角余弦

    相似度度量(Similarity),即计算个体间的相似程度,相似度度量的值越小,说明个体间相似度越小,相似度的值越大说明个体差异越大。

    对于多个不同的文本或者短文本对话消息要来计算他们之间的相似度如何,一个好的做法就是将这些文本中词语,映射到向量空间,形成文本中文字和向量数据的映射关系,通过计算几个或者多个不同的向量的差异的大小,来计算文本的相似度。

    计算相似度可以有很多中方法,比如欧氏距离、切比雪夫距离、相关系数、马氏距离、夹角余弦等,至于各个计算的区别,具体看参考文章, 本文仅介绍夹角余弦。

    https://www.cnblogs.com/heaad/archive/2011/03/08/1977733.html   

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值