WSaiOS EOM模拟人工认知工程理论
第二十六章:WSaiOS EOM知识库引擎设计——从数据存储到认知知识系统
26.1 为什么研究认知知识库
前面章节建立:
信息
↓
Element
↓
Object
↓
Relationship
↓
Knowledge
但是:
对象和关系形成以后,需要一个地方保存。
传统软件通常使用:
数据库。
例如:
MySQL保存:
id
name
price
category
但是:
EOM认为:
数据库只能保存:
数据。
人工认知系统需要保存:
知识结构。
因此:
WSaiOS提出:
Cognitive Knowledge Base(认知知识库)
26.2 普通数据库与知识库区别
普通数据库
主要保存:
记录
字段
数值
例如:
产品表:
product
----------------
id
name
price
stock
数据库回答:
有什么数据?
26.3 认知知识库
知识库保存:
对象
属性
关系
经验
规则
记忆
知识库回答:
系统理解了什么?
例如:
普通数据库:
供应商A
深圳
电动牙刷
知识库:
供应商A
属于:
电动牙刷供应商
关系:
生产 → 电动牙刷
关系:
供应 → 美国客户
经验:
历史合作成功率85%
这两者:
本质不同。
26.4 EOM知识模型
EOM定义:
知识:
Knowledge
=
Object
+
Relationship
+
Experience
其中:
Object
表示:
认识的事物。
例如:
供应商
产品
客户
Relationship
表示:
对象之间联系。
例如:
供应商
生产
产品
Experience
表示:
历史经验。
例如:
合作成功率90%
三者结合:
形成:
可用于认知的知识。
26.5 Knowledge Object设计
在WSaiOS中:
知识本身也可以对象化。
定义:
KnowledgeObject
{
object
relations
experience
context
weight
time
}
例如:
知识对象:
深圳供应商适合美国电动牙刷市场
对象:
供应商A
关系:
生产电动牙刷
经验:
历史成交85%
上下文:
美国市场
26.6 知识来源模型
WSaiOS知识库:
不是单一来源。
包括:
三个主要来源。
第一:外部实时信息
(External Information)
来源:
公开资料
企业网站
市场信息
行业资料
用户输入数据
例如:
发现:
新的供应商资料。
进入:
知识库。
第二:用户私有资源
(Private Resource)
例如:
企业:
客户资料
产品资料
供应商名单
销售记录
内部文档
这些属于:
用户个人知识资产。
第三:系统学习经验
(Learning Experience)
来源:
系统过去执行结果。
例如:
推荐A供应商
结果:
成交成功
形成经验。
26.7 知识进入流程
完整流程:
外部信息
|
用户资源
|
系统经验
↓
Information
↓
Element
↓
Object
↓
Relationship
↓
Knowledge Base
因此:
知识库不是简单导入数据。
而是:
认知加工后的结构。
26.8 Knowledge Engine设计
WSaiOS:
设计:
Knowledge Engine。
作用:
管理知识生命周期。
结构:
KnowledgeEngine
|
-------------------
KnowledgeBuilder
KnowledgeStorage
KnowledgeMatcher
KnowledgeUpdater
KnowledgeValidator
-------------------
KnowledgeBuilder
负责:
生成知识。
例如:
对象+关系:
生成知识。
KnowledgeStorage
负责:
保存。
KnowledgeMatcher
负责:
知识匹配。
KnowledgeUpdater
负责:
经验更新。
KnowledgeValidator
负责:
知识质量检查。
26.9 PHP OOP Knowledge类设计
<?php
class Knowledge
{
protected $objects=array();
protected $relations=array();
protected $experience=array();
protected $context;
public function addObject($object)
{
$this->objects[]=$object;
}
public function addRelation($relation)
{
$this->relations[]=$relation;
}
public function addExperience($experience)
{
$this->experience[]=$experience;
}
public function getKnowledge()
{
return array(
"objects"=>$this->objects,
"relations"=>$this->relations,
"experience"=>$this->experience
);
}
}
?>
这个类:
对应:
EOM知识结构。
26.10 Knowledge Engine实现
<?php
class KnowledgeEngine
{
public function build(
$object,
$relation
)
{
$knowledge =
new Knowledge();
$knowledge->addObject($object);
$knowledge->addRelation($relation);
return $knowledge;
}
}
?>
例如:
输入:
对象:
供应商A
关系:
生产电动牙刷
生成:
知识:
供应商A生产电动牙刷
26.11 MySQL知识库设计
WSaiOS可以使用:
MySQL。
但是:
表结构围绕:
认知结构设计。
objects表
保存对象:
CREATE TABLE cognitive_objects
(
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(255),
type VARCHAR(100),
state TEXT,
created_at TIMESTAMP
);
relationships表
保存关系:
CREATE TABLE cognitive_relationships
(
id INT AUTO_INCREMENT PRIMARY KEY,
source_id INT,
relation_type VARCHAR(100),
target_id INT,
weight INT DEFAULT 50,
context TEXT
);
knowledge表
保存知识:
CREATE TABLE knowledge_base
(
id INT AUTO_INCREMENT PRIMARY KEY,
object_data TEXT,
relation_data TEXT,
experience_data TEXT,
weight INT DEFAULT 50,
created_at TIMESTAMP
);
26.12 知识匹配基础
知识库建立以后:
下一步:
不是搜索。
而是:
匹配。
例如:
用户:
寻找美国电动牙刷供应商
系统形成:
需求对象:
Demand Object
知识库寻找:
Supplier Object
+
Production Relation
+
USA Context
形成:
认知匹配。
26.13 知识库与记忆系统关系
知识:
保存:
稳定认知。
记忆:
保存:
变化经验。
关系:
经验
↓
Memory
↓
Knowledge Update
↓
Knowledge Base
例如:
原知识:
供应商A
匹配度70%
经过经验:
成功合作10次
更新:
匹配度90%
26.14 MVC中的知识库
结构:
Controller
↓
Knowledge Engine
↓
Knowledge Model
↓
MySQL
Controller:
调用知识。
Knowledge Engine:
处理认知逻辑。
Model:
数据对象。
Database:
保存。
26.15 WSaiOS知识库特点
第一:对象化
知识不是关键词。
而是:
对象。
第二:关系化
知识不是列表。
而是:
结构。
第三:经验化
知识可以变化。
第四:个性化
用户拥有自己的知识资源。
26.16 本章总结
EOM认为:
知识库不是信息仓库,而是人工认知系统保存对象、关系和经验形成的认知结构。
WSaiOS知识形成:
外部信息
+
用户资源
+
系统经验
↓
Element
↓
Object
↓
Relationship
↓
Knowledge Base
↓
Cognitive Matching
软件实现:
Knowledge Theory
↓
PHP Knowledge Class
↓
Knowledge Engine
↓
MVC Model
↓
MySQL Storage
下一章:
第二十七章:WSaiOS EOM记忆引擎设计——从经验保存到持续认知能力
重点研究:
- 为什么人工认知需要记忆;
- 短期记忆、长期记忆、时序记忆、概率记忆模型;
- Memory Engine设计;
- PHP OOP实现;
- 记忆如何影响未来认知匹配。