監督 式 學習
閱讀設定
例 子 碼
import numpy, random, os # 指 明 要用 邊 柞 指令 。
a = 1 # 設 一 個 數 做學習 率 。
bias = 1 # 設定 bias 值
weights = [random.random(),random.random(),random.random()]
# 設定 三 個 權 重 值,每 個 都 係 一 個 隨 機 喺 0 同 1 之 間 揀嘅數 值。
# set 好 嗮所有 嘢喇,開始 程 式 。
def Perceptron(input1, input2, output) : # 定義 一 個 感知 機 ,個 感知 機 有 兩個 輸入 同 一 個 輸出 。
x = input1
y = input2
outputP = input1*weights[0]+input2*weights[1]+bias*weights[2] # 按照柞 權 重 、輸入 、同 bias 計 個 感知 機 嘅輸出 係 乜。
if outputP > 0 :
outputP = 1
else :
outputP = 0
# 個 感知 機 得 兩個 輸出 值-「0」同 「1」。
error = output - outputP # 計 個 誤差 值-即 係 「實際 輸出 」同 「個 感知 機 俾嘅輸出 」差 幾 遠 。
weights[0] += error * input1 * a
weights[1] += error * input2 * a
weights[2] += error * bias * a
# 按誤差 值計吓,每 個 權 重 值要改變 幾多 。
print(x, "or", y, "is : ", outputP) # 將 輸入 值同輸出 值 show 出 嚟俾個 用 家 睇。
for i in range(50) :
Perceptron(1,1,1)
Perceptron(1,0,1)
Perceptron(0,1,1)
Perceptron(0,0,0)
# 俾柞數 據 個 感知 機 run 好 多 次 。由 呢柞數 據 睇得出 ,數 據所 顯示 嘅係一 個 邏輯或 -當 「是 但 一 個 輸入 係 1」或 者 「兩個 都 係 1」嗰陣,個 輸出 要 係 「1」,而當「兩個 都 係 0」嗰陣,輸出 要 係 「0」-「輸出 係 1」 if 「第 一 個 輸入 係 1」 or 「第 二 個 輸入 係 1」。
# 結果 係 ,初頭 嗰陣個 感知 機會 犯 錯,例 如喺其中一 個 輸入 係 1 另一 個 係 0 嗰陣俾 0 做輸出 ,但 係 慢慢學 吓學吓,佢就變 到 識得做邏輯或噉嘅反應 。
睇埋[編輯 ]
攷[編輯 ]