国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?

這篇具有很好參考價(jià)值的文章主要介紹了深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

? ? ? 大家好,我是帶我去滑雪!

? ? ? 深度學(xué)習(xí)算法是一種神經(jīng)網(wǎng)絡(luò),而神經(jīng)網(wǎng)絡(luò)就是數(shù)據(jù)結(jié)構(gòu)的圖形結(jié)構(gòu),函數(shù)集的運(yùn)算是向量和矩陣運(yùn)算,調(diào)整函數(shù)集的參數(shù)需要使用微分和偏微分來找出最優(yōu)解。深度學(xué)習(xí)可以通過幾何學(xué)來進(jìn)行解釋,從幾何學(xué)上看,深度學(xué)習(xí)是一種平面坐標(biāo)的轉(zhuǎn)換。假設(shè)在一個(gè)三維空間中,在手中有兩張藍(lán)色和紅色的紙,用手將兩張紙揉成團(tuán),那么這個(gè)由紙構(gòu)成的團(tuán)就為深度學(xué)習(xí)中的輸入數(shù)據(jù)。很明顯,這是一個(gè)分類問題,我們需要將這個(gè)由藍(lán)紅兩張紙構(gòu)成的團(tuán),分成藍(lán)色和紅色兩類。神經(jīng)網(wǎng)絡(luò)的工作就是將這個(gè)團(tuán),通過多個(gè)神經(jīng)層來轉(zhuǎn)換這個(gè)團(tuán),直到將兩張紙分開。下面學(xué)習(xí)一些神經(jīng)網(wǎng)絡(luò)的常用知識。

目錄

1、神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方式、學(xué)習(xí)目標(biāo)、訓(xùn)練循環(huán)

(1)神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方式與學(xué)習(xí)目標(biāo)

(2)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練循環(huán)

2、神經(jīng)網(wǎng)絡(luò)到底學(xué)到了什么?

3、激活函數(shù)與損失函數(shù)

(1)激活函數(shù)

(2)損失函數(shù)

4、梯度下降法與反向傳播算法

(1)梯度下降法

?(2)反向傳播算法

5、神經(jīng)網(wǎng)絡(luò)的樣本和標(biāo)簽數(shù)據(jù)

6、樣本數(shù)據(jù)—特征標(biāo)準(zhǔn)化

(1)特征標(biāo)準(zhǔn)化

?(2)訓(xùn)練集、驗(yàn)證集、測試集

(3)訓(xùn)練周期、批次、批次尺寸


1、神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方式、學(xué)習(xí)目標(biāo)、訓(xùn)練循環(huán)

(1)神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方式與學(xué)習(xí)目標(biāo)

? ? ? 神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)目標(biāo):找出正確的權(quán)重值來縮小損失(損失是指實(shí)際值與預(yù)測值之間的差距)。神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)方式:神經(jīng)網(wǎng)絡(luò)的輸入值X,在經(jīng)過每一層 f 的數(shù)據(jù)轉(zhuǎn)換的計(jì)算后,可以得到預(yù)測值Y',因?yàn)槭潜O(jiān)督學(xué)習(xí),輸入數(shù)據(jù)X有對應(yīng)的真實(shí)目標(biāo)值Y,也稱為標(biāo)簽,可以使用損失函數(shù)計(jì)算Y‘與Y之間差異的損失分?jǐn)?shù),隨后通過優(yōu)化器來更新權(quán)重,找出最好的權(quán)重減少損失分?jǐn)?shù),以便縮小預(yù)測值與目標(biāo)值之間的差異。

(2)神經(jīng)網(wǎng)絡(luò)的訓(xùn)練循環(huán)

? ? ? ?神經(jīng)網(wǎng)絡(luò)可以自行使用數(shù)據(jù)來自自我訓(xùn)練,這個(gè)訓(xùn)練步驟不是只會進(jìn)行一次,而是一個(gè)訓(xùn)練循環(huán),其需要重復(fù)輸入數(shù)據(jù)來訓(xùn)練很多次,這個(gè)被稱為迭代。訓(xùn)練循環(huán)會進(jìn)行到訓(xùn)練出最優(yōu)的預(yù)測模型為止。

