
机器学习知识点
真心乖宝宝
这个作者很懒,什么都没留下…
展开
-
特征选择的方法
当数据预处理完成后,我们需要选择有意义的特征输入机器学习的算法和模型进行训练,通常来说,从两个方面考虑来选择特征:特征是否发散特征与目标的相关性特征是否发散:如果一个特征不发散,例如方差接近于0,也就是说样本在这个特征上基本上没有差异,这个特征对于样本的区分并没有什么用;特征与目标的相关性:这点比较显见,与目标相关性高的特征,应当优选选择。根据特征选择的形式又可以将特征选择方法分为3种:Filter:过滤法,按照发散性或者相关性对各个特征进行评分,设定阈值或者待选择阈值的个数,选择特征.原创 2020-09-11 11:02:43 · 1952 阅读 · 0 评论 -
数据预处理的方法
去除唯一属性唯一属性通常是一些id属性,这些属性并不能刻画样本自身的分布规律,所以简单地删除这些属性即可处理缺失值缺失值处理的三种方法:直接使用含有缺失值的特征;删除含有缺失值的特征(该方法在包含缺失值的属性含有大量缺失值而仅仅包含极少量有效值时是有效的);缺失值补全常见的缺失值补全方法(1) 均值插补:如果样本属性的距离是可度量的,则使用该属性有效值的平均值来插补缺失的值(2) 同类均值插补:首先将样本进行分类,然后以该类中样本的均值来插补缺失值(3) 建模预测(4)原创 2020-09-11 10:43:11 · 296 阅读 · 0 评论 -
基尼系数、熵、信息增益、信息增益率
熵熵是事件不确定性的度量,如果事件无不确定性,则熵为0,不确定性越大,熵越大条件熵在一个条件下,随机变量的不确定性信息增益信息增益 = 熵 - 条件熵表示在一个条件下,信息不确定性减少的程度缺点:信息增益偏向取值较多的特征信息增益率本质:是在信息增益的基础之上乘上一个惩罚参数。特征个数较多时,惩罚参数较小;特征个数较少时,惩罚参数较大。惩罚参数:数据集D以特征A作为随机变量的熵的倒数,即:将特征A取值相同的样本划分到同一个子集中缺点:信息增益比偏向取值较少的特征原因:原创 2020-09-09 11:34:00 · 1083 阅读 · 0 评论 -
GBDT、Xgboost、LightGBM对比
LightGBM 与 XGBoost 的不同点1. 由于在决策树在每一次选择节点特征的过程中,要遍历所有的属性的所有取值并选择一个较好的。XGBoost 使用的是近似算法,先对特征值进行预排序 Pre-sort,然后根据二阶梯度进行分桶,能够更精确的找到数据分隔点;但是复杂度较高。LightGBM 使用的是直方图算法,这种只需要将数据分割成不同的段即可,不需要进行预先的排序。占用的内存更低,数据分割的复杂度更低。2.决策树生长策略,XGBoost 采用的是 Level-wise 的树生长策略,Ligh原创 2020-09-09 11:08:00 · 691 阅读 · 0 评论 -
xgboost面试常问
xgboost损失函数交叉熵损失函数xgboost目标函数xgboost的目标函数由训练损失和正则化项两部分组成,目标函数定义如下:xgboost怎么处理缺失值xgboost把缺失值当做稀疏矩阵来对待,本身在节点分裂时不考虑的缺失值的数值。缺失值数据会被分到左子树和右子树分别计算损失,选择较优的那一个。如果训练中没有数据缺失,预测时出现了数据缺失,那么默认被分类到右子树xgboost优缺点优点1. 精度更高GBDT 只用到一阶泰勒展开,而 XGBoost 对损失函数进行了二原创 2020-09-09 10:43:56 · 550 阅读 · 0 评论 -
LR与朴素贝叶斯对比
相同点朴素贝叶斯和逻辑回归都属于分类模型,当朴素贝叶斯的条件概率服从高斯分布时,它计算出来的 P(Y=1|X) 形式跟逻辑回归是一样的不同点1. 逻辑回归是判别式模型,朴素贝叶斯是生成式模型判别式模型估计的是条件概率分布,给定观测变量 x 和目标变量 y 的条件模型,由数据直接学习决策函数 y=f(x) 或者条件概率分布 P(y|x) 作为预测的模型。判别方法关心的是对于给定的输入 x,应该预测什么样的输出 y;而生成式模型估计的是联合概率分布,基本思想是首先建立样本的联合概率密度模型 P(原创 2020-09-09 10:12:07 · 938 阅读 · 0 评论 -
LR模型与SVM对比
LR模型与SVM对比相同点1. 都是线性分类器。本质上都是求一个最佳分类超平面。都是监督学习算法。2. 都是判别模型。通过决策函数,判别输入特征之间的差别来进行分类。不同点1.损失函数不同:LR的损失函数是交叉熵,SVM损失函数为合页损失函数SVM目标函数为损失函数加正则项:2. 两个模型对数据和参数的敏感程度不同:(1) SVM考虑分类边界线附近的样本, 在支持向量外添加或减少任何样本点对分类决策面没有任何影响;LR受所有数据点的影响。直接依赖数据分布,每个样本点都会影响决策原创 2020-09-09 10:02:34 · 535 阅读 · 0 评论 -
LR模型
LR模型逻辑回归假设数据服从伯努利分布,通过极大化似然函数的方法,运用梯度下降求解参数,来达到将数据二分类的目的逻辑回归本质上是线性回归,只是在特征到结果的映射中加入了一层sigmoid激活函数,即先把特征线性求和,然后使用sigmoid函数来预测。将连续值映射到 0和1特征重要性每个特征都对应一个模型参数wi,该参数越大,那么该特征对模型预测结果的影响就会越大,我们就说该特征就越重要,因此LR模型的特征重要性评估方式就是wi的大小LR的损失函数LR的loss function称为lo原创 2020-09-09 09:35:23 · 912 阅读 · 0 评论 -
GBDT面试相关问题
GBDT基本原理GBDT基本原理是通过多轮迭代,每轮迭代产生一个弱分类器(利用CART回归树构建),每个分类器在上一轮分类器的残差基础上进行训练GBDT优点1.可以灵活处理各种类型的数据,包括连续值和离散值;2. 在相对少的调参时间情况下,预测的准确率也比较高 ;3. 使用一些健壮的损失函数,对异常值的鲁棒性非常强。比如 Huber损失函数和Quantile损失函数。GBDT缺点由于弱学习器之间存在依赖关系,难以并行训练数据。不过可以通过自采样的SGBT来达到部分并行GBDT分裂原创 2020-09-08 15:53:25 · 1026 阅读 · 5 评论 -
为什么逻辑回归要用sigmoid函数
为什么逻辑回归要用sigmoid函数Sigmoid是推导出来的,不是假设出来的, LR的假设是两个类服从均值不等,方差相等的高斯分布,然后通过贝叶斯决策推导为什么假设服从高斯分布(1) 因为高斯分布是比较容易处理的分布(2) 从信息论的角度上看,当均值和方差已知时(尽管你并不知道确切的均值和方差,但是根据概率论,当样本量足够大时,样本均值和方差以概率1趋向于均值和方差), 高斯分布是熵最大的分布, 因为最大熵的分布可以平摊你的风险参考文章参考文章1...原创 2020-09-05 09:55:12 · 1327 阅读 · 0 评论 -
GBDT是否需要进行归一化操作?
概率模型不需要归一化,因为它们不关心变量的值,而是关心变量的分布和变量之间的条件概率,如决策树、rf。而像adaboost、svm、lr、KNN、KMeans之类的最优化问题就需要归一化为什么GBDT需要进行归一化操作因为GBDT的树是在上一颗树的基础上通过梯度下降求解最优解,归一化能收敛的更快,GBDT通过减少偏差来提高性能,而随机森林本来就是通过减少方差提高性能的,树之间建立关系是独立的,不需要归一化对于线性模型,特征值差别很大时,比如说LR,我有两个特征,一个是(0,1)的,一个是(.原创 2020-09-05 09:45:09 · 4756 阅读 · 1 评论 -
机器学习评价指标【准确率、精确率、召回率、F1值、ROC、AUC】
准确率(precision)在被判定为正样本的数据中,实际为正样本的个数精确率(accuracy)在所有数据中,正负样本判断正确的个数召回率(recall)在实际为正样本的数据中,被判定为正样本的个数F1值F1值是精确率和召回率的调和均值,相当于精确率和召回率的综合评价指标ROC接收者操作特征曲线(receiver operating characteristic curve),是反映敏感性和特异性连续变量的综合指标,ROC曲线上每个点反映着对同一信号刺激的感受性横坐原创 2020-08-07 09:49:31 · 1887 阅读 · 0 评论 -
陌陌算法岗面试【准确率、召回率、精确率】
准确率(precesion)在被判定为正样本的数据中,实际为正样本的个数召回率(recall)在实际为正样本的数据中,被判定为正样本的个数精确率(accuracy)在所有数据中,正负样本判断正确的个数公式表达TP(True Positive):被判定为正样本,实际为正样本TN(True Negative):被判定为负样本,实际为负样本FP(False Positive):被判定为正样本,实际为负样本FN(False Negative):被判定为负样本,实际为正样本prec原创 2020-06-29 10:20:43 · 629 阅读 · 0 评论 -
bagging、boosting、随机森林、GBDT、xgboost
xgboost算法思想该算法思想就是不断地添加树,不断地进行特征分裂来生长一棵树,每次添加一个树,其实是学习一个新函数,去拟合上次预测的残差。当我们训练完成得到k棵树,我们要预测一个样本的分数,其实就是根据这个样本的特征,在每棵树中会落到对应的一个叶子节点,每个叶子节点就对应一个分数,最后只需要将每棵树对应的分数加起来就是该样本的预测值xgboost与传统GBDT的区别与联系...原创 2020-06-28 14:46:54 · 838 阅读 · 0 评论 -
K-means、K-means++、Mini Batch k-means
K-meansK-means算法的基本步骤1.从n个数据中任意选择 k 个对象作为初始聚类中心2.通过把每个点分配给最近的聚类中心,从而形成K个类,重新计算每个类的聚类中心3.终止条件:如果计算后,聚类中心不发生改变每个类别聚类中心的计算方法每个类中所有样本取值的均值(质心)改进K-means是常用的聚类算法,但其算法本身存在一定的问题,例如在大数据量下计算时间过长就是一个重要问题,可以从两方面进行改进,一方面:通过改变初始聚类中心的选择,从而减少迭代次数;另一方面:随机抽取一部原创 2020-06-18 16:05:35 · 576 阅读 · 0 评论 -
k-fold交叉验证
交叉验证的目的当数据量较少时,交叉验证可以评估模型的泛化能力,从而进行模型选择交叉验证的基本思想它将原始数据分成K组(K-Fold),将每个子集数据分别做一次验证集,其余的K-1组子集数据作为训练集,这样会得到K个模型。这K个模型分别在验证集中评估结果,最后的误差MSE(Mean Squared Error)加和平均就得到交叉验证误差。交叉验证有效利用了有限的数据,并且评估结果能够尽可能接近模型在测试集上的表现,可以做为模型优化的指标使用。参考文章参考文章1参考文章2...原创 2020-06-15 16:51:41 · 893 阅读 · 0 评论 -
L1正则化和L2正则化面试常考题
正则化L1正则化和L2正则化可以看做是损失函数的惩罚项。所谓“惩罚”是指对损失函数中的某些参数做一些限制L1正则化是指权值向量w中各个元素的绝对值之和L2正则化是指权值向量w中各个元素的平方和然后再求平方根L1正则化和L2正则化区别L1正则化可以产生稀疏权值矩阵,即产生一个稀疏模型,可以用于特征选择L2正则化可以防止模型过拟合;一定程度上,L1也可以防止过拟合正则化为什么能降低过拟合程度?并且说明下下L1正则化和L2正则化。降低过拟合程度:正则化之所以能够降低过拟合的原因在于,正则原创 2020-06-15 16:02:18 · 2194 阅读 · 0 评论