智能体可靠性的革命性提升,揭秘知识工程领域的参考架构新篇章

引言:知识工程的演变与重要性

知识工程(Knowledge Engineering,KE)是一个涉及激发、捕获、概念化和形式化知识以用于信息系统的过程。自计算机科学和人工智能(AI)历史以来,知识工程的工作流程因其在构建可靠智能代理中的重要性而被广泛使用。确实,开发适用于从常识到交通、犯罪和天气等应用的可信模型,需要对知识过程有深入的理解。同样,在这些领域内的任务解决方案,包括问答、摘要和预测,都预期将纳入标准化的KE程序,以便它们能够有意义地适用并与人类兼容。

随着时间的推移,知识工程的范围和目标任务正在发生变化,其范式也在转变,从早期的专家系统、语义网到语言建模。这些范式之间的用例和用户需求尚未全球性地分析,因为新范式通常满足先前的痛点,同时可能引入新的问题。最近,将系统模式抽象成框架学(boxology)为将知识工程的需求和用例与能够最好满足它们的系统、组件和软件对齐提供了契机。本文提出了一个愿景,即通过利用创建参考架构的软件工程方法来协调知识工程领域的最佳实践。我们描述了如何迭代设计和实施参考架构,以将用户需求与反复出现的系统模式联系起来,构建在现有知识工程工作流程和框架学之上。我们提供了一个六步路线图,可以实现这样的架构,包括范围定义、信息源选择、架构分析、基于信息源分析的架构综合、通过实例化评估,最终将其实例化为具体的软件架构。

论文标题、机构、论文链接

论文标题:Standardizing Knowledge Engineering Practices with a Reference Architecture
作者:Bradley P. Allen, Filip Ilievski
机构:University of Amsterdam, Amsterdam, The Netherlands; Vrije Universiteit, Amsterdam, The Netherlands
论文链接:https://arxiv.org/pdf/2404.03624.pdf

知识工程的定义与关键任务

1. 知识工程的历史回顾

知识工程(Knowledge Engineering,KE)是指为信息系统创建和维护知识的活动。自计算机科学和人工智能(AI)历史以来,知识工程的工作流程在构建跨领域和任务的可靠智能代理时一直是关键组成部分。例如,从常识到交通、犯罪和天气的应用程序的可信模型的开发,都需要经过良好理解的知识过程。同样,在这些领域内的任务解决方案,包括问答、摘要和预测,都预期将纳入标准化的知识工程程序,以便它们具有意义并与人类兼容。

2. 知识图谱与大语言模型在知识工程中的作用

知识图谱(Knowledge Graph,KG)工程作为知识工程的一个变体,旨在捕获、表示和利用有关实体、它们之间的关系及其底层语义的复杂信息。研究人员和领域专家设计了针对不同领域需求的知识图谱工程工作流程,如生物医学、图书馆和信息科学、网络民主、常识知识和出版物等。同时,大型语言模型(Large Language Models,LLMs)作为知识工件在知识工程工作流程中的角色也在积极研究中,以理解LLMs增强、替代或添加知识工程组件的潜力。

知识工程范式的演变

1. 专家系统时代

在20世纪60年代,研究人员对目标导向搜索和启发式算法进行实用的通用问题解决持乐观态度。然而,到了70年代,这些系统难以扩展到复杂应用成为显而易见。20世纪70年代中期,Feigenbaum受到Newell和Simon工作的影响,认为专注于特定领域对于成功的知识工程至关重要。

2. 语义网时代

在语义网时代,Tim Berners-Lee提倡使用特定的开放标准(如RDF和SPARQL)来编码Web内容中的知识,以改善Web内容的访问和可发现性,并实现自动化推理。然而,语义网技术的采用速度缓慢,最终导致研究人员寻求方法将这些标准和原则与一般软件行业规范更紧密地对齐,并使其更加开发者友好。

3. 知识图谱工程

近期的努力,特别是像谷歌和亚马逊这样的公司开发的商业知识图谱,表明了向基于属性图的自定义架构的转变。这种转变虽然创新,但通常绕过了Feigenbaum和Berners-Lee等早期愿景家所倡导的互操作性和联合理念。

4. 大语言模型与神经符号系统

