Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5760528
  • 博文数量: 291
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 7924
  • 用 户 组: 普通用户
  • 注册时间: 2016-07-06 14:28
个人简介

阿里巴巴是个快乐的青年

文章分类

全部博文(291)

文章存档

2018年(21)

2017年(4)

2016年(5)

2015年(17)

2014年(68)

2013年(174)

2012年(2)

分类: 大数据

2013-11-24 22:40:15

        主题模型(Topic Model)在机器学习自然语言处理等领域是用来在一系列文档中发现抽象主题的一种统计模型。直观来讲,如果一篇文章有一个中心思想,那么一些特定词语会更频繁的出现。比方说,如果一篇文章是在讲狗的,那“狗”和“骨头”等词出现的频率会高些。如果一篇文章是在讲猫的,那“猫”和“鱼”等词出现的频率会高些。但真实的情况是,一篇文章通常包含多种主题,而且每个主题所占比例各不相同。因此,如果一篇文章10%和猫有关,90%和狗有关,那么和狗相关的关键字出现的次数大概会是和猫相关的关键字出现次数的9倍。一个主题模型试图用数学框架来体现文档的这种特点。主题模型自动分析每个文档,统计文档内的词语,根据统计的信息来断定当前文档含有哪些主题,以及每个主题所占的比例各为多少。 主题模型最初是运用于自然语言处理相关方向,但目前以及延伸至例如生物信息学的其它领域。
        上面一段描述来自于维基百科,但是如果仅仅如此来描述主体模型的话,似乎与传统信息检索中文档相似度计算类似了(即文档之间重复的词语越多越可能相似。如果将上述例子中的文档数变成两篇,那么两篇文档是否相关往往不只决定于字面上的词语重复,还取决于文字背后的语义关联。事实上,主题模型还是一个语义挖掘的利器。主题模型是对文字隐含主题进行建模的方法,它克服了传统信息检索中文档相似度计算方法的缺点,并且能够在海量互联网数据中自动寻找出文字间的语义主题。
        在自然语言处理中,主题可以看成是词项的概率分布。使用主体模型对文档的生成过程进行模拟,再通过参数估计得到各个主体。当以词袋(bag of words)形式表示文档时,其维度可能是数万,但是若指定主题模型的主题个数为K,通过主题模型的训练,最终形成了K个主题,则可以将词项空间中的文档变换到主题空间,得到文档新的表达。由于通常主题的个数K远小于词项的个数,常使用主题模型进行降维。在以文档为处理对象的领域中,降维后的新坐标(即在K个主题上的分量)往往具有语义上的特征。
        简单讲就是:主题可以看作是词项的概率分布,主题模型通过词项在文档级的共现信息抽取出语义相关的主题集合,并能够将词项空间中的文档变换到主题空间,得到文档在低维度空间中的表达。
        主题模型训练推理的方法主要有两种,一个是pLSA(Probabilistic Latent Semantic Analysis),另一个是LDA(Latent Dirichlet Allocation)。pLSA主要使用的是EM(期望最大化)算法;LDA采用的是Gibbs sampling方法。以后会详细介绍这两种方法。
        任何算法或者模型最终都要为实际应用服务才算是真正落地,那么主题模型也不例外,其可以用于如下几个方面:
        (1)可以衡量文档之间的语义相似性。
        对于一篇文档,求出来的主题分布可以看作是对文档的一个抽象表示。对于概率分布,可以通过一些距离公式(比如KL距离)来计算出两篇文档的语义距离,从而得到它们之间的相似度。
        (2)可以解决多义词的问题。
        同一个词语在不同的场景下,能表达不同的意义。通过求出来的“词语-主题”概率分布,就可以知道这个词语属于哪些主题,从而就可以通过主题的匹配来计算它与其它文字之间的相似度。
        (3)可以排除文档中噪音的影响。
        一般来说,文档中的噪音往往处于次要主题中,可以把它们忽略掉,只保持文档中最主要的主题。
        此外,主体模型还有如下两个优点:
        (1)无监督的,完全自动化的。
        只需要提供训练文档,它就可以自动训练出各种概率,无需任何人工标注过程。
        (2)跟语言无关的。
        任何语言只要能够对它进行分词,就可以进行训练,得到它的主题分布。
        上面这些都还太抽象,无法描述主体模型到底能用在哪里,最直接的例子是互联网搜索引擎,比如:一个用户输入了一个query,搜索引擎要从海量的网页库中找出和它最相关的结果,这里就涉及到如何衡量query和网页之间相似度的问题(搜索结果越接近需求,用户体验越好),而主题模型是一个能够挖掘语言背后隐含信息的利器,对语义关联的挖掘,可以使得搜索更加智能化。


阅读(10677) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

scq2099yt2013-11-24 22:40:29

文明上网,理性发言...