過程知識和宣告式知識的區別
我們可以以各種形式將知識表達給計算機系統中的推理引擎來解決問題。知識有兩種重要的表示形式,即過程知識和宣告式知識。過程知識和宣告式知識之間的基本區別在於,過程知識除了提供知識之外,還提供控制資訊,而宣告式知識只提供知識,而不提供實施知識的控制資訊。
通讀本文,進一步瞭解過程知識和宣告式知識,以及它們之間的區別。
什麼是過程知識?
過程或命令式知識闡明瞭如何執行特定任務。它規定了執行的步驟。因此,過程知識提供了實施知識所需的必要控制資訊。
示例
以下示例演示瞭如何以過程方式使用 JavaScript 複製陣列:
var a = [1, 2, 3, 4, 5];
var b = [];
for(var i=0; i < a.length; i++) {
b.push(a[i]);
}
console.log(b);
輸出
[ 1, 2, 3, 4, 5 ]
什麼是宣告式知識?
宣告式或函式式知識闡明瞭要執行特定任務的內容。它規定了要執行的函式。因此,在宣告式知識中,只提供了知識,而沒有提供實施知識的控制資訊。因此,為了使用宣告式知識,我們必須將宣告式知識與提供控制資訊的程式結合起來。
示例
以下示例演示瞭如何以宣告方式使用 JavaScript 複製陣列:
var a = [1, 2, 3, 4, 5];
var b = a.map(function(number){
return number*1
});
console.log(b);
輸出
它將產生以下輸出[1, 2, 3, 4, 5]
過程知識和宣告式知識的區別
下表重點介紹了過程知識和宣告式知識之間的重要區別:
| 關鍵 | 過程知識 | 宣告式知識 |
|---|---|---|
| 含義 | 過程知識提供瞭如何完成特定任務的知識。 | 宣告式知識提供了關於某事物的基本知識。 |
| 替代名稱 | 過程知識也稱為命令式知識。 | 宣告式知識也稱為函式式知識 |
| 基礎 | 過程知識圍繞著概念的“如何”。 | 宣告式知識圍繞著概念的“什麼”。 |
| 溝通 | 過程知識難以溝通。 | 宣告式知識易於溝通。 |
| 方向 | 過程知識是面向過程的。 | 宣告式知識是面向資料的。 |
| 驗證 | 過程知識的驗證並不容易。 | 宣告式知識的驗證非常容易。 |
| 除錯 | 過程知識的除錯並不容易。 | 宣告式知識的除錯非常容易。 |
| 用途 | 過程知識的使用頻率較低。 | 宣告式知識更通用。 |
| 表示 | 過程知識由一組規則表示。 | 宣告式知識由產生式系統表示。 |
| 來源 | 過程知識來源於行動、經驗、主觀見解等。 | 宣告式知識來源於原則、程式、概念、過程等。 |
結論
從以上討論中,我們可以得出結論:過程知識涉及知識中的意識感知和意識計劃,而宣告式知識不包括意識感知和計劃。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP