写点什么

小米彭力:知识图谱如何为小米业务赋能?

  • 2021 年 10 月 15 日
  • 本文字数:3595 字

    阅读完需:约 12 分钟

小米彭力:知识图谱如何为小米业务赋能?

随着互联网的发展,知识图谱和深度学习已广泛应用并影响了不同业务场景下数据获取及计算的方式。知识图谱已变为问答系统、商品推荐等智能应用的基础设施,为上层业务在语义理解和可解释性上提供了依据。其中知识计算是知识图谱构建的关键一环,将各类数据、知识、经验以及信息进行表示、分类、融合、建模将知识表达成更接近人类认知的结构。

 

为了进一步了解知识计算及知识图谱技术在小米业务场景下的探索和实践,在AICon人工智能大会(北京站·2021)召开前夕,InfoQ 有幸采访了小米人工智能部/知识图谱平台团队负责人彭力,听他来分享知识计算的技术方案在小米业务场景中的应用与创新。

知识图谱在小米业务场景下的实践

在数据爆炸时代,知识图谱技术作为认知智能领域的重要组成部分,在人工智能与产业紧密结合的当下,其重要性尤为凸显。

 

2012 年至今,知识图谱经历了多个发展阶段,更早期的概念可以追溯到 1960 年的语义网络,中间经历了一系列的演变,才形成了如今的知识图谱。1968 年图灵奖获得者 Edward Feigenbaum 研发出世界首个专家系统 DENDRAL,并随后在第五届国际人工智能会议上正式提出知识工程的概念,目标是将知识融入计算机系统用以解决只有领域专家才能解决的复杂问题。1999 年互联网发明人、图灵奖获得者 Tim Berners-Lee 爵士提出语义网的概念,核心理念是用知识表示互联网,建立常识知识,但一直苦于规模小、应用场景不清楚而发展缓慢,因此,2012 年以前,学术界和工业界普遍认为知识图谱技术处于初级发展阶段。

 

作为一家以硬件起家的企业,小米在知识图谱领域的布局并不算早。据人工智能部/知识图谱平台团队负责人彭力介绍,2018 年他刚加入小米时,小米的知识图谱平台才刚起步,当时还处于小作坊的模式,流程上和处理逻辑上还不规范,缺少流程控制、数据管理等基础的设施。

 

18 年入职以后,彭力第一阶段主导的工作是在模式层构建、图谱的收录流程搭建、计算逻辑单元抽象、上线的流程、质量控制等环节上展开工作,规范化收录流程、提升知识收录的质量和效率。第二阶段再根据具体业务需求做重点的数据和算法的打磨和优化。接下来就是做服务效率的优化和行业图谱的应用场景的探索。经过三阶段的工作后,在知识获取、知识对齐、链接预测、实体链接等算法上经历了从无到有、由浅到深、由慢到快等不同维度的迭代及优化。

 

这几个阶段的工作,听起来简单,实际操作却不容易,在技术的迭代中其实会遇到各种各样的问题。在提及遇到的难题时,彭力举出了一个实体链接算法迭代优化的例子。他表示,小爱是知识图谱团队服务的重点业务之一,在小爱问答场景下实体链接算法就遇到了语义缺失和并发性能要求高的两个问题;其中第一个问题:小爱用户 query 一般较短以人物类的 query 为例大约有 81%的 query 都是单实体的短文本,这就导致了实体的上下文缺失和语义缺失等问题,给实体链接的实体消歧带来挑战。第二个问题是实体链接的应用之一是需要辅助短文本理解工作,业务场景要求算法的 QPS 要达到 2000 个每秒。针对第一个问题文本本身没有上下文只能从用户的先验特征出发,以往的实体链接中也有像实体流行度相似的统计特征,但是单单把该特征引入对效果提升不明确,所以既然以用户维度做效果评估,他们索性就引入用户的点赞、分享、用户搜索热度、实体流行度等特征作了一层基于 MLP 的粗排序,单独看了一下粗过滤的效果,效果比较明确;提速上计算的瓶颈主要是在实体消歧上,针对实体消歧做了两层排序,首先基于前面做的粗排序后做了一个粗筛(两个目的一个是减少计算量,第二个是减少计算的噪声)后面用深度模型做了一个精排序(用 fast-transformer 和模型量化提速)来提升精度,经过改造后随机准确提升了 XX,服务的计算性能提升了 30 倍。负责该任务对性能提升的效果也特别的激动。他们把该方法应用到了 CCKS 比赛上,最终在实体链指赛道获得了第一名的成绩。

 

