第2章 人的感知与机器感知
上一章确定了本书的研究起点:如果希望研究模拟人的感知与认知,就不能直接从“智能结果”出发,而应该从人的感觉、感知以及感知信息如何进入认知开始。
本章进一步讨论一个基础问题:
人的感知与机器感知究竟有什么区别?
这个问题看起来简单,但它实际上决定了后面整个认知工程体系的结构。
如果把机器感知理解成“传感器采集数据”,那么后面的系统很容易继续沿着传统的数据处理路线发展:
传感器
↓
数据
↓
算法
↓
识别
↓
控制
而本书研究的方向不同。
本书需要研究的是:
人的感觉
↓
人的感知
↓
感知元素
↓
对象
↓
属性
↓
状态
↓
认知匹配
因此,机器感知不能仅仅是“获取数据”,而应该成为机器认知的基础。
2.1 人的感知不是单纯的信息输入
在工程系统中,我们经常把传感器理解为输入设备。
例如:
摄像头 → 图像
麦克风 → 声音
压力传感器 → 压力
温度传感器 → 温度
位置传感器 → 坐标
这种表示方式对于工程实现非常重要。
但是,如果研究人的感知,仅仅使用“输入”这个概念是不够的。
因为人在看到一个物体的时候,并不是简单地接收到一组像素。
人在视觉过程中会逐渐形成:
这是一个物体
它在那里
它正在移动
它距离我很近
它可能可以被拿起来
它可能比较重
它可能容易损坏
也就是说:
感觉提供信息,感知则开始形成信息之间的组织。
因此,可以进行一个基础区分:
感觉
=
获得变化
感知
=
组织感觉变化
认知
=
对组织后的信息进行匹配、判断和形成认识
这三者不是完全相同的概念。
2.2 感觉与感知的区别
“感觉”和“感知”在日常语言中经常混用,但在本书的工程理论中,需要进行区分。
感觉
感觉首先面对的是变化。
例如:
光变强
声音变大
压力增加
温度升高
位置发生变化
速度发生变化
这些首先属于感觉层面的变化。
可以表示为:
S(t)
其中:
S表示某一种感觉变量;t表示时间。
例如:
Pressure(t)
Temperature(t)
Light(t)
Sound(t)
Position(t)
这些都是随着时间变化的感觉数据。
但是,单独一个:
Pressure = 2.1
并不能说明机器已经知道发生了什么。
它只是说明:
当前某个感觉变量的数值为 2.1。
2.3 感知开始组织感觉
感知进一步回答:
这个感觉变化属于什么?
例如机器人检测到压力变化:
Pressure
2.0
2.1
2.2
2.3
单独看,它只是一组数字。
如果同时发现:
位置没有明显变化
接触面积增加
摩擦力增加
滑移速度下降
那么这些数据开始表现出某种共同结构。
机器可以进一步形成:
对象正在被接触
如果继续发现:
压力增加
滑移下降
位置稳定
形变没有明显增加
那么机器可以进一步形成:
对象正在稳定抓取
因此:
感觉
↓
感觉变化
↓
多个感觉之间的关系
↓
感知状态
这就是从感觉走向感知的重要一步。
2.4 人的感知具有多感觉协同特征
人在认识一个对象时,很少只依靠一种感觉。
例如拿一个鸡蛋。
视觉首先提供:
形状
大小
颜色
位置
手部触觉又提供:
压力
接触
摩擦
温度
表面状态
动作过程又提供:
移动
滑移
阻力
稳定性
这些信息并不是完全独立的。
它们会共同参与人的判断。
可以表示为:
视觉
├── 形状
├── 大小
└── 位置
触觉
├── 压力
├── 摩擦
└── 接触
运动感觉
├── 位移
├── 速度
└── 稳定性
然后:
视觉
+
触觉
+
运动
↓
综合感知
因此,机器感知系统不能只考虑:
“我有没有一个传感器能够检测这个属性?”
还必须考虑:
不同感觉之间如何形成共同的感知对象。
这将直接影响后面“感知元素”和“对象”的定义。
2.5 人的感知是连续变化的
传统计算机程序非常容易采用离散判断:
if pressure > 10:
danger = true
这种方法在某些简单工程场景中当然有效。
但是人的感知并不是简单的二值开关。
例如一个人拿东西时,不会等到:
滑移 = true
以后才开始调整。
人在滑移真正发生之前,可能已经感觉到:
接触变化
摩擦变化
压力变化
微小移动
方向变化
这些微小变化可能已经改变了人的认知。
因此:
感知应该被理解为连续变化过程,而不是一组孤立的真假判断。
可以表示为:
t1 → 状态1
t2 → 状态2
t3 → 状态3
t4 → 状态4
...
进一步:
State(t)
成为一个动态状态。
2.6 机器感知的优势
研究人的感知,并不意味着机器必须完全复制人的生物感官。
机器具有自己独特的感知优势。
例如机器可以直接获得:
压力:2.137N
温度:36.82℃
位置:X,Y,Z
速度:0.024m/s
加速度:……
人的感觉通常没有如此精确的数值表达。
机器还可以同时记录大量变量:
时间
位置
压力
摩擦
速度
加速度
温度
声音
图像
因此,机器感知可以拥有非常高的:
测量精度、时间精度和数据记录能力。
这意味着我们并不需要简单地复制人的感知器官。
更合理的目标是:
研究人的感知机制,并使用机器可以获得的数据建立工程化感知模型。
2.7 机器感知的局限
机器拥有大量传感器,并不意味着机器已经具有认知。
例如机器人获得:
压力 = 2.1
摩擦 = 0.8
位置 = 100
速度 = 0.02
这些数据如果只是被保存下来,机器仍然不知道:
是什么对象?
对象处于什么状态?
这些数据之间有什么关系?
当前行为是否合适?
下一步应该怎么办?
所以:
传感器数据不是认知。
同样:
大量数据也不自动等于认知能力。
这是本书需要特别强调的工程原则。
2.8 从传感器数据到感知元素
那么机器如何从感觉进入认知?
本书采用“元素”作为中间层。
例如传感器获得:
压力传感器:
2.1N
经过工程处理后,可以形成:
元素:
名称:压力
数值:2.1
单位:N
时间:t
来源:触觉
这就不再只是一个孤立数字。
它成为一个具有结构的信息单元。
进一步:
压力元素
摩擦元素
滑移元素
形变元素
位置元素
共同形成:
感知元素集合
于是:
传感器数据
↓
感知元素
成为机器感知的重要工程转换。
2.9 感知元素必须具有状态
如果元素只有:
name
value
仍然不足以表达动态感知。
例如压力:
2.1
和:
压力正在快速增加
在认知意义上完全不同。
因此,一个感知元素至少应该能够表达:
Element
├── name
├── value
├── unit
├── state
├── time
├── change
└── source
例如:
Pressure
value = 2.1
unit = N
state = increasing
time = t
change = +0.3
source = tactile
这意味着:
机器感知不能只记录当前值,还需要记录变化。
这正是后面动态属性理论的基础。
2.10 感知对象的形成
多个感知元素之间发生关联后,机器开始形成对象。
例如:
视觉:
椭圆
白色
小型
位置 X,Y
触觉:
光滑
低压力
较高摩擦
运动:
轻微移动
这些元素具有共同的空间和时间关系。
于是机器可以形成:
Object A
并把这些元素归属于这个对象:
Object A
├── Shape
├── Color
├── Size
├── Position
├── Pressure
├── Friction
└── Motion
这一步非常重要。
因为机器从这里开始,不再面对大量互相孤立的数据,而开始面对:
具有属性的对象。
因此,本书后续才需要专门研究:
对象
属性
关系
状态
2.11 人的感知也受到已有认知影响
人的感知并不是完全独立于过去经验的。
例如一个人在黑暗环境中看到一个模糊轮廓。
如果他过去经常在这个地方看到一只猫,他可能首先认为:
猫
另一个人如果没有这种经验,可能认为:
不确定
也就是说,相同甚至接近的感觉输入可能产生不同的感知解释。
这说明:
当前感觉
+
过去经验
↓
当前感知
这里已经开始出现“个体认知”的影子。
但是按照本书的大纲,我们现在还不展开个体认知理论。
当前只需要确定一个基础事实:
人的感知并不是完全孤立于已有经验的。
后面的个体认知理论会进一步研究这一问题。
2.12 感知不是一次完成,而是不断更新
人观察一个对象时,认知不会在第一次看到它之后永久固定。
例如:
第一次:
看到物体
↓
可能是鸡蛋
接触以后:
表面光滑
↓
认知增强
拿起来以后:
重量较轻
↓
认知进一步增强
如果出现滑移:
滑移增加
↓
重新调整认知
如果压力增加导致形变:
形变增加
↓
认知再次变化
所以:
t1 感知
↓
t2 新感知
↓
t3 新感知
↓
t4 新感知
认知系统必须允许:
新的感觉不断修正原来的感知状态。
这也是动态认知的基础。
2.13 机器感知应该从“采集系统”发展为“状态系统”
传统传感系统可以理解为:
Sensor
↓
Data
↓
Storage
而本书研究的机器感知系统应该进一步发展为:
Sensor
↓
Data
↓
Element
↓
Object
↓
Attribute
↓
State
↓
Change
也就是说:
机器感知系统不仅要回答“测到了什么”,还应该回答“对象现在是什么状态”。
例如:
传统系统:
Pressure = 2.1N
认知型感知系统:
Object = Egg
Pressure:
2.1N
increasing
Friction:
stable
Slip:
decreasing
Deformation:
none
Object State:
stable grasp
这时候,机器才开始拥有进入认知匹配的基础条件。
2.14 感知与控制的区别
还需要区分一个非常重要的问题:
感知不是控制。
例如:
压力增加
属于感知。
而:
降低夹爪压力
属于行为控制。
两者之间还存在:
感知
↓
认知
↓
决策
↓
控制
因此,如果机器人检测到鸡蛋压力增加,并立即执行:
压力降低
这仍然可能只是一个固定规则。
而本书希望建立的是:
压力增加
+
摩擦状态
+
滑移状态
+
形变状态
+
对象承受能力
+
当前目标
↓
动态认知匹配
↓
判断当前状态
↓
决策
↓
动作调整
这才进入完整的认知工程。
本章暂时不展开决策和行为,因为它们属于后续章节。
2.15 人的感知与机器感知的共同点
虽然人和机器的实现机制不同,但是可以从工程抽象层面寻找共同结构。
人的感知:
感觉
↓
神经信息
↓
特征
↓
对象
↓
状态
机器感知:
传感器
↓
数据
↓
元素
↓
对象
↓
状态
因此可以建立一个工程抽象:
现实变化
↓
感觉/传感
↓
元素化
↓
对象化
↓
属性化
↓
状态化
这就是本书试图寻找的:
人的感知与机器感知之间可以被工程化描述的共同结构。
2.16 本章建立的第一个工程抽象
经过本章讨论,可以先建立一个基础模型:
现实对象
│
┌──────────┼──────────┐
↓ ↓ ↓
视觉 触觉 运动
│ │ │
↓ ↓ ↓
感知数据 感知数据 感知数据
│ │ │
└──────────┼──────────┘
↓
感知元素
↓
对象
↓
属性
↓
状态
↓
变化
这个模型目前还不是完整的认知模型。
它只是建立:
认知系统的感知入口。
后续章节将在这个基础上继续研究认知元素、对象、属性以及它们之间的关系。
2.17 本章小结
人的感知不是简单接收信息。
机器感知也不能停留在传感器数据采集。
从本书的理论工程角度看,两者都可以进一步抽象为:
现实变化
↓
感觉/传感
↓
信息
↓
元素
↓
对象
↓
属性
↓
状态
↓
变化
其中最重要的区别是:
传感器产生的是数据,感知系统形成的是具有结构的信息。
而当这些结构化信息进一步形成:
对象
+
属性
+
状态
+
变化
+
关系
之后,机器才真正具备进入后续认知过程的条件。
因此,本章并没有把“感知”等同于“认知”,而是明确建立了两者之间的工程边界:
感觉
↓
感知
↓
感知元素
↓
认知元素
↓
对象
↓
属性
↓
认知
下一章严格按照既定大纲进入:
第3章 人的认知与机器认知
这一章将专门讨论**“认知究竟是什么,以及人的认知与机器目前所谓的‘识别、判断、计算’有什么根本区别”**,不提前进入第4章、第5章。