查看原文
其他

技术总结:业务场景中的标签挖掘与开源概念标签知识库总结

刘焕勇 老刘说NLP
2024-10-07

标签是当前信息组织、简化和推荐的重要基础设施,整个内容侧的业务中,我们发现,大多都是基于一个标签体系运作的。

​例如,为了对一个文本进行索引,我们通常会对文本进行归类、打标签,然后就可以在搜索栏中对文本进行快速定位,

又如,在SEO场景中,网页发布者通常会在网页元信息中加入关键词来提升网站的排名和曝光率。

又如,在用户画像场景中,通常需要挖掘用户属性,并以词级别信息进行用户特征,从而更精准地进行产品推送,如广告投放、资讯推送或者视频推送。

因此,我们发现,无处不在的标签,已经成为了当前内容业务上的重要组成部分,与此相对应的标签挖掘方法也值得关注。

本文主要围绕标签这一主题,对业务场景中的标签挖掘方法以及特殊品类的概念标签开放知识库进行梳理,供大家一起参考并思考。

一、标签的类型定义与场景实现

根据业务的不同,我们会制定不同的标签类型,例如关键词标签,概念标签,属性标签、行业标签等。

一般来说,随着业务复杂度的提升,一个健全的标签体系尤为重要。在建设过程中,需要考虑到标签的规范性、开放性与层级性三个特点。其中,规范性指标签的唯一性,所以表达同一标签含义的都用同一个命名。层级性指的是标签自身是需要要分级的,有大类、中类还有小类,有的时候甚至还要有跨类别。开放性指整个标签是有限集还是开放集,不同的类型所需要的运营和算法路径是不同的。

1、关键词标签

关键词是一类标签,用于对某个文本描述进行关键信息的浓缩。通常,会有以下几种情况:

其一。普通关键词,我们会使用诸如TFIDF算法或者TextRank算法这些无监督方法进行抽取。

其二。实体关键词。对于一些特殊的需求,关键词还会进一步扩充至一些具有实际意义的名词,如人名、地名、机构名或者特定类型的实体。对于后者,则可以用通用的实体识别模型来获取。

其三。预设关键词。对于已经有目标关键词集合的,则更多地采用关键词扩展和词典匹配的方式来进行处理。

其四。主题关键词。主题关键词与普通关键类似。但更多的是反映了一个文本的领域主题特征。在实现上,通常可以使用LDA主题模型或者分类模型的方式来处理。

2、概念标签

概念标签是面向搜索和推荐场景的重要一类,在上一篇文章《技术总结:面向C端场景的概念图谱构成、建设与应用索引》对其进行了论述,可以利用pattern的方式对query或者点击title进行挖掘,后者再利用回标构造正负样本来迭代扩充。

实际上,概念标签在实体识别这个任务上还是有应用的,例如哈工大的一个工作《基于多信息源的实体类型(上位词)抽取方法》中,利用概念标签的方式来挖掘开放细粒度实体类型。

在具体实现上,

首先将该实体输入搜索引擎,发现与它共现的词语,这个共现的词语很可能代表实体的类别;

第二种方法是通过词典去查这个实体的类型;第三种方法是通过核心词来识别。例如,对于“可口可乐公司”这个实体词,它的核心词是“公司”,故我们可通过该核心词,识别“可口可乐公司”这个实体词的类型是“公司”"

3、行业/用户标签

主题和行业标签在如金融领域中的应用较多,如对金融公司进行组织时,通常会给公司打上不同的行业标签、板块标签、地域标签等。

但这个标签比搜广推场景更为精细和固定,标签需要业务行业专家进行事先制定,然后利用公司的信息进行标签分类任务,在实现上难度较大,因为对于一些长尾的公司实体,其所能利用的信息是很少的,所以行业标签的输入特征较少。

类似的,在用户画像场景中,我们常常会遇到用户属性挖掘的问题,需要挖掘用户属性的特征然后与商品等进行匹配,比如用户的兴趣标签、行为标签等。

二、常用开放实体标签挖掘方法

1、基于开放文本的标签挖掘

围绕实体,为其添加更多的信息,包括属性、同义词、上下级信息等能够更多地帮助理解一个实体。这些信息都是以“侧面”的方式来表示一个实体,而对于实体语义保留最丰富的,是实体描述。

而从非结构化文本中进行实体描述抽取,形成实体描述网络,一方面可以进一步生成实体标签、实体embedding、实体上下位知识、实体同义词、产品上下游的知识。另一方面,也可以作为实体重要性计算的重要来源。

下图展示了magi系统中对特定实体的描述结果,从中可以得到关于该实体标签来源的干净上下文。

在笔者之前的文章《经验分享:基于BERT-BiLSTM-CRF的实体描述知识抽取建模实战》一文中,采用了序列标注的方式来实现这一工作。
类似的,在丁香园的《如何为实体抽取描述性短语》​一文中,系统介绍了使用类似名词短语抽取或者IS-A关系抽取的方式来抽取。例如,利用模版匹配生成候选的描述性短语,通过观察描述性语句的特点,归纳了一些经常在描述性句子中出现的trigger, 如“是”,“称为”,“作为”,“…之称”,”俗称”等,并采用Bootstrapping,NER方式来扩充。