2010年代,连接主义方法和图形处理硬件的兴起为使用大型语言模型进行知识生产带来了新的可能性。关于LLMs与知识库之间关系的两种主要观点已经出现。第一种观点将LLMs视为可查询的独立知识库,可以通过最小的人为干预从非结构化文本中学习。这种方法挑战了传统的、劳动密集型的知识工程过程,但对准确性、道德使用、互操作性和可策展性提出了担忧。第二种更谨慎的观点将语言模型视为知识工程工作流程中的组件,结合新旧方法。这种方法强调可访问性、手动编辑提取的知识以及推理方法的解释,解决了早期技术的局限性。

知识工程的挑战与需求

1. 用户需求与用例的多样性

知识工程(KE)的发展历程表明,随着人工智能(AI)的演进,KE的范式也在不断变化。从专家系统、语义网到最近的大型语言模型(LLMs),每个时期的KE都试图解决前一时期的痛点,但往往会引入新的挑战。用户的需求和用例多样性是KE面临的一大挑战。例如,早期的KE可能由计算机科学家执行,而现在则涉及直接与知识交互的领域专家、构建本体的知识工程师、修复过时信息的知识编辑、开发知识完善系统的数据科学家,以及测试可用知识的商业和组织利益相关者。这些不同的用户和任务要求KE系统能够灵活地定义和支持各种利益相关者的需求和优先级。

2. 系统设计模式的框架化(Boxology)

近期,将系统设计模式抽象为框架化的“盒子学”(Boxology)为将KE的需求和用例与最能满足这些需求的系统、组件和软件对齐提供了契机。然而,当前的盒子学模式尚未包含用户需求、任务和应用需求的信息,也缺乏将来可能包含这些信息的机制。此外,盒子学模式和流行的NeSy(神经符号系统)流程(例如微调)和工件(例如知识图谱)之间的对齐规范尚不明确,这表明KE系统需要一种原则性的方式来考虑不同用户需求、范式和用例。

3. 面向未来的知识工程需求

随着KE的范式和技术的不断演进,未来的KE需求将需要更加灵活和适应性强的系统。这些系统应该能够随着时间的推移和应用的变化而适应不断演变的需求,并提供一种规范性框架,标准化最佳实践,同时允许针对特定情况进行定制。

提出参考架构的概念与方法论

1. 参考架构的定义与用途

参考架构(RA)是一种框架,它通过最终架构和相应的软件系统将利益相关者的需求与设计模式对齐。RA作为一个通用架构,为特定信息系统类别内的软件工程实践社区提供标准化。RA的特点包括提供最高级别的抽象,强调架构质量,考虑但不包括利益相关者,并促进遵循共同标准,有效支持系统开发和沟通。

2. 六步法设计与实施参考架构

RA的设计和实施可以通过以下六步法进行:范围定义、信息源选择、架构分析、基于信息源分析的架构合成、通过实例化进行评估,最终将架构实例化为具体的软件架构。这一过程是人为中心和迭代的,特别适合于动态和频繁变化的学科,如KE。

e7e2e7fcecb937eb03785fbc249f14cc.jpeg

3. 从信息源选择到架构评估的过程

选择信息源的过程可以通过系统地分析NeSy领域的文献来实现。例如,通过SPARQL查询针对KE任务的文献集,可以识别出与KE相关的系统。然后,可以通过对这些系统的分析来确定它们如何支持KE的质量属性。这种分析可以帮助确定候选的RA合成模式,并在实例化和使用中对合成的架构进行评估。

1e56b5416af7b80af64368a4d482e46d.jpeg

参考架构在知识工程中的应用示例

1. 内容发现与推荐系统的参考架构设计

在知识工程的实践中,参考架构(RA)的设计可以显著提高内容发现与推荐系统的效率和准确性。例如,企业可能希望改善其网站上内容的可发现性,以提升用户体验和商业成果。通过利用RA,企业可以构建一个系统,该系统使用特定领域本体进行内容标记,以支持用户寻找相关内容的任务。

在这个场景中,RA的设计需要考虑多个质量属性(QAs),例如领域特异性和可扩展性。领域特异性确保系统能够从特定领域的术语和定义中提供主题标签,而可扩展性则允许系统随着新内容和主题的出现而扩展。架构师可以通过查询知识图谱来识别符合这些QAs和需求的设计模式,例如F2设计模式,它描述了一个系统,该系统将输入的符号表示(企业知识图谱)和数据(网站内容)结合起来,通过模型(M)生成输出的符号表示,以将网站内容与领域特定主题分类联系起来。

