TensorFlow实现线性回归预测


1、一元线性回归预测:

import pandas as pdimport tensorflow as tfimport numpy as npfrom  matplotlib import  pyplot as pltplt
.rcParams['font.sans-serif']=['SimHei'] #显示中文标签plt.rcParams['axes.unicode_minus']=False   
#解决负号“-”显示为方块的问题data=pd.read_csv('D:/code/python/pythonProject/tensorflow51自学/
tensorflow入门与实战-基础部分数据集/Income1.csv')x=data.Educationy=data.Incomemodel=tf.keras
.Sequential()#定义模型, 使用一层全连接, 输出为一维,输入为一维model.add(tf.keras.layers.Dense(1,input_shape=(1,)))
#编译模型, 使用adam(梯度下降)作为优化函数, 使用mse(均方差)作为损失函数model.compile(optimizer='adam',loss='mse')
#mes均方差# 开始训练history=model.fit(x,y,epochs=50000)#训练次数# Y=model.predict(pd.Series([20]))
#使用训练后的模型进行预测Y=model.predict(x)plt.plot(x,Y,'r-s',label="训练模型预测")plt
.scatter(data.Education ,data.Income,color='b',label='原始数据')#一元线性b=np
.sum((x-np.mean(x))*(y-np.mean(y)))/np.sum((x-np.mean(x))**2)a=np.mean(y)-b*np
.mean(x)x1=np.arange(10,22)y2=b*x1+aplt.plot(x1,y2,'m-p',label='一元线性预测')plt
.legend()plt.show()1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.23.24.25.26.27.28.29.

Income1.csv数据,其中Education为受到教育年限、Income为收入,想预测受到教育的年限和收入之间的关系

EducationIncome
1026.65884
10.4013427.30644
10.8428122.13241
11.2441521.16984
11.6454815.19263
12.0869626.39895
12.4882917.43531
12.8896325.50789
13.2909736.88459
13.7324439.66611
14.1337834.39628
14.5351241.49799
14.9765944.98157
15.3779347.0396
15.7792648.25258
16.2207457.03425
16.6220751.49092
17.0234161.33662
17.4648857.58199
17.8662268.55371
18.2675664.31093
18.7090368.95901
19.1103774.61464
19.5117171.8672
19.9130476.09814
20.3545275.77522
20.7558572.48606
21.1571977.35502
21.5986672.11879
2280.26057

训练500次

tensorflow 线性回归 预测_tensorflow_02

训练5000次

tensorflow 线性回归 预测_线性回归_03

训练30000次

tensorflow 线性回归 预测_tensorflow_04

训练50000次

tensorflow 线性回归 预测_方差_05

总结:随着模型训练次数的增加,训练的一元线性回归越来越接近标准的线性回归模型,从中可以看出,只要训练次数足够大,训练模型就可以无线逼近直到完成和标准的模型重合



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

QR Code
微信扫一扫,欢迎咨询~

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 155-2731-8020
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

手机不正确

公司不为空