基本理解:
给出输入x及输出y的数组,求线性关系的W,如何设计神经网络?
1.根据xy推导w与loss关系
y'=wx
loss=(y'-y)^2
w, loss关系呈现为U型图;
2.查找最佳w,将问题转换为求导
w=w-r*(dloss/dw)
dloss/dw=d(y'-y)^2/dw=2x(wx-y)
设置r=0.01循环多次后越来越接近正确w
使用touch:
1.线性相关的问题初始化:
模式:1输入x、1输出y、1权重w、1偏差b;
学习数据:一组x, y
目标:推导出最接近w,使得给出x,能得到期望的y
2.推理:
a.y=wx+b
b.l=(y'-y)^2
c.正向、反向推导w
dl/dw = 2x(xw - y); α=0.01;
d.调整w=w-α*dl/dw
e.持续学习,趋近最佳
3.Torch的方式
参考教程:
PyTorchZeroToAll
Sung Kim <hunkim+ml@gmail.com> HKUST
Code: https://github.com/hunkim/PyTorchZeroToAll
Slides: http://bit.ly/PyTorchZeroAll