針對分類問題的單隱層前饋神經網路模型
以下**片內容為周志華著《
機器學習
》習題5.5的自編程式。
# 周志華《機器學習》習題5.5
import random
import numpy as np
import matplotlib.pyplot as plt
dataset = [[0.697,0.460,1,0],
[0.774,0.376,1,0],
[0.634,0.264,1,0],
[0.608,0.318,1,0],
[0.556,0.215,1,0],
[0.403,0.237,1,0],
[0.481,0.149,1,0],
[0.437,0.211,1,0],
[0.666,0.091,0,1],
[0.243,0.267,0,1],
[0.245,0.057,0,1],
[0.343,0.099,0,1],
[0.639,0.161,0,1],
[0.657,0.198,0,1],
[0.360,0.370,0,1],
[0.593,0.042,0,1],
[0.719,0.103,0,1]]
attrset = ['density','sugar','quality']
numincell = 2
nummidcell = 8
numoutcell = 2
vih = [[random.random()*1 for m in range(numincell)] for n in range(nummidcell)]
rh = [random.random()*1 for m in range(nummidcell)]
whj = [[random.random()*1 for m in range(nummidcell)] for n in range(numoutcell)]
sj = [random.random()*1 for m in range(numoutcell)]
maxtimes = 10000
time = 0
yeta = 1
loss =
while time
機器學習 對分類問題的評價方法
準確率 accuracy 正確 的樣本佔所有樣本的比例 精確率 查準率 precision 為true的樣本中真正為true的比例,p tp tp fp 查全率 召回率 recall 所有正樣本中被正確 的比例,r tp tp fn f1 score 查準率和查全率的調和平均值 roc曲線指受試者工...
神經網路中隱層數和隱層節點數問題的討論
一 隱層數 一般認為,增加隱層數可以降低網路誤差 也有文獻認為不一定能有效降低 提高精度,但也使網路複雜化,從而增加了網路的訓練時間和出現 過擬合 的傾向。一般來講應設計神經網路應優先考慮 3層網路 即有 1個隱層 一般地,靠增加隱層節點數來獲得較低的誤差,其訓練效果要比增加隱層數更容易實現。對於沒...
神經網路中隱層數和隱層節點數問題的討論
一 隱層數一般認為,增加隱層數可以降低網路誤差 也有文獻認為不一定能有效降低 提高精度,但也使網路複雜化,從而增加了網路的訓練時間和出現 過擬合 的傾向。一般來講應設計神經網路應優先考慮 3層網路 即有 1個隱層 一般地,靠增加隱層節點數來獲得較低的誤差,其訓練效果要比增加隱層數更容易實現。對於沒有...