大量语料库的文本对比分析
摘要:Comparative Document Analysis(CDA)
算法总结:
对于一篇文档,
1.使用SegPhrase将文档变成一个个短语的集合
2.从上述的短语集合中挑选出突出短语(salience phrase selection),使用interestingness和diversity来衡量最优短语
(1)interstingness score:两种情况
第一种情况:单词
其中:
:短语(这里其实是单词的意思)p,在文档d中的相似度
:短语p在文档d中出现的频率
:文档的phrase集合
:文档d中最高的频率
:文档集中文档的个数,D为文档集
:短语p在整个文档集中的频率
第二种情况:短语,即,和在一篇文档中同时出现的频率超过3次即认定为短语,和的
(2)diversity:
使用编辑距离算法来计算两个短语和的相似度:
(3)maximize the joint of diversity and interestingness
其中:
:个文档d中的突出短语的集合
:短语的interestingness score
:短语和的编辑距离,即相似度、
:的权重
:的整体interestingness
:中短语的相似性
使用diversity rank算法来计算maximize。
即:输入:,,,
输出:个节点的子集
step1:计算
step2:初始化为一个空的集合
step3:初始化得分向量
for item=1:k do
将增加到
更新
end for
3.求S中哪些算作共性短语,哪些算作差异性短语
(1)用commonality score来衡量共性短语
commonality score的方程:
:相关性分数 ,
很高当且仅当和都很高
(2)用distinction score来衡量差异性短语
distinction score的方程:
:平滑参数,避免过小
4.计算词语与文档的相关性分数
(1)构建图短语-文档语义相关性
:一个向量,,
:表示两篇文档和的相关性
:,impose the positive label of d in the second term
: 调优参数
:如果, ------ =BM25 score 否则 =0
:
:
:文档集,size=n
:中的短语(无重复),个数为m
使用BM25算法计算短语和文档之间的相关性得分(gensim)
(2)最大化对应的度量来选择公共/不同的短语:联合优化问题
common phrase selection:
约束条件:
其中:
:文档对的通用短语集
: ,的二进制向量
:所选短语的通用性分数的总计
: 调参
distict phrase selection:
约束条件:
其中:
: 是的二进制向量
:所选短语的差异性分数的总计
(3)解决上述两个公式的有效算法
step1:固定(或),在最小化(或)的过程中估计
step2:固定,通过对(或)施加约束来优化(或)
重复上面两个步骤,直到(或)收敛
为了估计,对(或)进行求导,通过设置导数为0来更新规则,迭代更新直到收敛.
网友评论