美文网首页
【理论篇】文本分析概述

【理论篇】文本分析概述

作者: 山药鱼儿 | 来源:发表于2022-03-03 23:02 被阅读0次

    既然是文本分析,那说明数据集中的特征都是一些文本,比如下面的数据集:

    该文本分析任务,需要我们根据已有特征,来预测新闻所述类别。解决文本分析任务,总体上包含以下 3 步:

    • 数据清洗,去停用词;
    • TF-IDF 关键词提取,得到词频向量;
    • 计算词频向量的相似度。

    下面我们分别来讨论每个部分。

    数据清洗:去停用词

    数据清洗工作非常关键,好的数据能大幅度提高模型的准确率,也是我们获得好模型的基础。对于文本分析任务,数据清洗工作中一项必不可少的步骤就是 去停用词

    什么是停用词呢?

    所谓停用词就是在预料中大量出现,但又没什么含义的词。比如说一些特殊字符:, ? : 等等,再比如一些没有语义的词:唉,乎,矣,一些,一个,一方面,另一方面等等。

    我们可以通过搜索引擎搜索到很多的停用词表,对于常规任务,选择其中使用比较多的停用词表下载下来即可。

    :停用词由于在文本中出现得非常频繁,且没有特殊意义,因此停用词的存在会影响我们关键词的提取。

    TF-IDF 关键词提取

    在去掉停用词之后,我们就可以开始提取文本中的关键词了。那如何评估一段文本中哪些词是关键词呢?

    假设有一篇题为《中国的蜜蜂养殖》的文章,首先出现次数最多的是:“的” “是” “在” 这类最常用的词,我们需要去掉这些停用词。去掉之后,进行词频(Term Frequency)统计。发现“中国” “蜜蜂” “养殖” 这三个词出现的次数一样多,那这三个关键词是否同等重要呢?

    但是,我们如果仔细想一下就会发现,“中国” 其实是很常见的词,比如《中国女足》《中国航天》《舌尖上的中国》等等。相对而言,“蜜蜂” 和 “养殖” 不那么常见。

    在提取关键词时,看来光靠词频是不行的,而是要同时考察词频 TF 和逆文档频率 IDF

    词频 Term Frequency

    词频的计算公式为:

    词频 TF = 某个词在文本中出现的次数 / 文本中一共包含多少个词。

    比如《中国的蜜蜂养殖》:假定该文长度为 1000 个词,"中国"、"蜜蜂"、"养殖" 各出现 20 次, 则这三个词的词频 TF 都为 0.02

    逆文档频率 Inverse Document Frequency

    如果某个词比较少见,但是它在这篇文章中多次出现,那么它很可能就反映了这篇文章的特性,正是我们所需要的关键词。为此,我们引入逆文档概率 IDF 的概念性来衡量一个关键词的稀缺性。

    逆文档概率的计算公式为:

    逆文档概率 IDF = log( 语料库的文档总数 / (包含该词的文档数 + 1) )

    在语料库文档总数一定的情况下,包含该词的文档数越少,那么 IDF 计算结果就会越大。即 IDF 越大,该关键词越稀缺。公式中,(包含该词的文档数 + 1) 之所以 +1 是因为 log1 = 0IDF 若为 0 则 TF * IDF 就会为 0 ,就没办法比较关键性了O(∩_∩)O哈哈~

    还是《中国的蜜蜂养殖》的例子,假设搜索 Google 发现,包含 "的" 字的网页共有 250 亿张,假定这就是中文网页总数,也就是我们语料库的文档总数。包含 "中国" 的网页共有 62.3 亿张,包含 "蜜蜂" 的网页为 0.484 亿张,包含 "养殖" 的网页为 0.973 亿张。

    利用逆文档概率公式,计算得出 "中国" "蜜蜂" "养殖" 三个词的 IDF 值分别为:0.603 2.713 2.410 ,则蜜蜂的稀有度最高,其次是养殖。

    TF-IDF 关键词提取

    TF-IDF 的计算公式:

    TF-IDF = 词频 TF * 逆文档概率 IDF

    下面,我们来计算 "中国" "蜜蜂" "养殖" 三个词的 TF-IDF

    通过 TF-IDF 我们就可以完成关键词的提取啦~利用提取出的关键词,我们就可以构造词频向量,最后文本分析任务就会转换为计算词频向量的相似度问题了。

    计算相似度

    词频向量的相似度计算使用余弦相似度:

    计算公式为:

    相关文章

      网友评论

          本文标题:【理论篇】文本分析概述

          本文链接:https://www.haomeiwen.com/subject/lmgurrtx.html