第一篇:SVM支持向量机题目
机器学习课程作业(1)
提交截止日期:2017年10月10日周二
1.一个优化问题的原问题(Prime Problem)与对偶问题(Dual Problem)定义如下:
原问题
Minimize: f
Subject to: gi0,i1,2,...,K
hi0,i1,2,...,M
对偶问题 定义
L,,figiihifTgTh
i1i1KM对偶问题为: Maximize: ,infL,, i0,i1,2,...,K Subject to:
**(a)证明:如果是原问题的解,,*是对偶问题的解,则有:f**,*
(b)证明(强对偶定理):如果gAb,hCd,且f任意
为凸函数,即对1和2,有f112f11f2, 则有:f*,*
*
2.求下列原问题的对偶问题
(a)(l1 and l2-norm SVM Classification):
NN12C1iC2i2 Minimize: 2i1i1Subject to: i0,i1,2,...,N
Tyixib1i
(b)(SVM regression):
NN12Minimize: C1iiC2i2i2
2i1i1Subject to: Txibyii,i1,2,...,N
yiTxibi,i1,2,...,N
i0, i0
(c)(Kernel Ridge Regression):
N12Minimize: Ci2
2i1Subject to: yiTxii,i1,2,...,N
(d)(Entropy Maximization Problem): Minimize: xlogx iii1NSubject to: Txb
xi1Ni1
3.如图所示,平面上有N个点{x1,x2,...,xN},求一个半径最小的圆,使之能包含这些点。
图1.平面上N个点,求最小的圆包含这些点。
(a)写出这个优化问题的数学表达式。(b)写出(a)的对偶问题。
(c)编写程序求解这个问题(选做)
第二篇:支持向量机等各种算法和模型的优点和缺点
1决策树(Decision Trees)的优缺点 决策树的优点:
一、决策树易于理解和解释.人们在通过解释后都有能力去理解决策树所表达的意义。
二、对于决策树,数据的准备往往是简单或者是不必要的.其他的技术往往要求先把数据一般化,比如去掉多余的或者空白的属性。
三、能够同时处理数据型和常规型属性。其他的技术往往要求数据属性的单一。
四、决策树是一个白盒模型。如果给定一个观察的模型,那么根据所产生的决策树很容易推出相应的逻辑表达式。
五、易于通过静态测试来对模型进行评测。表示有可能测量该模型的可信度。
六、在相对短的时间内能够对大型数据源做出可行且效果良好的结果。
七、可以对有许多属性的数据集构造决策树。
八、决策树可很好地扩展到大型数据库中,同时它的大小独立于数据库的大小。
决策树的缺点:
一、对于那些各类别样本数量不一致的数据,在决策树当中,信息增益的结果偏向于那些具有更多数值的特征。
二、决策树处理缺失数据时的困难。
三、过度拟合问题的出现。
四、忽略数据集中属性之间的相关性。人工神经网络的优缺点 人工神经网络的优点:分类的准确度高,并行分布处理能力强,分布存储及学习能力强,对噪声神经有较强的鲁棒性和容错能力,能充分逼近复杂的非线性关系,具备联想记忆的功能等。人工神经网络的缺点:神经网络需要大量的参数,如网络拓扑结构、权值和阈值的初始值;不能观察之间的学习过程,输出结果难以解释,会影响到结果的可信度和可接受程度;学习时间过长,甚至可能达不到学习的目的。遗传算法的优缺点 遗传算法的优点:
一、与问题领域无关切快速随机的搜索能力。
二、搜索从群体出发,具有潜在的并行性,可以进行多个个体的同时比较,鲁棒性好。
三、搜索使用评价函数启发,过程简单。
四、使用概率机制进行迭代,具有随机性。
五、具有可扩展性,容易与其他算法结合。
遗传算法的缺点:
一、遗传算法的编程实现比较复杂,首先需要对问题进行编码,找到最优解之后还需要对问题进行解码,二、另外三个算子的实现也有许多参数,如交叉率和变异率,并且这些参数的选择严重影响解的品质,而目前这些参数的选择大部分是依靠经验.没有能够及时利用网络的反馈信息,故算法的搜索速度比较慢,要得要较精确的解需要较多的训练时间。
三、算法对初始种群的选择有一定的依赖性,能够结合一些启发算法进行改进。KNN算法(K-Nearest Neighbour)的优缺点 KNN算法的优点:
一、简单、有效。
二、重新训练的代价较低(类别体系的变化和训练集的变化,在Web环境和电子商务应用中是很常见的)。
三、计算时间和空间线性于训练集的规模(在一些场合不算太大)。
四、由于KNN方法主要靠周围有限的邻近的样本,而不是靠判别类域的方法来确定所属类别的,因此对于类域的交叉或重叠较多的待分样本集来说,KNN方法较其他方法更为适合。
五、该算法比较适用于样本容量比较大的类域的自动分类,而那些样本容量较小的类域采用这种算法比较容易产生误分。
KNN算法缺点:
一、KNN算法是懒散学习方法(lazy learning,基本上不学习),一些积极学习的算法要快很多。
二、类别评分不是规格化的(不像概率评分)。
三、输出的可解释性不强,例如决策树的可解释性较强。
四、该算法在分类时有个主要的不足是,当样本不平衡时,如一个类的样本容量很大,而其他类样本容量很小时,有可能导致当输入一个新样本时,该样本的K个邻居中大容量类的样本占多数。该算法只计算“最近的”邻居样本,某一类的样本数量很大,那么或者这类样本并不接近目标样本,或者这类样本很靠近目标样本。无论怎样,数量并不能影响运行结果。可以采用权值的方法(和该样本距离小的邻居权值大)来改进。
五、计算量较大。目前常用的解决方法是事先对已知样本点进行剪辑,事先去除对分类作用不大的样本。支持向量机(SVM)的优缺点 SVM的优点:
一、可以解决小样本情况下的机器学习问题。
二、可以提高泛化性能。
三、可以解决高维问题。
四、可以解决非线性问题。
五、可以避免神经网络结构选择和局部极小点问题。SVM的缺点:
一、对缺失数据敏感。
二、对非线性问题没有通用解决方案,必须谨慎选择Kernelfunction来处理。朴素贝叶斯的优缺点 优点:
一、朴素贝叶斯模型发源于古典数学理论,有着坚实的数学基础,以及稳定的分类效率。
二、NBC模型所需估计的参数很少,对缺失数据不太敏感,算法也比较简单。缺点:
一、理论上,NBC模型与其他分类方法相比具有最小的误差率。但是实际上并非总是如此,这是因为NBC模型假设属性之间相互独立,这个假设在实际应用中往往是不成立的(可以考虑用聚类算法先将相关性较大的属性聚类),这给NBC模型的正确分类带来了一定影响。在属性个数比较多或者属性之间相关性较大时,NBC模型的分类效率比不上决策树模型。而在属性相关性较小时,NBC模型的性能最为良好。
二、需要知道先验概率。
三、分类决策存在错误率 Adaboosting方法的优点
一、adaboost是一种有很高精度的分类器。
二、可以使用各种方法构建子分类器,Adaboost算法提供的是框架。
三、当使用简单分类器时,计算出的结果是可以理解的。而且弱分类器构造极其简单。
四、简单,不用做特征筛选。
五、不用担心overfitting。Rocchio的优点
Rocchio算法的突出优点是容易实现,计算(训练和分类)特别简单,它通常用来实现衡量分类系统性能的基准系统,而实用的分类系统很少采用这种算法解决具体的分类问题。
9各种分类算法比较
根据这篇论文所得出的结论, Calibrated boosted trees的性能最好,随机森林第二,uncalibrated bagged trees第三,calibratedSVMs第四,uncalibrated neural nets第五。性能较差的是朴素贝叶斯,决策树。有些算法在特定的数据集下表现较好。
参考文献:
[1] 罗森林, 马俊, 潘丽敏.数据挖掘理论与技术[M].电子工业出版社.2013.126-126 [2] 杨晓帆,陈廷槐.人工神经网络固有的优点和缺点[J].计算机科学.1994(vol.21).23-26 [3] Steve.遗传算法的优缺点.http://blog.sina.com.cn/s/blog_6377a3100100h1mj.html [4] 杨建武.文本自动分类技术.[6] 张夏天.统计学习理论和SVM的不足(1).http://blog.sciencenet.cn/blog-230547-248821.html [7] RichCaruana,AlexandruNiculescu-Mizil.An Empirical Comparison of Supervised LearningAlgorithms.2006
第三篇:基于支持向量机建模法预测原油系统PVT参数
大 连 理 工 大 学
研究生考查课作业
Forecasting PVT properties of crude oil systems based on support vector machines modeling scheme 基于支持向量机建模方案预测原油系统
PVT参数
课程名称:
电信学部专业英语
导师: 赵珺
研究生姓名:
李德祥
学号: 20909173
作业成绩:
任课教师(签名)
交作业日时间:2010 年12月17日
基于支持向量机建模方案预测原油系统PVT参数
摘要:PVT参数在油储工程计算中发挥着重要的作用。目前有许多种方法用来预测各种PVT参数,例如经验公式法,计算机智能法。神经网络的成就为数据挖掘建模技术打开了一扇们,同时它在石油工业中起到了重要的作用。然而不幸的是,由于仓储流体的一些特性,现有神经网络方法在其上的应用存在许多缺点和限制。本文提出了一种新的智能模型——支持向量机用来预测原油系统的PVT参数,该方法解决了现有神经网络预测的大部分缺点。文中简要介绍了预测步骤和建模算法,同时从神经网络,非线性回归以及经验公式法中分别选择了一种方法与支持向量机回归建模法进行了比较。结果表明支持向量机方法更加准确,可靠,同时优于大多数现有的公式法。这说明支持向量机建模法具有光明的前景,我们建议将其用于解决其他石油和煤气工业问题,诸如渗透率和孔隙率预测,确定持液量流动区和其他油储特性。
关键字:支持向量回归机(SVR);PVT参数预测;神经网络;1 引言
储层流动参数在石油工程计算中是非常重要的,例如物质平衡计算,试井分析,储量预测,向井流动态计算以及油藏数值模拟。众所周知,准确的PVT数据对物质平衡计算是非常重要的。这些PVT参数包括起泡点压力(Pb),石油形成层参数(Bob),这个被定义储存石油的容积。Bob的准确预测在储量和产量计算中至关重要,同时在储量动态计算,生产操作和设计以及构成评估的计算中,PVT参数也是非常重要的。这个流程的经济效益也取决与这些参数的准确预测。
现存的PVT仿真器在预测储藏流体的物理参数时,其预测精度随使用模型的类型,流体特性以及当时环境的变化而变化。因此他们在预测准确性方面都存在极大的缺陷。理想情况下,PVT参数通过对取自井底或者表面的样本进行试验研究而获得,但这样做获取试验数据代价昂贵。因此,现在多采用状态等式,统计回归,图解法以及经验公式法来预测PVT参数。用于PVT计算的相关方法一直是研究的重点,并发表了许多论文。过去十年间,有人提出了几种确定Pb和Bob的图解法和数学方法。这些研究都基于这样一个假设,Pb和Bob都是油气比,油藏温度,煤气比重以及石油比重的强函数。尽管如此,这些状态等式包含了大量的数据计算,其中需要知道储藏流体的详细成分,而得到它们即费力又费时。另外,这些方法在预测中是 不可靠的,它取决与原始应用数据的变化程度以及相似流体成分和API油比重的地理区域。此外PVT参数以基于容易测量的现场数据为基础,诸如储存压力,储存温度和石油比重。
近年来,人工神经网络(ANNs)被用于解决许多煤气和石油工业方面的问题,其中包括渗透率和孔隙率预测,岩相类型鉴定,地震模式识别,PVT参数预测,油管及油井中压降估计以及井产量预测。在机器学习和数据挖掘领域最流行的神经网络方法是前向神经网络(FFN)和多层感知器(MLP)。它们在石油和煤气工业中应有广泛。尽管如此,这些神经网络建模方法存在许多缺点,诸如识别可能因果关系的能力受到限制,在后向传播算法的构造中比较耗时,这些缺点将导致过拟合和评价函数收敛于局部极小点。另外,前向神经网络的结构参数也需要提前估计,诸如前向传播神经网络的隐层数量和大小,多层神经元之间的传递函数类型。同时,训练算法参数通过估计初始随机权重,学习率和动量而获得。
本研究的主要目的是了解支持向量机回归算法在模型化原油系统PVT参数方面的能力,同时解决上述神经网络存在的一些问题。大量的用户介入不仅减缓了模型开发,也违背了让数据说话的原则。在工作中,我们精确的研究了基于核函数的支持向量机回归算法在模型化Pb和Bob参数的能力,试验数据来源与全世界已出版的PVT数据库。我们也从神经网络,非线性回归以及各种不同的经验公式中分别选取了一种方法与支持向量机回归法进行了比较研究。
高原油采收率的预测是采收率分析的基础,这也保证了分析结果的可靠性。在统计学习理论中,建立一个高采收率预测模型属于函数逼近问题的范畴。根据Vapnik结构风险最小化原则,提高学习机的泛化能力即是对于有效训练样本的小误差能够保证相对独立的测试样本的小误差。近几年,最新的统计理论的研究结果首次运用到高采收率的分析。我们讨论了改进的后向传播人工神经网络和支持向量机。我们将神经网络同三个不同的经验公式法以及前向传播神经网络进行了对比研究,结果表明支持向量机无论在可靠性和效率上都优于大多数目前流行的建模方法。
为了说明支持向量机回归法作为一种新的计算机智能算法的有效性,我们使用三种不同的PVT参数建立了先进的支持向量机回归校准模型。在包括782个观测值的数据库中数据来自马来群岛,中东,墨西哥湾和哥伦比亚。由于宽域性和不确定分布,这些数据具有很大的挑战性。因此,我们使用了四个不同输入参数的数据库来建立预测起泡点压力和石油形成层参数的支持向量机回归模型。这四个参数分别是:油气比率,油藏温度,石油比重以及煤气相对比重。结果表明支持向量机回归学习算法比其他石油工程论文中所提方法更快,更稳定。另外,这种新型支持向量回归机建模法在绝对平均误差,标准差和相关系数上都优于标准神经网络和大多数现存的系数模型。
本论文的其余部分组织如下:第二部分是文献综述,简要介绍了在确定PVT关系中一些最常用的经验公式和神经网络建模法。应用神经网络对PVT参数建模的主要缺点也在这部分提及。同时也提出了支持向量回归机和其训练算法的最常用结构。第四部分介绍了数据获取和统计质量测度。试验结果在第五部分进行了讨论。第六部分通过给出试验结果说明了方法的性能。文献综述
PVT参数,渗透性和孔隙率,岩相类型,地震模式识别在石油和煤气工业中是非常重要的参数。过去的六十年中,工程师们认识到发展和使用试验公式预测PVT参数的重要性,因此在这一领域的研究促进了新方法的发展。在实验室预测这些参数代价高昂,因此很难确定,同时预测的准确性又是至关重要的,而我们并不能提前预知。本部分简要总结了一下预测PVT参数的一些通用经验公式和几种不同的计算机智能算法。2.1 最常用的经验模型和评价研究
过去的六十年里,工程师们认识到发展和使用经验公式对于预测PVT参数的重要性。在这一领域的大量研究促进了新的公式的发展。诸如Standing,Katz,Vasquez& Beggs,Glaso&Al-Marhoun的相关研究.Glaso针对形成层参数使用45组石油样本发展其经验公式,这些样本来自于北海的烃化合物。Al-Marboun提出了一种经验公式用于预测中东石油的起泡点压力和石油形成层参数,他使用来自中东69个油井的160组数据集来构造他的公式。Abdul-Majeed and Salman提出了一种基于420组数据集的油量层形成公式,并命名为Abdul-Majeed and Salman 经验公式。他们的模型与采用新参数的Al-Marhoun油量层参数公式类似。Al-Marthoun提出了第二种针对油量层参数的经验公式,该公式基于11728个起跑点压力上下的形成层参数试验数据点。数据集的样本来自全世界700多个油井,这些油井大部分位于中东和北美。读者也可以参考其他经验公式,诸如Al-Shammasi and EI-Sebakhy等等。本研究中,我们仅仅关注于三个最常用的经验公式,分别为Al-Marhoun,Glaso 和Standing.Labedi提出了针对非洲原油的油量层参数公式。他使用了来自利比亚的97组数据集,尼日利亚的28组数据集以及安哥拉的4组数据集来形成他的公式。DOKLa and Osman提出了用于预测阿联酋原油起泡点压力和油量层参素的系数集,他们使用51组数据集来计算新的系数。Al-Yousef and Al-Marhoun指出Dokla and Osaman 起泡点压力公式违背物理规则。Al-Marhoun 提出了另一种针 2
对石油形成层参数的公式,该公式使用11728个起泡点压力上下的形成层参素。该数据集的样本来自于全世界700多个油井,这些油井大部分来自与中东和北美。
Macary and El-Batanoney提出了针对起泡点压力和形成层参数的公式。他们使用了来自苏伊士湾30个油井的90组数据集。该新公式又与来自埃及的数据进行了对比测试,并表现出超过其他已有公式的性能。Omar and Todd提出了一种基于标准系数模型的石油形成层参数公式。该公式使用了来自马来群岛油井包含93个观察点的数据集。Kartoamodjo and Schmidt 使用全球资料库发明了一种新的预测所有PVT参数的公式,该公式使用740个不同的原油样本,这些样本从全世界采集,并包括5392组数据集。Almehaideb提出了一种针对阿联酋原油的系数集,其中使用了62组来自阿联酋油井的数据集来测量起泡点压力和形成层参数。起泡点压力公式,像Omar and Todd使用形成层参数作为输入,并排除了石油比重,煤气比重,气油混合比以及油井温度。Suttton and Farshand提出了一种针对墨西哥湾原油的公式,其中使用了天然气饱和原油的285组数据集以及代表31个不同原油和天然气系统的134组欠饱和石油数据集。结果表明Glaso公式预测形成层参数对于大多数研究数据表现良好。Petrosky and Farshad提出了一种基于墨西哥湾的新公式,并说明了Al-Marhoun公式对预测油量层系数是最好的。McCain提出了一种新的基于大规模数据的油井参数评估公式,他们建议在将来的应用中采用Standing公式来预测起泡点压力上下的形成层参数。
Ghetto基于195组全球数据集得出了一种针对PVT参数的复杂研究公式,其中使用的数据集来自地中海盆地,美洲,中东和北海油井。他们建议运用Vasquez and Beggas公式预测油量层参数。另一方面,Elsharkawy使用44组样本评估了用于科威特原油的PVT公式,结果表明,对于起泡点压力,Standing公式给出了最好的结果,而Al-Marhoun石油形成层参数公式的表现也是令人满意的。Mahmood and Al-Marhoun提出针对巴基斯坦原油的PVT估计公式,其中使用了来自22个不同原始样本中的166组数据集。Al-Marhoun指出油量层参数预测结果良好,而起泡点压力误差却是已有公式所得结果中最高的几个之一。另外,Hanafy基于Macary and EI-Batanoney公式评价预测埃及原油形成层参数,结果表明其平均绝对误差为4.9%,而Dokla and Osman公式却是3.9%。因此,研究结果表明本地公式要优于全球公式。
Al-Fattan and Al-Marhoun所著的书中,他们基于来自已有674组数据集对现有的油量层参数进行了评估,结果表面Al-Marhoun公式对于全球数据集有最小的误差。另外,他们也进行了趋势测试以评估模型的物理行为。最后,Al-Shammasi以来自世界各地的烃混合物为代表,从准确性和适应性两方面对已发表的针对起泡点压力和油量层参数的公式和神经网络模型进行了评估,并提出了一种新的起泡点压力公式,该公式基于1661个已发表的全球数据集和48个未发表的数据集。同时他也提出了神经网络模型,并且将其与数值公式进行了比较,结果表明从统计学和趋势性能分析来看,一些公式违背了烃流参数的物理特性。2.2 基于人工神经网络的PVT参数预测
人工神经网络是并行分配信息处理模型,它能识别具有高度复杂性的现有数据。最近几年,人工神经网络在石油工业中得到了广泛的应用。许多学者探讨了石油工程中人工神经网络的应用,诸如Ali,Elshakawy,Gharbi and Elsharkawy,Kumoluyi and Daltaban,Mohaghegh and Ameri,Mohaghegn,Mohaghegn,和Varotsis等人。在文献中最常用的神经网络是采用倒传递算法的前向传播神经网络,参见Ali,Duda以及Osman的论文。这种神经网络在预测和分类问题上有着良好的计算机智能建模能力。采用神经网络模型化PVT参数的研究还不多,最近,有人采用前向传播神经网络预测PVT参数,参见Gharbi and Elsharkawy以及Osman等人的论文。
Al-Shammasi提出了神经网络模型,并将其与数值公式进行了性能比较,结果表明从统计学和趋势性能来看一些公式违背了烃流参数的物理性质。另外,他还指出已发表的神经网络模型丢失了主要模型参数而需要重建。他使用神经网络(4-5-3-1)结构来预测起泡点压力和石油形成层参数,并以来自世界各地的烃混合物为例,从准确性和适应性两方面对已发表的用于预测如上两个参数的公式和神经网络进行了评价。
Gharbi 和Elsharkawy以及Osman等在前向神经网络和四种经验公式之间进行了对比研究,这四种公式分别是Standing,Al-Mahroun,Glaso以及Vasquez and Beggs经验公式,更多的结论和对比研究结果可参见他们的论文。1996,Gharbi and Elsharkawy提出了预测中东原油起泡点压力和形成层参数的神经网络模型。该模型基于具有对数双弯曲激发函数的神经系统来预测中东油井的PVT数据。同时,Gharbi和Elsharkawy训练了两个神经网络分别预测起泡点压力和形成层参数。输入数据是油气比率,油储温度,石油比重以及煤气比重。他们使用具有两个隐层的神经网络,第一个神经网络预测起泡点压力,第二个神经网络预测形成层参数。二者都使用中东地区包含520个观察点的数据集,其中498个观察点用于训练,其余22个观察点用于检验。
Gharbi和Elsharkawy在更广大区域采用了同样的标准,这些区域包括:南北美,北海,东南亚和中东地区。他们提出了一种只采用1个隐层的神经网络,其中使用了来自350个不同原油系统的5432个观察点的数据库。该数据库被分成具有5200个观察点的训练集和234个观察点的测试集。对比研究结果表明,前向神经网络预测PVT参数在减小平均绝对误差和提高相关系数方面优于传统经验公式。读者可以参看Al-Shammasi和EI-Sebkhy的论文获取其他类型的神经网络在预测PVT参数方面的应用。例如,径向基函数和诱导神经网络。2.3 神经网络建模法最普遍的缺点
神经网络相关经验已经暴露了许多技术上的限制。其中之一是设计空间的复杂性。在许多设计参数的选择上由于没有分析指导,开发者常常采用一种人为试探的尝试错误方法,该方法将重点放在可能搜索空间的小区域里。那些需要猜测的结构参数包括隐层的数目和大小以及多层神经元间传递函数的类型。需要确定的学习算法参数包括初始权重,学习率以及动量。尽管得到的可接受的结果带有偏差,但很明显忽视了可能存在的高级模型。大量的用户干预不仅减慢了模型构建也违背了让数据说话的原则。为了自动设计过程,Petrosky 和Farshad提出了遗传算法形式的外部优化标准。对于新数据在实际应用中的过拟合和弱网络泛化能力也是一个问题。当训练进行时,训练数据的拟合提高了,但是由于训练中新数据不能提前预知网络性能可能因为过学习而变坏。训练数据的一个单独部分常常保留下来监视性能,以保证完成收敛之前停止训练。尽管如此,这减少了实际训练中有效的数据量,当好的训练数据缺乏时这也是一大劣势。Almehaideb提出了一种网络修剪算法用以提高泛化能力。最常用的采用梯度下降法的后向传递训练算法在最小化误差时存在局部极小点的问题,这限制了优化模型的推广。另一个问题是神经网络模型的黑箱不透明性。相关解释能力的缺失在许多决策支持应用中是一个障碍,诸如医学诊断,通常用户需要知道模型给出的结论。附加分析要求通过规则提取从神经网络模型中获得解释设备。模型参数掩盖在大规模矩阵中,因此获得模型现象或者将其与现存经验或理论模型进行对比变得非常困难。因为模型各种输入的相对重要性信息还没有获得,这使得通过排除一些重要输入来简化模型的方法变得不可行。诸如主成份分析技术也需要额外的处理。
在本研究中,我们提出了支持向量机回归法来克服神经网络的缺点同时采用此方法来预测PVT参数。支持向量机建模法是一种基于统计学习理论和结构风险最小化原则的新型计算机智能算法。基于该原则,支持向量机通过在经验误差和Vapnik-Chevonenkis置信区间之间取得合适的平衡来得到最有效的网络结构,因此这种方法不可能产生局部极小。支持向量机回归建模法
支持向量机回归法是机器学习和数据挖掘领域最成功和有效的算法之一。在分类和回归中它作为鲁棒性工具得到了广泛的应用。在许多应用中,该方法具有很强的鲁棒性,例如在特征识别,文 4
本分类和人脸图像识别等领域。支持向量机回归算法通过最优化超平面的特征参数以确保其高度的泛化能力。其中超平面在高维特征空间中最大化训练样本间的距离。3.1 背景知识和综述
近年来,人们对支持向量机做了很多研究。从如下这些人的文章中可以获得已完成的支持向量机建模法的概述,他们是Vapnik,Burges,Scholkopt,Smola,Kobayashi以及Komaki。该方法是一种新的基于统计学习理论的机器学习法。它遵循结构风险最小化原则,通过最小化泛化误差的上界,而不是最小化训练误差。该归纳法基于泛化误差的界,而泛化误差通过加和训练误差和依赖VC维的置信区间得到。基于此原则,支持向量机通过平衡经验误差和VC维置信区间取得最优的网络结构。通过此平衡支持量机可以取得优于其他神经网络模型的泛化性能。
起初,支持向量机用于解决模式识别问题。尽管如此,随着Vapnik 不敏感损失函数的引入,支持向量机可以扩展用于解决非线性回归预测问题。例如刚刚为人所知的支持向量回归法,它表现出了良好的性能。该方法的性能取决于预定义的参数(也叫超参数)。因此,为建立一个良好的支持向量回归预测模型,我们要细心设置其参数。最近,支持向量回归法已经作为一种可供选择的强有力技术用于预测复杂非线性关系问题。因其许多特有性质和良好的泛化能力,支持向量回归法无论是在学术界还是工业应用领域都取得了极大的成功。3.2 支持向量回归机的结构
最近,通过引入可变的损失函数,支持向量回归机(SVR)作为一种新的强有力技术用于解决回归问题。这部分,我们简要介绍一下SVR.更多的细节参见Vapnik和EI-Sebakhy的论文。通常情况下,SVR的构造遵循结构风险最小化原则,它试图最小化泛化误差的上界而不是最小化训练样本的预测误差。该特征能在训练阶段最大程度的泛化输入输出关系学习以得到对于新数据良好的预测性能。支持向量回归机通过非线性映射将输入数据x映射到高维特征空间F.,并在如图1所示的特征空间中产生和解决一个线性回归问题。
图1 映射输入空间x到高维特征空间
回归估计通过给定的数据集G{(xi,yi):XiR}Rni1来预测一个函数,这里xi代表输入向量,yi代表输出值,n代表数据集的总大小。建模的目的是建立一个决策函数yf(x),在给定一组新的输入输出样本xi,yi的情况下准确预测输出yi。该线性逼近函数由下面的公式表示:
f(x)(w(x)b),:RF;wFTP(1)这里w,b是系数,(x)代表高维特征空间,通过输入空间x的非线性映射得到。因此,高维特征空间中的线性关系被映射到了低维特征空间中的非线性关系。这里不用考虑高维特征空间中w和(x)的内积计算。相应的,包含非线性回归的原始优化问题被转换到特征空间F而非输入空间x中寻找最平缓模型的问题。图1中的未知参数w和b通过训练集G预测得到。
通过不敏感损失函数支持向量回归机在高维特征空间中模拟线性回归。同时,为了避免过拟合,2并提高泛化能力,采用最小化经验风险和复杂度w2之和的正则化函数。系数w和b通过最小化结构风险函数预测得到。
RSVR(C)Remp12w2Cnni1L(yi,yi)212w2(2)这里RSVR和Remp分别代表回归风险和经验风险。w2代表欧几里德范数,C代表度量经验风险的损失函数。在公式2给出的结构风险函数中,回归风险RSVR是在给定测试样本输入向量情况下由约束函数f得到的可能误差。
(|y,y|),if|yy|L(y,y)(3)
Otherwise0,n在公式2中,第一项C/nL*(yi,yi)代表经验误差,该误差通过公式3中不敏感损失函
i1数预测得到。引入损失函数可以使用少量的数据点来获得公式1中决策函数的足够样本。第二项2w2是正则化系数。当存在误差时,通过折中经验风险和正则化系数,正则化常量C用于计算惩罚值。增大C值等于提高了相应泛化性能的经验风险的重要性。当拟合误差大于时接受惩罚。损失函数用来稳定预测。换句话说,不敏感损失函数能减小噪声。因此,能被看作如图2所示训练数据近似精度的等效值。在经验分析中,C和是由用户选择的参数。
图2 一种线性支持向量回归机的软边缘损失集
为了估计w和b,我们引入正的松弛变量i和i,从图2可知,超常的正负误差大小由i和i分别代表。假设松弛变量在,外非零,支持向量回归机对数据拟合f(x)如下:(i)训练误差通过最小化i和i得到。(ii)最小化 w2/2提高f(x)的平滑性,或者惩罚过于复杂的拟合函数。因此,支持向量回归机由最小化如下函数构造而成: 最小化:RSVR(w,C)12nw2CL(ii)(4)
*i1yiw(xi)bii*目标值:0*w(x)byiiii
这里i和i分别代表度量上下边沿误差的松弛变量。以上公式表明在同一结构函数f(x)下增大将减小相应的i和i,从而减小来自相应数据点的误差。最后通过引入拉格朗日多项式和扩展最优性约束,公式1所给决策函数有如下的形式:
nf(x,i,i)*(i1ii)K(xxi)b*(5)
*i这里公式5中参数i和i被称为拉格朗日乘子,他们满足公式i*0,i0和*i0,在i1,2....,n。公式5中的K(xi,xj)称作核函数,而核函数的值等于特征空间(xi)和(xj)中 7
向量xi和xj的内积,其中K(xi,xj)=(xi)(xj)。核函数用来表征任意维特征空间而不用精确计算(x)。假如任给一个函数满足Mercer条件,他就可用作核函数。核函数的典型例子是多项式核(K(x,y)[xy1]d)和高斯核(K(x,y)exp[(xy)2/22])。这些公式中,d代表多项式核的次数,代表高斯核宽度。这些参数必须精确选择,因为他们确定了高维特征空间的结构并且控制最终函数的复杂性。24 数据获取和统计质量度量
4.1 要求数据
研究结果基于来自三个不同的已发表研究论文的三个数据库中获得。第一个数据库引自Al-Marhoun的文章。该数据库包括来自中东69口油井的160组数据,通过它提出了一种用于预测中东石油起跑点压力和油量层参数的公式。第二个数据库来自Al-Marhoun&Osman(2002),Osman&Abel-Aal(2002)以及Osman&Al-Marhoun(2005)的文章。该数据库使用采集于沙特各地的283个数据点来预测沙特原油的起泡点压力以及该压力点附近的油层量参数。模型基于142组训练集的神经网络来建立前馈神经网络校正模型用以预测起泡点压力和油量层参数,其中71组数据集用于交叉验证训练过程中建立的关系,余下的71组数据集用于测试模型以评估精度。结果表明发展的Bob模型比现有的经验公式有更好的预测效果和更高的精度。第三个数据库来自Goda(2003)和Osman(2001)的著作,这里作者采用具有对数双弯曲传递函数的前向神经网络来预测起泡点压力附近的石油形成层参数。该数据库包括从803个实际数据点中删除了21个观察点之后的782个观察点。该数据集采集于马来群岛,中东,墨西哥湾和加利福尼亚。作者采用倒传递学习算法设计了一种单隐层的前向神经网络,其中使用4个输入神经元来隐藏输入的油气比重,煤气比重,相对煤气浓度以及油储温度,五个神经元的单隐层以及输出层构造参数的单一神经元。
使用以上三个不同的数据库来评估支持向量回归机,前向神经网络和三个经验公式建模法的性能。采用分层标准划分整个数据库。因此,我们使用70%的数据建立支持向量回归机模型,30%的数据用于测试和验证。我们重复内部和外部验证过程各1000次。因此数据被分为2到3组用于训练和交叉验证。
本研究中,382组数据集,267组用于建立校正模型,余下的115组用于交叉验证训练和测试过程中建立的关系,并以此来评价模型的精度和稳定性。对于测试数据,支持向量回归机建模法,神经网络法以及最著名的经验公式法的预测性能使用以上的数据集进行度量。起泡点压力和石油形成层参数的预测性能分别如表1-6所示。
表1 测试结果(Osman(2001)和EI-Sebakhy(2007)数据):预测Bo的统计质量量度
表2 测试结果(Osman(2001)和EI-Sebakhy(2007)数据):预测Pb的统计质量量度
表3测试结果(Al-Marhoun&Osman(2002)和Abdel-Aal(2002)数据):预测Bo的统计质量量度
表4测试结果(Al-Marhoun&Osman(2002)和Abdel-Aal(2002)数据):预测Pb的统计质量量度
表5测试结果(Osman(2001)和Goda(2003)数据):预测Bo的统计质量量度
表6测试结果(Osman(2001)和Goda(2003)数据):预测Pb的统计质量量度
在应用中,用户应该知道输入数据的范围以确保其在正常的范围内。这步叫做质量控制,它是最终取得准确和可信结果的重要一环。以下是一些主要变量的输入/输出范围。包括油气比,煤气比重,相对煤气密度,油储温度。在输入和输出层使用起泡点压力和石油形成层参数进行PVT分析。
油气比在26和1602之间,scf/stb 油量层参数在1.032和1.997之间变化 起泡点压力起于130止于3573 psia 油井温度从74F到240F API比重在19.4和44.6之间变化。 煤气相对浓度改变从0.744到1.367 4.2 评价和质量度量
在学习完成后,我们进行了拟合模型能力和质量的评价和估计。为此,我们计算了大量的质量量度。诸如实际和预测输出之间的相关系数(r),根方误差(Erms),平均相对百分误差(Er),平均绝对百分误差(Ea),最小绝对百分误差(Emin),最大绝对百分误差(Ermax),标准差(SD)和执行时间。最好的模型有最高的相关性和最小的根方误差。
支持向量机建模法的性能与神经网络和最常用的经验公式进行了比较。其中使用三种不同的数据库。执行过程采用交叉验证(内部和外部交叉)并重复了1000次。我们得到了支持向量回归机建模法的良好结果,为了简便起见,这里只记录了一些必须的点。这些点能给读者关于支持向量机建模法精度和稳定性方面一个完整的图形。4.3统计质量度量
为了比较新模型与其他经验公式在精度和性能方面的差异,我们采用统计误差分析法。选用的误差参数如下:平均相对百分误差(Er),平均绝对百分误差(Ea),最小绝对百分误差(Emin),最大绝对百分误差(Ermax),均方根误差(Erms),标准差(SD),相关系数(R2)。为了说明支持向量机回归法的有效性,我们采用了基于三个不同数据库的校正模型。(i)160个观察点的数据库.(ii)283个观察点的数据库用于预测Pb和Bob(iii)Goda(2003)和Osman(2001)发表的包含782个观察点的全世界范围内的数据库。
结果表明支持向量机回归法具有稳定性和有效性。另外,它的性能在均方根误差,绝对平均百分误差,标准差和相关系数方面也超过了最流行的经验公式中的一种以及标准前向神经网络法。实验研究
我们在所有数据集上进行了质量控制检测并且删除了多余的和不用的观察点。为了评估每一种建模方法的性能,我们采用分层标准划分了整个数据库。因此,我们使用70%的数据建立支持向量回归机模型,30%的数据用于测试和验证。我们重复内部和外部验证过程各1000次。因此数据被分为2到3组用于训练和交叉验证。而在782组数据点中,382组用来训练神经网络模型,剩下的200组用来交叉验证训练过程中建立的关系,最后200组用于测试模型以评估其准确性和趋势稳定性。对于测试数据,我们用支持向量机回归建模法,前向神经网络系统和最著名的经验公式分别预测起泡点压力和石油形成层参数,并研究了他们不同质量度量的统计总和。
通常情况下,在训练了支持向量机回归建模系统后,我们使用交叉验证来测试和评价校正模型。
同时我们将支持向量机回归模型的性能和精度同标准神经网络和三种常用的经验公式进行了对比研究。这三种常用的公式分别是:Standing,Al-Mahroun和Glaso经验公式。5.1 参数初始化
本研究中,我们采用与Al-Marhoun&Osman(2002),Osman(2001)以及Osman&Abdel-Aal(2002)同样的步骤。其中采用单或双隐层的前向神经网络,该网络基于具有线性和S型激发函数的倒传递学习算法。初始权重随机获得,学习能力基于1000元或0.001目标误差和0.01学习率获得。每个隐层包括的神经元都与其相邻层的神经元连接。这些连接都有相关的权值,并可以在训练过程中调整。当网络可以预测给定的输出时训练完成。对于这两个模型,第一层包括四个神经元,分别代表油储温度,油气比,煤气比重和API石油比重的输入值。第二层包含用于Pb模型的七个神经元和用于Bob模型的8个神经元。第三层包括一个神经元,其代表Pb或Bob的输出值。我们使用的用于Pb和Bob模型的简略图正如Al-Marhoun&Osman(2002),Osman&Abdel-Aal(2002)论文中所述。它基于1000次的重复计算使得我们可以检测网络的泛化能力,阻止对训练数据的过拟合并且对所有运行取平均。
执行过程开始于对现有数据集的支持向量机建模,每次一个观察点,到时学习过程从现有输入数据集中获得。我们注意到交叉验证可让我们监视支持向量回归机建模的性能,同时阻止核网络过拟合训练数据。在执行过程中,我们采用三种不同的核函数,分别名为多项式,S型核以及高斯核。在支持向量回归机的设计中,首先初始化那些控制模型整体性能的参数,诸如kenel=’poly’,kernel opt=5;epsilon=0.01;lambda=0.0000001;verbose=0;以及常量C为简便起见取为1或10。交叉验证方法基于均方根误差作为训练算法中的检查机制来阻止过拟合和复杂性。Bob和Pb模型的结果权重如下表格和图表中所示。同时,如下所示,每一个输入参数的相对重要性在训练过程中确定,并由Bob和Pb模型给出。
5.2 讨论和对比研究
我们可以研究除已选择的检验公式之外其他常用的经验公式,更多关于这些公式数学表达式的细节可以参考EI-Sebakhv和Osman(2007)的文章。测试中的比对结果,在表1-6中分别进行了外部交叉验证总结。从结果中我们注意到支持向量机建模法优于采用倒传递算法的神经网络以及最流行的经验公式。提出的模型以其稳定的性能在预测Pb和Bob值时表现出了很高的精度,在采用三个不同数据集的情况下该模型在其他公式中得到了最低的绝对相对百分误差,最低的最小误差,最低的最大误差,最低的均方根误差以及最高的相关系数。
我们对所有计算机智能预测算法和最著名的经验公式预测所得的绝对相对百分误差EA和相关系数绘制了离散点图。每个建模方法由一种符号表示。好的预测方法应该出现在图形的左上部分。图3所示为所用建模方法EA以及R或r的离散点,这些方法使用Osman(2001)的数据库预测Bob。11
图3基于Osman数据库的所有建模法和经验公式法预测Bob的平均绝对相对误差和相关系数 我们注意到支持向量回归机建模法落在图形的左上部分,EA=1.368%和r=0.9884,而神经网络次之,EA=1.7886%和r=0.9878,其余的经验公式则有更高的误差且更低的相关系数。例如,AL-Marhoun(1992)的EA=2.2053%,r=0.9806,Standing(1947)有EA=2.7238%和r=0.9742以及Glaso公式的EA=3.3743%,r=0.9715。图4所示为同样的图形,只不过采用同样的数据集和建模方法来预测bP。我们注意到支持向量回归机建模法落在图形的左上部分,EA=1.368%和R=0.9884,而神经网络次之,EA=1.7886%和r=0.9878,其余的经验公式则有更高的误差且更低2的相关系数。例如,AL-Marhoun(1992)的EA=2.2053%,r=0.9806,Standing(1947)有EA=2.7238%和r=0.9742以及Glaso公式的EA=3.3743%,r=0.9715。
图4基于Osman数据库的所有建模法和经验公式法预测Pb的平均绝对相对误差和相关系数 我们也对其他数据集重复了同样的执行过程,但为了简便起见,本文并没有包括这些内容。这些数据集是Al-Marhoun(1988,1992)和Al-Marhoun&Osman(2002)以及Osman&Abdel-Aal(2002)。
图5-10所示为使用三个不同的数据集的试验数据对bpp和Bob所得预测结果的六张离散图形。这些交叉点说明了基于支持向量回归机的高性能试验值和预测值之间的吻合程度。读者可以对已发表的神经网络建模法和最著名的经验公式进行比较。最后,我们的结论是支持向量回归集建模法相比其他著名的建模法和经验公式有更好的性能和更高的稳定性。
在预测bpp和Bob时支持向量机优于标准前向神经网络和最常用的经验公式,其中使用4个输入数据:油气比,油储温度,煤气比重和煤气相对密度。
图5 基于Osman数据库的支持向量回归机预测Pb和Bob的平均交会图
图6 基于Osman数据库的支持向量回归机预测bP或bPP的平均交会图
图 7 基于Al-Marhoun,Osman和Osman&Abdel-Abal数据集支持向量回归机预测Bo的交会图
图 8 基于Al-Marhoun,Osman和Osman&Abdel-Abal数据集支持向量回归机预测bP的交会图
图 9 基于已有数据集(Al-Marhoun)支持向量回归机预测Bo的交会图
图 10基于已有数据集(Al-Marhoun)支持向量回归机预测bP的交会图
6结论和建议
在本研究中,我们使用三种不同的数据集来考察支持向量回归机作为一种新型模式在预测原油系统PVT参数过程中的能力。基于得到的结果和比对研究,我们得出如下结论:
我们使用支持向量回归机及4个输入变量来预测起泡点压力和石油形成层参数。这4个变量分别是:油气比,油储温度,石油比重和煤气相对密度。在石油工程领域,这两个参数被认为是原油系统PVT参数中最重要的。
成熟的支持向量回归机建模法优于标准前向神经网络和最常用的经验公式。因此,该方法相比其他方法有着更好,更有效和更可靠的性能。另外,该方法在预测Bob值时以其稳定的性能表现出了很高的准确性,同时得到最低的绝对相对百分误差,最低的最小误差,最低的最大误差,最低的根均方误差和最大的相关系数。因此,支持向量回归机建模法在油气工业中应用灵活,可靠并有着很好的发展前景。特别是在渗透率,孔隙率,历史匹配,预测岩石机械参数,流型,液体停止多相流和岩相分类中。
参数命名
Bob 起泡点压力附近的OFVF, RB/STB Rs 油气比,SCF/STB T 油储温度,华氏温度
r0 石油相对密度(水为1.0)
rg 煤气相对密度(空气为1.0)
Er平均相对百分误差 Ei 相对百分误差
Ea平均绝对百分相对误差 Emax 最大绝对百分相对误差 Emin 最小绝对百分相对误差
RMS 均方根误差
第四篇:支持向量机二-拉格朗日对偶问题
支持向量机SVM---拉格朗日乘子 一
参考文档
周志华《机器学习》 郑洁的 《机器学习》 李航 《统计学习方法》
一
前言
通过上一章,我们得到SVM求解的问题
那如何根据输入的训练参数 获得w, b 呢,这里通过拉格朗日对偶问题求解这个问题,并给出算法推导过程
二
拉格朗日对偶问题
上面的问题,可以通过拉格朗日对偶变换,找到更有效的求解方案
式1
L对w, b分别求偏导数
式2 把 式2带入式一可得到
四
求解问题简化
上面当a = 0 的时候,f(x)为无效,a>0 的时候,yif(Xi)-1 =0 必定是一个支持向量机
五 分类器函数
六
例子
如图上,A,B, C三点通过拉格朗日对偶问题求出答案 Step 1 KKT 条件
第五篇:程序员机试题目
开发环境:VS2010、SQL Server2008
开发语言:C#
使用框架:ASP.NET、ADO.NET
一、使用经典三层架构完成web页面的用户登录,数据库、页面自行设计实现(30分钟)
要求:
(1)提供多个账号可以登录
(2)用户录入错误信息时能够进行提示
(3)能对以后的其他业务功能提供用户身份的验证
二、使用dotNet4.0中的ListView、DataPager控件完成数据库端的分页查询,数据库端自行设计实现(1小时)
要求:
(1)数据表结构可以使用
(一)中的用户信息
(2)分页必须使用数据库端分页
(3)使用的控件必须是ASP.NET 4.0提供的ListView、DataPager
控件
(4)页面只完成数据查询显示即可
(5)可上网查找相关的资料