9f95456e9a6f67149b82f776054b5f4b.jpeg

2. 评估与实例化参考架构的方法

在RA设计完成后,需要通过实例化和使用来评估其效果。这可以通过轻量级的架构权衡分析方法(ATAM)来实现。在ATAM会议中,利益相关者和架构师聚集在一起,通过讨论用户场景来识别可能影响QAs实现的架构风险。这些场景可能包括数据集成、数据质量检查、实体解析、本体合并和对齐、查询优化以及自然语言处理等任务。

一旦RA通过评估,就可以进入具体的软件架构实例化阶段。在这个阶段,每个组件的实现选项将被确定,可能包括现有软件包的使用或定制开发。例如,可以为知识图谱完成提供Pytorch-Biggraph的接口,为使用约束评估质量提供Shape expressions (Shex)工具的接口,以及为跨知识工件的记录链接提供RLTK的接口。

讨论与未来方向

1. 参考架构对知识工程实践的影响

参考架构在知识工程中的应用可以带来多方面的影响。首先,它为分散的系统模式提供了组织原则,有助于系统化知识工程领域的实践。其次,RA通过考虑其范围、用例和相应需求,将模式整合在一起,同时考虑质量属性和功能需求。此外,RA的迭代开发过程确保了架构能够适应技术趋势的变化,并随着时间的推移和应用的变化而适应。

2. 面临的挑战与未来研究方向

尽管RA提供了一种有前景的方法来标准化知识工程实践,但在实际应用中仍面临挑战。例如,如何确保RA能够灵活地适应不断变化的技术和用户需求,以及如何有效地将RA与现有的知识工程工作流程和系统模式相结合。未来的研究方向可能包括进一步精细化RA的设计和评估过程,以及探索如何自动从系统化的论文集合中提取功能需求和质量属性。此外,随着知识工程领域的不断发展,RA的实例化和评估过程也需要不断迭代和完善。

总结:参考架构在标准化知识工程实践中的作用与前景

1. 参考架构的定义与应用

参考架构(RA)是一种软件工程方法论,它通过将用户需求与系统模式相结合,创建出一种通用的框架。这种框架不仅为特定类别的信息系统提供了一个高度抽象的通用架构,而且还强调了架构质量,并促进了对共同标准的遵循。RA的开发是以人为中心的,迭代式的,这使其特别适用于动态和频繁变化的学科,如知识工程(KE)。RA的主要优点在于它提供了一个共同的框架,同时允许用户为其狭窄的用例设计特定的RA。

2. 参考架构的六步发展路线图

在知识工程领域,RA的发展遵循了一个六步路线图,包括范围定义、信息源选择、架构分析、基于信息源分析的架构合成、通过实例化进行评估,最终将其实例化为具体的软件架构。这个过程旨在将用户需求与重复出现的系统模式相结合,建立在现有的知识工程工作流程和系统模式之上。

3. 参考架构在知识工程中的作用

RA在知识工程中的作用是将分散的系统模式组织起来,为知识工程领域的系统化提供了一个关键贡献。RA通过考虑其范围、定义的用例及其相应的需求,将模式整合在一起,这些需求被提炼为质量属性和功能需求。架构的合成是一个迭代过程,受到服务导向设计、电子政务和汽车行业参考架构成功案例的启发。架构的发展的一个关键方面是通过实例化和使用与代表性用户进行评估。最后,需要将参考架构组件实例化为软件,从而完成用户需求与现有技术能力之间的循环。

4. 参考架构的前景