? ? ? ?在神經(jīng)網(wǎng)絡(luò)的訓(xùn)練循環(huán)環(huán)節(jié)可以分為正向傳播、評估損失、反向傳播三大階段,輸入的數(shù)據(jù)經(jīng)過正向傳播計(jì)算出預(yù)測值,與真實(shí)目標(biāo)值比較后計(jì)算出損失,然后使用反向傳播計(jì)算出每一層神經(jīng)層的錯誤比例,使用梯度下降法來更新權(quán)重。因?yàn)樯窠?jīng)網(wǎng)絡(luò)本身是一張計(jì)算圖,決定如何從輸入數(shù)據(jù)計(jì)算出預(yù)測值,并反過來計(jì)算各權(quán)重的更新比例。事實(shí)上,整個(gè)訓(xùn)練循環(huán)的步驟均是圍繞著權(quán)重的初始化、使用和更新操作。

? ? ? 上述訓(xùn)練循環(huán)會一直重復(fù)進(jìn)行,直到符合一定條件才會停止訓(xùn)練,神經(jīng)網(wǎng)絡(luò)的循環(huán)步驟如下:

  • 第一步:初始化權(quán)重。整個(gè)訓(xùn)練循環(huán)從初始化權(quán)重開始,通常使用隨機(jī)數(shù)來初始化每一層的權(quán)重,這些權(quán)重構(gòu)成神經(jīng)網(wǎng)絡(luò)的參數(shù);
  • 第二步:使用正向傳播計(jì)算預(yù)測值。使用輸入數(shù)據(jù)以正向傳播的方式,通過整個(gè)神經(jīng)網(wǎng)絡(luò)來計(jì)算出預(yù)測值,使用第一步中的權(quán)重計(jì)算出這些預(yù)測值,使用 f(wx+b)。wx為點(diǎn)積運(yùn)算,f()為激活函數(shù)
  • 第三步:評估預(yù)測值與真實(shí)值誤差的損失。在經(jīng)過反向傳播計(jì)算出預(yù)測值之后,使用損失函數(shù)計(jì)算這些預(yù)測值與真實(shí)值之間的誤差,根據(jù)不同的問題,可以選擇不同的損失函數(shù)進(jìn)行計(jì)算;
  • 第四步:使用反向傳播計(jì)算更新權(quán)重的比例。當(dāng)使用損失函數(shù)計(jì)算出損失分?jǐn)?shù)后,可以使用連鎖律(由于神經(jīng)網(wǎng)絡(luò)具有很多層,前一層的輸出會變成后一層的輸入,連鎖率是指從外向內(nèi)一層一層進(jìn)行微分)和偏微分反向從輸出層到輸入層,使用反向傳播算法計(jì)算出每一層神經(jīng)網(wǎng)絡(luò)的權(quán)重所造成的損失比,即梯度;
  • 更新權(quán)重并繼續(xù)下一次訓(xùn)練。在使用反向傳播算法計(jì)算出各層權(quán)重的梯度后,就可以使用梯度下降法更新權(quán)重,即更新整個(gè)神經(jīng)網(wǎng)絡(luò)的參數(shù),以達(dá)到減少整體損失并創(chuàng)建更好的神經(jīng)網(wǎng)絡(luò)預(yù)測模型。最好,可以使用更新參數(shù)進(jìn)行下一次訓(xùn)練,即重復(fù)第二步到第五步,直到訓(xùn)練出最優(yōu)的預(yù)測模型。

2、神經(jīng)網(wǎng)絡(luò)到底學(xué)到了什么?

? ? ? ?當(dāng)訓(xùn)練神經(jīng)網(wǎng)絡(luò)時(shí),并不是進(jìn)行越多次訓(xùn)練循環(huán)就越能夠訓(xùn)練出最好的預(yù)測模型,隨著訓(xùn)練循環(huán)次數(shù)的增加,神經(jīng)網(wǎng)絡(luò)的更新權(quán)重?cái)?shù)量和次數(shù)也相應(yīng)贈加,神經(jīng)網(wǎng)絡(luò)的學(xué)習(xí)曲線會經(jīng)歷低度擬合、最優(yōu)化、過度擬合三個(gè)階段。低度擬合:訓(xùn)練誤差太大,神經(jīng)網(wǎng)絡(luò)壓根兒沒有學(xué)習(xí)成功,最優(yōu)化:理想的神經(jīng)網(wǎng)絡(luò)訓(xùn)練目標(biāo),過度擬合:神經(jīng)網(wǎng)絡(luò)模型已經(jīng)過度學(xué)習(xí),所建立的模型缺乏泛化性。擬合是指將獲取的數(shù)據(jù)吻合一個(gè)連續(xù)函數(shù),即一條曲線。泛化性是指預(yù)測模型對于未知的數(shù)據(jù)也具有很好的預(yù)測性。

