你的位置:首页 > Java教程

[Java教程]项目总结笔记系列 Autonomy IDOL Server KT Session1


在说上面这个图之前,先说一下背景知识。

Autonomy地址:

http://www.autonomy.com.cn

http://www.autonomy.com.cn/content/home/index.zh.html

  先说说我的理解:我们利用Autonomy可以做什么。比如在一个电商网站中,我们在某个电商网站中搜索了苹果6,Autonomy会迅速地在返回的页面中,给用户提供产品的配件以及辅助产品的信息。比如,苹果6的手机壳、充电器、耳机线;相关其他的苹果产品,如ipad等。又或者当用户查找iphone 6,但是电商的库存为零了。这时候,Autonomy会自动选择替代的产品并返回给用户。并且,Autonomy会分析大量的用户购物数据及购物兴趣,各种隐性显性的关联因素,来引导用户来浏览其他的商品。这样,为电商引入了流量,增加了交叉促销,为促成交易贡献了自己的力量。Autonomy同时可以根据用户的喜好对销售需求做出迅速反应。最后,Autonomy 的情绪分析技术还能够使电商对其客户服务情况进行监控(包括各种facebook twitter weibo QQ),以提供最高标准的服务。你也许会想,这些操作其实在淘宝,天猫等中已经对它做了应用。其实,电商平台只是Autonomy使用的冰山一角,它对各种类型(结构化 非结构化)数据的整合,处理,过滤,模式匹配,情感分析,在金融、制造业、媒体、电商、医药等行业都有成功过的使用案例。这个可以在官网中,参考看到它的案例介绍及其其中的一些牛逼的技术的介绍。

1.Autonomy:autonomy,提供了一种能够理解任何文件格式的全面软件基础架构解决方案。无论数据是文字还是语音,是结构化还是非结构化,采用何种创建和存储手段,相关的应用程序为何,Autonomy 都能进行处理。这样无需人工建立复杂的连接器或使用元数据,也可实现应用程序之间的通讯。Autonomy的技术使企业应用系统独立于数据类型而运作,同时借助将手工操作自动化而提升了效率。

2.IDOL Server:智能数据操作层 (Intelligent Data Operating LayerTM,IDOL) 服务器位于 Autonomy软件的核心地位。IDOL Server 收集来自各连接器的数据,并以其能够实现快速处理和检索的独特结构储存它们。在处理信息时,IDOL 能够联系概念和语境来理解企业中所有的内容,对超过一千种不同格式的信息乃至使用者的兴趣进行自动的分析。IDOL 允许对数据资源进行超过 500种操作,包括超链接、代理、摘要、分类、聚类、结构化信息抽取、档案建立、个性化信息提醒以及检索。“安全性是 IDOL 体现出自己独到之处的一个重要方面。它提供了映射式的安全架构以及几乎实时的安全权限同步功能,因此,非常适用于对安全性要求较高的搜索应用场合”。

更多的文档参考:http://c0049920.itcs.hp.com:9000/action=help

3.ASOA:Autonomy 的基础架构产品在设计时尤其重视重复利用性、模块化、组件化、互用性以及性能等原则。而 Autonomy面向服务的架构 (ASOA) 则是这些设计原则的延伸。Autonomy 的所有模块都属于可选用的服务,并使用标准的 SOAP 作为其接口,这样大量基于语义的功能都能作为服务提供给用户。

4.Autonomy的实践:两家投资银行合并后不久,决定建立一个统一的研究系统平台,以便其客户可以即时访问合并后的银行的所有与研究资料。这包括全球范围内的 PDF 文件、Lotus Domino 服务器站点,以及存储在文档管理系统和网络上的大量 Microsoft Office 格式文档,形式参杂混合。要将所有这些数据合并到一个系统的前端,传统上需要开发多个接口,每个接口连接一个不同的数据源。相反,如果新合并的银行部署 IDOL 整合所有的数据源,IDOL 可简单为每个数据源配置相应的数据采集器。当各种类型的信息导入到 IDOL 后,一个单一的 JSP 前端就能够提供所有数据的检索、自动超链接(相似文档自动推送) - 无论数据格式是什么,也不管它存储在哪里。

 

  我们的Social Hub项目的底层是基于Autonomy的,Autonomy从各个平台上搜索到了各种各样的数据(通过连接器connector),Autonomy提供了各种基于.IDOL Server。(我们的conncector也许只是返回了一个file的address,CFS则要extracts文件,并且从文件中提取出metadata and file content把它们加到CFS的document中,你想,这样我们的IDOL server到时候可以直接搜索分析数据,而不需要再从原文件格式中取数据。可见,我们增加了CFS这一层,是将所需要的数据提供了一个统一的入口)相当于,你需要水,我从各种管道接来了水,放在一个水瓮中,供你来用。或者你需要钱,我从各个地方弄到了钱,放在了保险柜中,等你来用。

Autonomy的技术优势总结:

1.关键词和布尔表达式搜索

  当处理大量数据并且用户也完全明了其需要寻找的特定信息时,关键词和布尔值搜索的准确性是可以保证的。Autonomy 对这种方法也提供完全的支持。但是,尽管关键词搜索能够找出文档中匹配的字词,它却不能告诉我们整篇文档与所关注的主题之间有多大的相关程度。

  如“那晚我走在一条街上。这条街又长又黑。等我走到街的尽头时,有个抢劫犯跳出来袭击了我”,虽然句中多次出现“街”,但整段内容描述的却是一起犯罪事件。用关键词和布尔值方法搜索“街”时,该段内容很可能会被返回到搜索结果中,因此,这些方法有时并不准确。针对这一点,关键词搜索方法常采用权重来对搜索结果进行排列。当对比关键词出现在不同位置的两篇文档,其中一篇关键词出现在文档中的显著位置,例如标题,另一篇关键词出现在文档末尾,搜索方法会认为前者的重要性比后者高,并给予其较高的权重值。此外关键词出现多次的文档得到的权重值也会比较高。
  对于格式规范一致的数据,例如医学报告来说,权重关键词搜索技术表现会有所改善,当然Autonomy对此亦提供全面支持。但从另一个角度说,这种方法依然没有考虑字词的所处的语境以及文字所论述的主题,它排序的依据是:如果字词位于标题中或是常常被提到,那么整个文档的相关度必然较高。而Autonomy则通过精密的模式匹配技术来从语境上理解文档并提供概念类似的文档,无需依赖于关键词,从而避免了这一问题。

  人工调节,“有的关键词搜索引擎提供了人工调节结果的方法,包括复杂的布尔值表达式、关键词标记、关键词关联及/或类别。同样,Autonomy 也支持这些广为使用的技术。但是无论关键词搜索引擎如何复杂,它的本质也只是查找匹配字词。这需要人工管理关键词的关联或类别。举例而言:关键词方法需要最终用户能够以复杂的特定表述方式(亦称为布尔表达式)来编写查询内容。这意味着用户需要掌握晦涩的搜索“规则”。一开始的规则可能是这样的: <以色列AND 巴基斯坦> <以色列AND 巴基斯坦> OR <以色列 OR  巴基斯坦> <以色列 OR 巴基斯坦> 这看上去好像足够了。但是如果用户特别关注以色列和巴勒斯坦之间冲突的升级,那么上述规则返回的文档有可能与这个关注内容无关,例如:以色列:20世纪初居住在巴基斯坦的犹太人数量很少;该数字在1845年为12,000,到1914年增长了85,000。此外,有些文章在编写时都假设读者已经了解一些背景资料,因此,可能并不包含上面的关键词“以色列”或“巴勒斯坦”,例如:针对这次自杀式攻击,阿拉法特先生宣布在加沙和西岸各地实行紧急状态,并且逮捕了75名激进分子。为了在搜索结果中包含这些文档,必须对规则进行修改:<阿拉法特 OR "自杀式攻击" OR "紧急状态" OR "西岸">但是,根据这种规则搜索,其结果也会返回其它自杀性袭击信息,因此,可能会导致遗漏与主体直接相关的有价值的文档,例如:相关团体对此的反应(如美国政府)。因此,必须对规则进行多次修改,确保搜索之返回相关结果。<("阿拉法特" OR "沙龙" OR "布什") AND ("自杀式攻击" OR "紧急状态" OR "炸弹攻击") AND ("以色列" OR "巴勒斯坦" OR "西岸" OR "耶路撒冷")>这只是最初的规则。如果我们再考虑需要对各种类别进行的持续不断的维护,那么情况将更加复杂。上面的例子需要文档包含全部三个类别(姓名、暴力事件以及位置)中的匹配内容。如果文档并未包含全部三种内容,那么查询就会忽略这些文档。因此,这种方法需要详尽深入的人工劳动,而得出结果的准确性仍然无法保证。相反,Autonomy  可以自动了解文档的主题,在无需用户进行任何手动输入的情况下为他们提供相关材料。关键词搜索引擎不能随着使用进行“学习”。您也很难通过提供示例来查找内容。如用户在使用“与这个类似”功能时,在搜索框中提供一段示例文档,想要找到与这段文档描述的概念类似的文档——这样将增加查询关键词的个数,因为它是根据示例文档中最经常出现的术语而确定搜索关键词的。然后再根据该关键词进行匹配,将含有该关键词的文档反馈给用户。Autonomy 在支持这种方法的同时,其技术能够根据示例文档的概念找出匹配文档,因此,更为有益。举例而言,某用户关心曼联足球俱乐部的经济状况。那么如果使用传统的“与这个类似...”功能,他可能会得到有关其他运动项目的文章,例如高尔夫球、网球甚至橄榄球。但 Autonomy 能够了解用户关心的是某个特定俱乐部的经济状况,从而提供相应的文档。

  Autonomy 能够理解任何页面的内容,并在语境上建立不同页面、文档以及查询之间建立联系。这样保证了用户得以找到最适合他们的信息。Autonomy 无需依赖关键词搜索,也不靠链接表来判定哪些页面是否与查询相关。