![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习
文章平均质量分 50
ml_hhy
这个作者很懒,什么都没留下…
展开
-
模型训练调优整过程解析
训练模型的目的是根据历史数据训练得到参数,先不考虑泛化能力的情况下(例如通过正则化等方式来提高模型泛化能力)训练的过程是在逐步获得,最大拟合训练集的对应参数值并且期望这些参数可以在未带label值的数据中计算得到label的值那我们训练目的就是希望得到最拟合已有数据分布(数据集)的对应参数值(多次强调)那如何最拟合已有数据分布呢??本来通过通过逻辑回归来解析整一个过程:假设已经有N个样本,样本的标签只有0和1两类我们把单个样本看做一个事件,那么这个事件发生的概率就是:这个函数不方便计算,它原创 2020-11-06 17:34:30 · 987 阅读 · 0 评论 -
算法比赛记录
CTR 比赛学习:https://blog.csdn.net/chengcheng1394/article/details/78940565原创 2020-07-16 18:10:58 · 238 阅读 · 0 评论 -
sklearn pipeline 实现多个模型统一调参
实现多模型统一调参解决问题:在复现GBDT+LR的经典结构的时候,发现需要对两个模型一起进行调参,网上找不到相关代码,研究之后实现LGB + LR的统一调参需写3个自定义管道流的类来完成, 两个模型用于预测, 一个实现将GBDT的预测值作为下一步LR的特征的转换from sklearn.base import BaseEstimator, TransformerMixinfrom lightgbm import LGBMClassifierfrom sklearn.linear_model imp原创 2020-06-12 10:51:46 · 1619 阅读 · 0 评论 -
半自动构造新特征
半自动构造新特征主要原理是通过groupby(C1).agg(func)[N1]的方式来创造新特征,实现特征交叉还需配合特征筛选使用有更好效果需要传入gby_cols 分组列,stati_cols 统计列,func_list 统计函数prefix_list的特征前缀可自行修改简单易懂,无多余功能,网上没看到类似函数,自行写一个# 半自动构造新特征class FeatureCombination(object): def __init__(self): # init原创 2020-05-19 14:40:14 · 217 阅读 · 0 评论 -
xgboost保存模型遇到问题
采用此种方式保存的模型,当我重新读取时,模型特征排序会更改,很坑xgb.save("./output/model/xgb.model")采用joblib方式保存模型才行import joblib#save modeljoblib.dump(xgb, './output/model/xgb.model') ...原创 2020-04-22 15:45:45 · 788 阅读 · 0 评论 -
经onehot编码后,实现维度转换后xgb特征维度权重值跟踪
0.19 sklearn的onehot编码有bug,完成onehot编码转换,在过程中将转换后特征维度记录下来,便于配合xgb特征选择获取不同特征权重from sklearn.base import BaseEstimator, TransformerMixinfrom sklearn.utils import check_arrayfrom sklearn.preprocessing i...原创 2020-04-21 11:10:51 · 682 阅读 · 0 评论 -
roc曲线 vs pr曲线(AUC vs f1)
一直不理解auc值与F1值的应用场景,什么情况下使用哪种指标可以更好观察模型表现之前的理解是觉得使用f1值(即采用召回率和精确率)来评价模型会更好。因为召回率和精确率更直观,可以使业务方对模型的预测效果有较准确预期但roc其实更应该更多使用接下来本篇会将roc曲线与pr曲线做对比,并且介绍auc的应用场景ROC曲线 vs PR曲线相比P-R曲线,ROC曲线有一个特点,当正负样本的分布发...原创 2019-12-26 16:00:39 · 2771 阅读 · 0 评论 -
面试经验(待完善)
特征筛选根据经验 精选8-11个高级组合特征会对机器学习模型有更好效果原创 2019-11-20 17:28:39 · 113 阅读 · 0 评论 -
xgboost调参经验
本文为kaggle上一位选手分享的xgboost调参经验的翻译。方便对xgboost模型参数的快速调试。原文:https://www.kaggle.com/c/bnp-paribas-cardif-claims-management/forums/t/19083/best-practices-for-parameter-tuning-on-models数据的划分:一般从训练集里划分20%作为验...转载 2019-10-11 22:29:29 · 2062 阅读 · 1 评论 -
机器学习模型为什么要将特征离散化
严林的回答: https://www.zhihu.com/question/31989952/answer/54184582在工业界,很少直接将连续值作为逻辑回归模型的特征输入,而是将连续特征离散化为一系列0、1特征交给逻辑回归模型,这样做的优势有以下几点:离散特征的增加和减少都很容易,易于模型的快速迭代;稀疏向量内积乘法运算速度快,计算结果方便存储,容易扩展;离散化后的特征对异常数据有...转载 2019-09-08 12:03:38 · 333 阅读 · 0 评论 -
lstm模型与情感分析实例
LSTM(Long Short-Term Memory)简介由于RNN存在梯度消失的问题,很难处理长序列的数据。为了解决RNN存在问题,后续人们对RNN做了改进,得到了RNN的特例LSTM,它可以避免常规RNN的梯度消失,因此在工业界得到了广泛的应用。LSTM模型是RNN的变体,它能够学习长期依赖,允许信息长期存在。举个例子来讲:比如人们读文章的时候,人们会根据已经阅读过的内容来对后面的内...原创 2019-04-29 10:32:48 · 10799 阅读 · 0 评论 -
adaboost理解
源至 https://github.com/apachecn/hands_on_Ml_with_Sklearn_and_TF/blob/dev/docs/7.%E9%9B%86%E6%88%90%E5%AD%A6%E4%B9%A0%E5%92%8C%E9%9A%8F%E6%9C%BA%E6%A3%AE%E6%9E%97.md 再加上自己一点补充与理解使一个新的分类器去修正之前分类结果的方法...原创 2018-09-13 15:47:13 · 266 阅读 · 0 评论 -
建模常用的概念介绍1: WOE、IV
https://blog.csdn.net/PbGc396Dwxjb77F2je/article/details/78790106转载 2018-09-10 10:01:32 · 502 阅读 · 0 评论 -
SVM
https://github.com/apachecn/hands_on_Ml_with_Sklearn_and_TF/blob/dev/docs/5.%E6%94%AF%E6%8C%81%E5%90%91%E9%87%8F%E6%9C%BA.md#%E5%A2%9E%E5%8A%A0%E7%9B%B8%E4%BC%BC%E7%89%B9%E5%BE%81线性SVM分类器在很多情况下表现得出乎...转载 2018-09-06 22:39:51 · 209 阅读 · 0 评论 -
逻辑回归掌握要点(全)
基于自己理解与ng老师的课程总结出来的LR http://mooc.study.163.com/learn/2001281002?tid=2001392029#/learn/content?type=detail&id=2001702014&cid=2001693016逻辑回归原理 我们知道,线性回归模型是y^=θxy^=θx\hat{y} = \theta x...原创 2018-04-10 13:06:25 · 409 阅读 · 0 评论 -
K近邻 (k-nearest neighbor k-NN)(面试要点)
k近邻法不具有显式的学习过程,也就是说没有模型k近邻三个要素:k值的选择(一般使用交叉验证) k值增大可以减少学习的估计误差,但也会使学习近似误差变大,使模型变得简单。距离度量(一般会使用欧式距离 or 更一般的LpLpL_p距离 or 曼哈顿距离)分类决策规则 往往是使用多数表决,即由输入实例的k个邻近的训练实例中的多数类决定输入实例的类。 多数表决规则等价于经验风险...原创 2018-04-10 14:33:42 · 1103 阅读 · 0 评论 -
SVM面试常见问题
为什么要把原问题转换为对偶问题?因为原问题是凸二次规划问题,转换为对偶问题更加高效。 并且可以引入核函数为什么求解对偶问题更加高效?因为只用求解alpha系数,而alpha系数只有支持向量才非0,其他全部为0.alpha系数有多少个?样本点的个数如果写的程序跑的非常慢,多方面分析这个问题?答了: 1、检查程序是否有多层嵌套循环,优化2、检查程序是否有很耗时的操作,...原创 2018-04-22 21:45:47 · 775 阅读 · 0 评论 -
如何对用户进行聚类分析?
如何对用户进行聚类分析? - 微调的回答 - 知乎 https://www.zhihu.com/question/19982667/answer/347473295转载 2018-04-22 21:46:23 · 5559 阅读 · 0 评论 -
CART决策树要点
https://www.jianshu.com/p/fb97b21aeb1d什么是决策树答:决策树的本质是从训练数据中找到一组分类的规则,使得这个规则在尽量拟合训练数据的同时又有比较好的泛化能力。 也可以说是基于训练数据估计条件概率模型。决策树回归树建树规则与损失函数 对于连续值的处理,我们知道CART分类树采用的是用基尼系数的大小来度量特征的各个划分点的优劣情况。这比较适合分...原创 2018-04-23 00:27:43 · 174 阅读 · 0 评论 -
什么是启发式算法(转)
演化算法(Evolutionary Algorithm), 蚁群算法(Ant Algorithms), 拟人拟物算法,量子算法等。 各个算法的思想这就不再详细给出(以后会给出一些,关注我的blog) ,为什么要引出启发式算法,因为NP问题,一般的经典算法是无法求解,或求解时间过长,我们无法接受。这里要说明的是:启发式算法得到的解只是近似最优解(近似到什么程度,只有根据具体问题才能给出). 二十一...转载 2018-04-23 10:11:35 · 3036 阅读 · 0 评论 -
GBDT面试
GBDT采用的是boosting的思想,先从初始训练集训练出一个基学习器,再根据基学习器的表现对训练样本分布进行调整,使得基学习器做错的训练样本在后续受到更多的关注,然后基于调整后的样本分布来训练下一个基学习器,最后将所有基学习器加权结合。GDBT在传统的boosting的基础上,将以决策树为基函数的提升树拟合残差,利用损失函数的负梯度在当前模型的值作为残差的估计。...原创 2018-04-26 20:00:34 · 681 阅读 · 0 评论 -
异常检测相关
异常检测可以上GitHub搜一下 nupic原创 2018-06-20 14:10:51 · 271 阅读 · 0 评论 -
机器学习项目主要步骤详细清单(精)
对于机器学习项目来说,你开始获得之后有一个总体思路很重要,也需要一些默认遵守的原则. 个人记录翻译 Hands-On Machine Learning with Scikit-Learn and TensorFlow 附录B指导你完成你机器学习项目的清单列表主要是有8个主要步骤:从整体上思考观察所需要解决的问题.获得数据.仔细观察你的数据得到对这些数据的思路与想法.将...原创 2018-08-16 10:38:11 · 2045 阅读 · 0 评论 -
正确理解查准率与查全率、auc值
在周志华老师的西瓜书里面,将这两个词分别翻译为查准率(precision)和查全率(recall),这样可以顾名思义,了解到这两个词的意思,查准率就是对于所有机器判定为正的里面,有多大的比例是真的正样本,写成公式就是 P=TPTP+FP其中TP,FP分别表示true positive和false positive,即所谓真阳性和假阳性,而对于查全率,顾名思义,就是实际的正样本中,有多大比例...原创 2018-08-30 22:47:07 · 2428 阅读 · 0 评论 -
数据清洗方法
作者:网易云 链接:https://www.zhihu.com/question/22077960/answer/473720583数据清洗是将重复、多余的数据筛选清除,将缺失的数据补充完整,将错误的数据纠正或者删除,最后整理成为我们可以进一步加工、使用的数据。所谓的数据清洗,也就是ETL处理,包含抽取Extract、转换Transform、加载load这三大法宝。在大数据挖掘过程中,面对的...转载 2018-09-09 21:50:32 · 1961 阅读 · 0 评论