A. BP人工神经网络的收敛是什么
收敛和迭代算法有关。
反向传播算法是定义一个误差er(往往是输出结果与预想结果之间的某个范数),然后求出满足误差极小的权向量。如果把误差看成一个连续函数(泛函)的话,求对权向量各分量的偏导为0即可,但是实际上它是离散的,所以我们需要用迭代来求最小梯度。
如果是新定义算法的话理论上的收敛要证明,可以证明它在迭代次数趋近无穷的时候等于某一解,也可以证明它满足李普希兹条件(就是带有完备范数和李普希兹常数的那个),这种情形下我们叫做收敛,要是用已有算法或者干脆就是BP算法的时候不需要你证明。理论上不收敛的情况是这样,当迭代次数趋近无穷的时候,权向量的解不唯一。
实际上的收敛是这样,给定一个最大迭代次数n,一个误差限erl,反向传播算法应该很容易找,我不往上写了,每一步权值修正都会使er减小,直观的看就是权向量的分量沿着梯度减小的方向在前进,虽然理论上样本足够大并且n趋于无穷的时候会收敛,但是实际上有可能出现当迭代到第n次,误差er依然大于误差限erl的情况,也就是说我们没有解出来满足要求的权向量,所以网络训练失败,叫做不收敛。当然,也可以使用梯度限来作为迭代终止的条件,这种情况下不收敛就是梯度在迭代了n次以后没有小于某一值,从而没有求出满足要求的权向量;收敛就是求出了满足梯度限的权向量。
B. bp算法在人工神经网络中的作用是什么
BP(Back Propagation)算法是一种常用的人工神经网络训练算法,是通过反向传播来调整神经网络权值的算法。在人工神经网络中,BP算法的作用是帮助神经网络对输入的数据进行学习,并通过学习来调整神经网络的权值,以使得神经网络能够较好地对未知数据进行预测。
C. 怎么看出SVM比BP神经网络收敛速度快
单纯比较收敛速度并没有意义,因为两种方法的原理完全不同。但从得到全版局最优解的角度来看,SVM效果权较好。
一、SVM可以发现全局最优,而BP算法通常只能获得局部最优
SVM学习问题可以表示为凸优化问题,因此可以利用已知的有效算法发现目标函数的全局最小值。而其他分类方法(如基于规则的分类器和BP人工神经网络)都采用一种基于贪心学习的策略来搜索假设空间,这种方法一般只能获得局部最优解。
二、SVM方法避免了“维数灾难”
SVM方法巧妙地解决了维数灾难难题:应用核函数的展开定理,就不需要知道非线性映射的显式表达式;由于是在高维特征空间中建立线性学习机,所以与线性模型相比,不但几乎不增加计算的复杂性,而且在某种程度上避免了“维数灾难”.这一切要归功于核函数的展开和计算理论。
D. BP神经网络validation checks很快到达6,performance还没达到要求,还有performance收敛很慢
validation checks是用来防止网络训练过适的,即是训练时网络的验证误差大于训练误差的次数,默认值为6就是大于次数达到6次训练就会停止。网络训练过适时,即使performance还在减小网络性能也不会提高,反而会降低,因此要设定过适次数来提前训练以保证网络性能。performance的收敛就要考虑很多因素,比如你的输入数据,网络的参数设定,隐藏层神经元个数等等。