2 非線性回歸

2022-05-14 23:46:29 字數 1603 閱讀 2284

import

keras

import

numpy as np

import

matplotlib.pyplot as plt

#sequential按順序構成的模型

from keras.models import

sequential

#dense全連線層

from keras.layers import

dense,activation

from keras.optimizers import sgd

#

使用numpy生成200個隨機點

x_data = np.linspace(-0.5,0.5,200)

noise = np.random.normal(0,0.02,x_data.shape)

y_data = np.square(x_data) +noise

#顯示隨機點

構建乙個順序模型

model =sequential()

#在模型中新增乙個全連線層

#1-10-1

model.add(dense(units=10,input_dim=1,activation='

relu'))

#model.add(activation('tanh'))

model.add(dense(units=1,activation='

relu'))

#model.add(activation('tanh'))

#定義優化演算法

sgd = sgd(lr=0.3)

#sgd:stochastic gradient descent,隨機梯度下降法

#mse:mean squared error,均方誤差

model.compile(optimizer=sgd,loss='

mse')#

訓練3001個批次

for step in range(3001):

#每次訓練乙個批次

cost =model.train_on_batch(x_data,y_data)

#每500個batch列印一次cost值

if step % 500 ==0:

print('

cost:

',cost)

#x_data輸入網路中,得到**值y_pred

y_pred =model.predict(x_data)

#顯示隨機點

plt.scatter(x_data,y_data)

#顯示**結果

tensorflow非線性回歸

該程式有輸入層,中間層和輸出層 執行環境 ubuntun menpo queen queen x550ld downloads py python nonliner regression.py coding utf 8 定義乙個神經網路 輸入層乙個元素,中間層10個神經元,輸出層1個元素 impor...

1 線性回歸與非線性回歸

線性回歸就是針對回歸問題的一種線性模型。特點 簡單優雅,模型本身擬合樣本能力不強,通常需要深層次的特徵。對損失函式的一些解釋 假定誤差服從中心極限定理,說明了誤差進行疊加最後趨近於標準正態分佈,先對誤差建立極大似然估計,然後引入到樣本上,最終求解得到損失函式。ps 中心極限定理假定每個樣本需要滿足均...

Tensorflow 線性回歸與非線性回歸

二次代價函式 均方差 神經網路 1 20 1 w1 tf.variable tf.random normal 1 20 b1 tf.variable tf.zeros 20 wxplus1 tf.matmul x,w1 b1 l1 tf.nn.tanh wxplus1 w2 tf.variable ...