文本挖掘第二弹
本周目标
正式上车
一 组合关系发现和熵(单词关联挖掘)
1.1熵函数
一个词相随出现的概率定义:
熵函数:表示预测有多困难(0不困难,1最困难)
以抛硬币实验来解释说明:
熵函数在文本挖掘中应用:
定量说明某个词哪个词很难预测。
1.2 条件熵
知道文本段中的某部分
下图为非条件熵的表达(条件概率为1)
而真正的条件熵表达式:
所以相互大小关系清晰可见。并且条件熵的最大限度也是该事件的熵。
那最小值是多少呢?
在文本挖掘中的应用:
捕捉组合关系
条件熵为最大值(the作为条件,求meat的熵):没什么用处,不能减小熵的值
条件熵不断减小:sigma具有更小的熵。意味着两者之间有更强的联系。
计算方法:
注意要为每个词选取阈值。
衡量预测W1的值有多难,是可比的。而H(W1|W2)和H(W3|W2)是不可比的,因为两者的上限都不一样,所以所得的熵的值不具有可比性。
即这个算法并不能帮助我们挖掘最强大的K整个集合的合成关系,因其相互间不具有可比性。
1.3 组合关系
作用:标准化条件熵,以便条件熵能和其他不同的配对来进行对比。
在知道Y的情况下我们能得到什么样的X熵系数
I值为0,代表X与Y相互独立,无关系,所以转化为I值越大,越说明其可能具有组合关系。
I(X;Y)的最大值是:一个词与自己之间的交互关系 的情况
计算方法(KL发散):
两个变量的联合分布/两变量独立的联合分布
显示了交互信息匹配这种真实的联合分布的发散,在独立性假设的情况下的期望分布,发散越大,交互信息的值越高。
共有4个组合
1.4 最大似然估计
作用:用一个事件在可以观测到的数据里所发生的次数来计算其概率
步骤:
1 一共数三次:
W1出现的次数、W2出现的次数、W1,和W2同时出现的次数
2 将次数归一化:
利用段(片段)的总数N
平滑化后结果:
添加一个虚拟片段
总结:
一旦我们用交互信息来发掘语义关联,我们可以把这个交互信息作为权重来表征背景,这样就给了我们另一种描述 一个单词上下文的方式 。
比如说一种类别 如果我们对所有的单词做同样的处理,我们就可以对单词进行聚类,通过比较它们背景上的相似性 来比较这些单词的相似性 。
这就给我们提供了另一种确定权重的方法:建立一个词聚合关系语境模型的简便方法。
片段:
定义片段 而这个片段也可以被定义为很短小的文本框或一个很长的文章这可以返回不同的关联结果
二、主题挖掘与分析(内容挖掘)
不同种类的挖掘任务:挖掘文本主题与相关知识
2.1主题
可应用于不同尺度:一句话、一段、一篇文章
环境变量帮助分析主题的模式:时间、出处、作者、数据来源
主题选定:
N个文本;找到k个主题;
πij(覆盖度):表示文档di覆盖主题θj的概率
2.2 如何正确定义theta
将一个主题简单定义为术语(theta)
话题挖掘与分析的两个步骤:
1.发现话题
2.分析每个文档中这些主题的覆盖范围
1的计算实施:
统计方法设计评分函数
删除冗余:最大边际相关性排名(贪婪的算法);
避免选择太过相似的术语
所以,综合冗余删除 和 术语高分,得到K个主题词。
2的计算实施:
需要考虑相关词汇,而不能只是某个词出现的次数,频次。
解决方法:更多的词汇——解决缺少表现力问题
量化术语(区别主题间的细微差别)——模糊介绍语义相连的词
将多重语义的词分开,从而辨识主题——语义模糊问题
用概率主题模型表示
共有词:主题共用一些词,共用的意思就是甚至共用概率可能性阀值(黑色)
因其在不同主题中的概率不同,所以也起到了分离语感的作用。
增加:每个主题中的词汇的总概率和也为1.
2.3生成模型
1、为数据设计一个概率模型来还原数据的生成(使参数尽可能匹配)
2、已知:特别的模型和参数^
即词汇分布
概率极限数值(有每个文档的一组π,因为有n个文档 所以我们有n组π),
3、 有多少个参数?
答:n个文档,K个大主题,假设每个大主题有t个术语,即共有kt+k个参数
4、匹配数据后,还原一些参数值,将使用特定参数值及这种算法的结果
Y轴:观察到的数据概率(最大化)。X轴:^
当定义一个主题为分布,那么文章文字主题数目和词汇表组的冲突就是一个输出。得到的结果就是一组主题,每一个是一个词汇分布,同时也覆盖每个文档中所有主题。这些可以用Θ和π来指代,在这些参数上还有两个限制。第一个是词汇分布的限制,每个词汇分布中所有词的概率总和必须是1 。第二个限制是关于每个文档的主题覆盖,一个文档不允许在发现的主题组之外还原,所以一个文档中k个主题的每一个主题的覆盖总和为1。
三、统计语言模型(LM)
3.1 概念:
统计语言模型:是指 单词序列 的概率分布
明显地具有上下文依赖的性质,某些单词序列相比别的单词序列具有更高的概率
可看做:文本生成的概率机制
一元语法模型(Unigram LM)
假设:这种模型独立地生成构成文本的每一个单词
模型给出每个单词的概率,但是忽略了单词的顺序。但已足够处理主题分析在内的许多课题。
抽样问题:
给定一个模型,我们观察到某一类数据点的概率
给定特定的分布,不同的文本将对应不同的概率
在所有字在这个分布中的概率 都非零的假设前提下,这意味着, 本质上我们可以生成所有类型的文本文档,包括有意义的文本文档。
估计问题:
基于给定模型和某些观测值的参数估计
假设,我已经知道生成的文本的具体内容,用于生成这个文本数据的语言模型,最有可能是什么样的?
直观上,根据生成文本中单词出现的频次来估计原始文本。但是这是最优的吗?
我们的猜测在某种意义上的确是最优的,这种估计叫做极大似然估计。称它是最优的是因为它能赋予我们的被观测数据最大概率。
3.2 两种参数估计方法
1、极大似然估计法
最优定义:数值似然值达到最大
寻求能够最好地解释数据的参数,但是当数据太小时它也会产生问题。因为如果数据点太小(很少的数据点)。在样本集合很小的情况下, 如果我们完全依赖于已有数据,并且试图使估计拟合这些数据,则将导致偏差。
未观察到的单词的0概率,有时候可能并不合理。尤其当我们想要用这个分布来描述文本挖掘主题的特征时。
2、贝叶斯估计(最大后验估计 MAP估计)
数据有偏向
假设p(X):表述的是我们对于X的先验信念(即在观察到任何其他数据之前,我们已经对X有了信念(belief)--我们相信X取某些值的概率比其他值更高)
给定Y条件下的X的概率:关于X的后验信念(我们观察到Y之后对于X值分布的信念)
后验与先验通过 P(Y|X) 建立了联系。
则通过 先验*似然值 得到一个折衷值。
如何定义先验
Ɵ值的分布:哪些Ɵ值可能性更大
f(Ɵ):根据给定观察证据X条件下 Ɵ的后验分布得到的 f的期望值作为 f的估计值
作为一个特例,我们假设f(Ɵ) = Ɵ,则我们得到的是Ɵ的期望值 实际上就是Ɵ的后验均值。这个值也对应一个Ɵ点,这个点有时与后验众数(mode)一致 ,但并非总是如此。所以 ,它也给出了参数估计的另一种方法。
3.3 实例(一文档,一主题)
第一步思考:怎样的数据,怎样建模。
第二步:考虑似然函数,或写下某些似然函数,以正式地获得这个模型中某个数据点的概率
第三步:考虑参数的估计。我们希望用来表示一个主题的词语分布所以参数的数量将和单词表中的单词数一致(M)
约束最大化问题
拉格朗日乘数法
高概率是功能词——去掉方法:详见下周
要注意第5题,要分别计算两词的概率,再进行乘积