第52章 Cognitive Class
Cognitive Class 是对一类认知对象、属性、状态、关系、匹配规则、个体差异以及相关认知方法进行统一描述的认知结构。
前面第1章到第51章,已经逐步建立了从感觉、感知、元素、对象、属性、动态状态、认知匹配、概率、个体认知、行为认知到认知学习的完整理论链条。
但是,到这里仍然存在一个工程问题:
这些认知结构如何被组织起来?
如果每一个对象、每一种属性、每一种状态、每一套匹配规则都单独处理,认知系统最终会变成大量彼此孤立的判断。
人的认知并不是这样运行的。
人面对一个对象时,并不是临时创造一套完全陌生的认知结构,而是会调用已经形成的类别、经验、属性结构、关系结构和行为模式。
因此,本章开始建立:
Cognitive Class——认知类。
52.1 为什么需要 Cognitive Class
前面的理论已经定义了:
Object
Attribute
State
Relation
Matching
Cognition
Behavior
例如一个“鸡蛋”对象,可以具有:
对象:鸡蛋
属性:
重量
硬度
形状
表面
脆弱程度
状态:
完整
破损
移动
静止
关系:
位于容器中
接触手指
受到压力
动态变化:
压力增加
形变增加
滑移增加
如果系统只把这些信息作为一次性的对象数据保存,那么下一次遇到另一个鸡蛋时,仍然需要重新组织这些信息。
而人的认知能够形成:
鸡蛋
↓
脆弱对象
↓
需要控制接触力度
↓
具有破损风险
这种“类别化”的能力,就是认知类的基础。
52.2 Class 与 Object 的区别
必须首先区分:
Class
和:
Object
对象是具体存在的认知实体。
例如:
Object A:
桌上的一个鸡蛋
而 Class 描述的是:
Egg Class
它定义:
这一类对象通常具有什么特征
因此:
Class
↓
规定结构与共性
Object
↓
表示具体实例
可以表示为:
Cognitive Class
↓
Object Instance
↓
具体对象
例如:
Egg Class
↓
Egg_001
Egg_002
Egg_003
这些对象不是同一个对象,但可以属于同一个认知类。
52.3 Cognitive Class 不是普通数据库分类
如果仅仅按照数据库的方式理解 Class:
类别
↓
字段
↓
数据
是不够的。
因为 Cognitive Class 不仅描述:
对象有什么
还需要描述:
对象如何变化
对象与什么发生关系
什么属性更重要
什么状态具有风险
什么变化会触发认知
什么行为可能发生
因此 Cognitive Class 至少包含:
Object
+
Attribute
+
State
+
Relation
+
Change
+
Matching
+
Behavior
这使它成为:
具有认知意义的结构,而不是简单的数据分类。
52.4 Cognitive Class 的基本结构
可以建立一个基础模型:
Cognitive Class
│
├── Identity
│
├── Attributes
│
├── States
│
├── Relations
│
├── Changes
│
├── Matching Rules
│
├── Risk
│
├── Goals
│
└── Methods
其中:
Identity
回答:
这是什么类别?
Attributes
回答:
这一类对象通常具有什么?
States
回答:
它可能处于什么状态?
Relations
回答:
它可能与什么发生关系?
Changes
回答:
它可能如何变化?
Matching Rules
回答:
什么信息应该如何匹配?
Risk
回答:
哪些变化意味着风险?
Goals
回答:
在特定任务中需要关注什么?
Methods
回答:
系统应该如何处理这一类对象?
52.5 Class 是认知结构的压缩
人的认知能力很重要的一点是:
不会每一次都从零开始认识世界。
例如第一次看到一种物体:
颜色
形状
重量
硬度
运动
逐渐形成:
对象认知
经过大量经验以后:
类似对象
↓
共同属性
↓
共同关系
↓
共同变化
↓
共同风险
↓
形成类别
因此 Class 可以理解为:
大量相似认知经验经过抽象以后形成的稳定认知结构。
可以表示为:
Object₁
Object₂
Object₃
Object₄
↓
共同属性
共同状态
共同关系
共同变化
↓
Cognitive Class
52.6 从对象到类别
假设系统连续认识三个对象:
对象A:
玻璃杯
对象B:
玻璃瓶
对象C:
玻璃碗
它们虽然不是同一个对象,但可能共享:
材质:玻璃
脆弱性:较高
受到冲击可能破损
需要一定保护
系统逐渐形成:
Fragile Object Class
于是新的对象出现:
陶瓷杯
系统不需要完全重新开始。
它可以进行:
新对象
↓
属性匹配
↓
已有 Class
↓
相似度
↓
风险认知
这就是 Cognitive Class 的工程价值。
52.7 Class 与认知匹配
第18章以后建立了认知匹配。
现在可以把匹配对象进一步扩展:
当前对象
↓
当前属性
↓
当前状态
↓
已有 Cognitive Class
也就是说,认知匹配不仅可以是:
Object ↔ Object
还可以是:
Object ↔ Class
例如:
当前对象:
一个未知杯子
系统获得:
形状
材质
重量
硬度
然后:
当前对象
↓
属性匹配
↓
Glass Object Class
于是系统可以快速获得:
可能属性
可能状态
可能风险
可能行为
52.8 Class 不是绝对判断
需要特别强调:
认知类不是绝对真理,而是一种具有概率性的认知结构。
例如:
当前对象
↓
匹配
↓
玻璃类:0.82
陶瓷类:0.14
塑料类:0.04
这与第26章的认知概率自然连接。
因此:
Class Matching
↓
Matching Strength
↓
Probability
Class 本身也可以成为概率认知的一部分。
52.9 Class 与动态状态
Class 不能只定义静态属性。
例如:
Egg Class
如果只有:
重量
形状
颜色
那么它无法描述:
压力增加
滑移
形变
破损
因此 Cognitive Class 必须能够描述:
Static Attributes
+
Dynamic Attributes
+
State Transition
例如:
Egg
↓
完整
↓
受压
↓
形变
↓
临界
↓
破损
这样 Class 才真正具有认知意义。
52.10 Class 与状态转换
一个 Cognitive Class 可以进一步定义状态变化:
State A
↓
Condition
↓
State B
例如:
完整
↓
压力超过阈值
↓
形变
进一步:
形变
↓
继续受力
↓
破损风险增加
因此:
Cognitive Class
↓
State Model
↓
State Transition
这使 Class 不再是静态结构,而开始具备动态认知能力。
52.11 Class 与行为
一个类别还可能对应典型行为。
例如:
Fragile Object Class
可能对应:
低速接近
降低力度
避免冲击
保持稳定
于是:
Class
↓
Risk
↓
Cognition
↓
Behavior
这不是说 Class 直接决定行为。
真正的过程仍然是:
Class
↓
提供认知背景
↓
当前状态匹配
↓
个体目标
↓
认知
↓
决策
↓
行为
因此 Class 是认知依据之一,而不是简单的行为指令。
52.12 Cognitive Class 与个体认知
到这里就可以与第27章到第33章连接起来。
同一个 Class:
Fragile Object Class
不同个体可能具有不同认知:
个体A:
经验丰富
↓
风险判断准确
个体B:
经验不足
↓
风险判断不稳定
所以:
Class
+
Individual Experience
+
Individual Memory
+
Individual Prior
+
Individual Bias
+
Individual Goal
最终形成:
Individual Cognition
因此:
Class 提供共性结构,Individual 提供个体差异。
这是下一章 Group Class 与 Individual Class 的理论基础。
52.13 Cognitive Class 的两层结构
因此可以建立:
Cognitive Class
│
├── Common Cognitive Structure
│
└── Individual Cognitive Structure
进一步:
Cognitive Class
│
├──────────────┐
↓ ↓
Group Class Individual Class
↓ ↓
群体共性 个体差异
这就是本书后面要建立的:
群类 + 个体类
体系。
52.14 Class 与经验学习
Class 不是一次定义以后永远不变。
它也可能随着经验不断调整。
例如系统最初认为:
某类对象
风险较低
经过多次行为反馈:
多次发生损伤
系统发现:
原来的风险判断过低
于是:
经验
↓
反馈
↓
Class Knowledge Update
可能导致:
风险属性调整
匹配权重调整
状态规则调整
行为建议调整
因此 Cognitive Class 也具有一定的学习能力。
52.15 Class 的稳定性与变化性
这里存在一个重要矛盾:
Class 必须稳定,否则无法复用。
但 Class 又必须能够变化,否则无法学习。
因此需要区分:
Class Core
和:
Class Adaptive Layer
可以表示:
Cognitive Class
│
├── Core
│ ├── Identity
│ ├── Basic Attributes
│ └── Basic Relations
│
└── Adaptive Layer
├── Learned Weights
├── Risk
├── Experience
└── Dynamic Rules
这样既保持结构稳定,又允许认知系统不断学习。
52.16 Class 是认知系统的中间层
到这里可以看到,Class 位于:
Object
与:
Individual Cognition
之间。
它不是具体对象:
Object
也不是最终判断:
Cognition
而是:
Object
↓
Class
↓
Matching
↓
Individual Cognition
因此 Cognitive Class 可以被看作:
连接具体对象与抽象认知的中间结构。
52.17 Cognitive Class 与普通 OOP Class 的区别
这里必须明确:
Cognitive Class 可以借鉴传统面向对象编程的 Class。
但二者不是完全相同的概念。
传统 Class 主要关注:
数据
+
方法
而 Cognitive Class 关注:
对象
+
属性
+
状态
+
关系
+
变化
+
匹配
+
概率
+
个体差异
+
行为
+
学习
因此:
Programming Class
解决的是:
如何组织程序对象?
而:
Cognitive Class
解决的是:
如何组织认知对象?
这也是本书后面进入 Cognitive Method 和工程实现的重要理论基础。
52.18 Cognitive Class 的基本认知流程
一个新的对象进入系统以后,可以经历:
新感知
↓
感知元素
↓
对象形成
↓
属性提取
↓
状态识别
↓
Class Matching
↓
候选 Cognitive Class
↓
匹配强度
↓
概率
↓
当前认知
如果匹配成功:
对象
↓
已有 Class
↓
调用相关认知结构
如果匹配不足:
对象
↓
未知或新类别
↓
积累经验
↓
形成新 Class
因此系统不仅可以:
使用已有认知类
还可以:
形成新的认知类。
52.19 从已知 Class 到未知 Class
这是认知系统非常重要的能力。
如果所有对象都必须提前定义:
Class A
Class B
Class C
那么系统面对未知对象就无法处理。
真正的认知系统应该允许:
Unknown Object
↓
属性积累
↓
关系积累
↓
行为结果
↓
经验积累
↓
发现共同结构
↓
Candidate Class
↓
Cognitive Class
因此:
Cognitive Class 既是认知的结果,也可以成为后续认知的基础。
52.20 Cognitive Class 的双向作用
因此可以建立一个非常重要的双向关系:
对象
↓
抽象
↓
Cognitive Class
同时:
Cognitive Class
↓
匹配
↓
对象认知
形成:
Object
↕
Cognitive Class
一方面:
对象经验形成 Class。
另一方面:
Class 帮助理解新对象。
这就是认知系统中的抽象与实例化循环。
52.21 Cognitive Class 的工程化方向
从理论工程角度,可以把一个 Cognitive Class 描述成:
Class
{
Identity
Attributes
States
Relations
Changes
MatchingRules
RiskModel
BehaviorPatterns
LearningRules
}
但是这里还只是理论结构。
真正进入工程阶段以后,还需要进一步定义:
Class
↓
Data Structure
↓
Algorithm
↓
Method
↓
Module
↓
Engine
这正是本书后面的工程部分。
因此本章暂时不急于讨论具体代码。
本章首先确定:
Cognitive Class 在认知理论中的位置和职责。
52.22 Cognitive Class 在全书理论中的位置
到目前为止,可以把整个认知系统重新组织为:
感觉
↓
感知
↓
感知元素
↓
对象
↓
属性
↓
状态
↓
变化
↓
关系
↓
Cognitive Class
↓
认知匹配
↓
概率
↓
个体认知
↓
决策
↓
行为
↓
反馈
↓
学习
↓
Class / Individual 更新
这里出现了一个新的闭环:
对象
↓
Class
↓
认知
↓
行为
↓
反馈
↓
学习
↓
Class 更新
这意味着 Cognitive Class 已经进入整个认知系统的动态循环。
52.23 本章核心定义
经过前面的理论建立,可以给出本书对 Cognitive Class 的正式定义:
Cognitive Class 是认知系统对一类具有共同结构、属性、状态、关系、动态变化和行为特征的对象进行抽象后形成的稳定认知结构,并通过匹配规则、概率结构及可学习机制,为具体对象的识别、理解、判断和行为决策提供认知基础。
这个定义包含几个关键部分:
共同结构
+
共同属性
+
共同状态
+
共同关系
+
共同变化
+
匹配规则
+
概率结构
+
学习机制
因此它已经明显区别于普通的“对象分类”。
52.24 本章核心模型
最终可以把 Cognitive Class 表达为:
Cognitive Class
│
┌───────────────┼───────────────┐
↓ ↓ ↓
Structure Dynamic Cognitive
│ State Rules
↓ ↓ ↓
Attributes Changes Matching
Relations States Probability
│ │ │
└───────────────┼───────────────┘
↓
Object Cognition
↓
Decision
↓
Behavior
↓
Feedback
↓
Learning
↓
Class Update
52.25 本章结论
第52章真正解决的是:
如何把前面大量分散的认知知识组织成稳定、可复用、可学习的认知结构。
答案就是:
Cognitive Class。
它不是简单的分类标签,也不是普通程序中的 Class。
它是:
对象共性
+
属性结构
+
状态结构
+
关系结构
+
动态变化
+
匹配规则
+
概率
+
行为特征
+
学习机制
共同形成的:
认知结构。
至此,全书开始从“认知过程理论”进入“认知结构理论”。
下一章 第53章 Group Class 将进一步解决:
如果 Cognitive Class 描述一类对象的共同认知结构,那么群体共性应该如何形成?一个群体中的共同经验、共同属性、共同规则和共同认知结构,又应该如何与个体认知区分?
由此正式建立:
Cognitive Class
↓
Group Class
↓
Individual Class
也就是本书后面**“群类—个体类”双层认知结构**的基础。