数据拟合

过拟合和欠拟合

雨燕双飞 提交于 2020-04-06 09:37:59
本文首发自公众号: RAIS ​前言 本系列文章为 《Deep Learning》 读书笔记,可以参看原书一起阅读,效果更佳。 构建复杂的机器学习算法 上一篇文章中我们介绍了什么叫做机器学习算法极其具体的定义和所关心的问题,比较简单,接下来的文章我们将介绍一些设计学习算法的基本准则。 误差 泛化:机器学习的目的是在新的输入上具有良好的表现,而不是已有的数据,这很好理解,在新的数据上表现良好的能力叫做 泛化 。 在机器学习中,总是存在误差的,百分之百的确定的事件已经不是机器学习研究的范围了。既然如此,就一定存在误差,训练过程在训练集上误差称作 训练误差 ,泛化后的在新的输入上的误差称为 泛化误差 或 测试误差 。我们都希望误差尽可能的小,并且相比较而言泛化误差减小更重要(毕竟解决问题才是最重要的)。 这里会遇到一个问题就是我们往往只能得到训练数据集,没有什么好的办法提前获取模型交付生产环境后所新输入的数据,针对这样的问题,我们往往在收集统计训练数据时,尽量接近实际生产环境,并且假设数据之间是 独立同分布 的,称为 数据生成分布 ,基于这样的原因,我们会假设训练误差和测试误差两者的期望是一样的。因此我们针对数据集,具体的做法就会是先尽可能的减小 训练误差 ,让模型在已有的数据上表现良好,然后再尽可能减小 测试误差 与训练误差之间的差距,这样就会得到一个测试误差较低的模型。

线性回归(regression)

