机器学习
bemyself24_1
算法调参工,一直在努力,从不曾放弃,大力出奇迹。
展开
-
几个重要的lightgbm自定义损失函数和评测函数(包括F1 score等)
f1_score自定义损失函数及评测函数def custom_f1_eval(y_true, y_pred): test_sub = TEST_SUB.copy() y_ranked = rank_result(y_pred, test_sub) f1 = evaluate_classification_new(y_ranked) F1.append(f1)...原创 2020-04-03 09:27:02 · 12123 阅读 · 7 评论 -
模型组合方法-boosting算法详解(机器学习面试必备)
常见的模型组合方法有:简单平均(Averaging),投票(voting),Bagging(randomforest),boosting(GBDT),stacking,blending等,在实际业务中,单一模型很难满足需求,组合模型才能达到业务的精度要求。本文主要详细讲述三种具有代表性的boosting算法:Adaboost,GBDT,XGBoost. 1.Adaboost原理:利用前一轮迭代弱...原创 2018-04-16 16:34:30 · 9129 阅读 · 0 评论 -
SVM原理详解
写在前面:SVM是机器学习中占有一定分量的经典算法,也是找工作时,如机器学习工程师等岗位面试的时候,面试官肯定会提及的算法题,如果能够对其原理和推导过程有一定深度的认识,将是非常加分的。一、大致解释SVM(支持向量机Support Vector Machine)是一种二分类模型,它的原理是在特征空间中找到一个最大的超平面,使得所有样本到该平面的距离最大(求样本集合到平面的距离,也就是求最近原创 2018-01-29 11:51:23 · 1745 阅读 · 0 评论 -
RNN和LSTM原理推导
一、RNN原理 RNN实际上也就是神经网络,它的基本组件(姑且这么称它吧)实际上也就是一个最简单的神经网络(一个input,一个hidden,一个output) 如图所示 最大的区别就是,对于hiddenLayer来说,它的输入不再单一的来自inputLayer,还来自于上一个时刻的hiddenLayer,也就是说,不同时刻的hiddenLayer之间也有权值连接。RNN基本结构如下图所示原创 2017-11-18 20:06:05 · 2691 阅读 · 0 评论 -
GBDT原理理解
理解GBDT原理主要在于三个关键点:Regression Decistion Tree(即DT),Gradient Boosting(即GB),Shrinkage(缩减) 1.DT(回归树) 工作流程 分类树:我们知道C4.5分类树在每次分枝时,是穷举每一个feature的每一个阈值,找到使得按照feature<=阈值,和feature>阈值分成的两个分枝的熵最大的feature和阈值(熵最大原创 2017-09-04 15:49:44 · 341 阅读 · 0 评论 -
xgboost参数详解
XGBoost参数包括:general parameters,booster参数booster parameters和目标参数task parameters:General parameters:参数控制在提升(boosting)过程中使用哪种booster,常用的booster有树模型(tree)和线性模型(linear model)。 Booster parameters:这取决于使用哪种bo转载 2017-08-14 15:11:34 · 781 阅读 · 0 评论 -
centos7下xgboost,python安装
git clone --recursive https://github.com/dmlc/xgboostcd xgboostmake -j4cd python-package; sudo python setup.py installsudo apt-get install python-setuptoolsexport PYTHONPATH=~/xgboost/python-packa原创 2017-08-08 14:57:43 · 2841 阅读 · 0 评论 -
XGBoost算法原理及代码(代码持续更新。。。)
前言:有监督算法的组成:模型,参数和目标函数 (1)模型:给入指定的Xi如何去预测Yi,姑且认为是一个Y关于X的函数吧,如线性回归Y=∑Wi*Xi (2)参数:就是指系数W (3)目标函数(损失+正则):目标函数的作用是找到比较好的参数W,来更好地预测,基本形式如下: 常见的误差函数有: (1)平方误差: (2)logistic误差函数: 正则化有L2和L1正则化(其区别可以看原创 2017-06-22 17:57:58 · 5661 阅读 · 1 评论 -
机器学习:逻辑回归原理及实现代码
逻辑回归(LR)实际上就是输入一系列特征,输出判别结果,是常用的机器学习分类器。LR普及的原因有三个: (1)原理十分简单,容易实现 (2)LR是互联网中比较有影响力的算法,是广告点击率(CTR)预测的基础算法(要知道,广告可是互联网公司的盈利来源) (3)LR是深度学习的基本组成单元(激活函数) 1、逻辑回归初识: 给定N个样本,(x,y),x表示特征向量,y为标签(-1,1)。原创 2017-08-07 19:33:22 · 563 阅读 · 0 评论 -
机器学习面试题
1.svm算法的原理、如何组织训练数据、如何调节惩罚因子、如何防止过拟合、svm的泛化能力、增量学习 SVM算法原理:通过学习一个超平面来进行二分类,这个超平面可以用函数f(x)=W*X+b,当f(x)等于0时,X便是位于超平面上的点,大于0小于0分别对应着1类和-1类(标签可变),超平面的确定标准就是这个超平面到数据点之间有着最大间隔(函数间隔,几何间隔),一般都使用几何间隔,几何间隔就是点到超原创 2017-07-15 20:18:07 · 1100 阅读 · 0 评论 -
机器学习:GBDT和XGBoost的区别
一、GBDT原理 1、简介 GBDT是一个基于迭代累加的决策树算法,它通过构造一组弱的学习器(树),并把多颗决策树的结果累加起来作为最终的预测输出。 他的核心就是累加所有树的结果最为最终结果(但实际上并不是简单的叠加),GBDT中的树都是回归树,构建每棵树的时候,我们会对特征和样本同时采样(引用RF思想) 2、公式推导 3、优缺点 优点:非线性变换多,表达能力强,而且不需要做复杂的特征工原创 2017-06-26 19:40:25 · 697 阅读 · 0 评论 -
机器学习:决策树算法
1.算法引入 先举一个简单的例子来介绍一下决策树到底是个什么东西。(参考:) 一个母亲要给女儿介绍对象,所以有了如下的对话: 女儿:多大年纪了? 女儿:多大年纪了? 母亲:26。 女儿:长的帅不帅? 母亲:挺帅的。 女儿:收入高不? 母亲:不算很高,中等情况。 女儿:是公务员不? 母亲:是,在税务局上班呢。 女儿:那好,我去见见。 这个女孩的判断过程就是一个决策树,她根据原创 2017-06-24 18:34:44 · 495 阅读 · 0 评论 -
ROC曲线原理及其matlab实现源码
ROC曲线和AUC经常用来评价二分类器的好坏,ROC简单的说就是在不断地调整阀值(正例置信度)的条件下,求TPR(True Positive Rate)和FPR(False Positive Rate)的值,具体的定义如下图: 由于我们实验室做的是气象方面,所以使用的是POD,FAR和CSI 四个特殊点和一条直线: (1)(0,0)全部预测为负类,TPR=FPR=0,即TP=FP=0原创 2017-07-11 13:44:36 · 5675 阅读 · 2 评论 -
机器学习:深度信念网络(DBN)原理和实现
深度信念网络结构,经典结构,直接上图: DBN由多个RBM堆叠而成,训练过程由预训练和微调构成 深度信念网络训练步骤: (1)预训练:分别单独无监督的训练每一层RBM网络,确保特征向量映射到不同特征空间是,都尽可能的保留特征信息;具体怎么训练呢,往下看 通过一个非监督贪婪逐层方法预训练获得权重(即不要类标,不断拟合输入,一次逐层),又叫对比分歧。好像还不是很具体,再看 在这个过程中,可原创 2017-07-09 16:41:04 · 30937 阅读 · 7 评论