>科技>>正文

切切切词!新词发现算法TopWORDS的原理及实现

原标题:切切切词!新词发现算法TopWORDS的原理及实现

一、介绍

TopWORDS [参考文献1]是发表在PNAS的一种新词发现算法,它在没有任何先验知识的条件下,快速地从大规模中文语料里学习出一个排序的词典以及语料文本的分词结构。

NB:TopWORDS的代码实现仓库

https://github.com/qf6101/topwords

二、应用领域

TopWORDS的应用领域包括新词发现、短文本分析等。新词发现一直是文本挖掘领域的一个难题,目前的方法主要是分为两种:

(1)依赖众包手段收集词汇,例如百度的搜索词和搜狗的拼音输入;

(2)采用规则方式采集候选词汇,加以人工筛选,例如Matrix67汇总的一些规则 [参考文献2]。上述第一种方法需要先天有优势的大产品才能做,第二种方法效果较差,并且它们都需要大量的人工干预。TopWORDS天然可以做新词发现,优点是完全无监督,有理论依据,效果较好。短文本分析是文本挖掘领域的另一个难题,内容简短、拼写错误、缩写语多、语法随意等原因为它的分析带来很多困难。TopWORDS除了可以抽取常用短语外,还可以为短文本分类等任务提供高频特征。

三、算法步骤

(1)TopWORDS的问题描述如下(不考虑辅助知识)

* 输入:一个语料集合

* 输出:一个排序的词典、输入语料的分词结构(与词典一致)

(2)TopWORDS采用两步算法

* 第0步:语料预处理。确定文本片段的粒度,可以是句子、段落、甚至整篇文档作为一个文本片段,前两种粒度适合分布式计算,论文采用后两种。将语料整理为文本片段的集合,清理掉文本片段中的标点符号。

* 第2步:采用EM算法从语料中估计每个词的实际使概率,下面是有关符号。

另外,S和T的关系如下:

(3)EM算法的推导

(4)动态规划的表示形式

四、词典排序

论文还提出了一种衡量词使用率的排序标准,比较它出现和不出现情况下语料的概率,作为词的重要程度。该标准也可以采用动态规划的方式进行计算,在此不再赘述。

五、最优分词结构

论文提出以两种策略来确定最优分词结构:

(1)所有可能的分词结构中分词边界的频率大于阈值,且词典中存在对应的词;

(2)如果词典中不存在对应的词,就采用MLE策略。该策略也可以采用动态规划的方式进行计算,在此不再赘述。

六、参考文献

1. Deng K, Bol P K, Li K J, et al. On the unsupervised analysis of domain-specific Chinese texts[J]. Proceedings of the National Academy of Sciences, 2016: 201516510。

2. 顾森 (Matrix67). 基于大规模语料的新词发现算法. 《程序员》.2012年7月刊。

作者介绍:

钱烽,浙江大学计算机博士,现任杭州实在智能科技有限公司(「实在智能」)算法专家,曾在网易杭州研究院和网易传媒长期担任算法专家职位。在VLDB,ECML-PKDD,PAKDD等重要国际会议以及KAIS、JIIS等SCI国际期刊发表十余篇学术论文,受邀担任IJGIS,IEEE Access等重要国际期刊的审稿人,拥有2项发明专利。

实在智能:

专业|创新|AI赋能商业

有爱有AI ,智能更实在返回搜狐,查看更多

责任编辑:

声明:该文观点仅代表作者本人,搜狐号系信息发布平台,搜狐仅提供信息存储空间服务。
阅读 ()
投诉
免费获取
今日搜狐热点
今日推荐