? ? ? ?想要理解神經(jīng)網(wǎng)絡(luò)到底學(xué)習(xí)了什么?可以這樣理解,以學(xué)生考試為例,學(xué)生需要在短時(shí)間內(nèi)準(zhǔn)備期末考試,剛開始會瘋狂背書,盡可能的將知識點(diǎn)都死記硬背住,但隨著復(fù)習(xí)的進(jìn)行,你逐漸對知識點(diǎn)有了新的認(rèn)識,能夠融會貫通舉一反三,并記住了知識點(diǎn)的核心內(nèi)容,這就類似泛化性。相反,如果知識死記硬背,無法融會貫通、舉一反三,就是過度擬合。

3、激活函數(shù)與損失函數(shù)

(1)激活函數(shù)

? ? ? ?對神經(jīng)網(wǎng)絡(luò)的神經(jīng)元使用激活函數(shù),可以讓神經(jīng)元執(zhí)行非線性數(shù)據(jù)的轉(zhuǎn)化。神經(jīng)網(wǎng)絡(luò)如果沒有使用激活函數(shù),那么前一層神經(jīng)層輸出的是張量(張量是機(jī)器學(xué)習(xí)、深度學(xué)習(xí)最最常用的基本數(shù)據(jù)結(jié)構(gòu),以程序語言來說,張量就是不同大小維度的多維數(shù)組,例如(樣本數(shù),特征1,特征2、特征3、特征4))的點(diǎn)積運(yùn)算(點(diǎn)積運(yùn)算是兩個(gè)張量對應(yīng)元素的行和列的乘積和,類似矩陣的乘法運(yùn)算),不論經(jīng)過多少層神經(jīng)層,其擬合的都是一條線性函數(shù)。激活函數(shù)的功能就是打破線性關(guān)系,讓神經(jīng)網(wǎng)絡(luò)擬合更多非線性問題,實(shí)現(xiàn)可以用曲線來擬合。

常用的激活函數(shù):

  • 隱藏層:常使用ReLU()函數(shù);
  • 輸出層:使用Sigmoid()函數(shù)、Tanh()函數(shù)、Softmax()函數(shù),前兩個(gè)在二元分類中使用,后一個(gè)在多元分類中使用。

(2)損失函數(shù)

? ? ? ? 深度學(xué)習(xí)的目標(biāo)函數(shù)就是損失函數(shù),損失函數(shù)可以評估預(yù)測值和真實(shí)值之間的差異,損失函數(shù)是一個(gè)非負(fù)實(shí)數(shù)的函數(shù),損失函數(shù)越小,表示預(yù)測模型越好。深度學(xué)習(xí)的回歸問題的損失函數(shù)常使用均方誤差,而分類問題常使用交叉熵。

? ? ? ?均方誤差(MSE)是計(jì)算預(yù)測值與真實(shí)值之間差異的平方,其計(jì)算公式:

深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?

? ? ? ? 這里均方差的計(jì)算公式中為什么乘以二分之一,這只是為了方便反向傳播計(jì)算梯度的微分,可以抵消平方的2,平方的目的是避免負(fù)值。

? ? ? ?是物理學(xué)中用來測量混亂的程度,熵低表示混亂程度低。在信息論中的熵是用來測量不確定性。信息量是信息的量化值(單位為比特),其大小和事件發(fā)生的概率的大小相反,很少發(fā)生的事情才能引起關(guān)注,司空見慣的事情不會引起注意。信息熵是量化信息的混亂程度,計(jì)算方式為所有可能的概率乘以該概率的信息量并求和,混亂程度越低,信息熵越小。交叉熵是使用信息熵來評估兩組概率向量之間的差異程度,交叉熵越小,就表示兩組概率向量越接近。在深度學(xué)習(xí)中利用交叉熵計(jì)算真實(shí)值和預(yù)測值的損失分?jǐn)?shù),交叉熵越小,說明預(yù)測值越接近目標(biāo)值。

4、梯度下降法與反向傳播算法

(1)梯度下降法

