一、TensorFlow2.0——简单线性回归

 以下代码均在jupyter notebook内实现

 

(1)引包

import pandas as pd
import tensorflow as tf
from matplotlib import pyplot as plt
%matplotlib inline # 魔法函数

 (2)使用pandas库导入数据

data = pd.read_csv('F://JupyterWorkSpace//data//Test.csv')

 (3)查看导入的数据(简单的测试数据)注:导入魔法函数后,使用data就可以直接输出,省去了print的操作

data

 

一、TensorFlow2.0——简单线性回归_第1张图片

 (4)使用matplotlib的散点图查看数据(接近线性相关)

plt.scatter(data.edu, data.money)

一、TensorFlow2.0——简单线性回归_第2张图片

(5)构造出 f(x) = ax + b 即求出参数a, b 

x = data.edu
y = data.money

(6)初始化顺序模型(注:顺序模型Sequential 有输入,有输出,按照顺序搭建)

model = tf.keras.Sequential() 

(7)建立模型(Dense建立了 f(x) = ax + b 的模型,Dense(输出数据的维度,输入数据的维度)input_shape为元组,有逗号

model.add(tf.keras.layers.Dense(1, input_shape=(1, )))

(8)编译模型,【optimizer=‘adam’,优化器:梯度下降法优化】 【loss=‘mse’, 损失函数:使用均方差判断误差】

model.compile(optimizer='adam', loss='mse')

(9)训练模型(loss最后损失值为0.0684)

log = model.fit(x, y, epochs=1000)

一、TensorFlow2.0——简单线性回归_第3张图片

(10)查看预测值现有的x进行预测(即 money), 已经很接近已知的money值了

model.predict(x)

一、TensorFlow2.0——简单线性回归_第4张图片

(11)预测一个未知的edu对应的money值,edu为20时,预测money值为23.9033

model.predict(pd.Series([20])

 

 

 

你可能感兴趣的:(TensorFlow2.0入门)