新闻  |   论坛  |   博客  |   在线研讨会
一文 Get 汽车知识的语义网络及图谱构建(2)
AI科技大本营 | 2022-10-19 20:00:43    阅读:298   发布文章

三元组抽取算法的挑战

问题1:单个领域内,⽂档内容和格式多样,需要⼤量的标注数据,成本⾼。问题2:领域之间迁移的效果不够好,跨领域的可规模化拓展的代价⼤。关键点:模型基本都是针对特定⾏业特定场景,换⼀个场景,效果会出现明显下降。解决思路:Pre-train + Finetune的范式。预训练:重量级底座让模型“⻅多识⼴”,充分利⽤⼤规模多⾏业的⽆标⽂档,训练⼀个统⼀的预训练底座,增强模型对各类⽂档的表示和理解能⼒;微调:轻量级⽂档结构化算法。在预训练基础上,构建轻量级的⾯向⽂档结构化的算法,降低标注成本。基于⻓⽂本的预训练⽅法,大多都没有考虑⽂档特性,如空间(Spartial)、视觉(Visual)等信息。并且基于⽂本设计的PretrainTask,整体是针对纯⽂本进⾏的设计,⽽没有针对⽂档的逻辑结构设计。针对该问题这里介绍一种⻓⽂档预训练模型DocBert[3],DocBert模型设计。使⽤⼤规模(百万级)⽆标注⽂档数据进⾏预训练,基于⽂档的⽂本语义(Text)、版⾯信息(Layout)、视觉特征(Visual)构建⾃监督学习任务,使模型更好地理解⽂档语义和结构信息。Layout-Aware MLM:在Mask语⾔模型中考虑⽂本的位置、字体⼤⼩信息,实现⽂档布局感知的语义理解。Text-Image Alignment:融合⽂档视觉特征,重建图像中被Mask的⽂字,帮助模型学习⽂本、版⾯、图像不同模态间的对⻬关系。Title Permutation:以⾃监督的⽅式构建标题重建任务,增强模型对⽂档逻辑结构的理解能⼒。Sparse Transformer Layers:⽤Sparse Attention的⽅法,增强模型对⻓⽂档的处理能力(见下图)。图片挖掘概念,兴趣词标签,关联到车系、实体除了结构化和非结构化文本中获取三元组,我们还挖掘物料所包含的分类、概念标签和兴趣关键词标签,并建立物料和车实体之间的关联,为汽车知识图谱带来新的知识。下面从分类、概念标签、兴趣词标签来介绍汽车之家所做的内容理解部分工作以及思考。分类体系作为内容刻画的基础,对物料进行粗粒度的划分。基于人工定义的方式建立统一的内容体系,通过AI模型进行进一步划分。在分类方法上,我们采用了主动学习的方式,对比较难分的数据进行标注,同时采用数据增强、对抗训练,以及关键词融合等方法提高分类的效果,分类算法流程见下图。图片概念标签粒度介于分类和兴趣词标签之间,比分类粒度更细,同时比兴趣词对于兴趣点刻画更加完整。我们建立了车视野、人视野、内容视野三个维度,丰富了标签维度,细化了标签粒度。丰富且具体的物料标签,更加方便搜索推荐基于标签的模型优化,且可用于标签外展起到吸引用户及二次引流等作用。概念标签的挖掘,结合在query等重要数据上采用机器挖掘的方式,对概括性进行分析,通过人工review,拿到概念标签集合,采用多标签模型分类。

兴趣词标签是最细粒度的标签,映射为用户兴趣,根据不同用户兴趣偏好可以更好的进行个性化推荐。关键词的挖掘采用多种兴趣词挖掘相结合的方式,包括Keybert提取关键子串,并结合TextRank、PositionRank、singlerank、TopicRank、MultipartiteRank等句法分析多种方法,产生兴趣词候选。最后,通过聚类+人工的方式生成最终版高质量兴趣标签。

图片

