1.前言
2.实体消歧的本质
如小米,它是一个实体,在有些句子中表示“小米公司”,但在某些语句下它表示一种谷物
又比如:
怎么解决实体消歧呢??
首先:我们有实体(实体描述库)
3.实体消歧方法
我们只需要计算“苹果” 和 两个不同“苹果”实体之间的相似度
1) 我们先要提取给定“苹果”的上下文(如苹果左右两边提取20个单词),并把它转化为向量的相似
(…今天苹果发布了新手机…) --> 向量 (可以用tf-idf)
2) 把苹果的描述也转化为向量(如果描述太多,那我们就提取重要的一段)
(水果中的一种,味道甘甜)-> 向量 (可以用tf-idf)①
(美国科技公式)-> 向量 (可以用tf-idf)②
3)计算 苹果与① 和苹果与②的余弦相似度
4.实体统一
什么是实体统一呢??看下面这张图
在真实世界中我们只存在两种脸,一种有头发,一种没头发。而在数字世界却有 7 张脸,实体统一就是把这 7 长脸 统一成两种脸:有头发的是一种(有图3个脸有头发),剩余4个圆脸是一种。
再比如:张三有3部手机,李四也有3部手机,他俩用这些手机登录同一个网页,那么算法要做的事是:判断哪些手机来自张三(这些手机是同一个实体),哪些手机来自李四。
5. 实体统一算法
实体统一官方定义:
很显然这是一个 0/1 二分类问题
具体的:
给定两个实体,这两个实体在文档中是用字符串表示的,即str1, str2,要判断 str1和 str2 是否是统一实体
- 最简单方法:计算两个字符串实体的相似度,这个相似度可以用编辑距离来度量,再设置一个阈值就行了。
- 基于规则的方法
例如:百度公司,百度广州 科技公式,百度科技股份有限公司,都是指百度这个公司,是同一个实体。
首先,我们要维护两个词典[公司,有限公司, 无限公司,科技股份有限公司, 科技公司], 和 [美国,广州,北京]
再把 百度公司,百度广州科技公司,百度科技股份有限公司,去词干化,我们删除词典中出现过的词语,只保留 百度,这个最终的实体。
6.指代消解
什么是指代消解呢??
看下面这张图,A,B这两个他,到底指张三还是李四,这是指代消解要做的事。
像英语中的 it 也容易出现指代消解
- 最简单的方法:就是找离他最近的实体,很显然 A他,最近的实体是李四,B他最近的实体也是李四。但正确率不高,这句话中两个他都是指向张三
- 有监督方法(本质是二分类)
- 收集数据,如
( 张三, A) -->1
(张三, B) --> 1
(李四, A) --> 0
(李四, A) --> 0 - 特征工程,如:
对于(张三,A)我们提取(张三前4个单词,张三和A中间的所有单词,A后面4个单词),然后用 tf-idf 表示成向量形式
()[张三] (没有去上班,因为生病了,昨天,李四陪 ) [他] (去了医院) - 建模,可以用逻辑回归