? ? ? ? 梯度下降法是最優(yōu)化理論中一種找出最佳解的方法,就是往梯度的反方向走來找出局部最小值。使用梯度下降法需要考量的重要因素是學(xué)習(xí)率,如果學(xué)習(xí)率過小,神經(jīng)網(wǎng)絡(luò)就需要多次訓(xùn)練來調(diào)整權(quán)重,如果學(xué)習(xí)率過大,就也可能錯過全局最小值。

梯度意義:

  • 在單變量函數(shù)中:梯度是函數(shù)的微分,即函數(shù)在某特定點(diǎn)的斜率;

? ? ? ?假設(shè)單變量函數(shù)為L(w)=w^2,假設(shè)起點(diǎn)為5,訓(xùn)練周期為5,學(xué)習(xí)率為0.4,使用python實(shí)現(xiàn)梯度下降法,代碼如下:

import numpy as np
import matplotlib.pyplot as plt
plt.rcParams['font.sans-serif'] = ['SimSun'] #'畫圖使中文正常顯示為宋體

def L(w):
? ? return w * w


def dL(w):
? ? return 2 * w


def gradient_descent(w_start, df, lr, epochs):

#定義一個(gè)梯度函數(shù),其參數(shù)分別是起點(diǎn)、微分函數(shù)名稱、學(xué)習(xí)率、走幾步的訓(xùn)練周期
?w_gd = []#使用列表保留每一步計(jì)算的新位置,在指定初始位置后,使用for循環(huán)重復(fù)步數(shù)來#計(jì)算下一步梯度下降的新位置,w為目前位置,pre_w為前一個(gè)位置,最好返回每一步的位

#置值
? ? w_gd.append(w_start)
? ? pre_w = w_start

? ? for i in range(epochs):
? ? ? ? w = pre_w - lr * df(pre_w)
? ? ? ? w_gd.append(w)
? ? ? ? pre_w = w
? ? return np.array(w_gd)


w0 = 5
epochs = 5
lr = 0.4
w_gd = gradient_descent(w0, dL, lr, epochs)
print(w_gd)

#繪制梯度下降法的圖表

t = np.arange(-5.5, 5.5, 0.01)
plt.plot(t, L(t), c='b')
plt.plot(w_gd, L(w_gd), c='r', label='學(xué)習(xí)率={}'.format(lr))
plt.scatter(w_gd, L(w_gd), c='r')
plt.legend()
plt.savefig("squares1.png",
? ? ? ? ? ? bbox_inches ="tight",
? ? ? ? ? ? pad_inches = 1,
? ? ? ? ? ? transparent = True,
? ? ? ? ? ? facecolor ="w",
? ? ? ? ? ? edgecolor ='w',
? ? ? ? ? ? dpi=300,
? ? ? ? ? ? orientation ='landscape')

輸出結(jié)果:

深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?

  • 在多變量函數(shù)中:梯度是各變量偏微分的向量,向量是有方向的,梯度就是該點(diǎn)變化率最大的方向。

? ? ? 假設(shè)有如下雙變量函數(shù):

深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?

? ? ? ?設(shè)置起點(diǎn)為[2,4],學(xué)習(xí)率為0.1,使用python實(shí)現(xiàn)雙變量函數(shù)的梯度下降法,代碼如下:

import numpy as np
import matplotlib.pyplot as plt

def L(w1, w2):
? ? return w1**2 + w2**2

def dL(w):
? ? return np.array([2*w[0], 2*w[1]])

def gradient_descent(w_start, df, lr, epochs):
? ? w1_gd = []
? ? w2_gd = []
? ? w1_gd.append(w_start[0])
? ? w2_gd.append(w_start[1])?
? ? pre_w = w_start

? ? for i in range(epochs):
? ? ? ? w = pre_w - lr*df(pre_w)
? ? ? ? w1_gd.append(w[0])
? ? ? ? w2_gd.append(w[1])
? ? ? ? pre_w = w

? ? return np.array(w1_gd), np.array(w2_gd)

w0 = np.array([2, 4])
lr = 0.1
epochs = 40

x1 = np.arange(-5, 5, 0.05)
x2 = np.arange(-5, 5, 0.05)

w1, w2 = np.meshgrid(x1, x2)

fig1, ax1 = plt.subplots()
ax1.contour(w1, w2, L(w1, w2), levels=np.logspace(-3, 3, 30), cmap='jet')
min_point = np.array([0., 0.])
min_point_ = min_point[:, np.newaxis]
ax1.plot(*min_point_, L(*min_point_), 'r*', markersize=10)
ax1.set_xlabel('w1')
ax1.set_ylabel('w2')