随着知识工程领域的持续发展,RA提供了一种机制,将架构模式与用户需求相关联,并识别潜在的差距。RA的实现在实践中目前尚处于部分阶段。本文提出了一个通过定义代表性任务和提炼23个质量属性及8个功能需求来界定范围的路线图,并采用了最近识别出的神经符号知识工程系统模式作为信息源,提供了初始组件,可以用来构建RA。文章还展示了如何将QAs与识别出的架构模式直接映射,检测到各种程度的支持需求。对于从模式合成RA、通过实例化和使用评估RA以及将RA实例化为软件的步骤,文章提出了一个规范的、整合软件工程最佳实践和方法论的逐步过程,因为这些步骤高度依赖于特定用例。每个步骤都需要迭代设计、开发、实施和评估RA的专门努力,这是我们计划追求的下一步,以代表性的任务和领域的代表性子集为例。我们相信,为KE设计RA的提出的方法为系统化KE方法的新兴工作提供了重要的扩展,提供了一种机制,将架构模式与用户需求相关联,并识别潜在差距。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/5419.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【数据结构(邓俊辉)学习笔记】向量05——排序器

文章目录 0. 概述1.统一入口2. 起泡排序2.1 起泡排序(基础版)2.1.1 算法分析2.1.2 算法实现2.1.3 重复元素与稳定性2.1.4 复杂度分析 3. 归并排序3.1 有序向量的二路归并3.2 分治策略3.3 实例3.4 二路归并接口的实现3.5 归并时间3.6 排序时间 4.综合评价…

基于Matlab使用深度学习的多曝光图像融合

欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介 二、功能三、系统四. 总结 一项目简介 一、项目背景 在图像处理领域,多曝光图像融合技术是一种重要的技术,它可以将不同曝光条件下…

备忘录模式(行为型)

目录 一、前言 二、备忘录模式 三、总结 一、前言 备忘录模式(Memento Pattern)是一种行为型设计模式,在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样可以在之后将该对象恢复到原…

idea生成双击可执行jar包

我这里是一个生成xmind,解析sql的一个main方法,可以通过配置文件来修改有哪些类会执行 我们经常会写一个处理文件的main方法,使用时再去寻找,入入会比较麻烦,这里就可以把我们写过的main方法打成jar包,放到指定的目录来处理文件并生成想要的结果 1.写出我们自己的main方法,本地…

C语言.自定义类型:结构体

自定义类型:结构体 1.结构体类型的声明1.1结构体回顾1.1.1结构体的声明1.1.2结构体变量的创建和初始化 1.2结构体的特殊声明1.3结构体的自引用 2.结构体内存对齐2.1对齐规则2.2为什么存在内存对齐2.3修改默认对齐数 3.结构体传参4.结构体实现位段4.1什么是位段4.2位…

深入浅出DBus-C++:Linux下的高效IPC通信

目录标题 1. DBus简介2. DBus-C的优势3. 安装DBus-C4. 使用DBus-C初始化和连接到DBus定义接口和方法发送和接收信号 5. dbus-cpp 0.9.0 的安装6. 创建一个 DBus 服务7. 客户端的实现8. 编译和运行你的应用9. 瑞芯微(Rockchip)的 Linux 系统通常会自带 db…

OpenLayers入门①(引入的是一个高德地图)

OpenLayers入门&#xff08;一&#xff09; - 知乎 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-Compatible" content"IEedge"><meta name"viewport&qu…

使用RTSP将笔记本摄像头的视频流推到开发板

一、在Windows端安装ffmpeg 1. 下载ffmpeg:下载ffmpeg 解压ffmpeg-master-latest-win64-gpl.zip bin 目录下是 dll 动态库 , 以及 可执行文件 ;将 3 33 个可执行文件拷贝到 " C:\Windows " 目录下 ,将所有的 " .dll " 动态库拷贝到 " C:\Windows\Sy…

期权交割对股市是好是坏?2024期权交割日一览表

期权交割是指期权买方在期权合约到期日或之前行使期权&#xff0c;卖方履行义务&#xff0c;按照约定的价格和数量与期权卖方进行标的物的买卖或现金结算的过程。 交割方式 期权交割可以分为实物交割和现金交割&#xff0c;具体取决于合约规定。 实物交割 实物交割是指期权买…

【深度学习基础(1)】什么是深度学习,深度学习与机器学习的区别、深度学习基本原理,深度学习的进展和未来

文章目录 一. 深度学习概念二. 深度学习与机器学习的区别三. 理解深度学习的工作原理1. 每层的转换进行权重参数化2. 怎么衡量神经网络的质量3. 怎么减小损失值 四. 深度学习已取得的进展五. 人工智能的未来 - 不要太过焦虑跟不上 一. 深度学习概念 先放一张图来理解下人工智能…

Vue阶段练习:初始化渲染、获取焦点