对于不同粒度的标签还是在物料层面,我们需要把标签和车建立起关联。首先,我们分别计算出标题\文章的所属标签,然后识别出标题\文章内的实体,得到若干标签—实体伪标签,最后根据大量语料,共现概率高的标签就会标记为该实体的标签。通过以上三个任务,我们获得了丰富且海量的标签。对车系、实体关联上这些标签,会极大丰富我们的汽车图谱,建立了媒体和用户的关注车标签。人效提升为了实现更好的模型效果,获得更大规模的训练样本,解决标注成本高和标注周期长成为亟待解决的问题。首先,我们使用半监督学习,利用海量未标注数据进行预训练。之后采用主动学习方式,最大化标注数据的价值,迭代选择高信息量样本进行标注。最后利用远程监督,发挥已有知识的价值,发觉任务之间的相关性。知识入库知识图谱中的知识是通过RDF结构来进行表示的,其基本单元是事实。每个事实是一个三元组(S, P, O),在实际系统中,按照存储方式的不同,知识图谱的存储可以分为基于RDF表结构的存储和基于属性图结构的存储。图库更多是采用属性图结构的存储,常见的存储系统有Neo4j、JanusGraph、OritentDB、InfoGrid等。图数据库选择通过 JanusGraph[4] 与 Neo4J、ArangoDB、OrientDB 这几种主流图数据库的对比,我们最终选择JanusGraph 作为项目的图数据库,之所以选择 JanusGraph,主要有以下原因:

  • 基于 Apache 2 许可协议开放源码,开放性好;

  • 支持使用 Hadoop 框架进行全局图分析和批量图处理;

  • 支持很大的并发事务处理和图操作处理。通过添加机器横向扩展 JanusGraph 的事务 处理能力,可以完成毫秒级别相应和大图的复杂查询;

  • 原生支持 Apache TinkerPop 描述的当前流行的属性图数据模型;

  • 原生支持图遍历语言 Gremlin。

