原文:https://zhuanlan.zhihu.com/p/25836678 1.voting 对于分类问题,采用多个基础模型,采用投票策略选择投票最多的为最终的分类. 2.averaging 对于回归问题,一方面采用简单平均法,另一方面采用加权平均法,加权平均法的思路:权值可以用排序的方法确定或者根据均方误差确定. 3.stacking Stacking模型本质上是一种分层的结构,这里简单起见,只分析二级Stacking.假设我们有3个基模型M1.M2.M3.下面先看一种错误的训练方式:…
1. blending 需要得到各个模型结果集的权重,然后再线性组合. """Kaggle competition: Predicting a Biological Response. Blending {RandomForests, ExtraTrees, GradientBoosting} + stretching to [0,1]. The blending scheme is related to the idea Jose H. Solorzano presente…
当你的深度学习模型变得很多时,选一个确定的模型也是一个头痛的问题.或者你可以把他们都用起来,就进行模型融合.我主要使用stacking和blend方法.先把代码贴出来,大家可以看一下. import numpy as np import pandas as pd import matplotlib.pyplot as plt from sklearn.metrics import roc_curve SEED = 222 np.random.seed(SEED) from sklearn.mod…
一般提升模型效果从两个大的方面入手 数据层面:数据增强.特征工程等 模型层面:调参,模型融合 模型融合:通过融合多个不同的模型,可能提升机器学习的性能.这一方法在各种机器学习比赛中广泛应用, 也是在比赛的攻坚时刻冲刺Top的关键.而融合模型往往又可以从模型结果,模型自身,样本集等不同的角度进行融合. 模型融合是后期一个重要的环节,大体来说有如下的类型方式: 加权融合(投票.平均) 硬投票 软投票 boosting/bagging(集成学习) stacking/blending 本文主要介绍sta…
话不多说,直接上代码 def stacking_first(train, train_y, test): savepath = './stack_op{}_dt{}_tfidf{}/'.format(args.option, args.data_type, args.tfidf) os.makedirs(savepath, exist_ok=True) count_kflod = 0 num_folds = 6 kf = KFold(n_splits=num_folds, shuffle=Tru…
前言 前面的文章中介绍了决策树以及其它一些算法,但是,会发现,有时候使用使用这些算法并不能达到特别好的效果.于是乎就有了集成学习(Ensemble Learning),通过构建多个学习器一起结合来完成具体的学习任务.这篇文章将介绍集成学习,以及其中的一种算法 AdaBoost. 集成学习 首先先来介绍下什么是集成学习: 构建多个学习器一起结合来完成具体的学习任务,常可获得比单一学习器显著优越的泛化性能,对"弱学习器" 尤为明显(三个臭皮匠,顶个诸葛亮) 也称为Multi-Classif…
模型融合 有的时候我们手头可能有了若干个已经训练好的模型,这些模型可能是同样的结构,也可能是不同的结构,训练模型的数据可能是同一批,也可能不同.无论是出于要通过ensemble提升性能的目的,还是要设计特殊作用的网络,在用Caffe做工程时,融合都是一个常见的步骤. 比如考虑下面的场景,我们有两个模型,都是基于resnet-101,分别在两拨数据上训练出来的.我们希望把这两个模型的倒数第二层拿出来,接一个fc层然后训练这个fc层进行融合.那么有两个问题需要解决:1)两个模型中的层的名字都是相同的…
这是在kaggle上的一个练习比赛,使用的是ImageNet数据集的子集. 注意,mxnet版本要高于0.12.1b2017112. 下载数据集. train.zip test.zip labels 然后解压在data文件夹下 1. 数据 1.1 整理数据 将解压后的数据整理成Gluon能够读取的形式,这里我直接使用了zh.gluon.ai教程上的代码 导入各种库 import math import os import shutil from collections import Counte…
转载:https://github.com/LearningFromBest/CMB-credit-card-department-prediction-of-purchasing-behavior-in-consumer-finance-scenario/blob/master/stacking.py from sklearn.base import BaseEstimator, TransformerMixin, RegressorMixin, clone from sklearn.mode…
详细图文并茂以及git flow工具解释参考: http://danielkummer.github.io/git-flow-cheatsheet/index.zh_CN.html 原文地址:http://nvie.com/posts/a-successful-git-branching-model/ 本文中我将介绍我在多年的项目开发中使用的开发模型,这个模型被实践检验为正确有效的模式.本文中,我将不会涉及到项目的任何细节,只讨论关于分支策略和release管理 为什么要使用Git? 网上有很多…
一.Catboost简介 全称:Gradient Boosting(梯度提升) + Categorical Features(类别型特征) 作者:俄罗斯的搜索巨头Yandex 官方地址 论文链接 | 项目地址 文档地址 视频 二.Catboost的特点 一般来说,Gradient Boosting(GB)方法适用于异质化数据.即,若你的数据集全由图片数据构成或者全由视频数据构成之类的,我们称其为同质化数据,这时使用神经网络往往会有更好的表现.但对于异质化数据,比如说数据集中有user gende…
1.bagging减少variance Bagging对样本重采样,对每一重采样得到的子样本集训练一个模型,最后取平均.由于子样本集的相似性以及使用的是同种模型,因此各模型有近似相等的bias和variance(事实上,各模型的分布也近似相同,但不独立),所以bagging后的bias和单个子模型的接近,一般来说不能显著降低bias. 若各模型独立,则 若各模型完全相等,则 此时不会降低variance.bagging方法得到的各子模型是有一定相关性的,属于上面两个极端状况的中间态,因此可以一定…
在adaboost当中,样本的权重alpha是固定的,蓝色五角星所在的圈中3个○分错了,红色五角星所在的圈中4个×和1个○都分对了,很容易让人想到,这个模型,对于红色位置的判断更加可信. 动态权重,每个x都会有特定的权重,不同的分类器对于不同的样本的权重是不一样的 base classifer:分○和△ competency predictor:分对和分错的样本 将分错的归到一处,利用KNN的方法,比如要测试一个样本xi和5个最近的训练样本,计算这个模型在5个样本上面分的对还是错,如果那5个分的…
前言 本来应该是年后就要写的一篇博客,因为考完试后忙了一段时间课设和实验,然后回家后又在摸鱼,就一直没开动.趁着这段时间只能呆在家里来把这些博客补上.在之前的文章中介绍了 Random Forest 和 AdaBoost,这篇文章将介绍介绍在数据挖掘竞赛中,最常用的算法之一 -- GBDT(Gradient Boosting Decision Tree). GBDT 原理 GBDT 实际上是 GBM(Gradient Boosting Machine) 中的一种,采用 CART 树作为基学习器,…
一.参数速查 1.通用参数 2.性能参数 3.处理单元设置 二.分类 三.回归…
1.不同类别文本量统计,类别不平衡差异 2.文本长度统计 3.文本处理,比如文本语料中简体与繁体共存,这会加大模型的学习难度.因此,他们对数据进行繁体转简体的处理. 同时,过滤掉了对分类没有任何作用的停用词,从而降低了噪声. 4.上文提到训练数据中,存在严重的样本不均衡问题,如果不对该问题做针对性的处理,则会严重制约模型效果指标的提升. 通过对数据进行了大量的分析后,他们提出了一个简单有效的缓解样本不均衡问题的方法,基于标签传播的数据增强方法. [如果标题A与标题B一致,而标题A与标题C一致,那…
WSDM(Web Search and Data Mining,读音为Wisdom)是业界公认的高质量学术会议,注重前沿技术在工业界的落地应用,与SIGIR一起被称为信息检索领域的Top2. 刚刚在墨尔本结束的第12届WSDM大会传来一个好消息,由美团搜索与NLP部NLP中心的刘帅朋.刘硕和任磊三位同学组成的Travel团队,在WSDM Cup 2019大赛 “真假新闻甄别任务” 中获得了第二名的好成绩.队长刘帅朋受邀于2月15日代表团队在会上作口头技术报告,向全球同行展示了来自美团点评的解决方…
分析工具: (1)SQL   select from   where   group by having   order by   limit   运算符(算数运算符+-*/.比较运算符><=.逻辑运算符not/and/or)   聚合函数(count.sum.avg.max.min)   函数(算术函数.字符串函数.日期函数)   子查询(标量子查询.关联子查询)   谓词(like.between.is null.in)   case when   集合运算(表的加减法.表联结) (2)p…
热身:分类问题若干策略 SVM, LR, Decision Tree的比较 同样是分类:SVM.LR.决策树,三者之间有什么优劣势呢? 答:Are decision tree algorithms linear or nonlinear: nonlinear! 更接近 "神经网络". 一.与"判别式分类"的比较 Ref:逻辑回归,决策树,支持向量机 选择方案 逻辑回归 LR LR的优势: 对观测样本的概率值输出 实现简单高效 多重共线性的问题可以通过L2正则化来应对…
集成学习是一大类模型融合策略和方法的统称,以下以bagging和boosting为例进行说明: 1.boosting boosting方法训练分类器采用串行的方式,每个弱分类器之间是相互依赖的,尤其后一个弱分类器是依赖于前一个分类器的分类结果而构建的 此方法的基本思想是在每一层训练时,对前一层基分类器分错的样本,基于更高的权重,测试时,根据各层分类器的结果加权得到最终结果,即boosting方法的中心思想是进行迭代学习. 2.bagging bagging采用并行的方式进行弱分类器的训练,各个弱…
问题: Natural language sentence matching (NLSM),自然语言句子匹配,是指比较两个句子并判断句子间关系,是许多任务的一项基本技术.针对NLSM任务,目前有两种流行的深度学习框架.一种是Siamese network: 对两个输入句子通过同样的神经网络结构得到两个句子向量,然后对这两个句子向量做匹配.这种共享参数的方式可以有效减少学习的参数,让训练更方便.但是这种方式只是针对两个句子向量做匹配,没有捕捉到两个句子之间的交互信息.于是有了第二种框架matchi…
Stacking是用新的模型(次学习器)去学习怎么组合那些基学习器,它的思想源自于Stacked Generalization这篇论文.如果把Bagging看作是多个基分类器的线性组合,那么Stacking就是多个基分类器的非线性组合.Stacking可以很灵活,它可以将学习器一层一层地堆砌起来. 根据上图分析一下stacking具体步骤: 1)TrainingData进行5-fold分割,正好生成5个model,每个model预测训练数据的1/5部分,最后合起来正好是一个完整的训练集Predi…
从一堆弱分类器融合得到强分类器. 比如假设现在你只能水平或竖直线分割,那么无论如何都分不好,但是假设组合三次分割,就会得到如图所示的一个较好的分割线. 再比如,PLA 融合后有large margin 的效果 几种可能的融合策略: 1.Uniform Blending 一人一票,权值相同. 理论保证: G 的 期望误差比g的平均期望来的小 把演算法的误差拆分为 bias 和 varriance bias:平均表现离真实值差多少 variance:这些一个个的模型表现有多乱 所以融合减少了vari…
单个学习器要么容易欠拟合要么容易过拟合,为了获得泛化性能优良的学习器,可以训练多个个体学习器,通过一定的结合策略,最终形成一个强学习器.这种集成多个个体学习器的方法称为集成学习(ensemble learning). 集成学习通过组合多种模型来改善机器学习的结果,与单一的模型相比,这种方法允许产生更好的预测性能. 集成学习属于元算法,即结合数个“好而不同”的机器学习技术,形成一个预测模型,以此来降方差(bagging),减偏差(boosting),提升预测准确性(stacking). 1. 集成…
本文介绍了集成学习的各种概念,并给出了一些必要的关键信息,以便读者能很好地理解和使用相关方法,并且能够在有需要的时候设计出合适的解决方案. 本文将讨论一些众所周知的概念,如自助法.自助聚合(bagging).随机森林.提升法(boosting).堆叠法(stacking)以及许多其它的基础集成学习模型. 为了使所有这些方法之间的联系尽可能清晰,我们将尝试在一个更广阔和逻辑性更强的框架中呈现它们,希望这样会便于读者理解和记忆. 何为集成方法? 集成学习是一种机器学习范式.在集成学习中,我们会训练多…
基于模型的强化学习方法数据效率高,前景可观.本文提出了一种基于模型的元策略强化学习方法,实践证明,该方法比以前基于模型的方法更能够应对模型缺陷,还能取得与无模型方法相近的性能. 引言 强化学习领域近期取得的很多成就都是通过无模型强化学习算法 [1,2,3] 实现的.无模型(MF)算法倾向于实现最佳性能,通常可应用且易于实现. 然而,这是以数据密集为代价实现的,当与诸如神经网络的大容量函数近似器结合时,情况会恶化.它们的高样本复杂性阻碍其应用于机器人控制任务,在这些任务上收集数据代价高昂. 相比之…
1 前言 集成学习的思想是将若干个学习器(分类器&回归器)组合之后产生一个新学习器.弱分类器(weak learner)指那些分类准确率只稍微好于随机猜测的分类器(errorrate < 0.5). 集成算法的成功在于保证弱分类器的多样性(Diversity).而且集成不稳定的算法也能够得到一个比较明显的性能提升. 集成学习可以用于分类问题集成,回归问题集成,特征选取集成,异常点检测集成等等,可以说所有的机器学习领域都可以看到集成学习的身影. 2 集成学习概述 常见的集成学习思想有∶ Bag…
导读: 本文主要介绍了快手的精排模型实践,包括快手的推荐系统,以及结合快手业务展开的各种模型实战和探索,全文围绕以下几大方面展开: 快手推荐系统 CTR模型--PPNet 多domain多任务学习框架 短期行为序列建模 长期行为序列建模 千亿特征,万亿参数模型 总结和展望 -- 01 快手推荐系统 快手的推荐系统类似于一个信息检索范式,只不过没有用户显示query.结构为数据漏斗,候选集有百亿量级的短视频,在召回层,会召回万级的视频给粗排打分,再选取数百个短视频,给精排模型打分,最后会有数十个短…
python风控评分卡建模和风控常识(博客主亲自录制视频教程) https://study.163.com/course/introduction.htm?courseId=1005214003&utm_campaign=commission&utm_source=cp-400000000398149&utm_medium=share http://www.360doc.com/content/18/1015/10/60075508_794857307.shtml http://w…
https://blog.csdn.net/y80gDg1/article/details/81463731 感谢阅读腾讯AI Lab微信号第34篇文章.当地时间 7 月 10-15 日,第 35 届国际机器学习会议(ICML 2018)在瑞典斯德哥尔摩成功举办.ICML 2018 所接收的论文的研究主题非常多样,涵盖深度学习模型/架构/理论.强化学习.优化方法.在线学习.生成模型.迁移学习与多任务学习.隐私与安全等,在本文中,腾讯 AI Lab 的研究者结合自身的研究重心和研究兴趣对部分 IC…