本文主要记录了我在学习《思维工程》(钱小一·著)这本书时的学习笔记,以及一些想法。
基于符号主义的方法,将人类的思维逻辑工程化,通过符号来描述人的认知过程,基于逻辑推理的智能模拟方法模拟人的智能行为
所有对人类智能表象的讨论,需要有机制层面的总结,所有机制层面的总结需要在工程上定义实现的模块。
如果我们认同意识或感知来源于某种信息,就把这个 信息创造意识和感受的地方 叫作意识流(Conscions Flow,CF)
在工程上,我们可以这样理解意识流,如果把人类大脑中流转的信息类比为食物,那么意识流就像日本寿司餐馆中的传送带,我们可以把人工智能系统中的其他子系统想象成是食客,他们会从传送带上拿走一些信息进行加工,同时也是信息的生产者,因为它们会把加工完的信息放回来。
我们意识到的的内容,会被记忆系统存储起来,然后会在特定条件下把这个信息放回到意识流中去创造回忆体验,这样我们就能对意识流进行反思了。
对意识流的反思 是思维工程的起点
仿生 AI 的方法论:对意识流中的信息生成关系的考察,基于生成关系猜想其背后信息处理的逻辑,重建其背后的逻辑。
如果一个被存储的信息放到了意识流中重新被意识到,就是回忆
回忆广义而言是联想,是利用结构信息描述的信息间的联系,在其中一个信息出现在意识流的时候,通过结构信息找到另外一个信息,并把它放入意识流。
把回忆归为两类:
遗忘是 信息强度 逐渐变弱最终从记忆中删除的过程
从人类身上我们能够看到这种机制的合理性和缺陷,因为如果一个信息经常被使用,经常被想起,那么它就能维持自己的关注度;反过来,一个信息的关注度会不断衰减,必定是因为它不经常被使用,不经常被想起,这样的信息往往就没有那么重要。
回忆障碍:信息缺乏被放到意识流的方式
意识流爆炸:在自由联系中,可以从意识流中拿走一个信息而放回多个信息,这样就会导致信息爆炸式的增长。如果不加以控制,意识流的信息流量很可能会在某些情形下突破系统可承载的量。
选择机制
选择机制的效果
感知但未被意识是一个假象,事实上感知的信息都被意识,只是意识的信息未必被处理。
我们把客观世界的信息拆解为概念和结构进行存储,因为概念和结构都是代表客观世界某个元素和结构的符号,所以我们把这种信息的存储方式称为符号化存储。
符号化存储:把客观事件的信息拆解为概念和结构进行存储
比如信息(爸爸 = 老王, 儿子 = 小王),其中老王是一个概念,小王是一个概念,而(爸爸 = , 女儿 = )就是描述这两个概念的结构信息。
人类的反应模式信息,无论多么复杂,拆解到底层都是一些条件——反应信息,条件和反应都是事件。我们预测归因用的是因果关系的知识,原因结果都是事件信息,其本身是事件关系层的信息;我们利用知识去转移目标,依赖的知识也是事件关系层的信息;我们对一个事件的情绪,能够转移到导致它的另外一个事件上,依赖的知识也是事件关系层的信息。
事件关系层:
认知过程:由有限的事件间关系的表象抽象归纳出事件类间的关系,事件类间的关系作为背后知识的猜想,在演绎中创造具体事件层的归因和预测,并在实践中增强或削弱一个猜想。
人类智能功能共有的运算特征:从具体的事件关系出发,创造出事件类关系,作为知识;然后在使用时,用此知识创造具体事件层关系。
抽象:从具体事件关系出发创造出事件类关系的过程
演绎:从事件类关系出发创造具体事件关系的过程
我们来看两个结构信息:(主语对象 = Mike,状态 = 感冒)和(主语对象 = 人,状态 = 生病)。我们能够发现,这是两个相同结构的信息,且第一个结构信息中的两个元素,分别是第二个结构信息两个元素的子类:Mike 是人的子类,感冒是生病的子类。
统辖关系:对于相同结构的两个信息,如果前者每个位置的概念,都是后者对应位置概念的子类,那么前者是后者的子类。把这两个信息之间的关系称为统辖关系。
统辖映射:对应位置子类概念和母类概念之间的对应称为统辖映射
统辖关系是我们对类人先天符号系统最主要的设定,是我们上面描述的人类主要智能活动的相关运算的核心逻辑依赖的唯一关系。
抽象:对于一个具体层的事件关系,我们用母类元素替换其中事件中元素的子类,就会生成一个事件类层的事件关系;生成事件关系的两个事件分别统辖原始事件关系中的两个事件;生成事件类的关系,作为背后的规律,统辖原始事件关系,作为表象。
演绎:对于事件类层关系中的某个事件 A,统辖一个具体事件 A*,我们能够建立起事件 A 中元素到事件 A*中元素的统辖映射。我们在事件类层关系的另一个事件 B 中找到统辖关系的母类,替换为对应的子类,生成事件 B*,那么事件 B*和事件 A* 继承了事件 B 和事件 A 之间的关系。
统辖关系定义了信息的母类子类关系:
结构信息是符号主义类人 AI 存储和运算的信息载体,是一切基础智能功能赖以实现的必需要素。
M 语言:为在 AI 上再现人类底层核心智能机制而创造的对先天语言信息表述的约定
一个概念和它的名称之间的关系:(概念 =,名称 =)
概念位置填写的就是此概念在先天语言中的概念 ID,名称位置填写是对应的某个名称
具体对象属性的表述:(具体对象 = ID1, 属性维度 = 属性)
比如:(具体对象 = Lucyc, 发色 = 红色)
具体对象属类的表述:(具体对象 = ID1, 属类 = )
比如:(具体对象 = Kittyc, 属类 = 猫)
具体事件区别于事件类,是 发生的事件
参与具体事件的对象,行为活动,时间空间一定是 具体 的
一般而言,系统会用一个具体 ID 作为构成事件结构信息的元素,然后用其他结构信息对此 ID 进行限制
比如:“早上年轻的猫吃了桌上的鱼”,严格的表述为(主语对象 = ID1, 行为 = IDa, 行为施与 = ID2, 事件 = IDt),其中(具体对象 = ID1, 属类 = 猫)(具体对象 = ID1, 年龄 = 年轻的)(具体对象 = ID2, 属类 = 鱼)(具体对象 = ID2, 空间相关对象 = ID3, 方位 = 上)(具体对象 = ID3, 属类 = 桌子)
表达策略:无论对于对象、行为、空间、时间都有一个具体的 ID,然后建立这个具体 ID 相关的属性和属类信息
事件类指的是 某一类的事件。
人类的感知总是以具体事件为起点,抽象功能可以从具体事件信息生成事件类信息;而演绎功能能够通过事件关系层信息,由事件类生成具体事件信息。
事件类在结构上和具体事件是一样的。
事件类规律是我们从具体事件信息抽象发现的服务认知和决策的信息,预测、归因、转移动机等都是以此类信息为依据进行的。
因果类事件关系分类
疑问的结构信息是在形成自然语言询问前后最后的信息形态。
疑问的来源是好奇点,好奇点和询问的结构信息拥有几乎相同的内容。
反应模式即在特定情境下或完成特定目标的训练完成的条件——反应信息
反应模式组织了人类的行为、思维、语言 行为的反应模式:从一开始针对某类任务的反应模式,在单次实践中创造了针对某个任务的反应模式,然后在多次实践中优化。
一个反应模式信息的信息单元是条件——执行,其中的条件自然是意识到的信息,或是“感知但未必被意识到的信息”。
组成:宏观行为——触发——条件——执行
反应模式总是隶属于某个宏观行为(思维/表达动机),只有一个宏观行为被激活,旗下的条件——反应信息才会处于预激活状态,思维开始在意识流、感知流中检测是否存在这些条件的子类信息,条件成立时就激活旗下的执行,而这个执行就有可能时另外一个宏观行为节点。
一个宏观行为节点包含的信息往往是诸多层级的:一个宏观行为节点直接包含了若干作为子节点的宏观行为节点,这些宏观行为节点又包含若干宏观行为节点,直到那些不可分解的基础行为(思维、表达)
宏观行为下定义的反应模式信息的实体是诸多条件——执行类型的信息
(检测条件 =,判断条件 1 =,判读条件 2 =,执行 1 =,执行 2 =)
(宏观行为=接待客人,反映模式=条件执行 1/条件执行 2/条件执行 3/条件执行 4/条件执行 5/条件执行 6) 条件执行 1=(执行 1=询问找谁) 条件执行 2=(检测条件=要找的人不在公司,执行 1=告知要找的人不在公司) 条件执行 3=(检测条件=要找的人在公司,执行 1=带客人到一个空的会议室) 条件执行 4=(检测条件=客人到会议室,执行 1=告知稍等,马上去叫要找的人) 条件执行 5=(检测条件=告知稍等,马上去叫要找的人,执行 1=去找要找的人) 条件执行 6=(检测条件=找到要找的人,执行 1=告知有人找他,执行 2=告知那人在哪)
实践反馈时反应模式沉淀的一个重要机制。宏观行为往往是带有目标的,一个宏观行为下往往有为实现目标的不同的反应模式。思维会在每次实践中削弱那些难以实现目标的反应模式强度。
在实践中考察所尝试的反应实现宏观行为的效果如何,从而增强或削弱抽象到母类后此反应模式的强度
在每次实践中记录某个人对某个反应模式的效果,若这个反应模式对这个对象有效,那么将这个反应模式与对象的标签相对应
对于人类,以先天语言编码的信息无法直接输出,所以无法作为个体间沟通的信息。 于是就产生了具有声音符号和图像符号的文字。我们把一个人类群体自然演化出的先天语言到声音图像符号的统一的映射约定叫作自然语言。
自然语言的本质:
逆转录:从先天语言编码的信息转化为自然语言编码的信息(意识流 -> 文字信息)
正转录:从自然语言编码的信息转化为先天语言编码的信息(文字信息 -> 意识流)
语法决定了人脑中由概念按照特定结构组织的结构信息如何表达
抽象:以两个结构信息和它们的某种关系为起点,生成对应的结构信息类以及之前关系的猜想
演绎:通过识别某个具体的结构信息 A 和结构信息类 A’的统辖关系建立结构信息组成元素的约束映射,根据约束映射,替换与此结构信息类有特定关系的另外一个结构信息类 B’中的母类元素为子类,生成具体层的结构信息 B 的过程
语法习得的本质运算是抽象,而自然语言正转录和逆转录的过程是演绎。
关键:建立具体语义结构到具体句子结构信息的映射
学习阶段
自然语言的共有特征:概念的指向,语境记忆,表达省略,意向表达
如果一个概念没有名称,就需要用其他方式去指向; 如果概念本身是一个结构信息,我们就可以通过组成结构信息的元素去指向这个概念; 如果概念存在于一个结构信息中,我们就能用结构信息去指向这个概念; 如果用以指向一个概念的元素自己也没有名称,我们就需要先设法指向这个元素。
人类在听一个人的讲话、读一本书,或是自己在讲话时,都会在语言处理过程中保存特定的信息; 最短期的记忆比如最近谈及的对象、属性、事件、事件规律等等,这些信息让我们创造表达的省略,读懂对方表达中的省略; 较为长期的记忆比如一大段表达中每个信息被重复的次数,这让我们知晓逻辑不那么清晰的重点; 表达的信息之间的相互关系,能让 AI 听到的不再是局部的碎片化的信息,让 AI 能够带有整体感受地复述一大段表达。
只要省略后的句子有足够的特征归属到一个语义结构,智能体就能找到结构中缺失信息的位置而后所需的信息类型,然后去语境中寻找是否有此类型的信息
人类的表达很少是精确的,无论是语法上还是逻辑上;人类也极少会通过精确的定义去掌握某一词汇。
相比于严格的定义,对于很多概念,人类会通过他人的表达,生成关于这个词的意向信息。
抽象概念的习得
表达动机就是我们通过表达要实现的目的,包括了传递某个信息,向对方索取某个信息,改变对方的动机,改变对方的情绪态度。为实现一个目标,我们会有表达策略。一个表达策略的执行会包含很多表达单元信息。
陈述一个信息是最基础的表达单元信息
三种方式:
陈述一个信息的表达单元信息表述为:(信息主体 =,表达类型 = 陈述)
用概念所在的结构信息去指向这个概念
指向一个信息的表达单元信息表述为:(主体信息 =,表达类型 = 指向,指向位置 =)
疑问的表达单元信息:(主体信息 =,表达类型 = 疑问,疑问点 =)
确认的表达单元信息:(主体信息 =,表达类型 = 确认,确认点 =,确认内容 =)
祈使的表达信息单元包含了不同的情绪,有不带情绪的要求、命令、恳求。对应回应表达信息单元有同意和拒绝。
人类处理输入的语言,无论是一句话表达,还是成段的表达,还是一本书的信息,都是以每个单句作为信息单元逐句处理的。处理的过程会维护一段语境记忆,以应对表达中的省略,形成对表达信息的主要逻辑,以及各种信息之间关系的提取。
主要问题:
在语境变量中依次考察每个具体对象是否是男人/女人/动物的子类,最先找到的具体对象为用来替换代词的对象
对于用对象类对应的词汇指向具体对象,与代词类似,默认指代语境中最近的对象类的子类
通过句子结构对应表达信息单元来判断到底指向的是具体对象还是对象类
当 AI 识别到句子中一个属性概念的时候,会先查看它的语境中已有属性概念的意向距离,如果意向很接近,我们就会用语境中已有的属性概念替代它;或者去长期记忆中寻找那些频次强度足够高的属性。
如果存在嵌套的信息,比如一个结构信息,或是一个属性层的信息如对象、属性、时间、地点的从句指向。这个时候我们就需要先识别到嵌套信息的句子片段,识别结构,找到结构信息的 ID,或是指向的 ID,用其替换句子片段,这样更上层的结构才会显现出来。
循环执行主体逻辑:每次执行输入的句子被提取转化了部分信息,对应的句子片段被替换为所指向的概念 ID,然后输出剩下的部分继续同样的运算
在 语境记忆 中保存最近出现的元素,包括最近表达中的对象、属性、实践、地点、相对关系
程序上,当文本中出现了代词、对象类名称、属性名称、时间指向、地点指向的时候,就会去语境中寻找名称对应的概念类的子类;当文本种出现了关系名称,就去语境中寻找出现过的相对关系信息
语境强度 体现了一个信息在表达中被重复的次数以及被关联的次数,这个强度反映了信息在整个表达中的重要程度。
每次正转录获得事件的考察和语境中相关的事件的因果关系,并在语境中保存这个因果关系
人类身上存在严格逻辑的能力,也存在不严格逻辑的能力。在严格逻辑中,每个概念都力求像数学定义那样精确完整,所有运算都有明确定义域,都有确定的输出,所有的概念的语言表达在词性的使用、语法结构上都是精确的;在不严格逻辑中,概念的定义只求“意向”正确,运算可以利用不精确的“意向”信息,概念的语言表达可以忽略词性,在语法结构上随意,追求“刚好足够指向,不引起误解就好”。
我们会发现对于大部分人而言,严格逻辑在思维中的比例是极低的:我们掌握的大部分词汇对应的概念,我们从来没有学习过其精准的定义;尽管概念没有被精确定义过,但却不影响我们的日常思维和沟通;我们的逻辑思维较大比例是建立在意向层的运算;即使表达是不严格、不精确的,我们也能从不严格、不精确的表达中获得语义。
不严格逻辑中,概念的定义只求“意向”正确,运算可以利用不精确的“意向”指向
用另外一个概念不精确地描述定义目标概念,形成了意向印象,每个意向的印象会在每次被指向时累积频次逐渐凸显
场景描述:以空间描述为核心描述一个场景,包含每个对象在空间中的位置,相对位置
事件描述:以某个时段或活动作为大的事件发生的背景描述期间发生的事件
对象描述:以某个对象为核心描述这个对象在某个时间的属性、行为、活动等信息
事件评论:以一事件为核心表达这个事件包含的内容,和事件的原因、后果、反应其他的事件
意识流中足够强度的概念和自然语言符号信息会自发生对应关系
以先天语法映射为起点进行语法生长
先天语法映射:通过已有的语法猜想对方不完全吻合的表达,实现表达信息单元(语义)到句子的对应,从而抽象出新语法映射
语法生长:在这个表达方式重复出现时,这个表达方式的语法映射的频次强度就会不断增强
人类的语法有自然分化的倾向。在人类自然语言形成的过程中,有一个规律叫作“听懂即可”。只要语境足够强,表达就会随意和省略。
= 语法的形成是抽象的过程 = 语言的输入输出是演绎的过程
语法生长机制能用来学习分化的语法
对不同类型的词汇考察人类听到询问时可能会有的解释回答
词义(概念)的学习可能获得两类信息:
用另外一个概念不精确地描述定义目标概念,实际的效果是形成了一个概念拥有意向的印象,多次印象冲击会让概念应有的意向凸显
其次,作为每个独立个体,保存的概念意向就是这种不精确形式,有点像是一个总的比重在许多意向上的分布,只是我们会把强度高的意向视为这个概念的定义意向。
表达策略:实现表达动机的表达相关的反应模式
表达动机是一个宏观节点,旗下有若干“触发——条件——执行”的反应模式信息
(检测意识流中是否出现触发信息的子类,生成统辖映射,然后演绎出具体的条件——执行,如果条件通过判断,则点亮具体的执行,而执行的可能又是一个宏观节点)
驱动一个宏观行为执行的过程大致如下:一个具体的宏观行为 IDA’ 被点亮,在反应模式的宏观行为域中进行统辖搜索,找到抽象的宏观行为 IDA,创造约束映射,演绎出这个宏观行为旗下全部的“宏观行为——触发——条件——执行”,注意只演绎一层,也就是只演绎宏观行为 IDA 的这些信息单元。这样反应模式驱动程序会在意识流中统辖检测每个信息是否是触发信息的子类;一旦满足触发就判断对应的条件,判断条件是个统辖搜索的过程,在记忆中统辖搜索子类,条件通过判断就触发执行,此时如果执行的是一个可执行的基础行为,就纳入执行。如果又是一个宏观行为,则回到前面的起点,继续上面的过程。
当我们观察其他人的对话时,我们能够意识到某个对话者的表达动机,能够识别其中每个语境下被执行的表达目标和表达信息单元,通过自发的抽象,习得反应模式
按询问类型分类:
询问的事件或知识若在记忆中不存在,则会转化为一个好奇点
好奇点来源:
不同类型的大段表达、每类的信息组织逻辑、每种类型的构成元素同时是另外一种类型的表达的核心元素,因此可以嵌套组织大量信息的表达
AI 在组织大段表达的时候,需要先在思维中梳理要表达的信息,包括:要表达的主要信息,每个主要信息之间的关系;决定要用什么样的信息支持主要信息的表达,而这些信息又被怎样的信息支持,从而会出现不同类型核心内容表达的嵌套;而最终所有表达都划归到有反应模式定义的某种类型的大段表达上。
每类以某个元素为核心的表达目标都有对应的表达框架,大篇幅表达的组织需要把记忆中的信息组织到既定的表达框架中
构建场景/对象信息 -> 表达反应模式生成表达
功能:
当意识流中出现一个具体事件信息时,我们必须找到统辖它的母类事件,然后让子类事件继承母类所在的知识
若统辖关系不是显在的,就需要把信息展开一层
在统辖关系下建立子类对母类的约束映射,用约束映射中的子类替代母类元素写入另一个事件
一般过程:
抽象:通过母类元素替换具体层知识的子类元素生成较为抽象的知识
归纳:由至少两个表象层的信息为起点,展开这些信息,通过寻找这些信息的结构中每个位置元素的最小母类,替换任意信息中的子类来生成知识
可以利用抽象过程生成的知识,找回生成它的具体案例信息来为归纳提供素材
在使用知识进行演绎,比如预测、归因、解释,一些知识的可信度会增强,一些知识会被修正,而另外一些知识会被认为是错误的,这个过程我们称之为演绎反馈。
演绎反馈:在使用知识的过程中修正细化知识
最小母类原则:如果子类在继承知识时,存在不同母类出现相互矛盾的知识,这是优先继承较小母类的知识。
事件目标:人类对事件的发生和不发生,即存事件的终止和维持由自己的意志和目标
人类对一个事件目标存有意志却不知如何实现时候,如何利用即存的因果知识转移事件目标到一个能力可及事件目标的认知过程
分类:
我们之所以要利用知识转移一个事件目标,去寻找实现它的方式,是因为这个目标并不处在我们能力可及的范围内,所以意识到事件目标不是能力可及是我们转移它的原因。
判断事件是否发生的策略:人类会利用目标事件因果层的规律,不断转移事件发生好奇点,直到转移到直接感知可及事件
如果能够知晓原因事件和导致的结果事件是否发生,我们就能对目标事件 A 的发生与否形成认知
利用事件结果判断事件是否发生的流程:
在特定条件下通过时点/时序规律,判断具体事件是否发生
我们可以利用事件间的时长规律排除事件是否发生: 假设目标事件发生,我们可以利用其中一个规律观测到的时点推知另一个事件发生的可能的时间范围。
继承知识的方式:
AI 询问的闭环:AI 合理地形成好奇点 -> 找到合适的人进行询问 -> 通过询问获得需要的知识 -> 综合许多人的回答决定采纳哪个版本的答案 -> 通过自发的抽象累积每类人熟悉或是不熟悉什么领域,每个对象是否是严谨的回答者
为了找到合适的人进行询问,AI 需要累积类似(对象类 =,熟悉信息类 =)这样的信息
AI 会认为相同回答频次超过阈值的答案是足够可信的,将其作为公共知识
发现新知识的方式:
统计认知的标准模式:
人类自发的抽象创造了一种统计认知,在自发的抽象中,人类生成事件类层面规律的知识,而后续的演绎创造的反哺,能弱化、删除不对的猜想,保留、增强正确的具有解释力的猜想。
如果一个因果链条中很多事件是不可直接感知的,也就是说我们只能直接感知到因果链条中部分的事件节点,就无法直接形成事件背后机制的视觉。此时间接感知不是马上可以用的,因为间接感知是一个证明过程,需要先有事件是否发生,状态是否存在的猜想,再在假设目标事件发生或不发生,状态存在或不存在的情况下,向上或向下考察因果链条,找到因果链条上可直接感知的事件节点来判断目标事件是否发生。
利用已有的知识进行因果链条的桥接,来发现形成事件背后的真实机制
我们会常识用已有的知识去桥接感知到相关的事件,形成对事件 A 和事件 B 的因果链条的猜想,对于无法直接感知到的事件,就需要去间接感知
认知系统在认知层面寻找如何实现一个目标,而情绪系统则利用如何实现目标的知识转移动机
感受是在意识流中出现的信息,创造情绪变量对应各种感受
第一类经验效用:来自个体对全局情绪的倾向(事件的全局情绪改变印象)
第二类经验效用:来自个体对某种感受的倾向(事件——感受印象)
指令效用:有自然选择的结果
衍生效用:来自个体决策后可能导致的结果
构建根据事件效用决定的总情绪能量模型,模拟在效用发生变化时或预期的概率发生变化时人类会有的情绪反应
可以通过一个参数控制情绪能量转化为情绪感受的能力
情绪变量的添加:
全局情绪的改变:
因为指向性情绪来源于特征,自发的抽象会把具体对象的特征,抽象到母类对象,从而形成对母类对象的指向性情绪,因为演绎会让子类对象继承母类的属性,从而继承了对应这些属性的指向性情绪。
关注度时指向性情绪中非常特殊的一类指向性信息
一个信息的关注度决定了:
关注度被以下因素决定:
从自然语言表达中抽象出数学运算模型,通过演绎生成结论