- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
多项式曲线拟合 (Polynomial Curve Fitting )
监督学习
@ author : duanxxn @163.com
@ time : 2016-06-19
原文链接
多项式特征生成
在机器学习算法中 ,基于针对数据的非线性函数的线性模型是非常常见的 ,
这种方法即可以像线性模型一样高效的运算 ,同时使得模型可以适用于更为
广泛的数据上 ,多项式拟合就是这类算法中最为简单的一个。
关于多项式回归的应用 ,这里举个非常简单的例子:一般的线性回归 ,模型既
是参数 的线性函数 ,同时也是输入变量 的线性函数 ,对于一个二维的数据
而言 ,模型的数学表达式如下 :
如果想要拟合一个抛物面 ,而不是拟合一个平面的话 ,那么就需计算输入变
量 二次项的线性组合 ,则模型更新为下面这个形式 :
注意 :这里需要说明的是 ,更新后的模型 ,虽然是输入变量 的二次函数 ,
但是 ,由于它仍然是参数 的一次线性函数 ,所以它仍然是一个线性模型。
为了说明这个问题 ,可以假设有一个新的变量
,那么就可以将上面的模型重写为下面的这个形式 :
用向量 替换向量 的过程 ,相当于一个特征变换或者叫做特征生成的过程 ,
它将输入特征的维度提高 ,但模型仍然是一个线性模型。下面这个代码片段
可以实现特征升维的过程 ,其特征变换的规则为 :从 变为
。
1. #!/usr/bin/python
2. # -*- coding: utf-8 -*-
3.
4.
5. author : duan nj@163.com
6. time : 2016-06-04_14-00
7.
8. 多项式特征生成
9.
10.
11.
12. from sklearn.preprocessing import PolynomialFeatures
13. import numpy as np
14.
15. # 首先生成3 2的原始特征矩阵
16. # 即样本数为3,特征数为2
17. X = np.arange (6).reshape (3, 2)
18.
19. print 原始数据 :
20. print X
21.
22. # 特生变换/特征生成
23. # 将原始一阶数据 维到二阶数据
24. # 维方式是 : [ _1, _2] 变为 [1, _1, _2, _1^2, _1 _2, _2^2]
25. polyFeat = PolynomialFeatures(degree=2)
26. X_transformed = polyFeat.fit_transform (X)
27.
28. print 特征变换后的数据 :
29. print X_transformed
运行结果为 :
1. 原始数据 :
2. [[0 1]
3. [2 3]
4. [4 5]]
5. 特征变换后的数据 :
6. [[ 1. 0. 1. 0. 0. 1.]
7. [ 1. 2. 3. 4. 6. 9.]
8. [ 1. 4. 5. 16. 20. 25.]]
多项式拟合
在 《线性回归》中就提到过多项式拟合 ,从本质上讲 ,多项式拟合也是一个
线性模型 ,其数学表达式为 :
其中 是多项式的最高次数 , 代表的是 的 次幂 , 是 的系数。
样本的数 目为 ,对于每一个样本 ,其对应的输出为 ,用平方误差和
(sum of the squares of the errors )作为损失函数 ,那么损失函数可以表
示为 :
这里在损失函数前面加入一个 ,只是为
原创力文档


文档评论(0)