Romualdas Rakauskas
你有没有想过孩子们是如何发现他们周围的世界的?他们是如何理解物体、它们之间的关系、可能的行为后果以及社会和家庭规则的?他们又是如何发展推理能力的呢?想象一下你是一个第一次见到树的小孩子。_树是什么?你还不确定,但你注意到树长在草地上,有叶子、树枝,还有一个棕色的树干。等等,等等!那棵树有一个白色的带黑色条纹的树干!_随着你慢慢长大,你的父母会教你树是活生生的生物。_但是狗也是生物——难道说树也能跑来跑去并汪汪叫?还是说树是一种不同的生物,它们不会汪汪叫?_孩子们会不断经历全新的经历。有时,这些时刻会令人惊讶甚至震惊。你有没有见过一个婴儿第一次看着正在工作的扫地机器人?
当某人经历一件完全新鲜、从未见过的事情时,那一刻肯定很兴奋。如今,作为老师,也能体验到这样的时刻——教机器的老师。
听到“人工智能”这个词,你最先想到的是什么?对很多人来说,现在想到的可能是生成式人工智能、传统的机器学习,或者神经网络,这些都是正确的。但认为训练好的模型本身就是人工智能是过于简单化是不对的。作为研究领域的人工智能来说,不仅探索如何开发和训练能够从数据中学习特定模式的模型,还探索如何以机器可理解的方式表示人类知识。
为什么机器需要那东西?
人工智能已经在许多实际案例中使用了多年。想想这些算法,它们可以模拟不同场景下物体的行为,比如自动驾驶汽车。或者想想那些在工厂里进行预测性维护和在机场进行物体识别的机器学习模型。这些应用中的大多数都非常具体:你在一个或多个具体用例的准备好的数据上训练模型,使模型学习这些模式。在这种情况下,模型就变成了解决特定问题的工具。
最近在生成式AI领域的创新激发了全球各地人们的想象力,因为生成式AI能够处理非结构化数据。我们觉得,足够智能来自动化工作流程、预订旅行、接听来电并编写代码的AI代理终于可以实现了它们。事实是,只有了解我们的世界,AI才能成为可靠的“助手”。
来源:Gartner。链接
是的,大型语言模型(LLM)可以生成和再生成信息,但它们常常难以将企业数据库中的实体与现实生活中的概念对应起来,部分原因是我们的语言如此模糊。在这种情况下,仅仅不断增加数据量给算法并不能解决问题。让算法自己理解决无结构的数据也无法解决问题。
如果不能自己探索我们世界——比如,在草地上爬行,舔尝地板上的东西,还有在日落时聆听鸟鸣——算法仍然可以通过我们提供的世界模型来学习环境,就像地球仪帮助学生在学校里学习地理那样。没有这些模型,它们就只能成为应用范围极其有限的工具。
但更令人惊讶的是,但是没有这样的模型,人类自己也无法研究像现代企业这样的复杂系统。而无法深入了解这些系统,他们将不得不继续盯着那些老旧的仪表板,这些仪表板提供的视角是刻板且孤立的。
人类和机器需要某种语义模型(语义是语言学和逻辑中关注意义的分支),以此作为对现实的近似,这将有助于将来自不同数据源的大量数据映射到一个共同的地图上。这些模型将展示它们之间的关系。就像孩子学到了一棵树是植物,而植物虽然是一种生物却不能像狗那样吠叫。(研究概念(或符号)处理和操作的学科称为“符号人工智能”。)
在这篇文章里,我不会引导读者完成创建此类语义模型的过程。我不会专注于技术实现或其他任何低级别的细节。我也不会局限于任何特定的框架。我现在更感兴趣的是这个过程的概念层面。如何将现实生活中的概念理顺?在创建这样的模型时,我们应该基于哪些假设?你应该怎样想象你的受众?你的个人世界观如何影响你的工作成果?以及,这样做有什么好处?
从某种程度上说,我想给你讲讲世界观构建——因为在最后你就能明白了,如何建立起你自己的世界模型,包括人类和人工智能角色。虽然这种方法并不能帮助你建立一个真实的火星物理殖民地,你仍然可以开始为你的公司制作数字地图。
免责声明:本文并非关于认知心理学,也不是关于心灵哲学(如果你想了解更多关于后者的内容,我推荐这篇 文章 ,作者是 卡斯珀·威尔斯特鲁普 )。我的文章只是讨论一种将语义概念形式化的办法,使得无论是人类还是机器的不同系统都可以理解。
模特这行真是微妙得很“人类潜意识中有一种普遍的需求,希望这个世界是有逻辑且有意义的。但真正的宇宙总是超越逻辑。” ― 弗兰克·赫伯特,《沙丘》
“ 所有的模型都有缺陷,但有些是有用的模型。” ― 乔治·博克斯(George Box)
大多数知识型工作者——程序员、商业分析师、企业架构师、项目经理、研究人员甚至教师——都会与某种模型打交道。模型有助于将概念、问题或过程可视化。一旦将它们可视化,讨论起来就更容易,因为这样对方不需要猜测你的意思或解读你的语言——通过这种方式,模型帮助人们保持在同一页面上。
最简单地描述现实的方式是画个图。对象图可以展示一些概念及其相互关系,而序列图则可以展示动作或事件的顺序;状态图则可以展示实体在某些事件影响下的变化。比如你只想在休息时间快速给同事展示你的想法,你的图可以很简单随意。但如果你想以一种可扩展的方式进行,你可能需要遵循一些约定和标准。一些实践,如基于模型的系统工程或模型驱动架构,在某些行业中非常流行甚至必要,它们认为每当开发一个系统时,你都需要先创建一个可视化、可版本控制且遵循某种通用标准的模型。
目前为止,一切还好。但如果你一旦找到了某个标准的描述,你就能做出完美的模型,那你可就错了。因为这些约定或许能给你一些关于命名类或关系的提示,但没有任何标准能告诉你如何为你的领域建立正确的模型。因为这取决于以下几点:
- 你的模型服务的目标,这通常通过模型所代表的观点(视角)来解释——例如,比如领域可能是制药,但视角可能是生产、法律、化学过程等;
- 你工作中的一些哲学假设…
……是的,没有唯一正确的方式来开发模型——这非常主观,取决于你的信念。真的,这就是为什么我在标题中提到“世界构建”——每当你创建一个模型时,你就像托尔金或阿西莫夫一样。这听起来可能有点抽象,让我解释一下为什么你的模型设计取决于你的目标和假设。
例如:你是否觉得读这篇文章时自己有点不一样了?希望是的,因为你从这次阅读中能学到一些东西。不过你也稍微变老了一点(毕竟这篇文章还挺长的)。所以这么想也有道理。
如果你认为实体在任何时间点上有任何不同,那么你可以自豪地称自己为持久主义者(4D的世界观),否则——瞬时主义者(3D的世界观),并且你认为实体本身是恒定的,只是它的属性会随时间变化。这种讨论听起来可能过于抽象,所以让我们回到实际问题,回答在进行物联网用例的语义建模时可能会出现的一个简单问题。你的传感器记录了温度的变化情况——你会如何在你的语义模型中反映这一点?应该将其建模为一个由传感器在特定时间戳生成的事件,还是温度实体值属性的变化?这取决于你想用模型回答的问题:前者如果是为了维护你的传感器,而如果温度本身才是真正重要的(例如,在你的智能家居应用中决定何时调整建筑通风),那么你可能会选择后者。
建模者们经常需要做出的一个选择与持续体(持久存在的实体)和发生体(时间相关的事件或过程)之间的区别有关。例如,员工属于持续体,而会议属于发生体。那么,你认为什么是疾病呢?当你想到下班后鼻子红红的状态,可能会说“发生体”。但是,像糖尿病这样的慢性病更适合被建模为持续体,是这样吗?
最后,你必须再做至少一个选择(是的,建模并不给你保持中立的权利):你的模型是应该尽可能准确地描述领域(那么你就是一个描述主义者),还是应该规定世界的规则(那么你就是一个规定主义者)?如果你对这个问题感到困惑,我会换一种方式来表达:作为一个描述主义者,你会认为你的模型不应该是完整的——然后你会让它能够与其他模型结合(这是更推荐的方式),否则你会认为不在模型中的事物,在现实中并不存在。这种讨论也被称为“开放世界 vs. 封闭世界”。
关系状况:说不清第1课:你需要根据自己的情况和需求来构建一个适合你的模型。
“没有人是一座孤岛,独自完整。
每个人都是大陆的一部分,
是整体的一部分。” —— 约翰·邓恩
如果没有展示你感兴趣的领域中的实体间关系,一个语义模型将不会带来很多附加值。因为这些关系为我们的数据提供了上下文。 正如我刚才在前一节中所描述的那样,传感器给我们提供的23°C本身没有意义,除非你解释为什么传感器在测量这些信息。语义模型为我们提供了给数据添加上下文的手段:如果我们知道感兴趣的实体具有哪些属性,以及它与其他实体之间的关系,那么我们就可以得出来处理这些数据的结论。
我们的世界充满了各种关系网。正确理解这些过程的关键在于你如何建模这些关系。任何一本好的UML指南都能更好教你关于关联、依赖、泛化、聚合和组合;关于关联的对称性和逆向性,以及其他相关知识。
相反,我想强调我们对关系的认识如何影响我们的运营。如果你遵循开放世界假设(如上所述),你就会知道你的模型可以与其他模型无缝对接——而且为了提供你组织的集成和全面视角,它或许还应该这样做。想象一下一个制造业公司,可以利用企业本体论创建一个跨质量保证、运营和其他团队的工厂健康和绩效的共享视图,而不是构建多个孤立的绩效视图。
此外,当你有一个领域关系的视觉表示时,你开始将任何对象或过程视为复杂系统中的一部分,而不是孤立存在的事物。
洪堡研究了我们星球上复杂的相互关系。详情请见链接。
18世纪的德国哲学家康德认为,知识是一个有系统的概念,在其中,个别事实必须是更广泛结构的组成部分;否则,它们将失去意义。为了说明这一点,他用建造房子来做比喻:在一块一块地砌砖之前,必须先在心中构想整个建筑的样子。这一思想启发了另一位德国科学家洪堡研究气候,并促使他发展了关于人类活动影响气候变化的理论。我非常推荐大家阅读名为Neo-cybernetics的Medium文章,以了解关于复杂系统现状的思考。
系统思维的概念虽然由来已久,但我们仍然经常忽视它们。然而,当将相互联系可视化时,进行影响分析就容易多了。
第2课:事物间的相互联系使得模拟值得投资。
别忘了咱们的观众哦,很重要!伊萨克·阿西莫夫的宇宙插图,由Lionardo Falaschini绘制
每次当你创建一个模型的时候,你应该记住它应该服务于这三种用户类型。
- 领域专家需要理解数据而无需具备技术背景;
- 技术方面的专家需要一个模型来指导开发;
- 机器需要一个模型来自动且一致地处理数据。
那就是为什么你的模型需要至少有两种形式:一种是视觉上的表现(例如由代码生成的UML图),另一种是文本形式的,并遵循特定格式和惯例(比如用OWL表示的本体)。
作为一台机器,你第三个角色,在这个时代变得更为重要,因为你能够利用人工智能驱动的“副驾”来回答你的问题。仅仅是你信息被机器访问和处理的可能性,就应该让你重新审视如何管理和维护知识库。实施“一切皆数据”的思维模式。你有一个自80年代以来的旧代码库?没关系,将你的代码库转化为AST树的图结构,然后人工智能助手会帮助你进行代码的现代化改造。你在JIRA中追踪软件需求。然后导出团队的速度历史数据,再运行蒙特卡洛模拟来预测未来能交付多少任务。
随着周围这么多的数据来源,对于适当的数据管理和AI增强来说,关键在于元数据管理。每个数据来源都应具备多种类型的元数据。
- 标签(描述性元数据)可以用于分类和搜索合适的数据;
- 数据组织的信息(例如列和类型)有助于正确访问数据;
- 谱系和历史记录可以用于治理;
- 最后,语义模型赋予数据上下文,不仅有助于更有效的搜索,还支持推理。
第3课:基于语义的模型允许AI辅助,这可以成为生产效率上的改变游戏规则的因素。
附注:请告诉我你的想法或评论。如果你真的非常喜欢这篇文章,别忘了你可以给这篇文章不止一个“赞”(虽然这样说有点奇怪,但这就是Medium的推广方式)。谢谢大家!
共同学习,写下你的评论
评论加载中...
作者其他优质文章