第126章 记忆形成
126.1 提出背景
第125章建立了记忆的基本结构,明确了记忆对象、记忆内容、记忆状态、记忆时间和记忆关系。但是,仅仅定义“记忆是什么”还不能解释认知系统如何产生记忆。
系统在运行过程中不断接收对象信息、形成状态判断、执行行为、获得行为结果,并根据环境和结果产生反馈。这些过程如果只存在于当前运行时刻,那么系统无法保留过去的认知过程。
因此,需要建立**记忆形成(Memory Formation)**理论。
记忆形成是指系统将运行过程中产生的感知、状态、行为、结果、反馈以及连续历史事件转换为可保存、可识别、可关联和可再次使用的记忆结构的过程。
其基本过程为:
感知→状态→行为→结果→反馈→历史→记忆\boxed{ 感知 \rightarrow 状态 \rightarrow 行为 \rightarrow 结果 \rightarrow 反馈 \rightarrow 历史 \rightarrow 记忆 }
但在实际系统中,记忆并不是只有最终历史才能形成。
不同阶段都可以形成独立记忆:
Perception→MemoryPerception\rightarrow Memory State→MemoryState\rightarrow Memory Behavior→MemoryBehavior\rightarrow Memory Result→MemoryResult\rightarrow Memory Feedback→MemoryFeedback\rightarrow Memory
多个记忆进一步按照时间和因果关系组织:
Memory1→Memory2→Memory3→HistoryMemory_1 \rightarrow Memory_2 \rightarrow Memory_3 \rightarrow History
因此,本章建立六种基本记忆形成机制:
感知记忆、状态记忆、行为记忆、结果记忆、反馈记忆和历史记忆。
126.2 记忆形成的定义
**记忆形成(Memory Formation)**是系统将运行过程中产生的认知元素、对象状态、行为过程、行为结果和反馈信息按照一定结构、时间和关系转换为可保存记忆对象的过程。
设运行过程产生:
E={P,S,B,R,F,H}E=\{P,S,B,R,F,H\}
其中:
- PP:Perception,感知;
- SS:State,状态;
- BB:Behavior,行为;
- RR:Result,结果;
- FF:Feedback,反馈;
- HH:History,历史。
则记忆形成可以表示为:
M=Form(E)\boxed{ M=Form(E) }
进一步:
M=MP+MS+MB+MR+MF+MH\boxed{ M= M_P+ M_S+ M_B+ M_R+ M_F+ M_H }
其中:
- MPM_P:感知记忆;
- MSM_S:状态记忆;
- MBM_B:行为记忆;
- MRM_R:结果记忆;
- MFM_F:反馈记忆;
- MHM_H:历史记忆。
这里的“+”表示结构组合,而不是简单的数值加法。
126.3 记忆形成的基本条件
并非所有瞬时信息都必须形成长期记忆。
要形成有效记忆,至少需要满足一定条件。
定义记忆形成条件:
FC={O,V,T,R,C}FC=\{O,V,T,R,C\}
其中:
- OO:Object,对象是否明确;
- VV:Validity,信息是否有效;
- TT:Time,时间信息是否存在;
- RR:Relation,关系是否能够建立;
- CC:CognitiveValue,是否具有认知价值。
因此:
MemoryFormationAllowed=O∧V∧T∧RMemoryFormationAllowed = O \land V \land T \land R
如果系统能够确定:
Object+Content+TimeObject+Content+Time
就可以形成基础记忆。
如果进一步能够确定:
Object+State+Behavior+ResultObject+State+Behavior+Result
则可以形成更加完整的事件记忆。
126.4 感知记忆
**感知记忆(Perceptual Memory)**是系统对过去已经感知到的对象、属性、环境信息或感知事件进行保存形成的记忆。
感知是记忆形成的最初信息来源之一。
基本过程:
Perception→Recognition→PerceptionMemoryPerception \rightarrow Recognition \rightarrow PerceptionMemory
例如系统观察到一个对象:
Object=AObject=A
属性:
Color=RedColor=Red
位置:
Position=(10,20)Position=(10,20)
则可以形成:
Object = A
Color = Red
Position = (10,20)
Time = T1
形成:
MP={O,A,L,T}M_P=\{O,A,L,T\}
其中:
- OO:对象;
- AA:属性;
- LL:位置;
- TT:时间。
感知记忆的核心作用是保存:
“过去曾经感知到了什么。”
126.5 感知记忆的变化
同一个对象可能在不同时间被多次感知。
例如:
P1(A,T1)P_1(A,T_1) P2(A,T2)P_2(A,T_2) P3(A,T3)P_3(A,T_3)
系统可以形成:
MP1→MP2→MP3M_{P1} \rightarrow M_{P2} \rightarrow M_{P3}
这使系统能够比较同一对象在不同时间的感知结果。
例如:
Position1≠Position2Position_1\neq Position_2
则可以进一步推断:
ObjectMovementObjectMovement
因此:
PerceptionMemory→Comparison→StateChangePerceptionMemory \rightarrow Comparison \rightarrow StateChange
感知记忆不仅保存过去,还能够成为后续状态判断的基础。
126.6 状态记忆
**状态记忆(State Memory)**是系统对对象或自身在特定时间处于何种状态进行保存形成的记忆。
基本结构:
MS={O,S,T,C}M_S=\{O,S,T,C\}
其中:
- OO:对象;
- SS:状态;
- TT:时间;
- CC:状态条件。
例如:
Object = DeviceA
State = Running
Time = T1
Condition = Normal
形成:
MS(DeviceA,Running,T1)M_S(DeviceA,Running,T_1)
如果之后变为:
StoppedStopped
则形成:
MS(DeviceA,Stopped,T2)M_S(DeviceA,Stopped,T_2)
于是:
Running→StoppedRunning \rightarrow Stopped
形成状态历史。
因此状态记忆能够回答:
“某个对象过去是什么状态。”
126.7 状态记忆与状态变化
状态记忆的重要价值并不是保存孤立状态,而是保存状态变化。
设:
S1→S2S_1\rightarrow S_2
则系统可以形成状态转换记忆:
MS1→MS2M_{S1}\rightarrow M_{S2}
如果连续发生:
S1→S2→S3S_1\rightarrow S_2\rightarrow S_3
则形成:
StateHistory={S1,S2,S3}StateHistory = \{S_1,S_2,S_3\}
进一步可以记录:
Transition(S1,S2)Transition(S_1,S_2)
以及:
Transition(S2,S3)Transition(S_2,S_3)
这样,系统能够知道:
- 从什么状态开始;
- 经过什么状态;
- 最终进入什么状态;
- 状态发生变化的时间;
- 状态变化的条件。
状态记忆因此是后续状态预测、异常检测和行为判断的重要基础。
126.8 行为记忆
**行为记忆(Behavior Memory)**是系统对过去执行过的行为及其执行条件、执行对象和执行时间进行保存形成的记忆。
基本结构:
MB={O,B,C,T}M_B=\{O,B,C,T\}
其中:
- OO:行为对象;
- BB:行为;
- CC:行为条件;
- TT:执行时间。
例如:
Object = DeviceA
Behavior = Start
Condition = PowerAvailable
Time = T1
形成:
MB(DeviceA,Start,T1)M_B(DeviceA,Start,T_1)
行为记忆回答:
“过去执行过什么行为。”
它与状态记忆不同。
状态记忆:
State=RunningState=Running
行为记忆:
Behavior=StartBehavior=Start
二者之间存在关系:
Start→RunningStart \rightarrow Running
因此可以建立:
BehaviorMemory→StateMemoryBehaviorMemory \rightarrow StateMemory
126.9 行为记忆与行为过程
一个完整行为通常不是单一瞬间完成的。
可以表示为:
B={Start,Process,End}B= \{Start,Process,End\}
因此可以形成:
BehaviorStart→BehaviorProcess→BehaviorEndBehaviorStart \rightarrow BehaviorProcess \rightarrow BehaviorEnd
如果行为持续一段时间:
Ts→TeT_s\rightarrow T_e
则记忆可以保存行为时间区间:
TB=[Ts,Te]T_B=[T_s,T_e]
进一步可以记录:
Behavior→Condition→Action→ResultBehavior \rightarrow Condition \rightarrow Action \rightarrow Result
这使行为记忆从单纯的“做过什么”发展为:
“在什么条件下,对什么对象,执行了什么行为,以及行为产生了什么结果。”
126.10 结果记忆
**结果记忆(Result Memory)**是系统对某个行为、事件或过程产生的实际结果进行保存形成的记忆。
基本结构:
MR={B,R,E,T}M_R=\{B,R,E,T\}
其中:
- BB:相关行为;
- RR:实际结果;
- EE:期望结果;
- TT:结果时间。
例如:
Behavior=StartBehavior=Start ExpectedResult=RunningExpectedResult=Running ActualResult=RunningActualResult=Running
则:
Result=SuccessResult=Success
形成:
MR={Start,Running,Success,T}M_R=\{Start,Running,Success,T\}
如果:
ExpectedResult=RunningExpectedResult=Running
而:
ActualResult=ErrorActualResult=Error
则:
Result=FailureResult=Failure
形成失败结果记忆。
126.11 结果记忆与行为评价
结果记忆不仅保存“结果是什么”,还可以保存结果与目标之间的关系。
设:
Re=ExpectedResultR_e=ExpectedResult Ra=ActualResultR_a=ActualResult
则:
DR=Compare(Ra,Re)D_R=Compare(R_a,R_e)
如果:
Ra=ReR_a=R_e
则:
SuccessSuccess
如果:
Ra≠ReR_a\neq R_e
则:
DeviationDeviation
由此:
Behavior→Result→EvaluationBehavior \rightarrow Result \rightarrow Evaluation
形成结果评价结构。
因此结果记忆是经验形成的重要基础:
ResultMemory→Evaluation→ExperienceResultMemory \rightarrow Evaluation \rightarrow Experience
126.12 反馈记忆
**反馈记忆(Feedback Memory)**是系统对行为结果、环境变化、自身状态变化或其他对象反馈信息进行保存形成的记忆。
反馈可以来自多个来源:
Feedback={BehaviorFeedback,StateFeedback,EnvironmentFeedback,ResultFeedback}Feedback= \{ BehaviorFeedback, StateFeedback, EnvironmentFeedback, ResultFeedback \}
因此:
MF={Source,Feedback,Target,T}M_F=\{Source,Feedback,Target,T\}
例如:
行为:
Action=MoveAction=Move
结果:
Result=BlockedResult=Blocked
环境反馈:
Environment=ObstacleEnvironment=Obstacle
则形成:
FeedbackMemoryFeedbackMemory
其结构可以表示为:
Action→Result→FeedbackAction \rightarrow Result \rightarrow Feedback
反馈记忆因此保存的不只是结果,还保存系统与环境之间的互动信息。
126.13 反馈记忆的作用
反馈记忆可以帮助系统理解过去行为产生的后续影响。
例如:
ActionA→ResultR→FeedbackFAction_A \rightarrow Result_R \rightarrow Feedback_F
未来再次遇到类似条件:
ConditionACondition_A
系统可以读取:
Memory(ConditionA,ActionA,FeedbackF)Memory(Condition_A,Action_A,Feedback_F)
从而在行为选择过程中使用历史信息。
因此:
FeedbackMemory→Experience→FutureBehaviorFeedbackMemory \rightarrow Experience \rightarrow FutureBehavior
反馈记忆把过去行为与未来行为连接起来。
126.14 历史记忆
前面的感知、状态、行为、结果和反馈记忆通常分别描述一个过程中的局部结构。
当多个记忆按照时间、对象、因果和事件关系组织起来,就形成历史记忆(Historical Memory)。
历史记忆是对过去连续事件和状态变化进行结构化保存的记忆。
基本结构:
MH={M1,M2,…,Mn,R,T}M_H=\{M_1,M_2,\ldots,M_n,R,T\}
其中:
- MiM_i:历史记忆节点;
- RR:记忆之间的关系;
- TT:时间顺序。
例如:
P1→S1→B1→R1→F1P_1 \rightarrow S_1 \rightarrow B_1 \rightarrow R_1 \rightarrow F_1
再发生第二次事件:
P2→S2→B2→R2→F2P_2 \rightarrow S_2 \rightarrow B_2 \rightarrow R_2 \rightarrow F_2
则形成:
H={E1,E2}H= \{ E_1,E_2 \}
其中:
E1→E2E_1\rightarrow E_2
表示两个历史事件之间存在时间上的连续关系。
126.15 六类记忆的统一关系
六类记忆不是六个互相孤立的数据库。
它们之间存在天然的形成关系:
感知记忆→状态记忆→行为记忆→结果记忆→反馈记忆→历史记忆\boxed{ 感知记忆 \rightarrow 状态记忆 \rightarrow 行为记忆 \rightarrow 结果记忆 \rightarrow 反馈记忆 \rightarrow 历史记忆 }
其中:
感知记忆
保存:
“看到了什么”“看到了什么”
状态记忆
保存:
“对象当时是什么状态”“对象当时是什么状态”
行为记忆
保存:
“执行了什么”“执行了什么”
结果记忆
保存:
“行为产生了什么”“行为产生了什么”
反馈记忆
保存:
“环境和系统如何反馈”“环境和系统如何反馈”
历史记忆
保存:
“这些事件过去是如何连续发生的”“这些事件过去是如何连续发生的”
因此六类记忆可以构成一个完整事件链:
Perception→State→Behavior→Result→Feedback→History\boxed{ Perception \rightarrow State \rightarrow Behavior \rightarrow Result \rightarrow Feedback \rightarrow History }
126.16 记忆形成的事件模型
可以将一次完整运行事件表示为:
E={P,S,B,R,F,T}E= \{P,S,B,R,F,T\}
其中:
- PP:感知;
- SS:状态;
- BB:行为;
- RR:结果;
- FF:反馈;
- TT:时间。
事件发生后:
E→MemoryFormationE \rightarrow MemoryFormation
形成:
ME={MP,MS,MB,MR,MF}M_E= \{ M_P, M_S, M_B, M_R, M_F \}
多个事件继续按照时间关系组织:
ME1→ME2→ME3M_{E1} \rightarrow M_{E2} \rightarrow M_{E3}
形成:
MHM_H
即历史记忆。
126.17 记忆形成的时间结构
记忆形成必须保留时间。
例如:
P(T1)P(T_1) S(T2)S(T_2) B(T3)B(T_3) R(T4)R(T_4) F(T5)F(T_5)
如果:
T1<T2<T3<T4<T5T_1<T_2<T_3<T_4<T_5
则可以建立完整时间顺序:
P→S→B→R→FP\rightarrow S\rightarrow B\rightarrow R\rightarrow F
如果缺少时间:
P,S,B,R,FP,S,B,R,F
虽然仍然保存了信息,但无法可靠确定事件顺序。
因此:
MemoryFormation=Content+Time+Relation\boxed{ MemoryFormation = Content + Time + Relation }
时间使记忆成为历史,而关系使历史成为结构。
126.18 记忆形成的关系结构
记忆形成不仅保存对象,还必须建立关系。
例如:
PerceptionMemory→StateMemoryPerceptionMemory \rightarrow StateMemory
表示感知与状态之间的关系。
StateMemory→BehaviorMemoryStateMemory \rightarrow BehaviorMemory
表示某个行为发生在某种状态下。
BehaviorMemory→ResultMemoryBehaviorMemory \rightarrow ResultMemory
表示行为产生结果。
ResultMemory→FeedbackMemoryResultMemory \rightarrow FeedbackMemory
表示结果产生反馈。
最终:
MP→MS→MB→MR→MF\boxed{ M_P \rightarrow M_S \rightarrow M_B \rightarrow M_R \rightarrow M_F }
这些关系可以进一步组成:
MemoryNetworkMemoryNetwork
因此历史记忆本质上是多个记忆节点和关系的组合。
126.19 记忆形成与经验形成
记忆与经验不是完全相同的概念。
记忆解决:
“过去发生了什么”“过去发生了什么”
经验进一步解决:
“过去发生的事情说明什么”“过去发生的事情说明什么”
例如:
Behavior=StartBehavior=Start Result=SuccessResult=Success Feedback=NormalFeedback=Normal
首先形成:
MemoryMemory
经过多次相似事件:
M1,M2,M3,…,MnM_1,M_2,M_3,\ldots,M_n
系统可以形成经验结构:
Experience=Pattern(M1,…,Mn)Experience = Pattern(M_1,\ldots,M_n)
因此:
Event→Memory→Experience\boxed{ Event \rightarrow Memory \rightarrow Experience }
记忆是经验的重要历史基础。
126.20 记忆形成与学习
记忆形成是学习系统的重要基础,但记忆形成本身并不等于学习。
记忆主要负责:
保存保存
学习主要负责:
从历史结构中提取可重复使用的规律从历史结构中提取可重复使用的规律
因此:
Memory→LearningMemory \rightarrow Learning
例如:
M1: ActionA→SuccessM_1:\ ActionA\rightarrow Success M2: ActionA→SuccessM_2:\ ActionA\rightarrow Success M3: ActionA→SuccessM_3:\ ActionA\rightarrow Success
经过历史统计,可以形成:
ActionA→HighSuccessRateActionA \rightarrow HighSuccessRate
这才进入经验或学习结构。
因此:
Memory≠Learning\boxed{ Memory \neq Learning }
但:
Learning 可以建立在 Memory 之上\boxed{ Learning \text{ 可以建立在 Memory 之上} }
126.21 记忆形成工程对象
在 PHP OOP 工程中,可以建立统一的 MemoryFormation 对象。
class MemoryFormation
{
protected $formationId;
protected $object;
protected $perception;
protected $state;
protected $behavior;
protected $result;
protected $feedback;
protected $history;
protected $eventTime;
protected $relations;
public function formPerceptionMemory($data)
{
// 形成感知记忆
}
public function formStateMemory($state)
{
// 形成状态记忆
}
public function formBehaviorMemory($behavior)
{
// 形成行为记忆
}
public function formResultMemory($result)
{
// 形成结果记忆
}
public function formFeedbackMemory($feedback)
{
// 形成反馈记忆
}
public function formHistoryMemory($history)
{
// 形成历史记忆
}
}
这个对象负责组织记忆形成过程,而具体保存工作可以交给独立的 MemoryStore。
因此:
MemoryFormation→MemoryStoreMemoryFormation \rightarrow MemoryStore
126.22 记忆形成模块
工程上可以建立:
MemoryFormationSystem
├── PerceptionMemoryBuilder
├── StateMemoryBuilder
├── BehaviorMemoryBuilder
├── ResultMemoryBuilder
├── FeedbackMemoryBuilder
├── HistoryMemoryBuilder
├── MemoryRelationBuilder
├── MemoryValidator
└── MemoryStore
形成:
Event→MemoryBuilder→MemoryObject→MemoryStoreEvent \rightarrow MemoryBuilder \rightarrow MemoryObject \rightarrow MemoryStore
其中:
PerceptionMemoryBuilder负责形成感知记忆。
StateMemoryBuilder负责形成状态记忆。
BehaviorMemoryBuilder负责形成行为记忆。
ResultMemoryBuilder负责形成结果记忆。
FeedbackMemoryBuilder负责形成反馈记忆。
HistoryMemoryBuilder负责把多个记忆按照时间和关系组织成历史记忆。
126.23 记忆形成数据库模型
如果采用 MySQL 持久化,可以将六类记忆统一保存,也可以根据工程规模进行分类保存。
统一表可以使用:
cognitive_memory
--------------------------------
memory_id
memory_type
object_type
object_value
content
state
event_time
created_at
updated_at
weight
status
其中:
memory_type
可以取:
PERCEPTION
STATE
BEHAVIOR
RESULT
FEEDBACK
HISTORY
关系表:
cognitive_memory_relations
--------------------------------
relation_id
memory_id
target_memory_id
relation_type
relation_weight
created_at
于是:
Memory+Relation→MemoryNetworkMemory + Relation \rightarrow MemoryNetwork
数据库保存的是持久化结构,PHP OOP负责运行时的形成、查询和关系处理。
126.24 记忆形成统一算法
可以建立一个基础记忆形成算法:
Event
↓
Identify Object
↓
Identify Type
↓
Capture Content
↓
Capture State
↓
Capture Time
↓
Capture Relation
↓
Create Memory
↓
Store Memory
↓
Link Related Memories
↓
Update History
数学形式可以表示为:
Mi=Form(Oi,Ci,Si,Ti,Ri)\boxed{ M_i= Form(O_i,C_i,S_i,T_i,R_i) }
然后:
Mi→StoreM_i\rightarrow Store
再根据关系:
Mi+Rij→MemoryNetworkM_i+R_{ij}\rightarrow MemoryNetwork
最终:
MemoryNetwork→HistoryMemoryNetwork \rightarrow History
126.25 记忆形成的完整闭环
一次完整事件可以形成:
感知→状态→行为→结果→反馈→记忆\boxed{ 感知 \rightarrow 状态 \rightarrow 行为 \rightarrow 结果 \rightarrow 反馈 \rightarrow 记忆 }
多次事件形成:
事件1→事件2→事件3→历史记忆\boxed{ 事件_1 \rightarrow 事件_2 \rightarrow 事件_3 \rightarrow 历史记忆 }
历史记忆又可以被未来认知读取:
历史记忆→记忆读取→当前认知\boxed{ 历史记忆 \rightarrow 记忆读取 \rightarrow 当前认知 }
因此形成完整时间闭环:
过去事件→记忆形成→记忆保存→记忆读取→当前认知→新事件→新记忆\boxed{ 过去事件 \rightarrow 记忆形成 \rightarrow 记忆保存 \rightarrow 记忆读取 \rightarrow 当前认知 \rightarrow 新事件 \rightarrow 新记忆 }
这使系统能够形成持续的认知时间链。
126.26 本章总结
第126章建立了记忆形成理论。
记忆并不是在系统运行结束之后才一次性产生,而是在感知、状态、行为、结果和反馈等过程中逐步形成。
基本形成链为:
Perception→State→Behavior→Result→Feedback\boxed{ Perception \rightarrow State \rightarrow Behavior \rightarrow Result \rightarrow Feedback }
这些局部记忆按照时间和关系继续组织:
Memory→MemoryRelation→HistoryMemory\boxed{ Memory \rightarrow MemoryRelation \rightarrow HistoryMemory }
六类记忆分别承担不同功能:
感知记忆→保存过去感知到的对象与信息状态记忆→保存过去对象或系统的状态行为记忆→保存过去执行过的行为结果记忆→保存行为产生的实际结果反馈记忆→保存行为、环境和结果产生的反馈历史记忆→保存多个事件形成的连续历史结构\boxed{ \begin{aligned} 感知记忆 &\rightarrow 保存过去感知到的对象与信息\\ 状态记忆 &\rightarrow 保存过去对象或系统的状态\\ 行为记忆 &\rightarrow 保存过去执行过的行为\\ 结果记忆 &\rightarrow 保存行为产生的实际结果\\ 反馈记忆 &\rightarrow 保存行为、环境和结果产生的反馈\\ 历史记忆 &\rightarrow 保存多个事件形成的连续历史结构 \end{aligned} }
因此可以建立统一模型:
感知→状态→行为→结果→反馈→历史→记忆网络\boxed{ 感知 \rightarrow 状态 \rightarrow 行为 \rightarrow 结果 \rightarrow 反馈 \rightarrow 历史 \rightarrow 记忆网络 }
而记忆网络又进入未来认知:
过去→记忆→读取→当前认知→行为→新结果→新反馈→新记忆\boxed{ 过去 \rightarrow 记忆 \rightarrow 读取 \rightarrow 当前认知 \rightarrow 行为 \rightarrow 新结果 \rightarrow 新反馈 \rightarrow 新记忆 }
由此,记忆形成不再是简单的“数据保存”,而成为一个持续运行的认知过程。
第125章回答了:
“记忆是什么?”
第126章进一步回答:
“记忆是怎样从系统运行过程中形成的?”
两章连接起来,就建立了:
MemoryStructure+MemoryFormation=MemorySystem\boxed{ MemoryStructure + MemoryFormation = MemorySystem }
这为下一阶段的记忆存储、记忆读取、记忆匹配、记忆更新以及记忆遗忘建立了理论基础。