回归是指拟合函数的模型、图像等。与分类不同,回归一般是在函数可微的情况下进行的。因为分类它就那么几类,如果把类别看做函数值的话,分类的函数值是离散的,而回归的函数值通常是连续且可微的。所以回归可以通过梯度下降法来进行。

  比如对于函数$y =b + wx$,$x$是输入变量,$w$和$b$是参数。可以使用训练集输入一组$x$和$y$来进行对$w$和$b$的训练。

  下面举多项式回归为例,也就是选择多项式为模型的假设空间,训练多项式的系数

多项式回归

  由泰勒公式我们可以知道,多项式可以拟合任何函数。不论是一维的还是多维的,所以如果使用多项式来进行回归,我们可以提升它的次数来更精细地拟合。多维泰勒公式(因变量$X$是m维向量,在$X = P$处展开):

$f(X) = f(P) + \sum\limits_{i=1}^m (X_i - P_i)f'_{i}(X) + \frac{1}{2!} \sum\limits_{i,j=1}^{m} (X_i - P_i)(X_j - P_j)f''_{ij}(X) + O(X^2)$

  将各次都提取到一块儿,得到如下:

$f(X) = b + \sum\limits^{m} w_i^{(1)}X_i + \sum\limits^{m} w_{i,j}^{(2)}X_iX_j + \sum\limits^{m} w_{i,j,k}^{(3)}X_iX_jX_k + ...$

  因此对于$y = b + w_1x + w_2x^2 + w_3x^3 +...$其中的$x$是多维向量,$x^2$就是$x$所有元素相乘后的矩阵,就是二次,相应的$x^3$是$x^2$系数矩阵中所有元素与$x$所有元素相乘后的立方阵,就是三次,然后一直推广到$x^n$(n次)。其中的$w_n$则是$x^n$对应规模的阵子,$w_nx^n$就是它们对应元素相乘后之和。

  如果再加上正则项(用于防止参数w过大),则对于使用多项式的回归来说,需要人工设置的超参数就是:

  1、函数的次数(函数的次数和函数的输入变量的维数,决定了整个函数需要优化的参数的数量)。

  2、正则项的参数$\lambda$等。

  如果需要回归的函数的多项展开式是无穷级的,如三角函数,那么如果只使用多项式来回归的话是永远也不可能完全拟合的。所以一般还会加上别的函数来拟合。比如在深度学习中,由于有各个神经元之间的连接有阈值,就能理论上拟合任意的函数。

  另外,上面的高次幂可以通过增加维度来降幂计算,比如将$w_{i,j}^{(2)}X_iX_j$转化为新的输入维度$w_{i,j}^{(2)}X_{m + k}$(因为转化之前$X$是m维的,转化后在m维后面再加维度)但是这并不会减少模型优化的复杂度,它只是看起来好像从高次模型转化为了线性模型来进行回归,因为需要优化的参数依然是不变的

