神经网络如何模拟任意函数?机器学习算法与Python实战关注共 1052字,需浏览 3分钟 ·2021-10-21 22:11 点击关注公众号,干货及时送达来源:知乎—jerryjee地址:https://zhuanlan.zhihu.com/p/39620481301概述神经网络之所以强大,在于它强大的模拟能力。理论上,它可以以无限小的误差模拟任意函数。也就是说,可以利用神经网络构建任意函数,得到任意算法。这里使用一些可视化的样例,帮助大家获得一些直观的理解。02一元函数的模拟直线这个是最简单的情况,我们使用一个不带激活函数的神经元即可模拟。通过调整 参数,即可模拟任意直线。阶跃函数Step Function我们使用一个带Sigmoid激活函数的神经元来模拟。随着 参数继续增大,神经网络就会逐步逼近该函数。矩形脉冲函数我们分成几步来模拟:1. 使用1个神经元来模拟函数的左半部分。 2. 使用1个神经元来模拟函数的右半部分(上下颠倒)。3. 再使用一个神经元将前2步的图像进行合成得到的结果很好地近似了目标函数。其它一元函数利用矩形脉冲函数,我们很容易近似其它任意函数,就像积分原理一样。03二元函数的模拟平面这个是最简单的情况,我们使用一个不带激活函数的神经元即可模拟。通过调整 参数,即可模拟任意平面。二元阶跃函数Step Function我们使用一个带Sigmoid激活函数的神经元来模拟。二元矩形脉冲函数与一元函数的情况类似,我们分步实现它:1. 使用一个神经元来模拟函数的一个边缘 2. 然后我们可以得到以下函数:3. 最后,可以合成以下函数最终的神经网络结构如下图所示:其它二元函数利用二元矩形脉冲函数,我们很容易近似其它任意二元函数,就像积分原理一样。n元函数的模拟原理一样,自己想象!04问题我们已经拥有了数字电路以及软件程序算法,为什么还需要神经网络?构建与数字电路之上的软件程序也可以模拟任意函数,那为什么还要发明人工神经网络呢?推荐阅读(点击标题可跳转阅读)JupyterLab 终于出了 Windows 桌面版机器学习最困难的部分:超参数调试神经网络之CNN与RNN的关系【机器学习基础】多标签分类的玩法三步搞定机器学习核心:矩阵求导国内Github下载很慢,用上了这个插件后,下载速度嗖嗖嗖的~!老铁,三连支持一下,好吗?↓↓↓ 浏览 45点赞 评论 收藏 分享 手机扫一扫分享分享 举报 评论图片表情视频评价全部评论推荐 神经网络如何模拟任意函数?机器学习与生成对抗网络0人脑如何模拟NLP?视学算法0如何反驳「神经网络本质不过是初中生都会的复合函数」?小白学视觉0神经网络为何非激活函数不可?点击上方“小白学视觉”,选择加"星标"或“置顶”重磅干货,第一时间送达编者荐语 激活函数是向神经网络中引入非线性因素,通过激活函数神经网络就可以拟合各种曲线。激活函数是神经网络中一个至关重要的概念,决定了某个神经元是否被激活,判断该神经元获得的信息是否有用,并决定该保留还是该去掉此神经元。如何看待神经网络的黑箱?算法进阶0如何看待神经网络的黑箱?小白学视觉0Python编写装饰器,给任意函数计时蚂蚁学Python0一文讲透神经网络的激活函数算法进阶0C++一行代码实现任意系统函数Hook!云加社区0如何实现一个map函数?前端人0点赞 评论 收藏 分享 手机扫一扫分享分享 举报