zoukankan      html  css  js  c++  java
  • 主题模型 整理

    判断文档相似性的传统方法是通过查看两个文档共同出现的词项(terms,不重复的words)有多少,如TF-IDF等。但这种方法没有考虑到文字背后的语义关联,可能在两个文档共同出现的词项很少甚至没有,但两个文档是相似的。

    TF-IDF是Term Frequency - Inverse Document Frequency的缩写,即“词频-逆文本频率”。它由两部分组成,TF和IDF。前面的TF也就是我们前面说到的词频,我们之前做的向量化也就是做了文本中各个词的出现频率统计,并作为文本特征,这个很好理解。关键是后面的这个IDF,即“逆文本频率”如何理解。我们讲到几乎所有文本都会出现的"to"其词频虽然高,但是重要性却应该比词频低的"China"和“Travel”要低。我们的IDF就是来帮助我们来反应这个词的重要性的,进而修正仅仅用词频表示的词特征值。概括来讲, IDF反应了一个词在所有文本中出现的频率,如果一个词在很多的文本中出现,那么它的IDF值应该低,比如上文中的“to”。而反过来如果一个词在比较少的文本中出现,那么它的IDF值应该高。比如一些专业的名词如“Machine Learning”。这样的词IDF值应该高。一个极端的情况,如果一个词在所有的文本中都出现,那么它的IDF值应该为0。

    主题模型 Topic Model

    主题模型是用来在大量文档中发现潜在主题的一种统计模型。

    如果一篇文章有一个中心思想,那么一些特定词语会出现的比较频繁;真实情况下,一个文档中通常包含多个主题,而且每个主题所占的比例各不相同,则与各个主题相关的关键字出现的次数与主题之间的比例有关。主题模型能够自动分析文档(document),不计顺序地统计文档内的单词(word),根据统计的信息判断该文档包含的主题(topic)以及各个主题所占比例。

    主题模型是一种生成式有向图模型,主题模型中文档是由主题组成的,而主题是单词的一个概率分布;即每个单词都是通过“文档以一定的概率选择某个主题,再从这个主题中以一定的概率选择某个单词”这样一个过程得到的。

     

    主题模型克服了传统信息检索中文档相似度计算方法的缺点,并能够在海量数据中找出文字间的语义主题,在自然语言处理、信息检索等领域有广泛的应用。

    LDA

    Linear Discriminate Analysis   线性判别分析

    LDA 是一种文档主题生成模型, 是一个三层贝叶斯概率模型。

    所谓生成模型:我们认为, 一篇文章的每个词都是通过“以一定概率选择了某个主题,并从这个主题中以一定概率选择某个词语”这样一个过程得到。文档到主题服从多项式分布,主题到词服从多项式分布。

    • LDA是一种可作为特征抽取的技术

    • 可以提高数据分析过程中的计算效率

    • 对于不适用与正则化的模型,可以降低因维度灾难带来的过拟合

    LDA分类原理

    同一主题下,某个词出现的概率,以及同一文档下,某个主题出现的概率,两个概率的乘积,可以得到某篇文档出现某个词的概率,我们在训练的时候,调整这两个分布就可以了。 

    由此可以定义LDA的生成过程:

    • 对每篇文档,在主题分布中抽取一个主题;
    • 对抽到的主题所对应的单词分布中随机抽取一个单词;
    • 重复上述过程直至遍历整篇文档中的每个单词

    经过以上三步,就可以看一下两个分布的乘积,是否符合给定文章的分布,以此来调整。

     

     实践:https://blog.csdn.net/qq_39422642/article/details/78730662

    gensim使用指南

  • 相关阅读:
    windows环境下Node.js 和npm(Node Package Manager)的安装
    WiX初阶指导
    Selenium实战——.Net下的自动化测试搭建
    spring boot Websocket(使用笔记)
    【原创】XNA 4.0学习笔记索引
    【原创】XNA 4.0学习知识记录(1)
    【总结】Asp.Net MVC 知识点汇总
    【总结】Asp.net MVC1.0 学习笔记索引
    JPype python调用Java
    比较:Java和python
  • 原文地址:https://www.cnblogs.com/shona/p/11449136.html
Copyright © 2011-2022 走看看