zl程序教程

您现在的位置是:首页 >  其他

当前栏目

深度学习基础之-2.6标签值归一化

基础学习 深度 标签 2.6 归一化
2023-06-13 09:14:42 时间

提出问题

在计算Loss时,会达到172.287,337.246这样大的数值,一般Loss都应该小于1.

解决问题

标签值也归一化公式如下:

(1) y n e w = y − y m i n y m a x − y m i n = y − y m i n y r a n g e y_{new} = \frac{y-y_{min}}{y_{max}-y_{min}} = \frac{y-y_{min}}{y_{range}} \tag{1} ynew​=ymax​−ymin​y−ymin​​=yrange​y−ymin​​(1)

将标签归一化之后进行训练其他操作保持不变,会得到非常小的W,B值:

w=0.01374991 -0.09151012  0.90392058
b=0.08233892
z=0.62474539

这样在预测时,z值也会非常小,只有0.62,一套房子不可能6000块钱,一平米都买不到。所以要把预测出来的值也要做反归一化。根据公式1: (2) y = y n e w ∗ y r a n g e + y m i n y = y_{new}*y_{range}+y_{min} \tag{2} y=ynew​∗yrange​+ymin​(2)

归一化和反归一化的关系

归一化

Weight

Bias

预测值Xt

预测方法

只归一化X

W n o r m W_{norm} Wnorm​反归一化为 W r e a l W_{real} Wreal​

W n o r m W_{norm} Wnorm​反归一化为 B r e a l B_{real} Breal​

不归一化 X t Xt Xt

用 W r e a l , B r e a l W_{real},B_{real} Wreal​,Breal​预测

只归一化Y

使用训练结果 W n o r m W_{norm} Wnorm​

使用训练结果 B n o r m B_{norm} Bnorm​

归一化为 X t n o r m Xt_{norm} Xtnorm​

用 W n o r m , B n o r m W_{norm},B_{norm} Wnorm​,Bnorm​预测

同时归一化X和Y

使用训练结果 W n o r m W_{norm} Wnorm​

使用训练结果 B n o r m B_{norm} Bnorm​

归一化为 X t n o r m Xt_{norm} Xtnorm​

用 W n o r m , B n o r m W_{norm},B_{norm} Wnorm​,Bnorm​预测,再反归一化结果

  • X必须归一化,否则无法训练
  • 训练出的结果W和B,在推理时有两种使用方式:
    • a. 直接使用,此时必须把预测时输入的X也做相同规则的归一化
    • b. 反归一化为W,B的本来值 W R e a l , B R e a l W_{Real},B_{Real} WReal​,BReal​,推理时输入的X不需要改动
  • Y可以归一化,好处是迭代次数少。如果结果收敛,也可以不归一化,如果不收敛(数值过大),就必须归一化
  • 如果Y归一化,先沿袭第2步的做法,对得出来的结果做关于Y的反归一化

标签值归一化

标签值不归一化

Loss初始值只有0.04

oss初始值达到4000

迭代次数1000次

迭代次数2000次

https://github.com/microsoft/ai-edu/blob/master/B-教学案例与实践/B6-神经网络基本原理简明教程/05.6-归一化标签值.md

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/183684.html原文链接:https://javaforall.cn