智能代理和语义 WebWord格式文档下载.docx
- 文档编号:8613961
- 上传时间:2023-05-12
- 格式:DOCX
- 页数:13
- 大小:417.75KB
智能代理和语义 WebWord格式文档下载.docx
《智能代理和语义 WebWord格式文档下载.docx》由会员分享,可在线阅读,更多相关《智能代理和语义 WebWord格式文档下载.docx(13页珍藏版)》请在冰点文库上搜索。
级别:
中级
其他语言版本:
英文
访问情况
926次浏览
建议:
0
(添加评论)
平均分(共2个评分)
语义Web简介
语义Web是制作、查询和处理知识的一组工具和框架。
语义Web背后的关键技术是资源描述框架(RDF),它既可被视为图形(N-三元组图表)知识表示模型,也可被视为面向对象的知识表示模型。
要让这个模型成为机器可读的模型,有若干种格式可用(比如RDF/XML、RDF/N3和RDF/Turtle)。
SemanticWebActivity页面以及原来的SemanticWebEducationandOutreach页面上有面向语义Web开发新手的大量信息。
要获得这些页面的链接,请参见参考资料小节。
让语义Web如此有意义和有用的关键设计特征之一就是跨Web数据集间互连数据的确立。
TimBerners-Lee在其2006年发表的一篇名为“DesignIssues:
LinkedData”文章中着重谈到了这点。
LinkedData通过充分利用超文本传输协议(HTTP)确保了所有语义Web数据在Web上都是可访问的。
如今有很多示例LinkedData集可用,正如您在RichardCyganiak的LinkingOpenDatadatasetscloud一文中看到的(参见参考资料),这完全得益于LinkingOpenData社区的努力。
回页首
智能代理简介
综合考虑Jennings(1999)以及Russell和Norvig(2003)的描述,不难理解一个代理就是由架构和程序封装而成的一种计算机系统。
此计算机系统应该:
∙位于某种环境内
∙能感知其环境
∙能在该环境内自主的行动
∙具备某种设计目标
一个代理系统由4个基本部分组成:
∙性能指标
∙环境
∙致动器(Actuator)
∙传感器
代理的4种基本类型
一般地,常在文本中讨论的反应代理有4种:
∙简单反射代理,根据其当前的感知采取行动
∙基于模型的反射代理,根据其当前的感知和部分历史采取行动
∙基于目标的代理,使用其当前的感知以及需要(目标)采取行动
∙基于实用的代理,试图最大化其状态以获得更高的效率
不过,现在有些关于人工智能的时髦书籍将对代理的范围扩充到了其他类型,而这些类型的代理从严格意义上并不是上述所定义的反应代理,其中包括:
∙界面代理
∙移动代理
∙信息代理
∙学习代理
∙机器人代理
scheduler代理
每个代理都具有某些特定的行为。
scheduler代理可被视为是一种基于模型的反应代理,它在执行这些行为时会考虑时间。
scheduler行为有很多种。
比较简单的一个例子是唤醒行为,此行为会在经过特定超时期限后运行。
又比如ticker行为,它在每段设定的时期执行一次。
searcher代理
searcher代理是一种具有特定功能的信息代理,用来寻找一个集合内的一个或多个条目。
它可作为基于目标或基于用途的代理实现。
Webspider就是一种searcher代理,它可搜索可供用户搜索的预索引的页面。
根据特定的目标自builder代理衍生出的Searcher代理还部署在PubMed系统内,该系统是美国NationalLibraryofMedicine提供的一种服务,它包括1800多万条对联机医学文献分析和检索系统(MEDLINE)以及其他生命科学刊物中生物医学文章的引用,有些文章可追溯到20世纪50年代。
基于文本的searcher代理通常都内置有某种类型的自然语言处理,在某些情况下,还具有隐性语义索引。
代理通信
如果没有共享知识和经验的通信机制,那么智能的程度将非常有限。
这同样适用于代理技术的情况,因为代理技术也是人工智能的一种。
FoundationforIntelligentPhysicalAgents(FIPA)精心构建了可在多代理系统内使用的标准和建议。
这确保了所有代理均具有某些格式的通用语。
FIPA是InstituteofElectricalandElectronicsEngineers(IEEE)标准组织。
ObjectManagementGroup(OMG)具有一些对FIPA标准的补充,即MobileAgentFacility。
还值得一提的是代理需要共享某种特定的词汇表。
这通常通过使用OWLWeb本体语言构建一种本体来实现。
面向Java编程语言的代理库
面向Java™编程语言的、基于FIPA的代理库很多,比如TelecomItalia的JavaAgentDevelopmentFramework(JADE)和IBM®
的AgentBuildingandLearningEnvironment(ABLE)。
语义Web上的智能代理
以商业为导向的Web和学术派的Web存在着清晰的差别。
商家几千年来就一直在纸媒介上做广告宣传。
所以,在Web创建之始,他们立即就将其视为宣传推广其产品和服务的又一渠道。
Web随即成为了由人头脑内的设计和创意构造的文档Web。
学术派则另有想法。
计算机科学,作为一种学术研究领域,已经进行了长达数十年的人工智能研究,特别是知识工程研究。
学术研究的产物有两个:
代理技术和语义Web,前者是作为一种商业性技术提出的,而后者则是一种科学技术。
语义Web也具有明显的商业益处,但是必须要基于TimBerners-Lee在2006年提出的LinkedDataDesignNote中所定义的额外规定。
通过将公共商业数据作为LinkedData公开,商家不仅可以使其产品或服务更易被找到,而且还能让数据容易被机器阅读,而这恰好是多代理系统所需的。
将数据作为LinkedData公开成为了一种受追捧的市场营销技巧。
语义实现从本体向互连的转移不会阻止Berners-Lee等人的辉煌愿景。
不过,其进展的方式可能与他们在2001年所预期的并不完全符合。
得益于LinkedData,代理现在将能实现跨全球这样一个巨大的图形从一点跟随至另一点。
这种转变致使语义Web在2006年重新受到Shadbolt等的关注,也在2008年被Cyganiak重新启用。
SemanticWeb上的代理实例
使用代理和语义Web能做的事情很多。
比如,可以实现:
∙Web索引代理,将文档转变成正式的基于语义Web的知识
∙个人代理,使用正式的语义Web知识库来预定假期甚至进行门诊预约
∙多代理系统,能在自己的社区执行操作以构建和维护额外的LinkedData集
对于本文,我使用JADE框架和DBpediaLinkedDataSet创建了一个简单示例。
它是一个单代理系统,一经激活即可传递两个纯文本参数(一个对象名称及它的一个属性名称),然后搜索DBpedia数据集查找结果(属性值)。
代理系统一般使用多种技术构建。
对于本例而言,我使用了一种最简单的要求、分析、设计和开发流程。
要求
要求声明给出了对此代理系统预期功能的简要描述。
在本例中,系统应该能够接受名词和该名词的一个属性键,搜索Web上可用的LinkedOpenData并提供该属性的值。
清单1例举了此系统的可能输出。
清单1:
所要求系统的示例输出
Nouninput:
BobMarley
AttributekeyDateofBirth
Agentisfetching...
Attributevalue:
1945-02-06
分析
对于本例,我使用角色模型的分析方法,角色模型是GaiaAgentDesignMethodology(参见参考资料)内提到的一种模型。
它描述了特定代理的功能、为何有此功能以及它所具备的责任和权限:
角色模式:
SimpleNounAttributeSearcher
∙描述:
查找互连语义Web获得某对象的属性值
∙权限:
从任一开放语义Web数据源读取和搜索数据
∙责任:
∙活跃度(Liveness):
∙SimpleNounAttributeSearcher=(GetURIs.BuildQuery.ExecuteQuery.InformUserOfValue}
∙Safety:
true
设计
我使用的是如图1所示的目标流程图来显示一个目标到下一个目标之间的流程,从而实现从对象名和属性名寻找属性值的整体目标。
图1.目标流程图
来自用户的输入是一个简单的纯文本,而语义Web系统通常使用UniformResourceIdentifier(URI),因此GetURIs动作会基于纯文本表示获得一个URI(这得益于RDF模式内的标签关系)。
BuildQuery动作接受这些URI并基于之前动作中找到的那些URI生成一个简单的查询。
ExecuteQuery之后执行此查询并决定结果是否有用。
如果有用,InformUserOfAnswer会将结果显示给用户。
如果没用,这个简单代理以不同的URI再次开始。
图1中所描述的子目标将被转化为Java内的简单公共方法,然而整体的目标是转化为JADE行为。
我还使用了如图2所示的一种面向对象的类图来将目标流程图转变成易于在面向对象语言(比如Java)内进行开发的形式。
这指的是Agent和OneShotBehaviour,它们是JADE库的一部分。
图2.面向对象的类图
程序中最主要的类是SemWebSearcherAgent,它的类型是JADE库中的Agent。
一个代理通常都会具有一个行为。
在本例中,我选择的是OneShotBehaviour(也是JADE库的一部分)并加以扩展以进行SearchingBehaviour。
SearchingBehaviour将会执行大部分的搜索工作。
所需代码附加在本文的下载小节。
请注意SearchingBehaviour的queryengine属性。
它是基于SPARQL端点的URL,我将在这个端点进行搜索。
本例使用的DBpedia端点位于:
http:
//dbpedia.org/sparql
它有如下的HTTP参数:
format=text/rdf+n3&
query=
其中,query是用来发送此SPARQL查询的参数。
在SearchingBehaviour内Java方法的使用与目标流程表内的类似。
开发流程
代理一般位于特定的环境内,为此JADE提供了一个这样的环境。
JADE还提供了图形用户接口(GUI),用以初始化、控制和终止代理。
本节给出了初始化代理的各个步骤。
首先,用GUI打开终端并启动此JADE服务,如图3所示。
图3.从命令行启动JADE
图形用户界面应该类似图4。
图4.JADEGUI
展开此AgentPlatforms树,应该会看到一个容器,然后启动代理,如图5所示。
图5.启动容器内的代理
对于本例而言,我启动的是我自己设计和实现的example.agents.SemWebSearcherAgent。
我需要传递搜索内容的参数,如图6所示。
图6.启动主容器内的SemWebSearcherAgent
这里我想要查找的对象是Marley(即“BobMarley”中的Marley)和属性birth(即“DateofBirth”中的birth)。
此代理加载、搜索,然后打印出从全球的互连语义Web返回的结果,如图7所示。
图7.SemWebSearcherAgent正在完成其功能
结束语
LinkedData格式的语义Web是在Web上呈现知识的理想方式,原因是面向对象的模型很容易理解。
代理技术则是为自主过程建立模型的理想方式,原因是它能够成为以真实社会为基础的人造社会。
本文展示的这个简单项目可以进一步在如下几个方面加以扩展,包括:
∙对用户代理进行更贴近实际的建模
∙增加更多人工智能
∙广泛使用形式本体
∙超越DBpedia扩展LinkedData集
∙将其变成多代理系统
∙将随意一个文本问题转变成SPARQL查询
正如您所见,商家和学术界所面临的机会都是无止境
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 智能代理和语义 Web 智能 代理 语义