算法模型调控参数调整指南

July 06 2016

主要整理汇总了常用的三个算法模型LR,SVM,XGBoost涉及到的参数定义及其对模型的影响效果。其中XGBoost的参数涉及到了Decision Tree,Random Froest,Gradient Boost Decision Tree这四种模型的参数。模型训练调控参数也就是hyperparameter。对这些参数的调整主要影响模型的训练速度,表示能力,泛化能力。

Logistic Regression模型调节参数说明

对于逻辑回归模型来说,最重要的模型调节参数就是正则项的参数。正则项的参数是对训练出的模型中各个特征权重进行运算得到的。LR的正则主要有L1和L2。L1和L2都是避免数据过拟合的方法。举例来说二者计算方式的差异, 有两个向量,a=(0.5,0.5), b=(-1,0),其L1和L2范数分别为:

L1范数: ||a||1 = |0.5|+|0.5|=1 ||b||1 = |-1|+|0.5|=1
L2范数: ||a||2 =sqrt( 0.5^2+0.5^2)=1/sqrt(2)<1  ||b||2 = sqrt((-1)^2+0^2)=1

那么采用L1的计算方法的时候二者的L1范数都相等,但是二者的L2范数却表现出来是a比b的L2范数更小,因此L2的思想其实是把结果分散到其他的。 L1 范数是系数的绝对值和,L2范数是系数的平方和开平方。

XGBoost模型调节参数说明

三类参数:一般参数,booster参数,任务参数

树模型通用参数

模型复杂度控制参数

max_depth, min_child_weight,gamma

抗噪

subsample, colsample_bytree

如果模型过拟合,就减小步长,增加迭代轮数

SVM模型训练调节参数

如何选择核函数?

主要是根据数据来确定

normalization

参考: