使用tf.keras实现简单的线性回归
-
单变量的线性回归算法(eg:x代表学历,f(x)代表收入):f=ax+b
- 定义损失函数:使用均方差(真实值与预测值之差的平方均值)作为损失函数;
- 优化目标:找到合适的a,b,使得损失函数值最小;
import tensorflow as tf import pandas as pd data = pd.read_csv(r"./Income1.csv")#导入数据 data = pd.read_csv(r"./Income1.csv") data.head()#观察数据 import matplotlib.pyplot as plt %matplotlib inline plt.scatter(data.Education,data.Income) x = data.Education#设置训练集 y = data.Income #-------------模型定义 model =tf.keras.Sequential()#这里是一个顺序模型 model.add(tf.keras.layers.Dense(1,input_shape=(1,)))#通过这样来建立了一个模型,输出维度为1,输入维度也为1 model.summary()#呈现模型的样子 output(none,1),前面表示输出数据的数量,而1代表输出数据的维度 #----------------------设置学习过程 model.compile(optimizer="adam"#设置梯度下降优化方法,ada是常用的方法此时的学习率为默认值0.01 ,loss="mse"#mse是均方差的缩写# ) #-----------------预测结果 model.predict(x)