下图是主流图数据库对比。图片JanusGraph数据存储模型了解Janusgraph存储数据的方式,有助于我们更好的利用该图库。JanusGraph 以邻接列表格式存储图形,这意味着图形存储为顶点及其邻接列表的集合。顶点的邻接列表包含顶点的所有入射边(和属性)。图片
JanusGraph 将每个邻接列表作为一行存储在底层存储后端中。(64 位)顶点 ID(JanusGraph 唯一分配给每个顶点)是指向包含顶点邻接列表的行的键。每个边和属性都存储为行中的一个单独的单元格,允许有效的插入和删除。因此,特定存储后端中每行允许的最大单元数也是 JanusGraph 可以针对该后端支持的顶点的最大度数。如果存储后端支持 key-order,则邻接表将按顶点 id 排序,JanusGraph 可以分配顶点 id,以便对图进行有效分区。分配 id 使得经常共同访问的顶点具有绝对差异小的 id。
图片知识图谱在推荐中的应用汽车领域拥有专业参数划分和多领域技术,同时延伸到社会、科技、娱乐等多个方面,知识图谱在汽车推荐中提供了内容之外丰富的知识信息,在推荐中起到了十分重要的作用,在汽车的看、买、用等不同场景都能带来明显的效果提升。在看车场景中,低频用户对应的点击行为少,可能导致内容推荐效果差等问题,此时可通过图谱引入额外信息(相似用户群组、车系属性标签等),使用跨域知识增强改善数据稀疏性问题。在买车场景中,通过显式的知识展示、路径召回,以及解释理由生成,直观地告诉用户推荐他某款车的理由,以及召回对应的汽车类资讯。在用车场景中,通过用户的看车及购买行为,从汽车保养、维修、用车成本等方面有效提升用户的用车体验。本章基于汽车的不同应用场景,从KG在推荐系统中冷启、理由、排序等方面,介绍推荐可用的相关技术,为图谱及下游应用的实践提供了思路。知识图谱在推荐冷启动中的应用知识图谱能够从user-item交互中建模KG中隐藏的高阶关系,很好地解决了因用户调用有限数量的行为而导致的数据稀疏性,进而可以应用在解决冷启动的问题上。Sang 等[5]提出了一种双通道神经交互的方法,称为知识图增强的残差递归神经协同过滤(KGNCF-RRN),该方法利用KG上下文的长期关系依赖性和用户项交互进行推荐。Du Y等[6]提出了一种新的基于元学习框架的冷启问题解决方案MetaKG,包括collaborative-aware meta learner和knowledge-aware meta learner,捕捉用户的偏好和实体冷启动知识。在两个learner的指导下,MetaKG可以有效地捕捉到高阶的协作关系和语义表示,轻松适应冷启动场景。此外,作者还设计了一种自适应任务,可以自适应地选择KG信息进行学习,以防止模型被噪声信息干扰,MetaKG架构如下图所示。图片知识图谱在推荐理由生成中的应用推荐理由能提高推荐系统的可解释性,让用户理解生成推荐结果的计算过程,同时也可以解释item受欢迎的原因。例如,我们在推荐一篇新车导购的文章时, 使用“粉色系的欧拉外观非常好看,落地才十万,你要不要看看?”,或者是“粉色的特斯拉很适合小姐姐开,真是又美又飒!”,这样类似朋友间的叙述,会有效提升用户的阅读体验。早期的可解释推荐主要以模板为主,模板好处是保证高可读性和准确率,但需要人工整理,且泛化性不高,给人一种重复的感觉。后来发展成不需要预设的free-form形式。在知识图谱上,以其中一条高分路径作为解释向用户展示。对应的基于user-item知识图谱的路径推理建模方法有多种,例如具有代表性的KPRN[7]和ECR[8]等,该类模型主要思想是通过用户的历史行为,寻找一条item评分最高的最优路径。例如下图,通过用户的“居住地”和“偏好”,可以得到更为形象的汽车推荐理由:“同在长沙,和你一样喜欢小蚂蚁的李先生点赞了这篇文章”。图片知识图谱在推荐排序中的应用KG可以通过给item用不同的属性进行链接,建立user-item之间的interaction,将uesr-item graph和KG结合成一张大图,可以捕获item之间的高阶联系。传统的推荐方法是将问题建模为一个监督学习任务,这种方式会忽略item之间的内在联系(例如凯美瑞和雅阁的竞品关系),并且无法从user行为中获取协同信号。下面介绍两篇KG应用在推荐排序的论文。Wang[9]等人设计了KGAT算法(见下图),首先利用GNN迭代对embedding进行传播、更新,从而能够快速捕捉高阶联系。其次,在aggregation时使用attention机制,传播过程中学习到每个neighbor的weight,反应高阶联系的重要程度。最后,通过N阶传播更新得到user-item的N个隐式表示,不同layer表示不同阶数的连接信息。KGAT可以捕捉更丰富、不特定的高阶联系。图片Zhang[10]等人提出RippleNet模型(见下图),其关键思想是兴趣传播:RippleNet将用户的历史兴趣作为KG中的种子集合(seed set),然后沿着KG的连接向外扩展用户兴趣,形成用户在KG上的兴趣分布。RippleNet最大的优势在于它可以自动地挖掘从用户历史点击过的物品到候选物品的可能路径,不需要任何人工设计元路径或元图。图片
图片总结综上,我们主要围绕推荐介绍了图谱构建详细流程,对其中的困难和挑战做出了分析。同时也综述了很多重要的工作,以及给出了具体的解决方案,思路以及建议。最后介绍了知识图谱的应用,特别是推荐领域中冷起、可解释性、召回排序等方面,介绍了知识图谱的作用与使用。(注:文中数据来源为汽车之家网站)引用[1] Kim S,Oh S G.Extracting and Applying Evaluation Criteria for Ontology Quality Assessment[J].Library Hi Tech,2019.[2] Protege: https://protegewiki.stanford.edu[3] DocBert,[1] Adhikari A ,  Ram A ,  Tang R , et al. DocBERT: BERT for Document Classification[J].  2019.[4] JanusGraph,https://docs.janusgraph.org/[5] Sang L, Xu M, Qian S, et al. Knowledge graph enhanced neural collaborative filtering with residual recurrent network[J]. Neurocomputing, 2021, 454: 417-429.[6] Du Y ,  Zhu X ,  Chen L , et al. MetaKG: Meta-learning on Knowledge Graph for Cold-start Recommendation[J]. arXiv e-prints, 2022.[7] X.Wang, D.Wang, C. Xu, X. He, Y. Cao, and T. Chua, “Explainable reasoning over knowledge graphs for recommendation,” in AAAI, 2019, pp. 5329–5336[8] Chen Z ,  Wang X ,  Xie X , et al. Towards Explainable Conversational Recommendation[C]// Twenty-Ninth International Joint Conference on Artificial Intelligence and Seventeenth Pacific Rim International Conference on Artificial Intelligence {IJCAI-PRICAI-20. 2020.[9] Wang X ,  He X ,  Cao Y , et al. KGAT: Knowledge Graph Attention Network for Recommendation[J]. ACM, 2019.[10] Wang H ,  Zhang F ,  Wang J , et al. RippleNet: Propagating User Preferences on the Knowledge Graph for Recommender Systems[J]. ACM, 2018.


*博客内容为网友个人发布,仅代表博主个人观点,如有侵权请联系工作人员删除。

参与讨论
登录后参与讨论
推荐文章
最近访客