解决了技术迭代中存在的问题,接下来就是要让技术为业务赋能。知识图谱和知识计算等技术在小米的应用案例有很多,比如在去年新冠疫情期间,他们把知识图谱应用在新冠防疫上,并把方案发布在 IEEE 知识图谱复工复产案例中,因此获得了国家局领导好评;另外,在小米自己的电商领域把用户商品及场景结合构建了电商图谱,把推荐等关键知识计算技术应用在小米有品商城和小米网等场景,并把案例发表于认知智能时代:知识图谱实例案例集。除此之外还有很多案例基于业务的场景针对自己的需求做了很多优化及创新,比如:智能工厂故障检测、智能物料采购等。

 

类似上述的案例还有很多,基于知识计算技术不仅实现了为业务赋能,也统一了企业的知识体系,以知识化服务形式提升各部门工作效率,完成了知识的沉淀和闭环。正是因为这样的不断摸索,小米的知识图谱技术才越来越成熟,团队的凝聚力也越来越强。

知识图谱目前面临的技术难题和突破口

 

技术赋能于业务的背后,重要的是技术如何搭建。从知识图谱的构建技术看,它经历了由人工构建到群体智慧构建到自动获取、构建的过程。但其实知识图谱的人工构建和自动化构建各有优缺点。彭力认为,其实这两个构建方法对比的优缺点很明显,人工构建数量有限精度高粒度细但成本大,自动构建数据大成本小精度与人工构建比略为逊色且粒度粗。人工构建根据角色不同可以分为专家构建和众包构建等,其中专家构建的知识精度与可信度高但是专家有限而且成本大,众包构建的方法获取到的知识会受人员的知识储备和素质等不可控因素影响数据可能会在不同程度上污染。自动构建主要精力集中在算法优化上,人力投入成本相对小,知识构建一般面向开放文本所以知识的体量一般比人工大的多,但是精度会受数据的波动和变化的影响。

 

总地来说,目前知识构建还是多以人工加自动化构建结合的方法(自动为主人工辅助质量控制 )。但在特定行业的知识在通用知识领域覆盖比较稀疏的场景下自动构建就会失去作用以人工(专家)的构建为主。

 

无论是人工还是自动化,知识图谱的构建都是一个相当复杂的系统工程,不可能通过某一项技术适配所有场景。现在业界各家公司都在自己擅长的领域相继的构建并应用了知识图谱,对于行业知识的构建基本上框架都是基于自顶向下的构建流程,是由知识建模、知识获取、知识融合、知识推理、知识存储、知识应用等关键环节组成,但是通用框架和通用的算法不太多,大多都是对每个环节针对自己应用的需求做特定的适配。另外还有一些企业级的构建平台比如 poolparty、lods、Stardog 等平台,但是对于业务兼容与适配的可控性差不太适合做自有业务扩展和计算。

 

技术发展至今,业内有不少声音认为,知识图谱技术已经达到了通用+多源异构的阶段,对于此问题,彭力表示,多源异构的阶段已经存在相当长一段时间了,知识图谱的优势之一就是对多源异构数据的融合和对齐。

 

图谱的知识来源可以来自开放的数据集也可以来自某些垂直类的资源站点,来源多而且数据的表现形式和组织方式也差别大(文本、图片、视频、音频、时序数据等),所以知识对齐与融合是知识计算重要的一环。多源异构的场景有很多,如:政务上信用认证场景用户的社保缴费、房产信息、租房信息、保险信息会分布在不同的组织部门、存储和构成方式每个部门差别也比较大,需要把这些信息聚合才能辅助更高层的精准分析和决策。

 

技术发展到一定阶段后,必然会面临一些瓶颈问题。就技术而言,工业界与学术界的目标不同,就工业界而言,其目标是落地应用,知识图谱在落地的过程中会遇到比较细的一些问题,比如在数据获取上如何高质量的完成多源异构数据的抽取、如何将多源异构的数据融合对齐、如何建立高效通用的构建框架、应用上如何让图谱能够发挥最大化的价值、如何让知识图谱能够胜任复杂的知识推理等,这些都是摆在我们面前需要一一去解决的技术难题。彭力坦言,想要解决这些问题,突破口还是要基于自己的场景做特定性的优化

 

