Human Need Knowledge
我们经常把人类的发展比喻为一条历史长河,每个人都是这河里的一个小水滴。这条河从几百万年前的远古走来,还将绵延不断的向前奔腾。如果有机会逆流而上,我们会发现知识的传播随着人类的发展而不断发展。轴心时代,苏格拉底和柏拉图在雅典开设学院教授哲学,孔子也已经弟子三千,佛祖释迦摩尼菩提树下顿悟,开始讲经传教;东汉时期,中国人发明了纸,印度人发明了阿拉伯数字,古代丝绸之路不仅是物质的交流,也是知识传播的通道。
经过黑暗的中世纪,文艺复兴的人文主义精神给欧洲带来了光明,而同时代的中国还在延续它最后的辉煌;两次工业革命颠覆了整个欧洲社会,更将知识的广度和深度带到了前人难以想象的高度,自然科学和社会科学都逐渐形成了我们现在所处的水平体系。
进入20世纪,知识大爆炸来的就更猛烈了。爱因斯坦和玻尔等人从两朵乌云中发现了上帝的秘密——量子力学;1945年,计算机出现,1969年,ARPANET出现;21世纪仅十几年,物联网、云计算、大数据已令人目不暇接。以互联网为代表的计算机技术真的就像一张大网,网住了我们每个人,随着人类历史长河奔流一直不停的向前发展。
回顾历史,总会让人心潮澎湃。纵观几千年的人类文明史,我们会发现人类对知识的渴求,从来就没有终止。而当知识和互联网结合起来,就让知识的获取和传播变得异常简单,我们可以随心所欲的使用搜索引擎,获取自己感兴趣的内容。网络之大,包罗万象,只有我们想不到的,没有我们找不到的!
但是,现在的这些就够了吗?总有一些远见卓识的科学家和思想家,他们站得更高,不满足于现有互联网发展的成果,也看到了Internet对于人类获取知识这个永恒目标还没有做到尽善尽美,他们也在理论和实践方面有所行动。这就是本篇文章想向读者介绍的相关内容,尽管这些东西可能还不完善,离普通人还有一段距离。但如果我们的子孙也可以循着历史长河看到我们这个时代所做的工作,他们也一定会以我们为傲的。
在下面的文章中,我分了三个部分阐述互联网发展,特别是在内容方面的一些积极进展。第一部分着重阐述理论,即语义网(Semantic Web)的概念;第二部分就知识基础(Knowledge Base)和结构化数据做些介绍,因为这是语义网的基础;第三部分探索一些语义网的应用,例如Google的知识图谱(Knowledge Graph)。因为成文比较仓促,谬误之处,还请指出。
Semantic Web: A 'more revolutionary' Web
让我们把时间拉回到1950年,在那个计算机技术的洪荒年代,计算机科学先驱阿兰图灵就在其划时代的论文《计算机器与智能》中提到了著名的图灵测试,即通过问答来判断电脑的人工智能水平。时间再次来到了1997年,IBM的深蓝打败了国际象棋大师卡斯帕罗夫,标志着国际象棋历史的新时代。
回到现在,21世纪来临之前,计算机的计算能力已经达到了相当的高度(深蓝就是例子)。而今日,互联网的蓬勃兴起,又将这种能力几乎无限的放大。那么,一个由互联网支持的电脑,可以通过图灵测试么?我觉得恐怕不能。所谓的Web2.0,已经拥有了几乎无限的存储和计算能力,但这并不代表互联网能够理解存储对象的意义,以及能将它们串联起来。即使将图灵测试简化为一个问答系统,计算机也不太可能通过互联网获得测试者真正想要的问题答案。
目前互联网存在两个明显的不足。一是计算机不能理解目前网页内容的语义,因为网络只是文档载体,它的目的只是供人来阅读。二是信息无序存在,网上信息爆炸,但是想要的信息却往往难找,即使借助功能强大的搜索引擎,查准率也比较低。存在这些问题的原因在于互联网现在采用的超文本标记语言(Hyper Text Markup Language,简称HTML),网页上的内容设计成专供人类浏览的,而非供计算机理解和处理的。此外,互联网是按“网页的地址”,而非“内容的语义”来定位信息资源的(缺少语义联接),网上所有信息都是由不同的网站发布的,相同主题的信息分散在全球众多不同的服务器上,又缺少有效工具能将不同来源的相关信息综合起来,因此形成了一个个信息孤岛(其中有大量重复),查找自己所需的信息就像大海捞针一样困难。[1]
那么,Web3.0怎么样?这几乎就是问题的答案了。“ 人们不停地质问Web 3.0到底是什么。我认为当可缩放矢量图形在Web 2.0的基础上大面积使用——所有东西都起波纹、被折叠并且看起来没有棱角——以及一整张语义网涵盖著大量的数据,你就可以访问这难以置信的数据资源。 ”── Tim Berners-Lee, A 'more revolutionary' Web。语义网就是Tim Berners-Lee提出的概念,并且普遍认为是下一代互联网的主要特征之一。Wikipedia上说,语义网有时就被用来作为Web3.0的同义词,尽管两个术语的定义不尽相同。
语义网是如何做到的呢?它涉及到专门设计的数据语言:资源描述框架(RDF),网络本体语言(OWL)和扩展标记语言(XML)。HTML描述文档和链接,而RDF, OWL和XML能描述任意的实体,例如人,会议或者飞行航线。这些技术组合在一起,提供一种描述方式,用于补充或替代现有的网络文档。所以,内容本身作为自描述的数据(descriptive data)存储在互联网可访问的数据库中,或者在文章被标记出来。这些机器可读的内容使得内容管理者可以描述由这些内容所代表的知识结构,这就是为什么RDF和OWL可以描述实体。机器能够自己处理知识,而不是处理文本。这个处理过程和人类的演绎推理类似,并且能够得到更有意义的结果,帮助计算机执行自动化的信息收集和研究。[2]
简单说,语义网就是计算机能识别意义的互联网。那么,结构化的数据是构建语义网的第一步。我们必须将“文档”变为“知识”,这就是语义Web数据源和知识基础。
Knowledge Base: From Wikipedia to FreeBase
从不同的角度看,知识的定义是不同的。在互联网时代,知识就是那些存储在数据库中并显示在网页上的文档中的内容,如果那些可以称为知识的话。而在语义Web和Knowledge Base的角度,知识必须是那些结构化的数据及其相互关系。知识基础需要结构化数据,不是那些包含了数字和字符串的数据库表,而是指向其它对象的指针,那些对象同样拥有类似的指针。知识基础的完美表达是一个对象模型(人工智能领域通常称为“本体”),这些模型包括类,子类和实例等。[3]
互联网时代,以Wikipedia为代表的百科类网站是高质量数据的代名词。如果从搜索引擎爬虫(Crawler)的角度看,普通的网页信息不够清晰,夹杂着不少干扰因素,这还不算为了SEO,站长们在网页中做的小手脚;而Wikipedia提供了400多万词条网页(仅英语),其中还包含了大量的Link和Redirect表示词条间的关系。这也是为什么百科类网页在搜索引擎的排名总是比较靠前的原因,因为它们是真正的知识,也最有可能是搜索者需要的东西。
但这还不够!所以我们有了Freebase。Freebase是一个大型的合作化的知识基础,她是一个结构化数据的在线集合。这些数据来自于许多地方,例如个人,用户提交的Wiki贡献等。Freebase目的是创建一个全球资源,允许人们(和机器)更有效的访问通用信息。Freebase的数据使用开源的API, RDF端点和数据仓库,并可以免费的用于商业和非商业的用途。Freebase已经被Google收购,并作为其知识图谱的一部分。[4]
我曾看到一个普通程序员用Freebase数据开发的极具震撼力的程序,他在Bl
og中写道:“借助Freebase本身提供的异常强大的查询编辑器和开发手册,我一边学一边猜,终于自己也制作了一个作品----欧美流行音乐数据库,里面可以查到所有的欧美歌手、以及他们的专辑和单曲。完成以后,程序小得令人震惊,所有代码加在一起只有十几KB。”[5]
除了Freebase,越来越多,越来越专业的语义Web数据源出现了。比如Wikidata,这是Wikimedia基金会对Wikipedia做结构化的一种尝试;还有WordNet,它是一个英语的文本数据库。它把英语单词分成了不同同义词集合,叫做Synsets,所以它与辞书网站最大的不同是可以被词法分析和人工智能程序自动的获取和处理;GeoNames数据库包含了1000万地理名称和超过750万的相关属性。同样的,这个数据库可以被不同的Web服务和数据库输出程序免费的访问。
除了这些数据源,我们还可以看到DBpedia和YAGO这样的项目。它们不提供数据源,而是用这些数据源构建二级数据库,允许用户按语义的方式查询本体之间的关系和属性。例如DBpedia就是来自于Wikipedia的数据,而YAGO范围更广(例如上面提到的WordNet和GeoNames)。有了这些称为LOD(Linked Open Data)项目的支持,语义网和知识基础的应用大幕逐渐拉开了。(以上项目的详细介绍请参考Wikipedia的相关词条,这里就不一一列出了。)
Things, not Strings
Google的辛格博士曾经说过,The world is not made of strings , but is made of things. 没错,既然我们的真实世界是由实实在在的物体构成,网络为什么不能?语义网和知识基础已经给我们打开了一扇通向“真实的网络”的大门,那么,大门后面会有什么炫酷的玩意儿能够改变我们的生活呢?
Google Knowledge Graph [6]
近两年来,随着Linking Open Data等项目的全面展开,语义Web数据源的数量激增,大量RDF数据被发布。互联网正从仅包含网页和网页之间超链接的文档万维网(Document Web)转变成包含大量描述各种实体和实体之间丰富关系的数据万维网(Data Web)。在这个背景下,Google、百度和搜狗等搜索引擎公司纷纷以此为基础构建知识图谱,分别为Knowledge Graph、知心和知立方,来改进搜索质量,从而拉开了语义搜索的序幕。
知识图谱旨在描述真实世界中存在的各种实体或概念。其中,每个实体或概念用一个全局唯一确定的ID来标识,称为它们的标识符(identifier)。每个属性-值对(attribute-value pair,又称AVP)用来刻画实体的内在特性,而关系(relation)用来连接两个实体,刻画它们之间的关联。知识图谱亦可被看作是一张巨大的图,图中的节点表示实体或概念,而图中的边则由属性或关系构成。上述图模型可用W3C提出的资源描述框架RDF或属性图(property graph)来表示。知识图谱率先由Google提出,以提高其搜索的质量。
知识图谱的数据来源包括百科类数据(Wikipedia,Freebase),结构化数据,半结构化数据挖掘AVP和搜索日志等。知识图谱的构建步骤包括1. 实体对齐;2. 知识图谱Schema构建;3. 不一致性的解决;4. 知识图谱上的挖掘;5. 知识图谱的更新和维护等。从以上这些介绍不难看出,利用结构化数据构建知识图谱,从根本上提高搜索质量,是现阶段应用语义网和知识基础,进展比较大,也比较贴近普通网民(各大搜索引擎结果页面与几年前已经有了明显不同。)的技术。
Question Answering System
搜索引擎不是语义网和知识基础应用的终点。现在《复仇者联盟2》正在热映,在未来世界,如果你还在电脑上打开搜索引擎,并键入关键字,那你一定是80岁的老爷爷。钢铁侠已经用自然语言界面贾维斯(Jarvis)来辅助自己的工作,甚至来泡妞了。我相信搜索引擎之后,应该是高度自由化和能提供高可信度的问答系统,就像贾维斯做的那样,而其后必是以语义网和知识基础作为支撑的。
QA是一种涉及信息获取和自然语言处理的计算机科学,它可以构建QA系统利用自然语言自动回答人们提出的问题。一个QA的实现,通常是一个计算机程序,并且将它容纳的答案构建在一个结构化的知识数据库中,也就是知识基础。QA的研究试图处理更广范围的问题类型,包括并不限于,事实、列表、定义、怎么做、为什么、假设、语义约束和跨语言问题等。一个典型的现代化QA系统是EAGLi,它提供了医学专业领域中强大的术语导航和知识获取能力。[7]
A 'more revolutionary' Encyclopedia?
一些人认为亚里士多德可能是在古希腊时代里最后一个精通所有学科和既有智慧的人了。从那时起到今天,全世界的知识已经不可能被一个人所全部掌握。2008年的不列颠百科全书包括5674万多词,101230篇文章;Wikipedia拥有400万+的英文文章;百度百科号称拥有1100万+的词条。就知识领域来说,百科时代已经到来,不论是纸质辞书,还是互联网。
那么在语义网和知识基础的应用中,我们是否可以看到一个“革命性的”的百科全书吗?它不应该只是Wikipedia那样罗列词条和各种链接,也应该比Freebase那种结构化数据库更进一步。我大胆的畅想一下未来的百科全书。
它是真正的时光老人,它给我们“讲述”人类历史发展的真实图景,就像我本文开头描绘的那些波澜壮阔;它是真正的博物学家,它“引领”我们参观地球这个最大的动植物博物馆,了解每一处生命的奇迹;它是最睿智的老师,可以实现两千多年前孔子“因材施教”的宏愿;它是最贴心的工作助手,当我准备这篇文章时,它将所有的素材分门别类的,按引用概率由大到小排列的,呈现在我的面前。百科全书不是冷冰冰的网页和工具书,它应该“活”在我们心中。如果你看过《时间机器》这部电影,纽约市立图书馆咨询处虚拟人Vox就是我能想到的完美形态。
AI: To be or not to be.
在谈了这么多语义网、知识基础及其应用带来的革命性变化后, 我想到了资深媒体人罗振宇在一期视频节目中讲到的人工智能发展的话题[8]。现在有一种声音认为,人类科技的发展呈现越来越快的趋势(事实也是这样的),那么当计算机技术发展到一定程度,人们以为的那种人工智能来临时,可能看到的不是人类永生的幸福图景,而是人类灭绝的意外结局。其逻辑推理这里就不做展开了,但是我觉得当互联网进化到语义网,加上史无前例的计算能力,人工智能必然开创新的局面。计算机越来越可以通过语义网和知识基础,获得和人类平等对话的能力和机会,图灵测试终将成为历史。科技是否会成为第七种生命形态(详见《科技想要什么》)?人类在未来如何驾驭计算机、网络和“活的”数据?生存还是死亡?这是最好的时代,也是最坏的时代。科技的问题,终极还是哲学的问题,还是让我们的后代来回答吧。
Conclusion
人类追求和传播知识的脚步从未停止。在互联网时代,知识的获取和分享变得如此简单,但新的问题还是出现了。我们被淹没在互联网信息的洪流之中,找到自己真正需要的信息越来越难,信息与信息之间缺乏有效的联系。科学发展从来不缺乏动力,网络时代亦是。大批的科学家很早就开始了语义网和知识基础的研究,其目的就是要把浩若烟海的知识在互联网上串联起来,使他们成为有意义的实体,而不仅仅是存储在服务器上,和穿梭于网络之间的字节。The world is not made of strings , but is made of things. 此时的互联网才真正具备语义的概念,此时的互联网信息才真正可以称为知识,互联网将成为人类有史以来最大的知识共享库。
在语义网理论及相关工具的支持下,自然语言理解,机器学习和数据挖掘等多方面的研究正在开展,而其中的基础是对数据的结构化,也就是形成知识基础。从普通的网页,到以Wikipedia为代表的高质量文本内容,再到以FreeBase、LOD项目为代表的结构化数据,语义Web数据源的数量激增,数据越来越发出“自己的声音”。语义网和知识基础的数据层愈发完整,其有了从理论变成现实的可能。
当理论和数据基础成熟后,我们能看到什么样的产品?或者说,这些理论如何体现在下一代互联网之中呢?Google的知识图谱给出了一个典型的答案。但这仅仅是从搜索引擎的角度来说,语义网和知识基础的应用绝不止于此。例如革命性的问答系统、百科系统,甚至真正意义的人工智能时代,都可能随着越来愈多的应用成熟而真正到来。
让我们拥抱这个崭新的世界!
Reference
- http://www.china-cloud.com/yunhudong/yunzhuanlan/kanghua/2012/0227/9917.html
- http://en.wikipedia.org/wiki/Semantic_Web
- http://en.wikipedia.org/wiki/Knowledge_base
- http://en.wikipedia.org/wiki/Freebase
- http://www.ruanyifeng.com/blog/2008/04/freebase_reloaded.html
- http://www.doc88.com/p-7764330200756.html
- http://en.wikipedia.org/wiki/Question_answering
- http://v.youku.com/v_show/id_XOTI1ODQyNTE2.html
- 其它一些知识素材,全部来自于网络,就不一一标注了。