阶段练习主要承接Vue 生命周期-CSDN博客 &#xff0c;学习完该部分内容后&#xff0c;进行自我检测&#xff0c;每个练习主要分为效果显示、需求分析、静态代码、完整代码、总结 四个部分&#xff0c;效果显示和准备代码已给出&#xff0c;我们需要完成“完整代码”部分。 练习…

MySQL__三大日志

文章目录 &#x1f60a; 作者&#xff1a;Lion J &#x1f496; 主页&#xff1a; https://blog.csdn.net/weixin_69252724 &#x1f389; 主题&#xff1a;Redis__三大日志 ⏱️ 创作时间&#xff1a;2024年04月30日 ———————————————— 对于MySQL来说, 有…

Gateway Predicate断言(谓词)

是什么 Spring Cloud Gateway匹配路由作为Spring WebFlux HandlerMapping基础设施的一部分。 Spring Cloud Gateway包含许多内置的路由谓词工厂。 所有这些谓词都匹配HTTP请求的不同属性。 您可以使用逻辑 and 语句来联合收割机组合多个路由谓词工厂。 Predicate就是为了实现一…

基于EBAZ4205矿板的图像处理:03使用VIO调试输出HDMI视频图像

基于EBAZ4205矿板的图像处理&#xff1a;03使用VIO调试输出HDMI视频图像 在zynq调试时VIO是真的方便&#xff0c;特此写一篇博客记录一下 先看效果 项目简介 下面是我的BD设计&#xff0c;vtc用于生成时序&#xff0c;注意&#xff0c;2021.2的vivado的vtcIP是v6.2版本&…

Stm32CubeMX 为 stm32mp135d 添加 adc

Stm32CubeMX 为 stm32mp135d 添加 adc 一、启用设备1. adc 设备添加2. adc 引脚配置2. adc 时钟配置 二、 生成代码1. optee 配置 adc 时钟和安全验证2. linux adc 设备 dts 配置 bringup 可参考&#xff1a; Stm32CubeMX 生成设备树 一、启用设备 1. adc 设备添加 启用adc设…

JAVA前端快速入门基础_javascript入门(03)

写在前面:本文用于快速学会简易的JS&#xff0c;仅做扫盲和参考作用 本章节主要介绍JS的事件监听 1.什么是事件监听 事件:是指发生在HTML端的事件&#xff0c;主要指以下几种。 1.按钮被点击 2.鼠标移动到元素上 3.按到了键盘 事件监听:当触发了事件时&#xff0c;JS会执行相…

vue3、element-plus递归实现动态菜单

vue3、element-plus递归实现动态菜单 使用场景&#xff1a;动态菜单为什么使用递归递归在动态菜单中的实现 使用场景&#xff1a;动态菜单 动态菜单是指菜单项的数量和层次结构可能是动态的&#xff0c;通常来自后端或用户输入。这些菜单的特征包括&#xff1a; 多层嵌套&…

【webrtc】MessageHandler 3: 基于线程的消息处理:以sctp测试为例

消息处理可以用于模拟发包处理G:\CDN\rtcCli\m98\src\net\dcsctp\socket\dcsctp_socket_network_test.cc 这个实现中,onMessage还是仅对了一种消息进行处理,就是接收则模式下,打印带宽。当然,可能程序有多个消息,分别在不同的onmessage中执行?SctpActor:以一个恒定的速率…

【大语言模型LLM】-基于ChatGPT搭建客服助手(1)

&#x1f525;博客主页&#xff1a;西瓜WiFi &#x1f3a5;系列专栏&#xff1a;《大语言模型》 很多非常有趣的模型&#xff0c;值得收藏&#xff0c;满足大家的收集癖&#xff01; 如果觉得有用&#xff0c;请三连&#x1f44d;⭐❤️&#xff0c;谢谢&#xff01; 长期不…

利用大型语言模型提升个性化推荐的异构知识融合方法

在推荐系统中&#xff0c;分析和挖掘用户行为是至关重要的&#xff0c;尤其是在美团外卖这样的平台上&#xff0c;用户行为表现出多样性&#xff0c;包括不同的行为主体&#xff08;如商家和产品&#xff09;、内容&#xff08;如曝光、点击和订单&#xff09;和场景&#xff0…