在看RVFL神经网络的时候,在权值更新求解时,从隐含层到输出层的权重,是根据最小二乘法的原理更新求解的。

最小二乘法Least Square Method:

假设有一系列数据值,D = {(x1,y2),(x2,y2),.....................,(xn,yn)},需要去找到一个函数f(x)=ax+b,使得f(x)的输出尽可能和y相近,那么此时最小二乘法,原理的关键就是根据预测值与真实值之间的方差最小的原则,于是得到

最小二乘法的原理就是让这个Q值最小时得到的a,b。

根据这个公式发现这个式子中,只有a,b两个未知变量,那么对其求导可以得到Q最小时的a和b的值,即为以下公式:

那么最小二乘法的原理就是利用模型得方差最小,不断求解得到RVFL中输出层的权值,进而求得网络。

# _*_ coding: utf-8 _*_
# 作者: yhao
# 博客: http://blog.csdn.net/yhao2014
# 邮箱: yanhao07@sina.comimport numpy as np  # 引入numpy
import scipy as sp
import pylab as pl
from scipy.optimize import leastsq  # 引入最小二乘函数n = 9  # 多项式次数# 目标函数
def real_func(x):return np.sin(2 * np.pi * x)# 多项式函数
def fit_func(p, x):f = np.poly1d(p)return f(x)# 残差函数
def residuals_func(p, y, x):ret = fit_func(p, x) - yreturn retx = np.linspace(0, 1, 9)  # 随机选择9个点作为x
x_points = np.linspace(0, 1, 1000)  # 画图时需要的连续点y0 = real_func(x)  # 目标函数
y1 = [np.random.normal(0, 0.1) + y for y in y0]  # 添加正太分布噪声后的函数p_init = np.random.randn(n)  # 随机初始化多项式参数plsq = leastsq(residuals_func, p_init, args=(y1, x))print 'Fitting Parameters: ', plsq[0]  # 输出拟合参数pl.plot(x_points, real_func(x_points), label='real')
pl.plot(x_points, fit_func(plsq[0], x_points), label='fitted curve')
pl.plot(x, y1, 'bo', label='with noise')
pl.legend()
pl.show()

从图像上看,很明显我们的拟合函数过拟合了,下面我们尝试在风险函数的基础上加上正则化项,来降低过拟合的现象:


为此,我们只需要在残差函数中将lambda^(1/2)p加在了返回的array的后面

图像如下:

很明显,在适当的正则化约束下,可以比较好的拟合目标函数。

注意,如果正则化项的系数太大,会导致欠拟合现象(此时的惩罚项权重特别高)
如,设置regularization=0.1时,图像如下:

此时明显欠拟合。所以要慎重进行正则化参数的选择。

最小二乘法的原理及python实现相关推荐

  1. 【机器学习】Weighted LSSVM原理与Python实现:LSSVM的稀疏化改进

    [机器学习]Weighted LSSVM原理与Python实现:LSSVM的稀疏化改进 一.LSSVM 1.LSSVM用于回归 2.LSSVM模型的缺点 二.WLSSVM的数学原理 三.WLSSVM的 ...

  2. 时间序列分析ARMA模型原理及Python statsmodels实践(上)

    目录 1. 时间序列及相关基本概念 1.1. 时间序列分解 1.2. 时间平稳序列 1.3. 自相关与自相关函数(ACF) 1.4. 白噪声及Ljung-Box检验 1.4.1. 白噪声 1.4.2. ...

  3. 最小二乘法的原理与计算

    https://www.cnblogs.com/xunziji/p/7366580.html 最小二乘法的应用例子  如果某个资产在买入后,第 2-100 天内的收益变化如下图所示: 这时,我想要获得 ...

  4. 偏最小二乘(PLS)原理分析Python实现

    目录 1  偏最小二乘的意义​​​​​​​ 2​ ​​​​​​PLS实现步骤 3 弄懂PLS要回答的问题 4 PLS的原理分析 4.1 自变量和因变量的主成分求解原理 4.1.1 确定目标函数 4.1 ...

  5. python gdbt+fm_GBDT回归的原理及Python实现

    提到GBDT回归相信大家应该都不会觉得陌生(不陌生你点进来干嘛[捂脸]),本文就GBDT回归的基本原理进行讲解,并手把手.肩并肩地带您实现这一算法. 完整实现代码请参考本人的p...哦不是...git ...

  6. 手把手教你EMD算法原理与Python实现(更新)

    Rose今天主要介绍一下EMD算法原理与Python实现.关于EMD算法之前介绍过<EMD算法之Hilbert-Huang Transform原理详解和案例分析>, SSVEP信号中含有自 ...

  7. 信号处理之频谱原理与python实现

    目录 频谱分析 FFT频谱分析原理 下面就用python案例进行说明 案例1 案例2 短时傅里叶变换STFT 本分享为脑机学习者Rose整理发表于公众号:脑机接口社区.QQ交流群:941473018 ...

  8. 倒频谱原理与python实现

    目录 倒频谱定义 倒频谱python案例 本教程为脑机学习者Rose发表于公众号:脑机接口社区 .QQ交流群:903290195 倒频谱定义 倒频谱可以分析复杂频谱图上的周期结构,分离和提取在密集调频 ...

  9. 冲量(momentum)的原理与Python实现

    冲量(momentum)的原理与Python实现 前言 参考:https://www.jianshu.com/p/58b3fe300ecb 梯度下降法(Gradient Descent)是机器学习中最 ...

最新文章

  1. call,apply,bind,new实现原理
  2. win7 计算机右键没有属性,系统之家windows7旗舰版计算机上右键菜单没有属性怎么办?...
  3. RabbitMq(九) SpringBoot整合RabbitMQ消费者示例代码
  4. STM32F103_ADC-DMA通道采集
  5. syn flag flooding防御
  6. 阶段3 2.Spring_06.Spring的新注解_2 spring的新注解-Bean
  7. work of 1/5/2016
  8. 文科生python自学行吗_对于文科生,Python好学吗?
  9. Unity内置Shader解读3——Decal
  10. Echarts南丁格尔图.
  11. 港联证券:为什么会出现股票跌停?股票跌停应该怎么卖出?
  12. 也谈B2B网站的发展方向和趋势
  13. android switch 空间,android Android UI(Switch)详解
  14. STM32F103C8T6通过ESP8266连接阿里云物联网平台(附代码)
  15. CPU漏洞修复工具下载,专门针对“Meltdown”(融化)和“Spectre”(幽灵)两组CPU漏洞,360安全卫士国内首发免疫工具
  16. 2017全球十大云计算平台市场占有率排行榜
  17. 你知道江小白,却不知道它为什么能火?
  18. 华润重组三九大局敲定
  19. 不允许从数据类型 varchar 到 varbinary 的隐式转换。请使用 CONVERT 函数来运行此查询
  20. 计算机系统中级工试题及答案,计算机系统操作中级工试题附答案_精品.doc

热门文章

  1. ​一文了解ICP备案
  2. iconv 库编译流程
  3. 计算机组成原理笔记[哈工大]
  4. c语言编程中负1什么意思,C语言中的if(1)是什么意思啊
  5. 对于LSB的理解(位的LSB、模数转换的LSB
  6. Prim算法的具体实现
  7. 线性规划问题及单纯形法-单纯形法原理
  8. 微信公众平台java开发详解
  9. OKHttp源码分析2 - Request的创建和发送
  10. Android IPC 机制详解:IBinder