【大数据专栏】白硕:语义技术探索
【这是“大数据专栏”的推送文章,本专栏由中关村大数据产业联盟与科技杂谈合作提供】
文 / 白硕,本文为白硕在中关村大数据产业联盟“大数据100分”论坛上的交流探讨实录
主讲嘉宾:白硕
主持人:中关村大数据产业联盟学术委员会主任委员阮彤
承办:中关村大数据产业联盟
嘉宾介绍:
白硕,上海证交所总工程师
以下为分享实景全文:
大家晚上好。就在前几天的六一儿童节,微软推出了节操碎一地的聊天机器人“小冰”,仅仅存活了48小时就惨遭封杀。小冰之死又一次激活了关于语义分析识别技术和人工智能的话题。从专业角度,小冰所展现出来的语义分析和识别能力虽然乏善可陈,但它的最大价值是告诉我们,在聊天机器人设计领域,艺术成分将超过技术成分。一个小冰死在沙滩上,千万个具有不同个性的小X站起来。
小冰之死虽是切入语义分析识别话题的好由头,但却并不是今天分享的缘起。实际上,两周前的一次活动中,我就感受到很多朋友对于语义分析和识别的相关学术话题有分享需求。我就向秘书长提议,能否搞一次以语义分析和识别技术为主题的学术分享活动。秘书长大力支持,遂有了今天这次活动。
不太了解我经历的朋友可能觉得奇怪,语义分析和识别这么玄乎的学术话题,怎么轮到一个传统金融机构的技术负责人来讲,你有没有这个专业能力。这里我简单说一下我的经历。我我当过学者,当过官员,现在是核心金融机构的技术主管。我硕士和博士学位论文都是有关自然语言处理领域的。我的唯一一本学术专著是关于语言学知识的计算机辅助发现的。
从行政关系离开学术界那天起,我陆续淡出了曾经感兴趣的许多研究领域,但NLP和IR却一直是我关注和个人业余学术兴趣的焦点,也是我试图维持自己专业性存在的唯一领域。我微博认证的身份就是中国中文信息学会常务理事。我还在中国科学院的计算所、信工所两个研究所以及中国科学院大学的金融科技中心兼任博士生导师。所以,今天是以一个专业学者的身份而不是技术应用者管理者的身份来跟大家交流的。
因为是学术话题,所说的内容不一定是短平快付诸应用的,有些甚至可能要有比较长的开发和积累周期,可能要由比较有实力的大公司做上规模的投入,就像谷歌的知识图谱。但是,我可以向大家保证,今天的分享将是有价值的。
现在的IT界、互联网界,看见语义二字,总是把很多关于语言处理的未尽事宜都装了进去,把对于语言处理的许多美好展望都寄托在它的上面,一如当年的人工智能。
在非专业从事语言处理技术研究的人群中,存在两种倾向:一种是把相对表层的分词这样的词法问题,或者词项-文档向量空间的降维问题的解决,都归功于“语义”;另一种是把语义实际上管不到的领域知识建模、本体标引等工作也都贴上“语义”的标签。所以,学术意义上的语义,和非专业人士直观中的语义,有很大的区别。
从专业角度看,语义仅仅是把握语言的一个层次。向更加表层的方向看去,有语法(句法+词法)层次和语音文字层次;向更加深层的方向看去,有语用层次。
尽管跟其他层次有千丝万缕的联系,但别的层次可以单独解决的事情,就没语义什么事儿。比如结构歧义,大家经常举“咬死了猎人的狗”这样的例子。要解决这样的歧义,放大上下文就行:“那只狼咬死了猎人的狗”“咬死了猎人的狗掉进了陷阱”。上下文一放大,在句法层面就可以解决,不需要动用语义。
要揭示学术意义上的语义是什么,可以做什么,我们看几个推理的例子。
【例1】《祝福》是鲁迅的著作。鲁迅的著作不是一天能够读完的。所以,《祝福》不是一天能够读完的。
这个例子里面,“鲁迅的著作”一会儿指集合里的元素,一会儿又指集合。概念混淆。
【例2】8/12的分母是偶数。8/12=2/3。所以,2/3的分母是偶数。,故而推理错误。
这个例子里面,“分母”针对的是分数的构成,而等号针对的是分数的值。两个分数值相等不能推出在关于分数构成的命题中,两个分数可以互相取代。
【例3】“十三个字不能定义的最小整数”用十三个字定义了这个最小整数。
这个例子里面,用字定义数,在游戏里边;用特定数目的字能不能定义某个数的判断,在游戏的外面。用游戏外面的判断来定义游戏里面的数,出现了层次纠缠,不被游戏规则所允许。
这三个例子,说明了一个共同现象:语言所包含的意义,在我们人际语言交往的常态下,跟构成语言的符号是不分你我的。只有到了不得不去关注二者的区别的时候,比如处理悖论、双关、歧义、幽默、跨语言交流的时候,意义和表示意义的符号才被分离开来。
也就是说,语言符号有一种“牺牲自己、代表别人”的本性。“自己”是形式,“别人”是意义。在中国古代语言里,用来代表意义的语言符号,叫做“能指”;用语言符号所代表的事物,叫做“所指”。后者,也就是“语义”。
语义所处的世界,不一定是我们的现实世界。虚构的小说,其语义就不在我们的世界。人为的谎言,在现实世界并不为真。但这一切都不影响我们对小说的内容、对谎言的内容的理解。对语义所处世界的定位,学术上有各种各样的观点。从计算机处理的角度看,我们在语义建模(也就是确定“语义长什么样”)时,只需要关心两件事情——
第一件叫做“符号根基(symbolgrounding)”。通俗地说也就是符号所指称的最小砖块(语义单位)是怎么“落地”的,是长在什么上面的。
不得不说,语义单位的落地方式千姿百态。比如表示颜色的词,大红、砖红、桃红、玫瑰红什么的,落地的方式可能是一组RGB值。表示亲属关系的词,舅妈、婶子、表大爷、姑奶奶什么的,落地的方式可能是一组由基本亲属关系(亲子关系、婚姻关系等)复合而成的复杂关系。为了区分“Thesceneofthecrimeisatthebank”所包含的歧义,不管bank怎么落地,一定要给两者打上类似“金融机构”和“自然地理”这样的“类别标签”。最意味深长的是Siri的落地方式,它把手机用户输入的词,跟手机通信录上的号码、跟提供位置服务的POI等进行了绑定,从而开辟了语义与移动互联服务相结合的广阔战场。
第二件叫做“角色指派(roleassignment)”。通俗地说也就是符号所指称的大大小小砖块之间的相互关系。
角色指派的落地方式尽管也有不少种,不管是逻辑公式、框架、语义网络还是什么,但万变不离其宗,最终都要回归到“角色充当者”,和“角色提供者”之间的结合关系。前者类似化学里的正价原子(团),后者类似化学里的负价原子团。它们之间的结合关系就是角色指派,有点像化学里的“化学键”。许多奇特的证明中文“博大精深”的例子都跟角色指派有关,比如“一种人谁都看不上,另一种人谁都看不上”之类。
共性的角色,往往使用共同的名称。比如施事、受事、当事、与事、时间、处所、工具……等等。
角色指派和句法之间有着紧密的联系。在德、俄等语言里,名词有“格”的显性区分,用来表达角色指派关系;在日语里,名词后附“格助词”,用来表达角色指派关系;在英语和汉语里,名词前面附加介词组成介词短语,用来表达角色指派关系。这些是明的。还有很多角色指派关系是暗的,没有显性的标记,汉语里暗的角色指派关系尤其发达,以至于有人称汉语是一种“意合”的语言。
既然语义有“符号根基”和“角色指派”两个方面,那么语义处理技术也就必然要在这两个方面有所体现。
为自然语言建立符号根基,在实践中是不能没有、但可深可浅的一件事情。比如“张三”本来是指人的。对应不上真人,对应上以人为对象的数据库、知识库、号码簿、社交网络账号或其他档案,也都行。最差的就是终止于“张三”这一原子符号。为什么“知识图谱”理论上本来是语言无关的,但却被搞成了语言相关的,就是因为这种语言相关的原子符号太多了。
完成角色指派的方式有多种,但归根结底是两种:一种是句法结构制导的,一种是模板制导的。前者严谨,后者轻便。前者更多地被称为“语义分析”,后者更多地被称为“语义识别”。
所谓句法结构制导的方式,就是依托句法分析的结果,来构造语义分析的结果。看起来这种方法自底向上、步步为营,最可能取得尽可能精准的结果,但是句法方面的缺陷也会传导到语义分析当中来。比如,句法分析的可能结果特别多,反而需要靠语义层面来一甄别;句法层面的省略、移位、指代、呼应等等都需要借助语义信息来一还原等等。总而言之就是:常规情形还好,有一点非常规出现,立即出现理论上互相指望,实践上互相指望不上的被动局面。所以,句法结构制导的方式,具有某种先天的“脆弱性”,在自己覆盖范围内表现得像专家,在自己覆盖范围外表现得像白痴。
所谓模板制导的方式,就是依托事先定义好的模板,来“触发”语义识别的动作。触发的条件可以比较宽松灵活,比如不一定按语序邻接,可以逆序,可以隔着数个无关的词,等等。一个恐怖事件,可能会涉及到时间、地点、作案人、受害人、事件类型、作案目的(诉求)、侦破过程及结果、各方反应等。通过一个或多个文本,把这些信息填写全了,任务也就完成了。至于文本中其他部分,无需仔细分析和理解,无需精准到每一个成分和角色。很多应用场景,包括小冰与用户对话的场景,充其量就是这样一种模板制导的方式就够了。模板制导方式对于自己不理解、不具备分析能力的文本,可以做到视而不见听而不闻,对于自己有能力把握的文本,哪怕是一些还不完全掌握其语序规律的文本,都可以做出相对快捷、大致准确的反应。当然对于一些非常考究、复杂、高阶的表达,模板制导的方式则很有可能出错。
模板制导的方式目前已广泛应用于各类声称使用了语义技术的应用系统之中。特别值得指出的是,模板制导的方法更有条件引入机器学习特别是深度学习的技术,利用低成本的人工对大规模语料库进行标注,对无法规则化的句法到语义映射关系进行有监督或半监督的学习,从而达到“泛化”和“平滑”的效果。
但句法结构制导的方式目前则处在发展的瓶颈期。要度过这个瓶颈期绝非易事,因为这既需要从语言学领域对语义表示的理论进行根本性的创新,也需要在此基础上进行相当大规模的语义资源建设。这两件事情又是相辅相成的。没有好的理论创新,语义资源建设必然盲目且走不远。语义资源建设达不到合理的规模,也难以对语义表示的理论创新进行有说服力的验证。这两个环节又都需要跨界专家的大规模参与,成本上比模板制导的方式高上很多。
我赞成两条腿走路。既要鼓励模板制导的技术尽快形成好的商业模式,进入市场取得效益,同时也要鼓励句法结构制导的研究耐得住寂寞,拼得起成本,憋得出大招儿。我不赞成的是,利用模板制导技术在商业上的成功去封杀句法结构制导技术在学术界的发展。
接下来,我讲一下semanticnetwork和semanticweb的异同,顺带讲一下语义知识表示和领域本体知识表示的边界。
大家都知道“语义网”是个很流行的词儿。但是未必有很多人知道,这个汉语词汇对应着两个不同的英语词汇,一个是“semanticnetwork”,另一个是“semanticweb”。当然由于传播力的原因,后者比前者影响面大得多。这两个英语词汇,指的是完全不同的两个东西,其间又有一定的联系。
semanticnetwork原本指的是多个语义单元通过角色指派连接而成的复杂语义表示。它在表层与文本的句法表示有着大致整齐的对应,它在深层采用的标签基本上是有语言学意义的角色和特征。但是后来,在一些AI系统的知识表示设计中,也借用了semanticnetwork的基本表示框架来表示领域知识,跨出了语言学知识表示本身的边界。
semanticweb则是直接面向网络信息的组织、标注和展现的一套技术框架,其部分思想或许借鉴了作为知识表示框架的semanticnekwork,但已经比语义知识表示走得更远。比如,一个公司可能会有董事长、总经理、副总经理,有自己的专利技术、产品和服务,有自己的客户群和财务指标,它们都可以围绕着“公司”这个本体对象来构建。但是从语义知识表示的角度看,“公司”是一个角色填充者,那些头衔、技术、产品、服务、指标等都是分立的角色提供者,只要角色指派能够得以建立,语义知识表示即告完成。又如,一笔“交易”可能涉及买方、卖方、标的、价格、数量、成交时间等要素,它们都可以围绕着“交易”这个本体事件来构建。但是从语义知识表示的角度看,只要“买”和“卖”作为角色提供者各自的角色指派能够得以建立,语义知识表示即告完成。语义知识表示并不追求把这些角色提供者封装成“公司”这类本体对象或“交易”这类本体事件。
谈到语义分析和语义识别,一般来说我们会把它理解为就是以完成角色指派、构建语义知识表示为己任,不扩展到语义知识表示之外的领域知识表示的构建和获取。但语义识别采用的模板制导技术,其实完全可以有条件跨越语义分析的传统边界,直接针对领域知识表示的单元,比如本体对象或本体事件,从文本中来进行知识抽取。在一些号称基于语义识别技术的应用系统中,大家其实也已经不拘泥于语义知识表示本身的构建和获取,而是直接把语义识别等同于知识抽取。
也就是说,语义分析和语义识别的产出物是以角色指派为主体的语义知识表示。知识抽取的产出物是领域本体知识表示,但它在方法上与语义识别相通,有时直接与语义识别相混同。
要想实现语义分析或语义识别的能力,有一件事是非做不可的,那就是语义资源建设。
对于语言相关的资源建设,大家可能并不陌生。搜索引擎对网上语言资源的爬取、文档数据库的标引、语料库的词性标注、语音/文字的相关原始资料库的整理和标注,都在其列。这些,都是针对“语言使用”的实例的。但是,词法/句法分析使用的词典,同义词/近义词/反义词词典,各种双语乃至多语词典,并不是针对“语言使用”的实例,而是针对“语言要素”的实例的。语义资源建设的核心问题,是要解决精确到义项的角色提供者角色定义和角色提供者/角色填充者特征描述与匹配问题。这个问题必须直接面对,无法取巧。
我们大家知道的几个较大的语义资源库,包括wordnet、hownet和HNC等。其中的每一个都是顶级语言学家主导设计,历时多年不断完善的。应该说,没有顶级语言学家的主导,资源库一定是缺少灵魂的、平庸的、没有生命力的。没有多年的磨合和完善,达到几万词条、几十万义项规模的语义资源库一定无法保证它应有的品质和覆盖面。这项工作不可能通过比拼低成本人力来完成。每一个义项的标注背后凝聚的知识都相当于一篇小型的语言学论文。
我对语义资源建设的定位可以用16个字来概括:虽然难,必须有;不在多,而在精;大师工程。
最后说一说汉语与世界上其他语言的共性和个性的问题。
有人说,跟小明相关的各种汉语段子会让老外疯掉。不可否认,汉语是“博大精深”的。同样不可否认,一般智商的中国人乃至外国人,如果从小学习汉语,都是学得会的,汉语不存在显著得不得了的复杂度。其实,只有学了外国的语言再来用那一套思维定势套汉语,才觉得汉语巨复杂无比。
有人说,“这本书的出版”、“这本书的不出版”、“这本书的迟迟不出版”表明汉语是“词无定类”的;有人说,“晒太阳”、“打扫卫生”表明汉语是不合语法的;有人说“鸡不吃了”、“台上坐着主席团”、“这些馒头把我吃胖了”、“被地主放狗咬伤了腿”表明汉语的语序和角色指派是过于灵活、无规律可循的。其实,这不过是我们在中学、大学学的一种外部强加给汉语的语言学理论结合到汉语实际时产生的“水土不服”的现象。
我比较欣赏老子的名言“上善若水”。水本身的流动规律及其简单,简单的重力和流体力学定律足矣。但是水的流动却造就了姿态各异的江河湖海。之所以有这么多变化,那是地貌惹的祸。地貌的复杂度决定了江河湖海的复杂度。
我相信语言也是这样,简单的规律加上复杂的语料,造就了复杂的语言。我们面临的最富挑战性的任务,就是把简单的语言规律还原出来。乔姆斯基不愧是大师,他已经走在从复杂还原简单的路上,远远领先于同时代人。如果有一天我们对汉语的感觉能从“博大精深”走向“不过如此”,那么在语义技术上了不起的进步和不得了的突破就在眼前了。
互动内容:
Q1杨静:请问白老师,谷歌翻译和百度翻译中,应用的是语义识别技术?还是模式识别或机器学习?
白硕:简单说有两种模式,一种是精准而脆弱的,另一种是quickanddirty。后者可以以一定的容忍度投入使用,前者要等待突破。两个翻译基本都是统计的路子,没有语义可言。
杨静:难道在线翻译不是一种人工智能么?
白硕:@杨静lillian表现得智能不见得有智能
Q2阮彤:模板的规模到底是多大才够呢?
白硕:模板规模,与应用有关。
阮彤:与应用有关,也就说明了模板的局限。
Q3杨静:还有微软小冰,她与MSN原来的机器人有什么区别?小冰的核心技术是什么?
白硕:小冰没有核心技术,它有核心艺术。
杨静:微软方面甚至表示,小冰的智商相当于16岁少女,其定位重点是“专注于提高用户群聊体验”。
白硕:就是比较多立面地塑造了一个没节操的人物形象而已。
杨静:李彦宏说百度大脑相当于2-3岁小孩儿,怎么小冰一下子就16岁了?如果相当于16岁少年,那岂不是逼近强人工智能的界限了?
白硕:16岁的说法是因为有成人成分了,但是智商不在内。
Q4阮彤:为什么您觉得领域建模,本体标引,不是语义呢。
白硕:是包含语义而且高于语义的东东。
孔华威:@白硕高于语义?模板应该低于?
白硕:模板低于,本体高于。
孔华威:句法结构制导怎么会被称为“语义分析”呢?语法,语义两个怎么打通的?
白硕:句法和语义怎么打通,是语义分析最核心的技术。
阮彤:是否存在绝对的句法很怀疑。
白硕:怀疑很正常,很多人都怀疑。尤其对汉语,后面有叙述。我举一个打通的例子:“王冕六岁上死了父亲”。无论谁家的句法,“死了父亲”总是要先从句法上确立的一个成分,这个成分对应的语义是“一个人的父亲死了,那个人是谁不知道”。后面“王冕”结合进来,语义上的动作是:“哦,那个之前确定不下来的人是王冕”。用我上面的观点说,就是:“父亲”提供一个角色同时又充当一个角色,“死了”提供一个角色。“死了父亲”解决了“死了”的角色指派问题,但没有解决“父亲”的角色指派问题。在外层“王冕”出现之后,“父亲”的角色指派问题才算落地。这套机制,是任何句法制导的技术路线都不能躲避的。
Q5阮彤:白老师的意思,是不是应该由语言学家主持,做一个标注的语义库?
白硕:阮老师,语义资源建设,真正留得下来的,都是大语言学家主持的。我们就是这么走过来的。说准确点,是计算语言学家。
阮彤:我们在抽2元关系过程中(如竞争对手),感觉更复杂的关系更有意义。如竞争的上下文,竞争时间段等。如果有一个语义资源库,可能会给多元复杂抽取很多方便。至少有种子。但这个库会很大。
Q6邵宗有:白老师,我的第一个问题很尖锐,大数据时代,穷举成为主流,语义分析还重要吗?
白硕:穷举无法发现“语义上应该存在,但字面上不存在”的东西。
邵宗有:@白硕但语义分析就能发现吗?
白硕:是的。要检验是否懂了语义,有两个办法。一个是像阅读理解题目一样,paraphrase。另一个就是基于理解做事情,像siri那样。
杨静:计算语言学家,是懂语言学的特种程序猿么?
白硕:@杨静lillian正是
杨静:看来,各类跨界的特种程序猿,未来需求很大。
Q7张涵诚:@白硕深度自学习的逻辑是什么?
白硕:语义基本做不到自学习。它是映射,一定要呈现两边的东西,才能学映射,所以一定是有监督的。
张涵诚:@白硕自学习做不到,很难了,IBM以前的vioce智能有自学习过程,先釆集一些个性的表达再识别是一种方法吧。
白硕:自学习是已经有模型了,需要确定的只是个性化待定参数时适用。
Q8云无心:@白硕您认为穷举和语义分析未来如何结合
白硕:所谓穷举,就是基于大语料。大语料只是一头,即能指,那所指在哪里?只有标注。根据什么标注?那就要知道语义长什么样。语义长什么样这件事,必须通过语义资源建设来解决。在穷举用砖头垒成的墙之前,先穷举砖头。否则看着墙也是晕。
Q9杨静:语义分析需要很多人为介入?特别是语义标注?
白硕:人多了不一定有用,廉价人工干不了这活儿。
杨静:暴力搜索+语义大师?
白硕:有语义大师,可以避免很多暴力搜索
杨静:白老师认为,语义大师>暴力搜索?
白硕:各种小明段子,基本毁掉关于汉语语法的三观,但是大师一样可以用简洁的方式重建三观。没有大师,小明段子只好无解。汉语只好博大精深。但是我们除了赞叹博大精深,很难有什么作为。
Q10阮彤:估计国内有多少可以标注语义的语言学家的数量级?
白硕:阮老师,不超过10个。我指领军人物
张涵诚:可以演绎?可以推理,这个语言毕竟有限。20000个汉字,词汇,句应该可以演绎出?您怎么看?现场这个领域谁做的最好?能准确到多少?
白硕:一般说语义,还不包括演绎推理。推理单算。但是语义本身的推理,涉及类型、特征匹配的,应该算在语义能力之内。一个非常麻烦的事情是,并不存在关于语义的单独的测评指标。语义的作用体现在方方面面。比如,用语义信息来消除真歧义和伪歧义,用语义来实现非字面的隐蔽关联,用语义来填补省略等等。总而言之,如果“角色指派”能够做对了,后续可以做N件事。但是角色指派怎么测评,是要好好设计的。
欢迎大家加入科技杂谈菁英汇,交流思想、分享信息。仅限行业商端人士参与。参与方式:点击左下方“阅读原文”填写您的加入信息,科技杂谈通过审核后,会添加入群。
本文仅代表作者观点,科技杂谈授权刊登。
转载必须注明作者与科技杂谈,侵权必究。
科技杂谈文章,均同步发布于犀牛财经网。
已入驻搜狐新闻客户端,网易阅读客户端。