首页 理论 架构 工程 文档 白皮书 著作 研究 案例 下载 博客 关于 开始使用 →

第4章 从人工智能到认知工程

第4章 从人工智能到认知工程

人工智能的发展,长期以来主要围绕一个问题展开:

如何让机器完成原本需要人来完成的任务?

这个问题推动了机器学习、计算机视觉、自然语言处理、机器人控制、专家系统以及各种人工智能技术的发展。

但是,当人工智能从“完成任务”进一步走向“模拟人”时,一个更加基础的问题开始出现:

机器到底是在模拟人的什么?

如果只是让机器完成一个任务,那么可以直接寻找任务的输入、输出和控制方法。

例如:

输入图像
↓
识别鸡蛋
↓
抓取鸡蛋

但如果目标是:

模拟人的感知与认知过程。

那么问题就完全不同了。

机器不仅需要知道“鸡蛋是什么”,还需要知道:

我看到了什么?
我摸到了什么?
这个对象有什么属性?
这些属性正在怎样变化?
这些变化之间有什么关系?
当前状态意味着什么?
当前任务是什么?
什么行为更加合适?
行为以后发生了什么?
新的变化是否改变了原来的认知?

这意味着人工智能需要从“任务实现”进一步进入:

认知过程工程。

这就是本书提出“认知工程”的原因。


4.1 人工智能解决的是“能力”,认知工程研究的是“过程”

传统人工智能通常强调能力。

例如:

图像识别能力
语音识别能力
文本生成能力
路径规划能力
目标检测能力
机械控制能力

这些能力可以分别设计。

例如一个机器人可以拥有:

视觉模块
+
语音模块
+
运动模块
+
导航模块

于是形成一个具有多种能力的机器人。

但是:

多个能力的集合,并不自动形成认知。

一个机器人能够识别鸡蛋:

Object = Egg

并不意味着它理解鸡蛋。

一个机器人能够检测压力:

Pressure = 2N

也不意味着它知道:

这个压力对于当前对象是否合适。

一个机器人能够执行抓取:

Grip()

也不意味着它能够根据当前状态调整抓取。

因此:

能力
≠
认知

能力解决:

系统能做什么。

认知工程进一步研究:

系统为什么这样理解、如何形成当前判断,以及判断如何随着环境变化而变化。


4.2 从“结果”转向“过程”

传统人工智能研究中,一个非常重要的思想是:

只要结果正确,内部过程可以被隐藏。

例如:

输入:
一张图片

输出:
鸡蛋

只要识别准确,就可以认为任务完成。

但是在认知工程中,这远远不够。

我们需要知道:

输入
↓
发现哪些元素
↓
形成什么对象
↓
提取哪些属性
↓
观察到哪些状态
↓
建立了哪些关系
↓
调用了什么经验
↓
形成了什么匹配
↓
为什么产生当前认知

因此,本书研究的重点从:

Input → Output

转向:

Input
 ↓
Perception
 ↓
Element
 ↓
Object
 ↓
Attribute
 ↓
State
 ↓
Relation
 ↓
Matching
 ↓
Cognition
 ↓
Decision
 ↓
Behavior
 ↓
Feedback

这里的每一个过程都必须能够被解释。

这就是认知工程的第一个基本特征:

认知工程不仅关注结果,还关注结果形成的过程。


4.3 从“模型”转向“认知结构”

人工智能系统大量使用模型。

例如:

分类模型
预测模型
生成模型
检测模型
控制模型

模型通常负责:

输入
↓
计算
↓
输出

但人的认知并不是一个单独的数学函数。

当一个人看到一个杯子时,他所面对的不是一个简单的:

Cup = 0.97

而是一个复杂的认知结构:

对象:
杯子

属性:
形状
颜色
大小
材质
重量

状态:
静止
空
有水
正在被拿起

关系:
在桌子上
靠近手
属于当前环境

经验:
过去使用过类似杯子

目标:
喝水

行为:
伸手
抓取
移动

因此,认知工程需要建立的不是单一模型,而是:

认知结构。

认知结构可以由:

Element
Object
Attribute
State
Relation
Experience
Memory
Goal
Matching

等共同组成。

这也是本书后面建立 Cognitive Class 和 Cognitive Method 的理论基础。


4.4 从静态对象转向动态对象

传统人工智能中的对象,经常被处理成一个相对固定的标签。

例如:

Object = Egg

但现实世界中的对象不是静态的。

鸡蛋可能:

静止
↓
被接触
↓
被推动
↓
被抓取
↓
发生旋转
↓
产生滑移
↓
发生形变
↓
破裂

因此,对象本身具有动态状态。

可以表示为:

Object(t)

而对象属性也会随着时间变化:

Attribute(t)

例如:

Pressure(t)
Position(t)
Velocity(t)
Contact(t)
Slip(t)
Damage(t)

于是:

对象
+
属性
+
时间
+
变化

才构成真实环境中的动态对象。

认知工程必须处理这种动态性。


4.5 从固定规则转向动态匹配

传统专家系统经常采用:

IF condition
THEN action

例如:

IF object = egg
THEN grip_pressure = 1.5N

这种方法在环境稳定的时候可能有效。

但现实环境不是固定的。

例如:

鸡蛋 A
重量 = 50g
摩擦 = 高

和:

鸡蛋 B
重量 = 70g
摩擦 = 低

虽然都属于:

Egg

但抓取条件并不相同。

因此不能简单地:

Egg → Fixed Action

而应该:

Object
+
Current Attributes
+
Current State
+
Current Environment
+
Current Goal
↓
Dynamic Matching
↓
Current Cognition
↓
Current Action

这意味着:

认知工程不是寻找一个永久正确的规则,而是寻找当前条件下最合适的匹配。


4.6 从“数据量”转向“数据关系”

这是认知工程与单纯大数据方法的重要区别之一。

当机器人面对现实世界时,传感器可以产生极其庞大的数据。

例如:

视觉:
每秒大量图像信息

触觉:
大量压力点

运动:
大量位置与速度数据

声音:
连续波形

温度:
连续变化

如果把所有数据都直接保存,然后依靠大量测试寻找正确行为,那么数据规模会迅速膨胀。

于是系统可能变成:

大量数据
↓
大量测试
↓
大量样本
↓
寻找正确动作

这种方法可以解决一些问题,但存在一个根本缺陷:

它容易把认知问题转化为数据搜索问题。

本书提出另一种方向:

数据
↓
元素
↓
属性
↓
状态
↓
关系
↓
动态变化
↓
匹配

重点不再是:

“需要多少数据?”

而是:

“数据之间形成了什么关系?”

例如抓取鸡蛋。

与其记录数百万次:

压力 1.1N → 动作 A
压力 1.2N → 动作 B
压力 1.3N → 动作 C
...

不如建立:

压力 ↑
+
滑移 ↑
+
任务 = 保持完整

从而得到一个动态认知关系:

当前抓取稳定性下降

然后调整行为。

这就是从:

数据量驱动

向:

关系驱动

转变。


4.7 从不断测试转向实时认知

机器人系统常见的一种工程思路是:

设计动作
↓
测试
↓
失败
↓
调整参数
↓
再次测试
↓
再次调整

这种方式本身并没有错误。

工程测试当然是必要的。

问题在于:

如果所有环境变化都依赖大量预先测试,那么系统很难覆盖现实世界的无限变化。

现实中的对象并不完全重复。

机器人面对的可能是:

不同鸡蛋
不同重量
不同摩擦
不同温度
不同手指材料
不同接触角度
不同速度
不同目标

因此不可能为所有情况建立一个静态测试表。

认知工程的方向则不同:

测试
不是最终认知

测试
用于形成经验

经验
进入认知系统

实时感知
不断更新当前状态

当前状态
不断重新匹配

于是:

历史经验
+
当前感知
+
当前状态
+
当前目标
↓
实时认知

这样,历史测试不再承担所有决策责任。

它只是认知的一部分。


4.8 机器人抓取鸡蛋:从控制问题转向认知问题

我们可以重新观察一个非常简单的动作:

机器人抓取鸡蛋。

传统控制思路可能是:

目标:
抓住鸡蛋

参数:
压力 = P
速度 = V
位置 = X

执行:
Grip()

认知工程则会问:

当前对象是什么?
↓
对象有什么属性?
↓
当前接触状态是什么?
↓
压力如何变化?
↓
摩擦如何变化?
↓
是否发生滑移?
↓
对象是否发生形变?
↓
当前任务是什么?
↓
哪个状态更加安全?

于是问题变成:

如何通过动态匹配,在完成任务的同时,使对象受损风险尽可能低?

可以表示为:

Task Completion
+
Stability
+
Object Protection

并进一步形成:

Damage → MIN

这里的“最小受损值”不是一个固定数字。

它必须根据当前对象状态不断变化。

因此:

Optimal Grip
≠
Fixed Pressure

而是:

Optimal Grip
=
Dynamic Matching

这就是本书后面“最小受损匹配”理论的工程来源。


4.9 认知工程不是替代人工智能,而是重新组织人工智能

提出认知工程,并不是要否定人工智能。

相反,人工智能仍然可以作为能力层。

例如:

视觉模型
语音模型
预测模型
控制模型

都可以成为认知系统中的工具。

但这些工具不应该直接等于认知。

