解密IBM Watson:《危险边缘》冠军的系统架构

日期: 2011-07-21 作者:Jack Vaughan翻译:张培颖 来源:TechTarget中国 英文

UML创始人Grady Booch有时把自己描述为“软件考古学家”。作为IBM的同道以及IEEE软件专栏作家,他希望面试小组可以知道系统的创建是多么重要。

  著名软件方法论学家最近将其注意力转移到IBM的Watson上,Watson是一个在电视节目《危险边缘》中战胜了人类的问答自然语言处理系统。

  上个月,Innovate 2011上,Booch走到“斗篷之下”,揭秘了Watson的系统架构。Booch描述了关键项目战略和产出。这些包括重要的设计决策,像Watson使用管道过滤器架构模式进行平行化,用基于XML的UIMA-AS(Unstructured Information Management Architecture with Asynchronous Scale-out)模式开发。

危机边缘

危险边缘

  此外,Booch简短地介绍了Watson的下一步计划。现在它已经获得了《危险边缘》的冠军,其底层架构和代码将会被重新分解,成为用来处理非结构化数据的商业系统。医学诊断很可能是第一个目标,其他的也在考虑之中。

  “我就是个说书先生,” Booch告诉Innovate与会者,他实际并没有参与Watson的设计。他介绍他的工作就是“就是以旁观者的身份来解密Watson系统架构师制造的设计方案。”

  架构的精华是什么?决策!

  从一种很高的观点来看,IBM的Watson先进行问题分析,生成一种假设,缩小可能的答案范围,然后根据信心程度数呈现出最有可能的答案。

  IBM的Watson提出答案或者问题,速度非常快,大约是2.7秒。

  Watson有很多部分组成。有大约一百万行代码。大多以Java和C++编写,但是也包括其他语言。代码翻译成130个软件组件。从应将的观点来看。有90个IBM Power 750服务器处理负载。

  “架构就是精华所在,” Booch说,“它也是‘承重墙’。”

  “根本上,架构是关于决策的,”他说。

  在Watson架构师创造的决策中关键设计决策就是采用管道过滤器架构模式,这也软件界的杰出人物,像Mary Shaw和David Garlan和Gregor Hoppe所描述的。这种模式可以轻松平行化,从而处理必须处理的海量数据。两一个重要的设计解决方案就是选择了UIMA。

  UIMA-AS建立于相对不了解UIMA标准的时候,这个标准始于IBM研究院,为DeepQA(深度问答)项目设立了舞台,最终是Watson项目,逐渐成为OASIS的标准。

  UIMA-AS包括框架、基础架构和组件,用来分析和《危险边缘》竞争者非结构化数据的注释,或者是医师,这也是正在努力的部分。UIMA-AS现在在Apache软件基金会的支持下已经在之前的版本中改进了可用的扩展性。

  开源软件对于Watson运营非常重要。为了进行通信,Watson的设计者跨越JMS使用UIMA-AS,JMS是访问大型内存数据集的DeepQA协议以及Indri分布式搜索协议。

  IBM Watson代码进一步重构

  从用例的观点来看,Watson有三个基本集,根据Booch所说。他将这三个基本集描述为源摄入(或者信息收集)、训练(或者机器学习)以及博弈(或者回答)。

  目前,Watson是IBM研究院的努力成果,但是系统基于类似的软件架构基础将会很好地进入企业。除了医学诊断,金融和通信都是Watson的目标。

  为了实现这些还有很多事情要做。新的开发也必须进行。代码重构必须具体的性能为进行。研究项目转为商业项目时,这种情况并不常见。代码将会重新编写,以便获取更多的可读性和维护性。配置管理的通用方法将会有所应用。所有的这些,用Booch的话说就是将研究项目转为产品线的一部分。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

作者

Jack Vaughan
Jack Vaughan

TechTarget新闻记者和网站编辑,主要关注数据管理领域的技术趋势和动态。

翻译

张培颖
张培颖

云计算网站编辑

相关推荐