keras线性回归,实例

这篇博客展示了如何利用TensorFlow后端的Keras进行线性回归的实践。在训练过程中,可以看到损失(cost)从1.2237755逐渐下降到0.00012540948,最终得到了权重(W)和偏置(b)的值。
摘要由CSDN通过智能技术生成
import keras
import numpy as np
import matplotlib.pyplot as plt
#Sequential 按顺序构成的模型
from keras.models import Sequential#Sequential是模型结构,输入层,隐藏层,输出层
#Dense 全连接层
from keras.layers import Dense

#使用numpy生成100个随机点
x_data=np.random.rand(100)
noise=np.random.normal(0,0.01,x_data.shape)#生成和x_data形状一样的噪声
y_data=x_data*0.1+0.2+noise

#显示随机点
#plt.scatter(x_data,y_data)
#plt.show()

#构建一个顺序模型
model=Sequential()
#在模型中添加一个全连接层
model.add(Dense(units=1,input_dim=1))#units是输出维度,输出y,input_dim是输入维度,输入x
model.compile(optimizer='sgd',loss='mse')#编译这个模型,sgd是随机梯度下降法,优化器.mse是均方误差

#训练模型
for step in range(3001):
    #每次训练一个批次
    cost=model.train_on_batch(x_data,y_data)#代价函数的值,其实就是loss
    #每500个batch打印一次cost值
    if step %500==0:
        print('cost:',cost)

#打印权值和偏置值
W,b=model.layers[0].get_weights()#线性回归,只有一层
print('W:',W,'b:',b)

#x_dat
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值