微信小程序> tkinter+tensorflow,利用神经网络拟合函数可视化小程序

tkinter+tensorflow,利用神经网络拟合函数可视化小程序

浏览量:2207 时间: 来源:木头VS星星

    写这个小程序的目的有2个:

    1. 向同事证明神经网络可以拟合函数;

    2. 可视化地感受不同参数对拟合过程的影响。

    下图是用tkinter做的GUI界面,请忽略丑陋的布局。

小程序

    1. 网络结构:

    理论认为:当隐藏层节点数足够多时,只需三层BP网络即可逼近任何连续函数。

    程序中网络结构十分简单:1输入,1输出,中间隐藏层的节点数默认为10,为可调参数,目标函数为二次函数,数据点加了噪音。

    2. 当数据过少时,容易出现过拟合:

    当数据点的个数只有4个时,为了使得loss最小,神经网络经过了这四个点,学习结果为3个分段函数,与目标值二次函数存在较大出入,出现了明显的过拟合。

小程序

   3. 学习率太大时,模型可能无法收敛:

小程序

    4. 模型并不是越大越好:

    当神经网络隐藏层节点数由5变为50时,直观上看:拟合结果差别并不大。

    这里其实就涉及到一个问题:精度和速度之间的平衡。

小程序

    未来还可以可视化的观察:

    a. 不同优化器,如Adam,rmsprop,SGD的差别;

    b. 异常值的加入对结果的影响;

    ……

版权声明

即速应用倡导尊重与保护知识产权。如发现本站文章存在版权问题,烦请提供版权疑问、身份证明、版权证明、联系方式等发邮件至197452366@qq.com ,我们将及时处理。本站文章仅作分享交流用途,作者观点不等同于即速应用观点。用户与作者的任何交易与本站无关,请知悉。

产品经理

手机 : 13312967497

擅长 : 小程序流量变现

扫码领取礼包

热门模板

  • 头条
  • 搜狐
  • 微博
  • 百家
  • 一点资讯
  • 知乎