• bp神经网络对数据的要求,bp神经网络参数有哪些


    1、BP神经网络的训练集需要大样本吗?一般样本个数为多少?

    BP神经网络的训练集需要大样本吗?一般样本个数为多少?
    BP神经网络样本数有什么影响
    学习神经网络这段时间,有一个疑问,BP神经网络中训练的次数指的网络的迭代次数,如果有a个样本,每个样本训练次数n,则网络一共迭代an次,在n>>a 情况下 , 网络在不停的调整权值,减小误差,跟样本数似乎关系不大。而且,a大了的话训练时间必然会变长。
    换一种说法,将你的数据集看成一个固定值, 那么样本集与测试集 也可以按照某种规格确定下来如7:3 所以如何看待 样本集的多少与训练结果呢? 或者说怎么使你的网络更加稳定,更加符合你的所需 。
    我尝试从之前的一个例子中看下区别
    如何用70行Java代码实现深度神经网络算法
    作者其实是实现了一个BP神经网络 ,不多说,看最后的例子
    一个运用神经网络的例子
    最后我们找个简单例子来看看神经网络神奇的效果。为了方便观察数据分布,我们选用一个二维坐标的数据,下面共有4个数据,方块代表数据的类型为1,三角代表数据的类型为0,可以看到属于方块类型的数据有(1,2)和(2,1),属于三角类型的数据有(1,1),(2,2),现在问题是需要在平面上将4个数据分成1和0两类,并以此来预测新的数据的类型。

    图片描述
    我们可以运用逻辑回归算法来解决上面的分类问题,但是逻辑回归得到一个线性的直线做为分界线,可以看到上面的红线无论怎么摆放,总是有一个样本被错误地划分到不同类型中,所以对于上面的数据,仅仅一条直线不能很正确地划分他们的分类,如果我们运用神经网络算法,可以得到下图的分类效果,相当于多条直线求并集来划分空间,这样准确性更高。

    图片描述
    简单粗暴,用作者的代码运行后 训练5000次 。根据训练结果来预测一条新数据的分类(3,1)

    预测值 (3,1)的结果跟(1,2)(2,1)属于一类 属于正方形
    这时如果我们去掉 2个样本,则样本输入变成如下
    //设置样本数据,对应上面的4个二维坐标数据
    double[][] data = new double[][]{ {1,2},{2,2}};
    //设置目标数据,对应4个坐标数据的分类
    double[][] target = new double[][]{ {1,0},{0,1}};
    1
    2
    3
    4
    1
    2
    3
    4


    则(3,1)结果变成了三角形,
    如果你选前两个点 你会发现直接一条中间线就可以区分 这时候的你的结果跟之前4个点时有区别 so 你得增加样本 直到这些样本按照你所想要的方式分类 ,所以样本的多少 重要性体现在,样本得能反映所有的特征值(也就是输入值) ,样本多少或者特征(本例子指点的位置特征)决定的你的网络的训练结果,!!!这是 我们反推出来的结果 。这里距离深度学习好像近了一步。
    另外,这个70行代码的神经网络没有保存你训练的网络 ,所以你每

  • 相关阅读:
    图片转excel表格怎么弄?有何密笈?
    手摸手Redis7配置哨兵模式(一主二从三哨兵)
    代码随想录笔记_动态规划_718最长重复子数组
    (最新版2022版)剑指offer之队列 & 栈题解
    限流模块再理解
    GitHub -- 新增 SSH 密钥到 GitHub 帐户
    MySQL的视图
    统一异常ServiceException
    java网络编程-双机通信
    LeetCode刷题(python版)——Topic81. 搜索旋转排序数组 II
  • 原文地址:https://blog.csdn.net/mr_yu_an/article/details/127327535