一曲冷凌霜 提交于 2020-04-06 04:30:56
简介 回归分析只涉及到两个变量的,称一元回归分析。一元回归的主要任务是从两个相关变量中的一个变量去估计另一个变量,被估计的变量,称因变量,可设为Y;估计出的变量,称自变量,设为X。 回归分析就是要找出一个数学模型Y=f(X),使得从X估计Y可以用一个函数式去计算。 当Y=f(X)的形式是一个直线方程时,称为一元线性回归。这个方程一般可表示为Y=A+BX。根据最小平方法或其他方法,可以从样本数据确定常数项A与回归系数B的值。 线性回归方程 Target:尝试预测的变量,即目标变量 Input:输入 Slope:斜率 Intercept:截距 举例,有一个公司,每月的广告费用和销售额,如下表所示: 如果把广告费和销售额画在二维坐标内,就能够得到一个散点图,如果想探索广告费和销售额的关系,就可以利用一元线性回归做出一条拟合直线: 有了这条拟合线,就可以根据这条线大致的估算出投入任意广告费获得的销售额是多少。 评价回归线拟合程度的好坏 我们画出的拟合直线只是一个近似,因为肯定很多的点都没有落在直线上,那么我们的直线拟合的程度如何,换句话说,是否能准确的代表离散的点?在统计学中有一个术语叫做R^2(coefficient ofdetermination,中文叫判定系数、拟合优度,决定系数),用来判断回归方程的拟合程度。 要计算R^2首先需要了解这些: 总偏差平方和(又称总平方和,SST

ML_6机器学习重要概念补充

老子叫甜甜 提交于 2020-04-05 17:14:40
学习目标 sklearn中的Pipeline 偏差与方差 模型正则化之L1正则、L2正则 一、sklearn中的Pipeline 研究一个因变量与一个或多个自变量间多项式的回归分析方法,称为多项式回归(Polynomial Regression)。多项式回归是线性回归模型的一种,其回归函数关于回归系数是线性的。其中自变量x和因变量y之间的关系被建模为n次多项式。 如果自变量只有一个时,称为一元多项式回归;如果自变量有多个时,称为多元多项式回归。在一元回归分析中,如果变量y与自变量x的关系为非线性的,但是又找不到适当的函数曲线来拟合,则可以采用一元多项式回归。 由于任一函数都可以用多项式逼近,因此多项式回归有着广泛应用。 多项式回归的思路是:添加一个特征,即对于X中的每个数据进行平方。 import numpy as np import matplotlib.pyplot as plt x = np.random.uniform(-3, 3, size=100) X = x.reshape(-1, 1) y = 0.5 + x**2 + x + 2 + np.random.normal(0, 1, size=100) plt.scatter(x, y) plt.show() from sklearn.linear_model import LinearRegression lin

关于数据

a 夏天 提交于 2020-03-25 21:01:28
数据是一切的根本。 一.获取数据 1.可以使用爬虫scrapy获取数据,但是更一般的是自家数据库中的数据 2.可以获得公用数据集: http://www.kaggle.com/datasets 等网站 3.可以自己创建虚拟数据 4.注意:1)数据量尽可能多、利于训练,(2)数据内容尽可能有效,能对预测产生作用(有用的特征),(3)数据尽可能要均匀(分类),即全面 5.注意:无论是数据获取还是处理,都要注意多做备份,有能力每步都要备份,数据的价值难以想象。 二.原始数据 1.数据的本质是信息的具体化,原始数据有很多种:数字、文字、图片....我们可以从这些数据中看出里面所包含的信息。 2.计算机接收进行处理的是数字,根据经验,把原始数据转换为数字是比较容易的(比如把图片转化为矩阵的形式), 3.我们得到的原始数据可能有这样那样的问题,所以要进行下一步的数据清洗 ------原始数据是杂乱的,含有不完整、重复、错误的数据,因此要先进行数据清洗------- 三.数据清洗(Data cleaning) 1.数据清洗是为了对数据进行重新审查和校验,目的在于删除重复信息、纠正存在的错误,并提供数据一致性 2.不符合要求的数据主要是有不完整的数据、错误的数据、重复的数据三大类 (1)缺失数据(数据为空Null):如果缺失数据的记录占比较小,可以直接剔除(主要包括删除样本或删除特征两种

Kriging插值法

非 Y 不嫁゛ 提交于 2020-03-21 06:00:28
克里金法是通过一组具有 z 值的分散点生成估计表面的高级地统计过程。与插值工具集中的其他插值方法不同,选择用于生成输出表面的最佳估算方法之前,有效使用 克里金法 工具涉及 z 值表示的现象的空间行为的交互研究。 什么是克里金法? IDW (反距离加权法)和 样条函数法 插 值工具被称为确定性插值方法,因为这些方法直接基于周围的测量值或确定生成表面的平滑度的指定数学公式。第二类插值方法由地统计方法(如克里金法)组成, 该方法基于包含自相关(即,测量点之间的统计关系)的统计模型。因此,地统计方法不仅具有产生预测表面的功能,而且能够对预测的确定性或准确性提供某种度 量。 克里金法假定采样点之间的距离或方向可以反映可用于说明表面变化的空间相关性。 克里金法 工 具可将数学函数与指定数量的点或指定半径内的所有点进行拟合以确定每个位置的输出值。克里金法是一个多步过程;它包括数据的探索性统计分析、变异函数建模 和创建表面,还包括研究方差表面。当您了解数据中存在空间相关距离或方向偏差后,便会认为克里金法是最适合的方法。该方法通常用在土壤科学和地质中。 克里金法公式 由于克里金法可对周围的测量值进行加权以得出未测量位置的预测,因此它与反距离权重法类似。这两种插值器的常用公式均由数据的加权总和组成: 其中: Z(s i ) = 第 i 个位置处的测量值 λ i = 第 i 个位置处的测量值的未知权重

机器学习记录(week 3)

妖精的绣舞 提交于 2020-03-09 00:34:20
突然有种想把自己的学习经历记录下来的冲动,所以有了这篇文章,以后应该也会把学习笔记,遇到的问题,解决方法都记录在博客上面 (之前的笔记都记在有道云笔记上了,有空再整理一下,以下是有关正则化那部分的测验) Regularization 第一题 答案:B A:过多的特征会导致过拟合 B:加入新特征,会更好的拟合数据(不用考虑是否过拟合,这里是问是否加入新特征对拟合数据有无帮助,加入新特征意味着得到更多的信息) C、D:我在cd之间纠结了好久,想不到两个都是错的,然后翻了下他人的解释,意识到这道题也考了λ的大小问题,使用正则化的时候,若是λ过大,则一系列的Θ就是趋于0(个人理解,正则化就是修改代价函数,在要改变的参数前设置一个值,如同下图的代价函数,给Θ3,Θ4设置惩罚,因为要使得代价函数尽量小,当把后两项考虑进去时,因为1000比较大,所以要使得Θ3,Θ4较小才能使得代价函数较小,所以λ较大时,会使得Θ很小),所以说正则化不一定能得到更好的假设,也有可能发生欠拟合问题,至于D,都欠拟合了,也不会在新样例有更好的表现)(注意:D的 not in the training set是修饰examples的,我一开始没注意看犯错了) 第二题 答案:B 很容易选出来了,λ大的,Θ会小 第三题 答案:D A:正则化并不对导致代价函数变为凸函数,正则化是解决过拟合的问题 B:不是很理解

[过拟合]早停法 (Early Stopping)

