針對分類問題的單隱層前饋神經網路模型

2021-08-07 14:27:13 字數 1345 閱讀 3382

針對分類問題的單隱層前饋神經網路模型

以下**片內容為周志華著《

機器學習

》習題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個隱層 一般地,靠增加隱層節點數來獲得較低的誤差,其訓練效果要比增加隱層數更容易實現。對於沒有...