# 執行緒回歸例項教程
# 人為的構造一組由y=0.5x+2加上一些雜訊而生成的資料
# 資料量為200個,其中160個作為train set,後40個作為test set
import numpy as np
import matplotlib.pyplot as plt
from keras.models import sequential
from keras.layers import dense
from keras.optimizers import sgd
# 構造輸入資料x和y
x = np.linspace(-2, 6, 200)
np.random.shuffle(x)
y = 0.5*x+2+0.15*np.random.randn(200,)
# plot data
plt.scatter(x, y)
plt.show()
#前160條資料作為訓練集,160-200條資料作為測試集
x_train, y_train = x[:160], y[:160]
x_test, y_test = x[160:],y[160:]
# 資料準備完成,接下來進入到模型構建————————————————
model = sequential() # 堆疊模型,神經網路一層一層的堆疊起來
model.add(dense(input_dim = 1, units = 1)) # 輸入和輸出的維度都為1
# 制定模型中的損失函式loss function(mse最小二成誤差),優化器sgd,隨機梯度下降
model.compile(loss='mse', optimizer=sgd(lr=0.01, momentum=0.9, nesterov=true))
# training
print('training')
for step in range(100):
cost = model.train_on_batch(x_train, y_train)
if step % 20 ==0:
print('train cost:', cost)
print('\ntesting------------')
loss_and_metrics = model.evaluate(x_test, y_test, batch_size=40)
print('test cost:', cost)
w, b = model.layers[0].get_weights()
print('weights= ', w, '\nbiases=', b)
# 對新的測試點進行**
y_pred = model.predict(x_test)
plt.scatter(x_test, y_test)
plt.plot(x_test, y_pred)
plt.show()
乙個神經元的神經網路
coding utf 8 filename 乙個神經元的神經網路 software pycharm author li xu time 2020 1 15 15 45 編寫乙個神經元 import numpy as np defsigmod x 定義乙個啟用函式 param x 引數x return...
單個人工神經元的實現
人工神經元 神經元是構成神經網路的最基礎單元 網路結構 人工神經網路由神經元模型構成,這種由許多神經元組成的資訊處理網路具有並行分布結構。輸入資料採用二維陣列data儲存,輸入4組輸入資料 0,0 0,1 1,0 1,1 計算人工神經元的程式的處理步驟如下 單個人工神經元對於輸入訊號計算輸出值的計算...
lambda 實現只有乙個抽象方法的介面
使用lambda表示式,實現只有乙個抽象方法的介面。package rxxj public inte ce myinter package rxxj public class test public static void main string args 匿名內部類實現函式式介面 package ...