为了进一步得到实体的标签集合,可以在实体描述的基础上加以提取,例如标注出主体,标签词,然后使用序列标注方式完成提取,或者使用模板如"xxxx的一类"来提取,更直接的方式就是进行名词短语识别,然后根据所在位置进行提取(一般标签都是后置的),在得到这些标签词后,可以加上统计信息进行统计排序,从而得到合适的标签集合。


下图展示了magi的标签集合结果,可以感受下。

2、基于结构化百科资源的标签过滤

同样的,当前,结构化百科中针对特定的词条都设置了相应的标签,利用好这些数据能够扩充覆盖率。

例如,通过对上述页面的抓取,形成三元组后,可以通过自动指定规则过滤的方式完处理,过滤出所需要的标签集合。

三、开放的概念标签知识库资源

当前,已经陆续出现一些开放的概念标签知识库资源,本部分内容也是对上一篇文章的补充。

1、浙江大学open concept

OpenConcepts是一个基于自动化知识抽取算法的大规模中文概念图谱。开源了OpenConcepts中的440万概念核心实体,以及5万概念和1200万实体-概念三元组,这些数据包括了常见的人物、地点等通用实体。

OpenConcepts的自动化构建主要分为两大模块,1)概念知识的自动化抽取 2) 概念知识的融合。首先通过开放的知识库、百科InfoBox等结构化、半结构化数据抽取粗粒度的概念。对于细粒度的概念,我们采取短语挖掘和序列标注相结合的策略,通过实体-概念模板和无监督短语挖掘构造弱监督样本,并基于迭代的降噪学习训练基于序列标注的概念抽取模型,在离线测试集上概念抽取模型准确率可达0.89,召回率可达0.85。然后,对抽取到的不同的实体和概念进行融合,并通过贝叶斯估计过滤掉低置信度的概念。此外,也构造人工规则约束对高层次的概念进行人工干预,保证准确率。

地址:http://openkg.cn/dataset/openconcept

2、哈工大大词林

开源了《大词林》中的75万的核心实体,和该核心实体对应的细粒度概念词(共1.8万概念词,300万实体-概念元组),及相关的关系三元组(共300万)。这75万核心实体列表涵盖了常见的人名、地名、物品名等术语。概念词列表则包含了细粒度的实体概念信息。

地址:http://101.200.120.155/,http://www.openkg.cn/dataset/hit

3、中文通用概念知识图谱(CN-Probase)

CN-Probase是由复旦大学知识工场实验室研发并维护的大规模中文概念图谱,包含约1700万实体、27万概念和3300万isa关系。isa关系的准确率在95%以上,是目前规模最大的开放领域中文概念图谱和概念分类体系。

地址:http://shuyantech.com/cnprobase/search

4、微软概念图谱probase

Probase(A Probabilistic Taxonomy)是微软提出的一个大规模概念知识图谱,包含5,401,933个概念,12,551,613个实例,87,603,947条IsA三元组。利用该图谱,可以将实体映射到不同的语义概念,并根据实体文本内容被标记上相应的概率标签。

如“甲骨文市值很高”中的“甲骨文”这个词会映射到“大公司”、“硅谷巨头”、“古代文字”、“埃里森”等概念,根据微软知识图谱对“市值”的定义以及所用在的场景,再结合“甲骨文”,结合概率标签可计算出这里的甲骨文指的是“硅谷巨头”这一概念而非“古代文字”。

地址:https://concept.research.microsoft.com/Home/Download

5、阿里藏经阁概念图谱

阿里巴巴发布首个大规模开放数字商业知识图谱AliOpenKG。第一个版本已包含了超过18亿的三元组,多达67万的核心概念,2681类关系。其中,零售概念知识图谱将与商业要素有关的概念知识建模为不同粒度的概念层次结构,可用于帮助用户搜索、导航和推荐找到他们想要购买的商品。类及属性个数46万+,核心概念数67万+,标准产品数:306万+,总实体数:1600万+ ,总三元组数18亿+。

地址:http://ali.openkg.org

总结

标签是当前信息组织、简化和推荐的重要基础设施,整个内容侧的业务中,我们发现,大多都是基于一个标签体系运作的。

本文主要介绍了不同场景下的标签类型,对标签的特点进行了论述,并对当前开放实体标签挖掘方法进行了举例说明,从中突出了描述性文本的重要性。

当然,利用好已有的概念性标签知识库十分有价值,在本文的最后。列举了一些开放的知识库资源。大家可以查看,进一步体会。

最后,我们需要认识到,在标签建设过程中,需要考虑到标签的规范性、开放性与层级性三个特点。

关于我们

老刘,刘焕勇,NLP开源爱好者与践行者,主页:https://liuhuanyong.github.io。

就职于360人工智能研究院、曾就职于中国科学院软件研究所。

老刘说NLP,将定期发布语言资源、工程实践、技术总结等内容,欢迎关注。

对于想加入更优质的知识图谱与事件图谱实践相关分享的,可关注公众号,在后台菜单栏中点击会员社区->会员入群加入。

继续滑动看下一个
老刘说NLP
向上滑动看下一个

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存