w1_gd, w2_gd = gradient_descent(w0, dL, lr, epochs)
w_gd = np.column_stack([w1_gd, w2_gd])
print(w_gd)

ax1.plot(w1_gd, w2_gd, 'bo')
for i in range(1, epochs+1):
? ? ax1.annotate('', xy=(w1_gd[i], w2_gd[i]),?
? ? ? ? ? ? ? ? ? ?xytext=(w1_gd[i-1], w2_gd[i-1]),
? ? ? ? ? ? ? ? ? ?arrowprops={'arrowstyle': '->', 'color': 'r', 'lw': 1},
? ? ? ? ? ? ? ? ? ?va='center', ha='center')
plt.savefig("squares2.png",
? ? ? ? ? ? bbox_inches ="tight",
? ? ? ? ? ? pad_inches = 1,
? ? ? ? ? ? transparent = True,
? ? ? ? ? ? facecolor ="w",
? ? ? ? ? ? edgecolor ='w',
? ? ? ? ? ? dpi=300,
? ? ? ? ? ? orientation ='landscape')

輸出結(jié)果:

深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?

?(2)反向傳播算法

? ? ? 反向傳播算法是一種訓(xùn)練神經(jīng)網(wǎng)絡(luò)常用的優(yōu)化方法,整個(gè)算法可以分為如下3個(gè)階段:

  • 前向傳播階段:輸入值經(jīng)過神經(jīng)網(wǎng)絡(luò),輸出預(yù)測值;
  • 反向傳播階段:將預(yù)測值與真實(shí)值計(jì)算出誤差后,反向傳播計(jì)算出各層權(quán)重誤差比例的精度
  • 權(quán)重更新階段:依據(jù)計(jì)算出的各層權(quán)重比例的梯度,使用梯度下降法來更新權(quán)重。

5、神經(jīng)網(wǎng)絡(luò)的樣本和標(biāo)簽數(shù)據(jù)

? ? ? ?神經(jīng)網(wǎng)絡(luò)的樣本是用來訓(xùn)練神經(jīng)網(wǎng)絡(luò)的數(shù)據(jù)集,標(biāo)簽是每一個(gè)樣本對應(yīng)的真實(shí)目標(biāo)值。標(biāo)簽是監(jiān)督學(xué)習(xí)訓(xùn)練所需樣本對應(yīng)的結(jié)果,神經(jīng)網(wǎng)絡(luò)在訓(xùn)練時(shí)才能計(jì)算預(yù)測值和真實(shí)值之間的損失分?jǐn)?shù)。對于分類數(shù)據(jù)來說,因?yàn)榻徊骒厥鞘褂酶怕氏蛄縼碛?jì)算損失,我們需要先對標(biāo)簽執(zhí)行One-hot編碼,才能和Softmax函數(shù)輸出概率向量進(jìn)行損失分?jǐn)?shù)的計(jì)算。

? ? ? 使用NumPy可以實(shí)現(xiàn)One-hot編碼,假設(shè)我們需要將[5,3,7,4]這樣一組標(biāo)簽數(shù)組,可以通過如下代碼:

import numpy as np

def one_hot_encoding(raw, num):
? ? result = []
? ? for ele in raw:
? ? ? ? arr = np.zeros(num)
? ? ? ? np.put(arr, ele, 1)
? ? ? ? result.append(arr)
? ? ? ??
? ? return np.array(result)
? ??
digits = np.array([5, 3, 7, 4])

one_hot = one_hot_encoding(digits, 10)
print('代轉(zhuǎn)換標(biāo)簽數(shù)組:',digits)
print('獨(dú)立熱編碼后:',one_hot)

輸出結(jié)果:

代轉(zhuǎn)換標(biāo)簽數(shù)組: [5 3 7 4]
獨(dú)立熱編碼后: [[0. 0. 0. 0. 0. 1. 0. 0. 0. 0.]
 [0. 0. 0. 1. 0. 0. 0. 0. 0. 0.]
 [0. 0. 0. 0. 0. 0. 0. 1. 0. 0.]
 [0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]]

6、樣本數(shù)據(jù)—特征標(biāo)準(zhǔn)化

? ? ? ?神經(jīng)網(wǎng)絡(luò)的樣本是一個(gè)數(shù)據(jù)集,在送入神經(jīng)網(wǎng)絡(luò)訓(xùn)練前,需要執(zhí)行特征標(biāo)準(zhǔn)化,將樣本分成訓(xùn)練集、驗(yàn)證集和測試集,并確定訓(xùn)練周期、批次、批次尺寸。

