高级人工智能4详解.ppt
文本预览下载声明
神经元实际输出与输入之间的函数关系为 经简单计算,我们知道,当决策面方程为x-0.5=0时,平均误差平方根为 当决策面方程为x-0=0时,平均误差平方根为 决策面方程位于x-0=0时,神经元的误差竟然比决策面方程位于x-0.5=0时要大。 上述计算结果说明,当类别间样本不平衡时,最终决策边界将偏向样本数少的一边。 因此,我们得出结论,神经网络学习不平衡样本集时,形成决策边界对样本数少(少数类)的一边是不利的,网络推广性能差。 —纯粹从分类精度角度看。 为了更清楚地分析这一现象,我们假设类别?1有N1个位于原点0的样本所组成,类别?2有N2=?N1个位于1.0的样本所组成。于是,单个神经元的平均平方根误差为 图 3.34 学习不平衡数据集时单个神经元均方根误差 E 与 ? 和? 之间的关系 0.15 0.20 0.25 0.30 0.35 0.40 0.10 1.0 0.8 -0.2 0.0 0.2 0.4 -1.0 -0.8 -0.6 -0.4 0.6 ? E ?=20 ?=10 ?=5 ?=3 ?=2 ?=1 ?Tmin ?Tmin ?Tmin ?Tmin ?Tmin 这时,单个神经元的E与? 和?之间的关系如图3.34所示(理想情况)。 我们的解决方法之一是虚拟平衡,假设N~jNj,程序实现是: For p=1: N(j), If Else 方法之二,考虑AUC值、平均精度、几何精度。从总平均误差平方和 转向类平均误差平方和之和 对二值XOR(0, 0; 1, 0;0, 1;1, 1)问题,一个2-2-1的感知器经过几百次迭代能找到期望解。 如果我们将二值XOR问题的输入均匀缩小100倍,会发生什么情况?—学习时间大大延长,即迭代次数大大增加。 如果我们将二值XOR问题的输入均匀放大100倍,又会发生什么情况?—可能不收敛。 3.6 输入分量大小的影响 随着类与类中间空隔区域的变小,网络的学习时间将愈来愈长,决策边界落在这个狭小区域内的难度越来越大。 当这个空隔缩小到一定程度,学习过程将很难收敛,推广性能也越差。—几何区域变窄。 注意:类与类间空隔区域变大到一定程度,学习过程也可能不收敛。—活化函数饱和。 怎样使学习因子?变起来(不是指动态学习) ? 例如,二值XOR问题: 网络实际学习的是: 例如,二值XOR问题输入缩小100倍: 网络实际学习的是: 例如,二值XOR问题输入放大100倍: 网络实际学习的是: 例表3.6 例3.7 Sonar问题 第一次出现的论文: Analysis of hidden units in a layered network trained to classify sonar targets, Neural Networks, 1988, 1(1): 75–89. 通过Sonar反射信号将海中一个金属圆筒和一个圆柱形石头分开,类别数为2。60个特征,测量208次,训练集和测试集各有104个样本。 执行文件为: result11.txt error11.txt train1.txt hout11.txt weigh.txt 104 5000 60 12 1 0.03 0.075 0.05 -1 49 1.1224 0.6 0.5 0.4 0.3 0.2 0.1 0 1400 1000 800 600 400 200 0 1200 ? E 例图3.7 一个60-12-1感知器对Sonar问题的均方根误差下降曲线 例图3.7是一个60-12-1感知器对Sonar问题的均方根误差下降曲线,学习1,290次,均方根误差为0.049978,耗时2.82秒。 可以看出,网络学习过程中发生了振荡。感知器最后结果是,训练集分类正确率为103/104= 99.04%,测试集分类正确率为100/104= 96.15%;得到这个理想结果的概率约为1%。 Gormann等的最好结果是94/104=90.38%,RBF网络的分类正确率仅为78.85%。 1-近邻分类器分类正确率为95/104=0.9135%; 支持向量机分类正确率为96/104=0.9231%。 核近邻分类器分类正确率为94/104=0.9038%。 单隐层感知器对测试集分类结果是 0.224888 30 0.014703 37 0.055396 38 2.97438 68 k = 3 k1 = 1 对训练集分类结果是 0.004238 1 k = 1 k1 = 0 为提高神经网络学习速度,可以有以下途径: 使用更快的计算机(服务器)---硬件; 采用更快的学习算法; 选择合适的最小结构。 选择合适的初始权值、学习因子以及动态因子; 降低输入空间的维数; 选择合适
显示全部