[NN]线性回归 Linear Regression

线性回归 Linear Regression

线性回归详细代码请移步此处

对于线性模型:
y = w × x + b y=w×x+b y=w×x+b

其中,w为权重,初始值在本次代码中采用正态分布随机数,偏置b初始化为0.0

y p r e y_{pre} ypre 表示线性模型的预测值, y r e a l y_{real} yreal 表示对于输入x对应的真实标签,则损失函数采用均方误差:
E r r o r = ( y p r e − y r e a l ) 2 Error=(y_{pre}-y_{real})^{2} Error=(ypreyreal)2

将线性模型公式带入得到:
E r r o r ( x ) = ( ( w × x + b ) − y r e a l ) 2 Error(x)=((w×x+b)-y_{real})^{2} Error(x)=((w×x+b)yreal)2

这个式子就变成了关于x的一元二次函数,且开口向上,那么,预测问题就变成了降低误差问题,进一步变成了寻找抛物线最低点的问题:
在这里插入图片描述
E r r o r ( x ) Error(x) Error(x)的斜率,可用grad(param)=tf.GradientTape().gradient( E r r o r ( x ) Error(x) Error(x), param)来获得,那么权重w和偏置b的更新公式为:
w = w − η ∗ g r a d ( w ) w=w- \eta *grad(w) w=wηgrad(w)
b = b − η ∗ g r a d ( b ) b=b- \eta *grad(b) b=bηgrad(b)
其中, η \eta η 成为步长(step size)或者学习率(learning rate)
只要设定一个合理的学习率,w和b就会一步步靠近最低点,但是如果步长过大,就很难收敛到最低点,俗称步子迈太大容易扯到蛋:
在这里插入图片描述
各位观众老爷,给个赞再走吧~~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

是土豆大叔啊!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值