可以把系统理解成:

                 认知工程
                     │
        ┌────────────┼────────────┐
        ↓            ↓            ↓
      感知能力      推理能力      行为能力
        │            │            │
      模型/算法     模型/算法     控制/算法
        └────────────┼────────────┘
                     ↓
                 认知结构
                     ↓
                 动态匹配
                     ↓
                  个体认知

因此:

人工智能提供能力,认知工程组织能力。

这两者不是互相替代的关系。


4.10 从“人工智能系统”到“认知系统”

传统人工智能系统可以简单表示为:

Input
↓
AI Model
↓
Output

认知系统则需要进一步扩展:

Environment
↓
Perception
↓
Elements
↓
Objects
↓
Attributes
↓
States
↓
Relations
↓
Dynamic Matching
↓
Cognition
↓
Decision
↓
Behavior
↓
Feedback
↓
Memory / Experience Update
↓
New Cognition

这意味着系统内部必须能够保存:

当前是什么
过去是什么
发生了什么变化
为什么发生变化
当前如何理解
下一步可能怎样
采取行为以后发生了什么

所以认知系统实际上是一个:

动态状态系统。

而不是简单的:

输入—输出机器。


4.11 认知工程中的“个体”

到这里,“个体认知”开始真正进入系统。

假设两个机器人面对完全相同的对象。

它们可能拥有:

相同感知
相同对象
相同属性
相同当前状态

但是,如果它们拥有不同的:

经验
记忆
先验
目标
权重
历史反馈

那么最终认知仍然可能不同。

例如:

机器人 A
过去经常遇到滑移
→ 对滑移更加敏感

机器人 B
过去很少遇到滑移
→ 对滑移敏感度较低

因此:

相同环境
+
不同个体状态
↓
不同动态匹配
↓
不同认知

这就是后面“个体认知理论”的基础。

所以认知工程不是建立一个:

所有机器人完全相同的统一大脑。

而是允许:

Group Knowledge
+
Individual Experience
+
Current Perception

共同形成当前认知。


4.12 认知工程的基本层次

经过前面的分析,可以初步建立认知工程的层次结构。

第一层:环境

Environment

系统之外的现实世界。


第二层:感觉

Sense

视觉、听觉、触觉、压力、温度等。


第三层:感知

Perception

将感觉转化为可处理的信息。


第四层:元素

Element

形成基本信息单元。


第五层:对象

Object

对相关元素进行组织。


第六层:属性

Attribute

描述对象特征。


第七层:状态

State

描述对象和环境当前所处状态。


第八层:关系

Relation

描述元素、对象、属性和状态之间的关系。


第九层:动态匹配

Matching

根据当前状态持续比较和组合信息。


第十层:认知

Cognition

形成当前理解。


第十一层:决策

Decision

选择行为方向。


第十二层:行为

Behavior

改变环境。


第十三层:反馈

Feedback

产生新的感知。

最终形成:

Environment
      ↓
    Sense
      ↓
 Perception
      ↓
   Element
      ↓
    Object
      ↓
   Attribute
      ↓
     State
      ↓
   Relation
      ↓
   Matching
      ↓
  Cognition
      ↓
   Decision
      ↓
   Behavior
      ↓
  Feedback
      ↓
 Perception

这就是认知工程的基本闭环。


4.13 从认知理论走向工程实现

如果认知理论只能描述:

人很复杂。

那么它仍然不是工程理论。

真正的理论工程必须继续回答:

对象如何定义?
属性如何定义?
状态如何保存?
关系如何表达?
动态变化如何记录?
匹配如何计算?
权重如何变化?
认知如何形成?
决策如何调用?
经验如何保存?
反馈如何进入系统?

因此,本书后续章节必须逐步完成:

概念
↓
定义
↓
结构
↓
关系
↓
规则
↓
算法
↓
Method
↓
Class
↓
Engine

这也是“理论工程”四个字真正的含义。


4.14 本章核心结论

本章并不是要重新定义人工智能,而是要确定一个新的研究方向:

人工智能关注机器能力,认知工程关注能力如何组织成类似人的感知、认知、决策和行为过程。

因此:

人工智能
=
能力

认知工程
=
认知过程的工程化

进一步:

AI Model
→
提供计算能力

Cognitive Structure
→
组织信息

Dynamic Matching
→
形成当前状态判断

Individual Cognition
→
形成个体理解

Decision
→
产生选择

Behavior
→
改变环境

Feedback
→
更新下一轮认知

最终,本书要解决的不是:

怎样让机器测试更多次,直到找到一个看起来正确的动作。

而是:

怎样让机器能够根据当前感知到的动态状态,结合对象属性、环境变化、历史经验和当前目标,不断重新形成匹配,并据此产生适合当前状态的认知与行为。

这才是从人工智能走向认知工程的核心转变。

Leave a Reply

Your email address will not be published. Required fields are marked *