强颜欢笑 提交于 2020-03-08 09:39:09
1、过拟合 过拟合(overfitting)指的是只能拟合训练数据, 但不能很好地拟合不包含在训练数据中的其他数据的状态[来自 斋藤康溢] 解决过拟合问题有两个方向: 降低参数空间的维度或者降低每个维度上的有效规模(effective size)。降低每个参数维度的有效规模的方法主要是正则化,如权重衰变(weight decay)和 早停法(early stopping) 等。 降低参数数量的方法包括greedy constructive learning、剪枝和 权重共享(卷积) 等。 2、early stopping 2.1 定义 首先,先了解另一个东西,Callbacks.callbacks用于指定在每个epoch开始和结束的时候进行哪种特定操作。Callbacks中有一些设置好的接口,可以直接使用,如’acc’, 'val_acc’, ’loss’ 和 ’val_loss’等等。 而EarlyStopping是Callbacks的一种,EarlyStopping则是用于提前停止训练的callbacks。具体地, 可以达到当训练集上的loss不在减小(即减小的程度小于某个阈值)的时候停止继续训练。 2.2 意义 为了获得性能良好的神经网络,网络定型过程中需要进行许多关于所用设置(超参数)的决策。超参数之一是定型周期(epoch)的数量:亦即应当完整遍历数据集多少次

多项式拟合(polyfit和polyval)

三世轮回 提交于 2020-03-06 10:25:48
polyfit可以对数据进行拟合(自定义用几次多项式),返回相应的参数,然后用polyval生成拟合后的数据点。 polyfit(x,y,2)中x表示自变量,y表示因变量,2表示用二次曲线(抛物线)进行拟合,得到的p其实是对应的参数估计值 yy = polyval(p,x); yy为拟合数据点。 f=poly2sym§,可以写出拟合后的公式。 x =[1.6000 2.0000 2.6000 3.0000 3.5000 3.9000 4.5000 4.6000 4.8000 5.0000 5.1000 5.3000 5.4000 5.6000 5.8000 6.0000 6.0000 6.1000 6.3000 6.5000 6.5000 6.7000 7.0000 7.1000 7.3000 7.3000 7.3000 7.7000 7.7000 7.8000 7.9000 8.0000 8.1000 8.3000 8.4000 8.4000 8.5000 8.7000 8.8000 9.0000]; y =[0.9930 0.9831 0.9731 0.9631 0.9532 0.9432 0.9333 0.9233 0.9133 0.9034 0.8934 0.8835 0.8735 0.8635 0.8536 0.8436 0.8337 0.8237 0.8137 0

偏差-方差,过拟合-欠拟合

大憨熊 提交于 2020-03-04 04:06:11
偏差(Bias)与方差(Variance)   记协变量为 X X X ,预测变量为 y y y ,设 X X X 和 y y y 之间的关系可通过模型 y = f ( X ) + ϵ y=f(X)+\epsilon y = f ( X ) + ϵ ,其中误差项 、 ϵ 、\epsilon 、 ϵ 服从均值为0的正态分布,即 ϵ ∼ N ( 0 , σ ϵ ) \epsilon\sim\mathcal{N}(0,\sigma_\epsilon) ϵ ∼ N ( 0 , σ ϵ ​ ) 。   设通过某个统计模型得到 f ( X ) f(X) f ( X ) 的估计为 f ^ ( X ) \hat{f}(X) f ^ ​ ( X ) ,在点 x x x 处的均方预测误差(泛化误差)定义为,模型在点 x x x 的预测值 f ^ ( x ) \hat{f}(x) f ^ ​ ( x ) 与真实值 y y y 差值平方的期望,即: P M S E ( x ) = E [ ( f ^ ( x ) − y ) 2 ] PMSE(x)=E[(\hat{f}(x)-y)^2] P M S E ( x ) = E [ ( f ^ ​ ( x ) − y ) 2 ] 该项可做以下分解: P M S E ( x ) = E [ ( f ^ ( x ) − y ) 2 ] = E [ ( f ^ ( x

ai相关

江枫思渺然 提交于 2020-03-03 19:56:17
学习资源 1.1 1.2 2.1 2.2 2.3 前置 octave 学习相关 link 定义 Field of study that gives computers the ability to learn without being explicitly programmed learn from experience E with respect to some task T and some performance measure P 按照给电脑的数据是否给出正确答案(或者说真实完整信息)分类 1)supervise learning (如回归直线) 2)unsupervise learning(如给通信记录让电脑将通讯录的人分成几组,如从两人说话加背景音乐中把三者分开) 按照将输入映射为连续函数还是离散函数分类 1) regression 2) classification underfit, just right, overfit underfit 如用直线去拟合曲线状的东西 overfit:如强行用n次多项式去拟合n+1个点,导致图像十分鬼畜明显无法达到预测效果 当feature过多,可能使J特别小,但预测效果却不如意 regularization 关于非线性问题 前面提到的算法中,解决非线性问题会增加一个形如 \(x_1^2, x_2^3, x_1x_2, x_4x