知识图谱与实体识别是现在很多智能检索、问答系统背后的核心支撑,平时刷电商搜同款、用导航找地点,其实都在跟它俩打交道。
基础认知:它俩到底在解决什么问题
说白了实体识别就是从一堆杂乱的文本里,把“有实际指代的东西”抠出来——可能是人名、地名、商品名,甚至是某部电影的名字。
比如你在笔记APP里随手写“上周在西湖边喝的龙井,比去年在龙井村买的那款香”,实体识别会自动把“西湖”“龙井(茶叶)”“龙井村”这些不同类别的实体标出来,不会混为一谈。
知识图谱呢,就是把这些抠出来的实体,按照真实世界的关联串成网。比如刚才的“西湖”关联着“杭州”“5A景区”“夏季客流高峰”,“龙井村”关联着“西湖区”“茶叶产地”,两个“龙井”分别关联“饮品”“村落”,不会乱配。
中文文本实体识别标注示例图
实操里常碰到的几个坑
很多人一开始做的时候,觉得只要把实体抠出来就完事了。
错。
举个例子,你做本地餐饮的知识库,识别到实体“重庆鸡公煲”,如果不做实体消歧,系统可能会把它和“重庆市”“鸡公煲的食材”混在一起,用户搜“重庆鸡公煲哪家不辣”,系统可能直接跳出重庆的旅游攻略,完全不对。
从实操角度看,
实体识别的准确率,通常不是看能标出多少个实体,而是看能不能把同形不同义的实体区分开。
还有个常见问题,就是很多团队做完初始的实体标注就不管了。根据行业普遍观察,每3个月需要补充一次新出现的实体——比如新出的网红店名、新的网络热词指代的实体,不然系统慢慢就会认不出新东西。
知识图谱实体关联网络可视化图
容易混淆的几个概念边界
说实话,很多人会把实体识别和关键词提取搞混。其实差别挺明显的:关键词提取只是把文本里出现频率高的词挑出来,不管这个词到底指什么;但实体识别是要给每个词贴“身份标签”的。
比如同样是“苹果”,在水果采购的文本里是“生鲜品类”,在数码评测的文本里是“科技品牌”,标签不一样,后续在知识图谱里关联的内容也完全不同。
据一些用户反馈,刚开始搭知识图谱的时候,不用追求一开始就覆盖所有领域的实体,先从自己日常高频使用的场景切入,比如先把本地周边的商家实体、地址实体标清楚,跑通整个流程再慢慢扩范围,效率会高很多。
您在实际使用相关功能搭建知识库的过程中,还遇到过哪些实体混淆的情况?欢迎结合具体场景继续探讨。