信息抽取是指从非结构化文本中提取结构化信息的一种技术,这类技术依然分为基于规则的正则匹配、有监督和无监督机器学习等各种实现方法。

一、新词提取

       1.1  概述

       顾名思义,新词就是词典之外的词语;通过监督学习解决新词提取这个问题,成本上得不偿失;无监督的新词提取算法就体现出现实意义。

       1.2  基本原理           

       先提取出大量文本中的词语,不分新旧;然后用词典过滤掉已有的词语,得到新词。如果给定一段文本,随机取出一个片段,如果这个片段左右的搭配很丰富,并且片段内部成分搭配很固定,则可认为这是一个词。将这样的片段筛选出来,按照频次由高到低排序,排在最前面的那些有很高的概率是词语。

       片段外部左右搭配的丰富程度,可以用信息熵来衡量,而片段内部搭配的固定程度可以用子序列的互信息来衡量。

       1.3  信息熵

        在信息论中,信息熵是指某条消息所含的信息量。它反映的是听说某个消息之后,关于该事件的不确定性的减少量。

       1.4  互信息

       它是指两个离散型随机变量X与Y相关程度的度量。用韦恩图表达,左右两个圆圈,他们的并集是联合分布的信息熵,差集是条件熵,交集就是互信息。互信息越大,两个随机变量的关联就越密切,同时发生的可能性就越高。

二、关键词提取

       提取文章中的重要单词,而不仅限于词语的新鲜程度,称为关键词提取。由于关键词的定义不统一,造成关键词提取很难用监督学习来解决。

      下面是几种简单的无监督关键词提取算法,由简到难分别为 词频、TF-IDF、TextRank。

根据文档个数,可以分为单文档算法和多文档算法。单文档算法能够独立分析每篇文章的关键词,包括词频与TextRank;多文档算法利用了其他文档中的信息来辅助决定当前文档的关键词,同时也容易受到噪声干扰,如TF-IDF。

        2.1 词频统计

         词频统计的流程一般是分词、停用词过滤、按词频提取前n个。

        缺陷: 高频词并不等价于关键词,用户需要根据关键词看到每篇文章的特色,而不是共性;此时需要采用TF-IDF来解决。

        2.2 TF-IDF(词频-倒排文档频次)

        它是信息检索中衡量一个词语重要程度的统计指标,被广泛应用于Lucene,Solr,ES等搜索引擎。TF-IDF还考虑了词语的稀有程度,一个词语的重要程度不光正比于它在文档中的频次,还反比于有多少文档包含它。包含该词语的文档越多,就说明它越宽泛,越不能体现文档的特色。正因为需要考虑整个语料库或文档集合,所以TF-IDF属于多文档方法。

       2.3 TextRank

       它是PageRank在文本上的应用,是一种用于排序网页的随机算法,工作原理就是见互联网看作是有向图,互联网上的网页视作节点,节点与节点间的超链接视作有向卞,初始化时每个节点的权重都是1,以迭代的方式更新每个节点的权重。

三、短语提取

      在信息抽取领域,另一项重要任务就是提取中文短语,即固定多字词表达串的识别。短语提取经常用于搜索引擎的自动推荐,文档的简介生成等。

     利用互信息和左右信息熵,可以将新词提取算法拓展到短语提取。只需要将新词提取时的字符替换成单词,字符串替换成单词列表即可。得到单词依然需要进行中文分词,大多数情况下,停用词都会在分词后过滤掉。

四、关键词提取

      由于一篇文章中几乎不可能出现相同的两个句子,所以朴素的PageRank在句子颗粒度上行不通。为了将PageRank利用到句子的颗粒度上去,引入BM25算法衡量句子的相似度,改进链接的权重计算。

       4.1  BM25

       在信息检索领域中,BM25是TF-IDF的一种改进变种。TF-IDF衡量的是单个词语在文档中的重要程度,而在搜索引擎中,查询串往往是多个词语构成的,BM25就是用来衡量多个词语与文档的关联程度。

       4.2 TextRank

            有了BM25算法以后,将一个句子视作查询语句,相邻的句子视作待查询的文档,就能得到他们之间的相似度。以此相似度作为PageRank中的链接的权重,从而得到一种改进算法,称为TextRank。     

五、总结

         新词提取与短语提取,关键词与关键句的提取,在原理上都是同一种算法在不同文本颗粒度上的应用。这些算法都不需要标注语料的参与,但这些算法的效果非常有限。对于同一个任务,监督学习方法的效果通常远远领先于无监督学习方法。