8.5 知识关系模型
(Knowledge Relation Model)
在 WSaiOS-ICAI 知识系统工程中:
知识分类解决:
“知识属于哪里。”
但是:
人类理解世界,并不是依靠孤立分类。
真正的认知来自:
知识之间的联系。
因此需要:
知识关系模型。
8.5.1 知识关系定义
知识关系:
表示两个或多个 Knowledge Object 之间存在的连接关系。
模型:
Knowledge Object A
↓
Relation
↓
Knowledge Object B
例如:
PHP
↓
属于
↓
Web开发
例如:
MVC
↓
依赖
↓
OOP
知识关系使个体人工智能能够:
- 理解知识结构;
- 发现关联知识;
- 支持知识调用。
8.5.2 Knowledge Relation Object
WSaiOS-ICAI 将知识关系对象化。
定义:
KnowledgeRelationObject
{
relation_id,
source_knowledge_id,
target_knowledge_id,
relation_type,
description,
weight,
create_time
}
属性:
relation_id
关系编号。
source_knowledge_id
源知识对象。
例如:
MVC
target_knowledge_id
目标知识对象。
例如:
OOP
relation_type
关系类型。
例如:
属于
组成
依赖
应用
weight
关系强度。
表示:
两个知识之间的重要程度。
8.5.3 知识关系类型模型
WSaiOS-ICAI 中:
知识关系主要包括:
(1)分类关系
表示:
知识属于某个领域。
例如:
PHP
↓
编程语言
(2)组成关系
表示:
一个知识由多个知识组成。
例如:
MVC
↓
Model
View
Controller
(3)依赖关系
表示:
知识应用需要另一个知识。
例如:
MVC
↓
OOP
(4)相似关系
表示:
知识具有相近性质。
例如:
PHP
≈
Java
(5)应用关系
表示:
知识用于某个场景。
例如:
数据库索引
↓
系统优化
(6)因果关系
表示:
一个知识导致另一个结果。
例如:
缓存设计
↓
访问速度提升
8.5.4 知识关系网络模型
知识系统不是树结构。
而是:
网络结构。
模型:
PHP
/ | \
OOP MVC MySQL
\ | /
Web系统
这种结构接近:
人类联想记忆方式。
8.5.5 知识关系形成过程
关系不是全部人工定义。
可以通过:
分类形成
例如:
同属于:
软件开发。
学习形成
学习过程中:
发现关联。
实践形成
使用过程中:
产生联系。
流程:
知识对象
↓
关系分析
↓
关系建立
↓
关系保存
8.5.6 Knowledge Relation Engine
知识关系引擎负责:
- 关系发现;
- 关系创建;
- 关系查询;
- 关系维护。
PHP OOP:
class KnowledgeRelationEngine
{
public function createRelation($source,$target,$type)
{
}
public function findRelation($knowledgeId)
{
}
}
8.5.7 KnowledgeRelation Model
class KnowledgeRelation
{
private $sourceId;
private $targetId;
private $type;
public function setType($type)
{
$this->type=$type;
}
public function getType()
{
return $this->type;
}
}
8.5.8 数据库设计
knowledge_relation
CREATE TABLE knowledge_relation
(
id INT PRIMARY KEY AUTO_INCREMENT,
source_id INT,
target_id INT,
relation_type VARCHAR(100),
weight FLOAT,
description TEXT,
create_time DATETIME
);
8.5.9 知识关系查询模型
例如:
查询:
“学习 MVC 需要什么知识?”
系统查询:
MVC
↓
关系查询
↓
OOP
↓
PHP
↓
数据库
返回:
相关知识集合。
8.5.10 MVC 工程结构
wsaios-knowledge/
Controller/
RelationController.php
Model/
KnowledgeRelation.php
Service/
KnowledgeRelationEngine.php
View/
Smarty/
relation.tpl
8.5.11 Controller 实现
class RelationController
{
public function get($id)
{
$engine=
new KnowledgeRelationEngine();
return $engine->findRelation($id);
}
}
8.5.12 Smarty 表现层
relation.tpl
<h2>
知识关系
</h2>
<table>
<tr>
<td>
源知识
</td>
<td>
{$source}
</td>
</tr>
<tr>
<td>
关系类型
</td>
<td>
{$type}
</td>
</tr>
<tr>
8.5.13 知识关系在 WSaiOS-ICAI 中的位置
整体:
Knowledge Object
↓
Knowledge Category
↓
Knowledge Relation
↓
Knowledge Network
↓
Knowledge Application
8.5.14 WSaiOS-ICAI 定义
知识关系模型是 WSaiOS-ICAI 知识系统工程中连接知识对象的核心机制。它使个体人工智能不只是拥有大量知识,而能够理解知识之间的结构、联系和应用路径,从而形成具有组织性的个体知识网络。
下一节:
8.6 知识存储模型
(Knowledge Storage Model)
继续设计:
- 个体知识库;
- Knowledge Memory Object;
- 知识生命周期;
- MySQL 数据库设计;
- PHP OOP + MVC + Smarty 工程实现。