【机器学习】回归和超参数调优Regression and Hyper-parameter Optimisation

什么是超参数

所谓超参数,就是机器学习模型里面的框架参数,比如聚类方法里面类的个数,或者话题模型里面话题的个数等等,都称为超参数。它们跟训练过程中学习的参数(权重)是不一样的,通常是手工设定,不断试错调整,或者对一系列穷举出来的参数组合一通枚举(叫做网格搜索)。




什么是Grid Search 网格搜索?

Grid Search:一种调参手段;穷举搜索:在所有候选的参数选择中,通过循环遍历,尝试每一种可能性,表现最好的参数就是最终的结果。其原理就像是在数组里找最大值。(为什么叫网格搜索?以有两个参数的模型为例,参数a有3种可能,参数b有4种可能,把所有可能性列出来,可以表示成一个3*4的表格,其中每个cell就是一个网格,循环过程就像是在每个网格里遍历、搜索,所以叫grid search)



Hyper-parameter Tuning超参数调试处理

在机器学习领域,超参数比较少的情况下,我们之前利用设置网格点的方式来调试超参数;

但在深度学习领域,超参数较多的情况下,不是设置规则的网格点,而是随机选择点进行调试。这样做是因为在我们处理问题的时候,是无法知道哪个超参数是更重要的,所以随机的方式去测试超参数点的性能,更为合理,这样可以探究更超参数的潜在价值。如果在某一区域找到一个效果好的点,将关注点放到点附近的小区域内继续寻找。

不过有可能会出现over tuning的情况,就是超参数太适合training data了不适合别的test data(类似于over fitting)



Regession回归

监督学习中,如果预测的变量是离散的,我们称其为分类(如决策树,支持向量机等),如果预测的变量是连续的,我们称其为回归。

回归(Regression):Y变量为连续数值型(continuous numerical variable)

如:房价,人数,降雨量

分类(Classification): Y变量为类别型(categorical variable)

如:颜色类别,电脑品牌,有无信誉

回归分析(regression analysis)

建立方程模拟两个或者多个变量之间的关系的过程

被预测的变量叫做:因变量(dependent variable), y, 输出(output)

被用来进行预测的变量叫做: 自变量(independent variable), x, 输入(input)

在统计学中,回归分析(regression analysis)是确定两种或两种以上变量间相互依赖的定量关系的一种统计分析方法。运用十分广泛,回归分析按照涉及的变量的多少,分为一元回归和多元回归分析;按照自变量(百度百科 中这里写的是因变量,个人觉得应该是自变量)的多少,可分为简单回归分析和多重回归分析;按照自变量和因变量之间的关系类型,可分为线性回归分析和非线性回归分析。如果在回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且自变量之间存在线性相关,则称为多重线性回归分析。在大数据分析中,回归分析是一种预测性的建模技术,它研究的是因变量(目标)和自变量(预测器)之间的关系。这种技术通常用于预测分析,时间序列模型以及发现变量之间的因果关系。例如,司机的鲁莽驾驶与道路交通事故数量之间的关系,最好的研究方法就是回归。



线性回归(Linear Regression)

简单线性回归包含一个自变量(x)和一个因变量(y),两个变量的关系用一条直线来模拟。

适用于比较直观的关系,比如销量和收入





Gradient Descent(梯度下降)

怎么样能够看出线性函数拟合的好不好呢?

我们需要使用到Cost Function(代价函数),代价函数越小,说明线性回归地越好(和训练集拟合地越好),当然最小就是0,即完全拟合;

但是又一个问题引出了,虽然给定一个函数,我们能够根据cost function知道这个函数拟合的好不好,但是毕竟函数有这么多,总不可能一个一个试吧?

因此我们引出了梯度下降:能够找出cost function函数的最小值;

梯度下降原理:将函数比作一座山,我们站在某个山坡上,往四周看,从哪个方向向下走一小步,能够下降的最快;

当然解决问题的方法有很多,梯度下降只是其中一个,还有一种方法叫Normal Equation;




下图就详细的说明了梯度下降的过程:


梯度下降能够求出一个函数的最小值;

线性回归需要求出,使得cost function的最小;

你可能感兴趣的:(【机器学习】回归和超参数调优Regression and Hyper-parameter Optimisation)