SS86感知器开箱,感知机

多层感知器 , 为什么能实现非线性?

SS86感知器开箱,感知机


因为加入了激活函数 , 激活函数是非线性的就可以实现非线性 , 这个道理很简单 , 可以尝试去用非线性函数套一个线性函数来操作 , 得到的一定是非线性结果 。不过多层感知器网络不一定会有激活函数 , 激活函数也不一定是非线性的 。这个可以人为地设定 , 只是采用非线性激活函数加随机权重初始值的方法是目前理论上和实际验证中得出来的效果最好的方法 。
神经网络多样性的意义何在?既然多层感知机在理论上已经可以拟合任何函数 , 为什么要有不同的形式?
SS86感知器开箱,感知机


首先 , 理论是理论 , 理论成立的东西实践中不一定好用 。比如感知机 , 虽然理论上能拟合任何函数 , 但会因为输入神经元数的多少 , 输入向量的大小 , 关联程度等而影响其拟合能力 。在遇到类似问题时 , 简单的可以归一降维等处理 , 复杂的就需要与遗传算法等结合才能达到效果 。而对于神经网络本身的处理 , 如对神经元进行灰化 , 衍生出灰色神经网络等其他类型的神经网络则能很轻松的处理这种问题 。
【SS86感知器开箱,感知机】其次 , 不同神经网络有差异 , 从大的分类 , 比如HopField神经网络是优化算法 , 和遗传算法功能一样 。从小了分类 , 感知机和Bp神经网络都是拟合神经网络 , 但他们还是有差异的 。感知机在分类时 , 他的界限只能是凸边 , 但bp神经网络也可以是任意形状的界限 。兄弟 , 如果你要真想学神经网络 , 建议你多去网上看看211学校的硕士博士毕设 。

    推荐阅读