赞
踩
目录
目前基于规则是主流并且见效快的方法。
提取具体的水果名字
规则:apple is a fruit, fruit such as apple, fruit including banana
以上的is a, such as, including都可以帮助我们找到水果这一类下面的具体的水果名字,像这样的规则我们可以定义非常多,只要文章中出现了规则,那么就可以把对应的数据放到库中。
比如文章中出现:...... apple is a fruit.....
先用实体识别分类器把实体识别出来,发现中间正好是is a ,那么把这两个实体放到数据表里。
中间可能会有不同类型的内容,因为我们定的只是规则,而没有其他条件过滤掉比如“car”,因此需要在规则集上面,定义规则的类别。
基于规则的方法的优点:准确、不需要训练数据
基于规则的方法的缺点:召回率低(人能想到的关系少),人力成本高,规则本身难设计
①定义关系类型
②定义实体类型
③训练数据准备:实体的类型标记、实体之间的关系标记
④特征工程,可以使用:
bag-of-words
词性
实体类别
stemming
位置相关的信息特征:两个实体间包含了多少个单词?这句话在本文里的位置?
句法分析相关特征:两个词节点之间最短路径(使用树结构画出来语法的分析,可能需要图算法去提取特征)
依存文法相关特征:最短路径,是否相互依存等
据说上面的句法分析和依存文法分析效果一般。
由于在分类的类别中,除了我们需要的分类,还可能会有一类“不属于任何类别”,因此我们可以将训练分为两部分,先使用一个简单的二分类器,把数据分为有类别和无类别,之后再进行分类。
首先在库中准备一个表格,包含几条真实的,正确的样本记录。
①基于样本,生成规则:
给定文本,根据库中的数据,如果匹配到了,那么文本中,两个实体中间的内容就可以作为规则,比如:
x写了y
y是由x写的
②生成三元组
有了上面生成的规则之后,给定新的文章,扫描是否有存储的规则,如果匹配上了对应的规则,那么就把规则左右的实体,填入到记录表中,作为新的记录。
③重复上两步
使用新的记录继续扫描文章,生成新的规则,使用新的规则,扫描文章,生成新的记录。
④bootstrap的关键缺点:
错误累积:当开头出现误差的时候,后面由于自动去生成,会慢慢误差越来越大。
于是提出了改进版:snowball
见下一篇文章
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。