神经网络预测数据 | 您所在的位置:网站首页 › 变量的要求是什么 › 神经网络预测数据 |
神经网络
下面这幅图是最简单的多层神经网络,它包含2层,总共由3个神经元相互连接而成。
在此,需要强调的是两层之间的激活函数φ是必须的。为什么呢?我们可以回到刚刚的式子看看。 y=w1 φ(ω11 x1 +ω12 x 2 +b1)+w2 φ(ω21x1+ω22 x2 +b2 ),在这个式子中,若没有激活函数的话 我们可以很容易的知道:该式子实际上就是一个普普通通的线性函数,和y=wx+b没有什么区别。 因为生活中绝大部分的数据都是非线性的,因此普通的线性函数表达能力是非常差的。所以我们需要非线性的激活函数(如relu,sigmoid,tanh等等)将线性的函数转变为非线性的函数,以此增加函数的表达能力。 三层神经网络可以模拟任意的非线性函数首先我们需要知道这个神奇的定理:三层神经网络可以模拟任意的非线性函数。 下图是三层神经网络的结构,具体算法参考二层神经网络。 这里,我使用一个简单的代码实现三层神经网络的预测 首先先给大伙看看数据 上图为进行训练并预测的散点图,我在这里把最后一个点(273, 81)删掉,训练前面的数据来预测最后这个点。接下来康康代码: 1.导入包库和数据 由上图可以看出损失函数的值和训练出的函数的样子以及预测出来的值。由此可见,训练效果还是不错的。 备注1.对数据一定要进行标准化,如果不进行标准化训练出的函数是一条平行的直线。 2.标准化得到的数据可以是: (-1,1) 浙江大学《机器学习》课程—胡浩基老师主讲 知乎博主:HUST潘潘 Pytorch搭建简单神经网络(一)——回归 知乎博主:大写的FENG 数据预处理:归一化和标准化 机器学习 周志华 以上,是本人作为一个初学者对神经网络进行预测的笔记,可能有不对的地方请海涵。 |
CopyRight 2018-2019 实验室设备网 版权所有 |