新聞中心
在這個例子中,我們創(chuàng)建了一個由多個層組成的多層神經(jīng)網(wǎng)絡(luò),以提取訓(xùn)練數(shù)據(jù)中的基礎(chǔ)模式。 這個多層神經(jīng)網(wǎng)絡(luò)將像一個回歸器一樣工作。 我們將根據(jù)下面等式生成一些數(shù)據(jù)點: y = 2x2 + 8。

創(chuàng)新互聯(lián)建站是一家專業(yè)提供蘆溪企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站制作、成都網(wǎng)站設(shè)計、H5建站、小程序制作等業(yè)務(wù)。10年已為蘆溪眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站建設(shè)公司優(yōu)惠進行中。
如下所示導(dǎo)入必要的軟件包 -
import numpy as np
import matplotlib.pyplot as plt
import neurolab as nl根據(jù)上述公式生成一些數(shù)據(jù)點 -
min_val = -30
max_val = 30
num_points = 160
x = np.linspace(min_val, max_val, num_points)
y = 2 * np.square(x) + 8
y /= np.linalg.norm(y)現(xiàn)在,重塑這個數(shù)據(jù)集如下 -
data = x.reshape(num_points, 1)
labels = y.reshape(num_points, 1)使用以下命令可視化并繪制輸入數(shù)據(jù)集 -
plt.figure()
plt.scatter(data, labels)
plt.xlabel('Dimension 1')
plt.ylabel('Dimension 2')
plt.title('Data-points')現(xiàn)在,構(gòu)建神經(jīng)網(wǎng)絡(luò),其具有兩個隱藏層,第一隱藏層中具有十個神經(jīng)元的神經(jīng)元,第二隱藏層中六個,輸出層中一個神經(jīng)元。
neural_net = nl.net.newff([[min_val, max_val]], [10, 6, 1])現(xiàn)在使用梯度訓(xùn)練算法 -
neural_net.trainf = nl.train.train_gd現(xiàn)在訓(xùn)練網(wǎng)絡(luò)的目標(biāo)是學(xué)習(xí)上面生成的數(shù)據(jù) -
error = neural_net.train(data, labels, epochs = 1000, show = 100, goal = 0.01)訓(xùn)練數(shù)據(jù)點上運行神經(jīng)網(wǎng)絡(luò) -
output = neural_net.sim(data)
y_pred = output.reshape(num_points)現(xiàn)在繪圖并可視化任務(wù) -
plt.figure()
plt.plot(error)
plt.xlabel('Number of epochs')
plt.ylabel('Error')
plt.title('Training error progress')現(xiàn)在將繪制實際與預(yù)測輸出關(guān)系圖 -
x_dense = np.linspace(min_val, max_val, num_points * 2)
y_dense_pred = neural_net.sim(x_dense.reshape(x_dense.size,1)).reshape(x_dense.size)
plt.figure()
plt.plot(x_dense, y_dense_pred, '-', x, y, '.', x, y_pred, 'p')
plt.title('Actual vs predicted')
plt.show()執(zhí)行上述代碼,您可以觀察如下所示的圖形 -
當(dāng)前題目:創(chuàng)新互聯(lián)AI教程:AI人工智能 多層神經(jīng)網(wǎng)絡(luò)
分享URL:http://www.dlmjj.cn/article/djsgecs.html


咨詢
建站咨詢
