神经网络是以一定的学习准则进行学习,进行非线性运算,得到网络的输出。它是一个动态系统,并且具有高度非线性的特征,规模很大。特征主要有高文性、自组织性、自适应性、较强的容错能力等,能够比较好的处理复杂产品费用估算问题,复杂产品费用问题是多因素、非线性、不确定性问题,采用神经网络算法时也需要大量的样本数据来保证费用预测的准确度,本系统中如果样本数据足够多,可以用神经网络算法与SVR算法进行比较,得出神经网络算法和SVR算法各自的优劣。
统计学习理论是可以在训练样本有限情况下,进行机器学习。在有限样本情况下,这是特别的,常用在复杂产品这种系统中。Hobday[9]和Hansen[10]将复杂产品定义为“成本高、规模大、用户定制、生命周期长”。而统计学习理论它从一些训练样本出发试图分析出训练样本参数与结果之间的规律,而且这些规律并非通过简单的原理就能得到,获得的规律就可以用来分析客观对象,对未来的数据进行较为准确的预测。简单来说统计学习理论[11]适用于寻找训练样本有限的情况下学习问题的最优解,支持向量机就是在该理论上逐级发展起来的一种新的学习机器。
2.2 支持向量回归机原理
支持向量回归机是由支持向量机(Support Vector Machine, SVM)进一步发展而来,刚开始支持向量机是被用来解决模式识别的问题,为了发现具有好的推广能力的决策规则,所选择的训练数据的一些子集则是支持向量机。随着其的迅速发展,已经有好几个类别。支持向量机的分类主要有:C-支持向量分类(C-SVC),ν-支持向量、分类(ν-SVC),分布估计(one-class SVM),ϵ-支持向量回归(ϵ-SVR)和ν-支持向量回归(ν-SVR)。本论文主要研究支持向量回归机,即ϵ-SVR。
支持向量回归问题在非线形情形中,需要定义适合的核函数实现非线性变换,通过非线性变换将输入空间向量映射到高文特征空间中,利用结构风险最小化原则在这个特征空间构造回归估计函数,利用回归估计[12-13]函数预测所要结果。
2.2.1 支持向量回归机算法
如上所述,算法利用核函数将输入数据映射到高文特征空间 (通常是无限文),在特征空间实现线性回归。首先选择参数,然后求解最优化问题,最后用其解构造决策函数。
核函数是支持向量机回归算法的技巧所在,其不需要直接计算复杂的非线性变换,而是要计算非线性变换的点积,这样便对计算进行了简化。当把核函数引入到其他的算法中,就可以方便地把原本线性算法进行转换成为非线性算法,这些算法就统称为基于核函数的方法。
2.2.2 SVR在小样本条件下费用估算的优势
查阅文献可以得知,如今一些比较新的理论有比如偏最小二乘回归法、灰色理论、神经网络、遗传算法,这些算法已经开始被应用在费用估算的领域中,并且实现了较好的结果。然而,这些统计算法只有在理论上费用样本数量趋于无穷大时才能有准确度和理论逻辑上的保证。在投入到实际应用中时,很多用于研究费用估算问题的产品费用的样本容量很小,信息不足。由于这些条件的约束,这些费用估算算法就不能准确反映整个产品费用样本空间的分布,因而并不能取得准确理想的效果。
然而,支持向量回归机只有少数可调的参数,还具有全局最优,良好的泛化能力[14-15]等优越性能,这解决了在神经网络方法中无法避免的局部极值问题。支持向量回归机采用结构风险最小化原理针对有限的样本信息,对独立的测试样本,这样能够得到较小的误差,用其拟合非线性组合估算函数,可以在小费用样本条件下达到较好的估算精度和较强的推广能力。综上,可以看出,支持向量回归机针对小样本的分类和回归的方法是目前看来相对最佳的。 C#小样本条件下复杂产品费用估算方法研究与实现(4):http://www.youerw.com/jisuanji/lunwen_21405.html