Regression 回归——多项式回归的更多相关文章

  1. NNs(Neural Networks,神经网络)和Polynomial Regression(多项式回归)等价性之思考,以及深度模型可解释性原理研究与案例

    1. Main Point 0x1:行文框架 第二章:我们会分别介绍NNs神经网络和PR多项式回归各自的定义和应用场景. 第三章:讨论NNs和PR在数学公式上的等价性,NNs和PR是两个等价的理论方法 ...

  2. 学习笔记TF024:TensorFlow实现Softmax Regression(回归)识别手写数字

    TensorFlow实现Softmax Regression(回归)识别手写数字.MNIST(Mixed National Institute of Standards and Technology ...

  3. 【机器学习】Softmax 和Logistic Regression回归Sigmod

    二分类问题Sigmod 在 logistic 回归中,我们的训练集由  个已标记的样本构成: ,其中输入特征.(我们对符号的约定如下:特征向量  的维度为 ,其中  对应截距项 .) 由于 logis ...

  4. pytorch 4 regression 回归

    import torch import torch.nn.functional as F import matplotlib.pyplot as plt # torch.manual_seed(1) ...

  5. Tensorflow实战第十一课(RNN Regression 回归例子 )

    本节我们会使用RNN来进行回归训练(Regression),会继续使用自己创建的sin曲线预测一条cos曲线. 首先我们需要先确定RNN的各种参数: import tensorflow as tf i ...

  6. [机器学习]回归--Decision Tree Regression

    CART决策树又称分类回归树,当数据集的因变量为连续性数值时,该树算法就是一个回归树,可以用叶节点观察的均值作为预测值:当数据集的因变量为离散型数值时,该树算法就是一个分类树,可以很好的解决分类问题. ...

  7. 浅谈回归(二)——Regression 之历史错误翻译

    我很好奇这个问题,于是搜了一下.我发现 Regression 这个词 本意里有"衰退"的意思. 词根词缀: re- 回 , 向后 + -gress- 步 , 级 + -ion 名词 ...

  8. Andrew Ng Machine Learning 专题【Linear Regression】

    此文是斯坦福大学,机器学习界 superstar - Andrew Ng 所开设的 Coursera 课程:Machine Learning 的课程笔记. 力求简洁,仅代表本人观点,不足之处希望大家探 ...

  9. 【Udacity】线性回归方程 Regression

    Concept in English Coding Portion 评估回归的性能指标--R平方指标 比较分类和回归 Continuous supervised learning 连续变量监督学习 R ...

随机推荐

  1. idea 启动java项目报错 java: 程序包javax.servlet.http不存在

    File -- Project Structure

  2. 转发-【分享】思科无线控制器HA模式升级

    思科无线控制器HA模式下升级文档   当前使用版本:8.0.120.0 计划升级版本:8.2.151.0   其他工具: TFTP Server: 3CDaemon 远程登录:SecureCRT   ...

  3. Java学习资源 - J2EE

    java Web开发基础(一)工程项目文档结构 ========rmi=========== Java RMI 框架(远程方法调用) java RMI原理详解 深究Java中的RMI底层原理 ==== ...

  4. Linux终端的一些快捷键命令

    一.初识linux的终端种类:本地.远程 查看本终端命令: #tty 命令,看到当前所处的终端 #(w)who 命令,看到系统中所有登录的用户 其中,tty 终端为表示在本地命令行模式下打开的终端:p ...

  5. iOS 开发之应用内弹出 App Store 应用界面

    在APP内给其他APP做推广,经常用到在应用内弹出应用的APP #import <StoreKit/SKStoreProductViewController.h> 设置代理:<SKS ...

  6. 201771010131-王之泰 实验一 软件工程准备—<通读《现代软件工程—构建之法》后所思所想>周学习总结

    项目 内容 作业所属课程 https://www.cnblogs.com/nwnu-daizh/ 作业要求 https://www.cnblogs.com/nwnu-daizh/p/12369881. ...

  7. DB开启 Service Broker,使用消息队列

    ALTER DATABASE [DBNAME] SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE;; ALTER DATABASE [DBNAME] SET TRUS ...

  8. IDEA call Hierarchy 双击跳转源码后绿色选中背景不消失问题

    1.版本,2019.2.2. 2.这个问题貌似是个bug,就是选中变色后会一直在,目前没有找到对应方法或者配置,如果你找到了,欢迎在评论中分享一下. 3.我这里只能先简单粗暴处理下,通过设置选中时不设 ...

  9. scrapy-redis分布式

    scrapy是python界出名的一个爬虫框架,提取结构性数据而编写的应用框架,可以应用在包括数据挖掘,信息处理或存储历史数据等一系列的程序中. 虽然scrapy 能做的事情很多,但是要做到大规模的分 ...

  10. Nvidia发布更快、功耗更低的新一代图形加速卡

    导读 不出意外的,Nvidia在其举行的Supercomputing 19大会上公布了很多新闻,这些我们将稍后提到.但被忽略的一条或许是其中最有趣的:一张更快.功耗更低的新一代图形加速卡. 多名与会者 ...