归一化就是把你需要处理的数据经过处理后(通过某种算法)限制在你需要的一定范围内。分为:
线性函数归一化:最大值最小值归一化
这种归一化适合数值比较集中情况,如果max和min不稳定,很容易使得归一化结果不稳定; 实际应用中可以用经验常量值来替代max和min。标准差归一化(零均值归一化):标准正态分布
非线性归一化:log、指数、正切等变换
经常用在数据分化比较大的场景,通过数学函数进行映射。归一化后使得等高线变得更加圆润,更容易使得梯度下降沿着梯度方向一直前进到最优解的点。不进行归一化,曲线的梯度方向不一定一直沿着向最优解的方向前进,很容易走“之”字。
一些分类器需要计算样本之间的距离(如欧氏距离),例如KNN。如果一个特征值域非常大,那么距离计算就主要取决于这个特征,从而与实际情况相悖(实际情况是值域范围小的特征更重要),对这类模型的特征进行归一化有可能提高精度。
概率模型不需要归一化,因为它们不关心变量的值,而是关心变量的分布和变量之间的条件概率。
决策树、RF归一化是为了使计算更方便,避免造成数值问题,比如说求矩阵的逆可能很不精确或者梯度下降法收敛比较困难,需要计算欧氏距离的话量纲也需要调整。
线性回归、逻辑回归(LR)、支持向量机(SVM)、KNN、神经网络等模型。数值缩放不影响分裂点位置。因为第一步都是按照特征值进行排序的,排序的顺序不变,那么所属的分支以及分裂点就不会有不同。 对于树模型不能进行梯度下降,因为树模型是阶跃的,阶跃点处不可导的。所以树模型是通过寻找最优分裂点完成的。
类别特征的输入通常是字符串形式,除了决策树等少数模型能直接处理字符串的输入外,对于LR、SVM等模型来说,类别特征必须经过处理转换成数值特征才能正常工作。
序号编码、独热编码(one-hot)、二进制编码、Helmert Contrast、Sum Contrast、Polynomial Contrast、Backward Contrast等。可以利用矩阵分解来减少两个高维特征组合后需要学习的参数。
特征选择目的:
减少也正的数量、降维,使模型繁华能力更强从而减少过拟合;增强特征对特征值之间的理解。词袋模型和N-gram模型、主题模型、词嵌入和深度学习模型
词嵌入:将每个词都映射成低维空间(通常K=50~300维)上的一个稠密向量。K维空间的每一维可以看作一个隐含的主题。传统的浅层机器学习模型中,一个好的特征工程往往可以带来算法效果的显著提升。而深度学习模型正好为我们提供了一种自动地选择特征工程的方式,模型中的每个隐层都可以认为对应着不同抽象层次的特征。与全连接网络结构相比:卷积神经网络和循环神经网络一方面很好抓住了文本的特性,另一方面又减少了网络中待学习的参数,提高了训练速度,并且降低了过拟合风险。 主题模型是基于概率图的生成式模型(LDA),其似然函数可以写成若干条件概率连乘的形式。词嵌入模型一般表达为神经网络,似然函数在网络输出上,需要学习网络的权重以得到单词的稠密向量表示。准确率accuracy:分类正确的样本占总样本的比例。 精确率precision:分类正确的样本占分类器判定为正样本个数的比例。 召回率recall:分类正确的样本占真正的正样本个数的比例。 F1 score:精确率和召回率的调和平均值(2倍的和分之积)。 ROC曲线:横坐标为假阳性率(False Positive Rate, FPR),纵坐标为真阳性率(True Positive Rate, TPR). 平均绝对误差MAE(Mean Absolute Error) 平均绝对百分比误差MAPE 均方误差MSE(Mean Squared Error) 均方根误差RMSE(Root Mean Squared Error)
相比P-R曲线,ROC曲线有一个特点,当正负样本分布发生变化时,ROC的曲线形状基本保持不变,而P-R曲线的形状一般会发生比较剧烈变化。
三条距离公理:正定性、对称性、三角不等式 余弦满足正定和对称,不满足三角不等式需要进行线上A/B测试原因:
离线无法完全消除过拟合的影响离线无法还原线上的工程环境线上系统的某些商业指标在离线评估中无法计算。划分测试集要注意保留样本的独立性和采样方式的无偏性。
自助法:当样本无限大时候,大约有1/e(36.8%)的样本从未被选择。
网格搜索、随机搜索、贝叶斯优化 要素:1、目标函数,即算法需要最大化/最小化的目标;2、搜索范围,一般通过上限和下限来决定;3、算法的其他参数,如搜索步长。
降低过拟合风险的方法: 1、从数据入手,获得更多的数据 2、降低模型的复杂度
神经网络减少网络层数、神经元个数;决策树模型、降低深度和剪枝。 3、正则化方法 4、集成学习方法
bagging、stacking、boosting
降低欠拟合风险: 1、添加新特征:构造特征工程如:因子分解机、GBDT、Deep-crossing 2、增加模型复杂度 3、减小正则化系数