- 1、本文档共7页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第5章机器学习与实现支持向量机原理支持向量机应用举例
支持向量机原理第5章支持向量机基于统计学理论,强调结构风险最小化。其基本思想是:对给定有限数量训练样本的学习任务,通过在原空间或投影后的高维空间构造最优分离超平面,将给定的两类训练样本分开,构造分离超平面的依据是两类样本对分离超平面的最小距离最大。最优分离超平面可以记为:位于最优分离超平面上方的点满足:位于最优分离超平面下方的点满足:通过调整权重,边缘的超平面可以记为:正类负类综合所得从最优分离超平面到上任意点的距离为,同理到上任意点的距离也为,则最大边缘间隔为。
支持向量机原理第5章如何寻找最优分离超平面,需要用到更高的数学理论知识及技巧,这里不再介绍。对于非线性可分的情形,可以通过非线性映射将原数据变换到更高维空间,在新的高维空间中实现线性可分。这种非线性映射可以通过核函数来实现,常用的核函数包括。1.高斯核函数2.多项式核函数3.sigmoid核函数
支持向量机应用举例第5章取自UCI公共测试数据库中的汽车评价数据集作为本例的数据集,该数据集共有6个特征、1个分类标签,共1728条记录a1a2a3a4a5a6d442232344223334422313442222344222334422213……其中特征a1~a6的含义及取值依次为:buyingv-high,high,med,lowmaintv-high,high,med,lowdoors2,3,4,5-morepersons2,4,morelug_bootsmall,med,bigsafetylow,med,high分类标签d的取值情况为:unacc、acc、good、v-good,分别用1、2、3、4来表示。取数据集的前1690条记录作为训练集,余下的作为测试集,计算预测准确率。
支持向量机应用举例第5章1.数据获取importpandasaspddata=pd.read_excel(car.xlsx)2.训练样本与测试样本划分#训练用的特征数据用x表示,预测变量用y表示,测试样本则分别记为x1和y1。x=data.iloc[:1690,:6].valuesy=data.iloc[:1690,6].valuesx1=data.iloc[1691:,:6].valuesy1=data.iloc[1691:,6].values
支持向量机应用举例第5章(1)导入支持向量机模块svm。fromsklearnimportsvm(2)利用svm创建支持向量机类svm。clf=svm.SVC(kernel=rbf)其中核函数可以选择线性核函数、多项式核函数、高斯核函数、sigmoid核,分别用linear、poly、rbf、sigmoid表示,默认情况下选择高斯核函数。(3)调用svm中的fit()方法进行训练。clf.fit(x,y)(4)调用svm中的score()方法,考查训练效果。rv=clf.score(x,y);#模型准确率(针对训练数据)(5)调用svm中的predict()方法,对测试样本进行预测,获得预测结果。R=clf.predict(x1)3.支持向量机分类模型构建
支持向量机应用举例第5章支持向量机完整示例代码如下:importpandasaspddata=pd.read_excel(car.xlsx)x=data.iloc[:1690,:6].valuesy=data.iloc[:1690,6].valuesx1=data.iloc[1691:,:6].valuesy1=data.iloc[1691:,6].valuesfromsklearnimportsvmclf=svm.SVC(kernel=rbf)clf.fit(x,y)rv=clf.score(x,y);R=clf.predict(x1)Z=R-y1Rs=len(Z[Z==0])/len(Z)print(预测结果为:,R)print(预测准确率为:,Rs)预测结果为:[4311314314333333333331314314331314314]预测准确率为:0.7027027027027027
您可能关注的文档
- Python金融数据分析与挖掘(微课版) 课件 1-1. Python基本数据类型与基本数据结构.pptx
- Python金融数据分析与挖掘(微课版) 课件 1-2. Python公有方法.pptx
- Python金融数据分析与挖掘(微课版) 课件 1-3. Python基本数据结构方法.pptx
- Python金融数据分析与挖掘(微课版) 课件 2-1. 数组创建与操作.pptx
- Python金融数据分析与挖掘(微课版) 课件 2-2. 矩阵与线性代数运算.pptx
- Python金融数据分析与挖掘(微课版) 课件 3-1.序列.pptx
- Python金融数据分析与挖掘(微课版) 课件 3-2.数据框.pptx
- Python金融数据分析与挖掘(微课版) 课件 3-3.外部文件读取.pptx
- Python金融数据分析与挖掘(微课版) 课件 3-4.常用函数.pptx
- Python金融数据分析与挖掘(微课版) 课件 3-5.常用计算任务.pptx
文档评论(0)