第38章 Cognition
38.1 认知定义
认知(Cognition)是 ICAI 对感知所得信息进行组织、识别、关联、理解和状态判断的过程。
感知回答:
“获取到了什么?”
认知回答:
“这些信息代表什么?它们之间是什么关系?当前处于什么状态?”
因此:
感知 = 获取信息
认知 = 理解信息
在 ICAI 中,认知不是简单的信息读取,而是把感知得到的元素转换为具有意义的认知对象。
基本过程:
信息
↓
感知
↓
元素
↓
对象
↓
属性
↓
关系
↓
条件
↓
认知
↓
认知结果
可以定义:
Cognition = Recognition + Relation + Condition + Understanding
即:
认知
=
对象识别
+
关系识别
+
条件判断
+
意义理解
38.2 感知与认知
感知与认知属于两个不同阶段。
Information
↓
Perception
↓
Elements
↓
Cognition
↓
Understanding
感知
感知负责从输入信息中获取元素。
例如输入:
“深圳到香港家具送货上门”
感知可以得到:
深圳
香港
家具
送货
上门
这些只是元素。
认知
认知进一步建立对象和关系:
对象:
深圳
香港
家具
行为:
送货
方式:
上门
关系:
深圳 → 到 → 香港
家具 → 需要 → 送货
送货 → 方式 → 上门
因此:
感知:
发现元素
认知:
建立元素之间的意义关系
两者关系
Perception
↓
Element Extraction
↓
Object Recognition
↓
Relation Recognition
↓
Cognition
没有感知,认知缺少输入。
没有认知,感知只能得到大量离散元素。
所以:
Perception = Information Acquisition
Cognition = Information Understanding
38.3 认知对象
认知对象是 ICAI 当前正在理解、判断或处理的对象。
对象可以来自:
人
物
地点
时间
事件
行为
状态
关系
信息
任务
资源
经验
例如:
用户:
“深圳到香港搬家多少钱?”
感知之后可能形成:
Object 1:
深圳
Object 2:
香港
Object 3:
搬家
Object 4:
价格
然后形成对象结构:
搬家
├── 起点:深圳
├── 终点:香港
└── 属性:价格
因此认知对象并不一定只是一个实体。
它可以是:
Object
├── Property
├── State
├── Relation
├── Method
├── Rule
└── Fact
例如:
ElectricToothbrush
├── type = product
├── power = rechargeable
├── function = cleaning
├── market = USA
└── relation = supplied_by → Manufacturer
38.4 认知条件
认知并不是对所有信息直接产生结论。
ICAI 需要根据一定条件进行认知。
认知条件包括:
对象条件
属性条件
关系条件
状态条件
时间条件
空间条件
事实条件
规则条件
历史条件
例如:
对象:
订单
状态:
已付款
条件:
付款 = true
库存 > 0
地址 = 有效
只有条件满足,才能形成进一步认知:
订单
+
已付款
+
库存充足
+
地址有效
=
可以执行配送
可以抽象为:
CognitionCondition
{
object,
properties,
relations,
states,
facts,
rules,
time,
location
}
认知条件的作用是限制认知范围。
即:
输入信息 ≠ 认知结论
而是:
输入信息
+
认知条件
+
已有知识
+
已有经验
=
认知结果
38.5 认知过程
ICAI 的认知过程可以进一步分成多个步骤。
1. 接收感知结果
↓
2. 建立认知对象
↓
3. 属性匹配
↓
4. 状态判断
↓
5. 关系建立
↓
6. 条件检查
↓
7. 事实匹配
↓
8. 规则匹配
↓
9. 意义组合
↓
10. 形成认知结果
例如:
输入:
“电动牙刷适合旅行使用。”
感知:
电动牙刷
旅行
适合
使用
对象:
Object:
电动牙刷
Object:
旅行
关系:
电动牙刷
↓
适合
↓
旅行
认知:
对象:
电动牙刷
场景:
旅行
认知:
电动牙刷适用于旅行场景
进一步形成:
Object:
ElectricToothbrush
Relation:
suitable_for
Target:
Travel
这就是从元素到认知关系的转换。
38.6 认知结果
认知结果是认知过程最终产生的结构化结果。
ICAI 不要求认知结果必须是自然语言。
核心结果应该是结构化认知数据。
例如:
{
"object": "electric_toothbrush",
"relation": "suitable_for",
"target": "travel",
"state": "valid",
"confidence": 0.86
}
认知结果可以包括:
对象
属性
关系
状态
事实
条件
匹配结果
判断结果
置信程度
认知路径
例如:
Object:
ElectricToothbrush
Property:
Rechargeable
Relation:
SuitableFor → Travel
State:
Valid
Result:
Suitable for travel
认知结果随后可以进入:
理解
↓
记忆
↓
推理
↓
决策
↓
行动
因此:
Perception Result
↓
Cognition Result
↓
Reasoning Input
38.7 认知状态
认知不是简单的“有”或者“没有”。
ICAI 可以建立认知状态。
例如:
UNKNOWN
未知。
OBSERVED
已经观察到。
RECOGNIZED
已经识别。
UNDERSTOOD
已经理解。
CONFIRMED
已经确认。
CONFLICT
存在冲突。
UNCERTAIN
存在不确定性。
INVALID
认知结果无效。
可以形成状态流:
UNKNOWN
↓
OBSERVED
↓
RECOGNIZED
↓
UNDERSTOOD
↓
CONFIRMED
异常情况下:
RECOGNIZED
↓
CONFLICT
↓
RECHECK
↓
CONFIRMED / INVALID
不确定情况下:
RECOGNIZED
↓
UNCERTAIN
↓
ADDITIONAL INFORMATION
↓
UNDERSTOOD
这样,认知系统就不需要强行对所有信息做出确定判断。
38.8 认知管理
认知管理负责维护 ICAI 当前形成的认知对象、关系、状态和认知结果。
可以建立:
CognitionManager
负责:
create()
recognize()
match()
relate()
evaluate()
confirm()
update()
invalidate()
resolveConflict()
整体结构:
Cognition
│
┌────────────┼────────────┐
↓ ↓ ↓
Object Relation State
│ │ │
↓ ↓ ↓
Property Match Condition
│ │ │
└────────────┼────────────┘
↓
CognitionResult
↓
CognitionMemory
认知管理的核心任务不是生成文字,而是管理:
对象
↓
属性
↓
关系
↓
条件
↓
状态
↓
认知结果
最终形成 ICAI 的认知结构:
Information
↓
Perception
↓
Elements
↓
Objects
↓
Relations
↓
Conditions
↓
Cognition
↓
Cognition State
↓
Cognition Result
↓
Memory
↓
Reasoning
第38章核心定义
可以把本章浓缩成:
Perception 获取信息
Cognition 理解信息
Object 认知对象
Condition 认知条件
Process 认知过程
Result 认知结果
State 认知状态
Management 认知管理
最终:
感知发现“有什么”
↓
认知理解“是什么”
↓
关系判断“它与什么有关”
↓
条件判断“当前是否成立”
↓
状态判断“当前处于什么状态”
↓
认知结果“当前可以确认什么”
这就把 第37章 PerceptionEngine 与 第38章 Cognition 清晰连接起来了:PerceptionEngine 负责产生可供认知处理的结构化感知结果,Cognition 负责把这些结果组织成对象、关系、条件、状态和可供后续推理使用的认知结果。