一、本人使用編譯器為Jupyter Notebook,tensorflow版本為1.13.1
import tensorflow as tf
print(tf.__version__)
"""
1.13.1
"""
二、訓練單個神經元網絡
x為-1.0, 0.0, 1.0, 2.0, 3.0, 4.0
y為-3.0, -1.0, 1.0, 3.0, 5.0, 7.0
人用大腦很容易可以看出y=2*x-1,這里進行構建單一神經元模型去預測x=10.0時,y的值,理論應該為19,接下來看下模型的表現吧
from tensorflow import keras
import numpy as npmodel = keras.Sequential([keras.layers.Dense(units=1,input_shape=[1])])
model.compile(optimizer='sgd',loss='mean_squared_error')x = np.array([-1.0,0.0,1.0,2.0,3.0,4.0],dtype=float)
y = np.array([-3.0,-1.0,1.0,3.0,5.0,7.0],dtype=float)model.fit(x,y,epochs=1000)model.predict([10.0])
"""
array([[18.999922]], dtype=float32)
"""
最終模型訓練1000次,預測的結果為18.999922,與實際真實值19相差不太大