最近知识图谱在行业领域的应用处于井喷期遍地开花,在电力、医疗、金融、司法、能源、政务、生物基因等涉及到语义理解和知识推理等的场景都有知识图谱的身影。但是现在知识图谱的复杂推理能力和复杂推理的性能在认知智能时代依然还有很大的提升空间,待复杂推理能力提升后,知识图谱将会更深入地在依赖可解性和可理解性这种场景更广泛的应用。

 

采访嘉宾:

 

彭力,小米,人工智能部/知识图谱平台团队负责人。2012 年至 2018 年曾就职于百度,于 2018 年 5 月加入小米。现任小米知识图谱部图谱平台团队负责人。目前主要负责小米知识图谱的构建及落地,已推动知识图谱及其技术赋能小爱同学、小米网、游戏中心等智能问答、智能客服、商品推荐、商品搜索等业务场景。


活动推荐:


11 月 6 日北京 AICon 会议上,小米 AI 实验室主管王斌老师担任“认知智能的前沿探索”专题出品人,本专题下,除了彭力的知识计算话题外,还有美团新零售知识图谱探索、阿里巴巴多模态预训练模型、邮电大学图神经网络实践的话题,感兴趣的可以点击链接【AICon人工智能大会】,希望本专题的演讲可以给你带来更多思考。



2021 年 10 月 15 日 14:023406
用户头像

发布了 323 篇内容, 共 94.1 次阅读, 收获喜欢 440 次。

关注

评论

发布
暂无评论
发现更多内容

怎么才能摸透String类的底层原理?看完这篇你就懂了

后台技术汇

28天写作

第十周命题作业

cc

第十周学习心得

cc

第三周作业

秦挺

产品经理训练营笔记-解决方案的设计和积累

.nil?

产品经理训练营

LeetCode题解:433. 最小基因变化,双向BFS(beats 99%),JavaScript,详细注释

Lee Chen

算法 大前端 LeetCode

在nodejs中创建cluster

程序那些事

nodejs cluster 程序那些事 childprocess workerThread

ReentrantReadWriteLock读写锁简单原理案例证明

叫练

ReentrantReadWriteLock 共享锁 独占锁 锁降级

Pulsar 社区周报|2021-01-18 ~ 2021-01-24

Apache Pulsar

大数据 开源 pulsar Apache Pulsar 消息系统

产品 0 期 - 第三周作业

Jxin

图解类加载器和双亲委派机制,一看就懂

Java鱼仔

Java 程序员 面试 类加载

CSS(十)——用CSS设置表格样式

程序员的时光

程序员 大前端 七日更 28天写作

《程序员修炼之道》- 解决问题,而不是去责备(6)

石云升

程序员 bug修复 28天写作

95 后张勇:Apache Pulsar Committer 军团新生代力量

Apache Pulsar

大数据 开源 pulsar Apache Pulsar 消息系统

第十周课后练习

Binary

开发质量提升系列:标准模板(上)

罗小龙

方法论 28天写作

Soul网关源码解析目录

Java 网关 源码解析

第十周 模块分解 作业 「架构师训练营 3 期」

feiyun123

架构师训练营 4 期 第5周

引花眠

架构师训练营 4 期

产品的解决方案设计原则

🙃

产品经理

批判性思维自修课(五)

石君

28天写作 批判性思维

webpack | 进阶用法1:多入口构建/资源内联/脚本分离等

梁龙先森

大前端 webpack 28天写作

Scrum Patterns:准备就绪的标准 DoR(译)

Bruce Talk

敏捷 译文 Agile Scrum Patterns

架构师训练营 - 第五周作业

Mark

前端工程师的一大神器——puppeteer

执鸢者

大前端 Node puppeteer

使用 Tye 辅助开发 k8s 应用竟如此简单(一)

newbe36524

Docker 微服务 k8s dotnet

架构师训练营第五周学习总结

跳蚤

架构入门感悟总结

莫问

你知道什么是敏捷交换机吗?

架构师训练营第五周作业

跳蚤

智能汽车vs.智能手机 (28天写作 Day24/28)

mtfelix

智能手机 28天写作 智能汽车 未来社会 未来游牧化

ShadowRealm 与微前端沙箱

ShadowRealm 与微前端沙箱

小米彭力:知识图谱如何为小米业务赋能?-InfoQ