學習的兩個分支:
1、專家系統(也稱-符號主義、俗稱規則)
if:
elif:...
else ....
查看數據量:
1) 沒有數據或者數據量比較少的情況下更適合規則
2) 如果有大量的數據 => 基於概率的解決方案
2、基於概率的解決方案(也稱-連接主義)
專家系統:
專家系統 = 推理引擎 + 知識
利用知識和推理來解決決策問題
BI系統:對數據進行包裝輔助用戶決策,人還是決策核心
AI系統: 幫助或替代用戶去做決策
專家系統核心流程:
1、需要知識庫: 領域內的專家 -> 經驗 -> 將經驗轉化爲計算機能識別的知識 -> 知識庫 -> 推理引擎 <->
working storage --> user interface
任務:搭建金融知識圖譜-最終目的:風控
金融專家->金融風控涉及到實體、關係 ->知識圖譜工程師 -> 集合專家經驗、構建知識圖譜 --> 圖數據庫 -> 推理層(AI工程師、NLP工程師) -> API -> 系統(業務)
特點:
處理不確定性
知識的表示
可解釋性:一條條規則
可以做知識推理
給出一個規則集合:
Rule 1: If A and C Then F
Rule 2: IF A and E Then G
Rule 3: IF B Then E
Rule 4: IF G Then D
Prove:IF A and B true Then D is true
算法: Forward Chaining Algorithm
已知: A is True & B is True
1) 結合Rule 3 -> {E is true} 第一層循環
2) 結合Rule 2 -> {G is true} 第二層循環
3) 結合Rule 4 -> {D is true} 第二層循環
算法: Backward Chaining Algorithm
D is true -> A is True & B is True
1) D is true -> G is True -> A is true and E is true -> A is True & B is True
專家系統的缺點:
1、設計大量的規則
2、需要領域專家來主導
3、可移植性差:做完一個系統規則很難移植到第二個系統或第三個系統
4、學習能力差
5、人能考慮的範圍是有限的
專家系統案例: 風控
問題:根據用戶的信息,決定要不要放貸
1、if age < 18 reject -1
2、if m-money < 3000 reject -2
3、if city == 'xxx' reject -0.5
........
rule engine 可以給每一條規則不同的權重
一些需要考慮的問題:
1、邏輯推理(background or forward)
2、規則衝突 rule 01: if A then B if A then -B
3、選擇最小規則的子集: 1000條規則存在冗餘規則,例如第二條規則和第三條規則包含第四條規則
可以採取貪心算法,從規則集合一個一個規則,按結果影響效果不大的規則刪除