(1)特征標(biāo)準(zhǔn)化

? ? ? ?特征標(biāo)準(zhǔn)化的目的在于平衡特征值的貢獻(xiàn),一般有以下兩種方法:

  • 歸一化:將數(shù)據(jù)縮放為0到1之間,如果數(shù)據(jù)范圍是固定的,沒有極端值,可以使用歸一化方法;

import numpy as np

def normalization(raw):
? ? max_value = max(raw)
? ? min_value = min(raw)
? ? norm = [(float(i)-min_value)/(max_value-min_value) for i in raw]
? ? return norm
? ??
x = np.array([255, 128, 45, 0])

print('原始數(shù)據(jù):',x)
norm = '歸一化后的原始數(shù)據(jù):',normalization(x)
print(norm)

輸出結(jié)果:

原始數(shù)據(jù): [255 128  45   0]
('歸一化后的原始數(shù)據(jù):', [1.0, 0.5019607843137255, 0.17647058823529413, 0.0])
  • 標(biāo)準(zhǔn)化:將數(shù)據(jù)轉(zhuǎn)換成均值為0,標(biāo)準(zhǔn)差為1,如果數(shù)據(jù)雜亂且存在極端值,可以使用標(biāo)準(zhǔn)化方法。

import numpy as np
from scipy.stats import zscore

x = np.array([255, 128, 45, 0])

z_score = zscore(x)
print(z_score)

print(zscore([[1, 2, 3],
? ? ? ? ? ? ? [6, 7, 8]], axis=1))

輸出結(jié)果:

[ 1.52573266  0.21648909 -0.63915828 -1.10306348]
[[-1.22474487  0.          1.22474487]
 [-1.22474487  0.          1.22474487]]

?(2)訓(xùn)練集、驗(yàn)證集、測試集

一份神經(jīng)網(wǎng)絡(luò)數(shù)據(jù)集,會先分成訓(xùn)練集和測試集,訓(xùn)練集在訓(xùn)練時(shí)會再分成訓(xùn)練集和驗(yàn)證集。一般來說訓(xùn)練集、驗(yàn)證集、測試集的比例為70%、20%、10%,它們分別的作用是:

  • 訓(xùn)練集:訓(xùn)練神經(jīng)網(wǎng)絡(luò),調(diào)整模型權(quán)重;
  • 驗(yàn)證集:用于評估和優(yōu)化神經(jīng)網(wǎng)絡(luò),防止訓(xùn)練的神經(jīng)網(wǎng)絡(luò)模型過擬合,即訓(xùn)練集的準(zhǔn)確率提升,同時(shí)驗(yàn)證集的準(zhǔn)確率卻沒有什么變化甚至還出現(xiàn)降低;
  • 測試集:用來評估神經(jīng)網(wǎng)絡(luò)最終的訓(xùn)練模型,并且測試集數(shù)據(jù)只會使用一次。

(3)訓(xùn)練周期、批次、批次尺寸

? ? ? ?深度學(xué)習(xí)的數(shù)據(jù)集一般很大,無法一次將整個(gè)訓(xùn)練數(shù)據(jù)輸入神經(jīng)網(wǎng)絡(luò),為了執(zhí)行效能,會將訓(xùn)練數(shù)據(jù)分為較小單位,稱為批次。每一批的樣本數(shù)量稱為批次尺寸。當(dāng)整個(gè)訓(xùn)練集(分為多個(gè)批次)從前向傳播至反向傳播通過整個(gè)神經(jīng)網(wǎng)絡(luò)一次,稱為一個(gè)訓(xùn)練周期迭代的重復(fù)次數(shù)是指需要多少個(gè)批次來完成一個(gè)訓(xùn)練周期。


更多優(yōu)質(zhì)內(nèi)容持續(xù)發(fā)布中,請移步主頁查看。

若有問題可郵箱聯(lián)系:1736732074@qq.com?

博主的WeChat:TCB1736732074

? ?點(diǎn)贊+關(guān)注,下次不迷路!文章來源地址http://www.zghlxwxcb.cn/news/detail-464483.html

到了這里,關(guān)于深度學(xué)習(xí)之神經(jīng)網(wǎng)絡(luò)是如何自行學(xué)習(xí)的?的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包