
机器学习
文章平均质量分 84
丿回到火星去
walking by the world
展开
-
详解机器学习由 信息量→熵→相对熵→交叉熵 ___转自狐友
理解流程大致如下:信息量X轴表示P y轴表示信息量 信息论交叉熵是信息论中的一个概念,要想了解交叉熵的本质,需要先从最基本的概念讲起。1 信息量首先是信息量。假设我们听到了两件事,分别如下:事件A:巴西队进入了2018世界杯决赛圈。事件B:中国队进入了2018世界杯决赛圈。仅凭直觉来说,显而易见事件B的信息量比事件A的信息量要大。究其原因,是因为事件A发生的...原创 2018-07-29 17:06:13 · 1837 阅读 · 0 评论 -
集成算法(AdaBoost基本原理)
1. 引言提升算法大多都是基于这样的一个思想;对于一个复杂的任务来说,将多个专家的判断进行适当的综合所得出的判断,要比其中任何一个专家单独判断的好。实际上就是 三个臭皮匠,顶个诸葛亮的道理。AdaBoost算法是提升算法中具有代表性的一种,它通过改变样本的权重,学习多个分类器,并将这些分类器线性组合,提高分类器的性能。2. 算法输入:训练数据集 T={(x1,y1),(x2,y2)...(...原创 2018-11-20 13:45:39 · 1394 阅读 · 0 评论 -
隐马尔可夫模型(Hidden Markov Model,HMM)
文章目录1. 引言2. HMM变量3. HMM的结构4. HMM的参数5. HMM的生成步骤1. 引言隐马尔可夫模型是结构最简单的动态贝叶斯网络。是一种有向图模型,主要用于时序数据建模,在语音识别,自然语言处理(NLP),生物信息,模式识别等领域有广泛的应用。HMM是关于时序的概率模型,描述一个隐藏的马尔科夫链随机生成不可观测的状态随机序列,再有各个状态生成一个观测而产生观测随机序列的过程。...原创 2018-11-25 14:22:23 · 1621 阅读 · 0 评论 -
马尔可夫随机场与条件随机场
有向分离在f给定的情况下,判断a和b的独立性。我们把a,e,c当做一个整体,由贝叶斯网络独立性分析可知左半部分和b相互独立,我们认为a和b独立,通俗点说,这就是有向分离。...原创 2018-11-25 16:22:48 · 3698 阅读 · 0 评论 -
机器学习算法汇总
ML算法模型简单总结一下在学习的过程中对Machine Learning算法模型理解:决策树 ( decision tree)详解集成算法(Bagging,随机森林)集成算法(AdaBoost基本原理)Boosting算法(GBDT,XGBoost,LightGBM)SVM(Support Vector Machin) 支持向量机 详解KNN(k-nearest neighbors...原创 2018-12-18 11:11:18 · 2229 阅读 · 0 评论 -
模拟退火算法简单理解
退火算法原创 2019-01-22 12:57:41 · 5799 阅读 · 0 评论 -
浅谈深度神经网络 — LeNet
LeNetLeNet网络模型结构规模比较小,但包含了卷积层,Pooling层,全连接层,他们构成了现代神经网络的基本组件,后续更复杂的网络模型都离不开这些基本的网络层组件。LeNet-5包含输入层在内共有八层,每一层都包含多个参数(权重)。C层代表的是卷积层,通过卷积操作,可以使源信号特征增强,并降低噪音。S层是一个下采样层, 利用图像局部相关性的原理,对图像进行子抽样,可以减少数据处理量,...原创 2019-02-05 20:49:47 · 879 阅读 · 0 评论 -
浅谈深度神经网络 — AlexNet
AlexNetAlexNet是2012年ImageNet竞赛冠军获得者Hinton和他的学生Alex Krizhevsky设计的。也是在那年之后,更多的更深的神经网路被提出,比如优秀的vgg,GoogLeNet。 这对于传统的机器学习分类算法而言,已经相当的出色。新技术AlexNet中包含了几个比较新的技术点,也首次在CNN中成功应用了ReLU、Dropout和LRN等Trick。同时Ale...原创 2019-02-05 20:50:12 · 2251 阅读 · 0 评论 -
浅谈深度神经网络 — CNN
CNN(Convolutional Neural Network,卷积神经网络)引言CNN的出现是因为全连接神经网络无法很好地处理图像数据,主要原因有以下:使用全连接层处理图像最大的问题在于全连接层的参数太多,参数多了除了会导致计算速度变慢,也很容易会导致过拟合问题。所以我们需要一个更加合理的神经网络结构来有效的减少神经网络中的参数个数。卷积神经网络就可以达到这个目的。CNN基本结构输出...原创 2019-02-05 20:50:59 · 1152 阅读 · 0 评论 -
浅谈深度神经网络 — RNN,LSTM
RNN(recurrent neural network,循环神经网络)全连接神经网络和卷积神经网络模型中,网络结构都是从输入层到隐含层再到输出层,层与层之间是全连接或是部分连接的,但每层的节点之间都是无连接的。考虑这样的一个问题,如果要预测句子的下一个单词是什么,一般用到当前单词以及前面的单词,因为句子前后单词并不是孤立的。这个时候像卷积,全连接神经网络已经不满足我们的需要。我们需要刻画一个序...原创 2019-02-05 20:51:17 · 2161 阅读 · 0 评论 -
浅谈深度神经网络 — VGG
VGG网络这幅图还是清晰地展现了VGG的网络结构的,VGG由5层卷积层、3层全连接层、最后由softmax输出层构成,层与层之间使用max-pooling(最大化池层)分开,所有隐层的激活单元都采用ReLU函数。(并没有使用LRN,LRN并没有在这个网络中有太大性能提升)模型简介VGG模型是2014年ILSVRC竞赛的第二名,第一名是GoogLeNet。但是VGG模型在多个迁移学习任务中的...原创 2019-02-05 20:51:57 · 1475 阅读 · 0 评论 -
贝叶斯决策论(后验概率最大化)的问题
在看待解决一分类问题时候,在相关概率已知的条件下,贝叶斯决策论考虑如何基于这些概率把(期望损失)风险 降到最低,从而得到最优的类别标记,即 期望风险最小化。假设由NNN种可能的类别标记为y={c1,c2...cn}y=\{c_1,c_2...c_n\}y={c1,c2...cn}, λij\lambda_{ij}λij是一个将真实标记为cjc_jcj误分类为cic_ici所产生的损...原创 2019-04-10 09:04:31 · 1847 阅读 · 6 评论 -
多标签分类评估方式(Metrics for measuring the prediction quality of a multi-label system)
Metrics for measuring the prediction quality of a multi-label system大多数情况下,机器学习,深度学习中我们经常面对的分类问题大多是二分类,多类问题,但是有时候我们也会有多标签分类问题的产生。对于多标签问题,我们需要一个合理客观的评价这个分类器好坏的方式,在这里根据 Some remarks on predicting mult...原创 2019-04-17 08:48:53 · 1841 阅读 · 6 评论 -
直面Apriori算法
引言Apriori算法是一种常用的关联规则算法,也是最经典的挖掘频繁项集的算法,其核心是通过连接产生候选项以其支持度然后通过剪枝生成频繁项集。之外还有FP-Tree、Eclat、灰色关联法等其他算法。在这里通过具体的例子详细的介绍下Apriori算法原理,以下面数据为例:第一列表示数据的条目、第二列为每个条目里面的数据,我们可以把下表作为超市商品订单号和订单内容。我们主要是通过算法去挖掘频繁项...原创 2019-04-14 15:37:10 · 533 阅读 · 0 评论 -
理解插值法(拉格朗日、牛顿插值法)
引言我们首先理解下插值法主要用来做什么事:插值法就是利用已知的点建立合适的插值函数 f(x)f(x)f(x) ,未知点 xix_ixi 由插值函数 f(x)f(x)f(x) 可以求出函数值 f(xi)f(x_i)f(xi),用求得的(xi,f(xi))(x_i,f(x_i))(xi,f(xi))近似代替未知点。对于平面上相异(无两点在一条直线上)的 nnn 个点,我们必定可以找到一个 ...原创 2019-04-26 13:43:26 · 11346 阅读 · 0 评论 -
浅谈深度神经网络 — R-CNN(区域卷积神经网络)R-CNN->Fast R-CNN->Faster R-CNN
浅谈深度神经网络 — R-CNN(区域卷积神经网络)R-CNN->Fast R-CNN->Faster R-CNN原创 2019-02-14 22:00:20 · 5963 阅读 · 6 评论 -
聚类算法
文章目录1. 引言2. K 均值算法详解(K-means)2.1算法流程2.2 k值估计3. 层次聚类算法详解3.1算法简介3.2 算法流程4. DBSCAN 算法详解3.1 算法流程3.2 算法过程举例4. BIRCH 算法4.1 算法流程5. CURE 算法算法流程1. 引言聚类就是对大量未知标注的数据集,按数据的内在相似性将数据集划分为多个类别,使类别内的数据相似度较大,类别内数据相似度...原创 2018-11-25 19:52:06 · 1631 阅读 · 0 评论 -
集成算法(Bagging,随机森林)
引言(关于集成学习)集成算法包括很多种包括Bagging,随机森林,Boosting 以及其他更加高效的集成算法。在这篇博客上只介绍Bagging算法及随机森林,Boosting提升算法及其他高效的算法在下一篇详细讲解。集成算法就是通过构建多个学习器来完成学习任务,是由多个基学习器或者是个体学习器来完成的。它可以是由决策树,神经网络等多种基学习算法组成。就像是投票表决答案一样,多数人的参与总会...原创 2018-11-18 12:55:33 · 12212 阅读 · 0 评论 -
Boosting算法(GBDT,XGBoost,LightGBM)
引言提升(Boosting)是一种机器学习技术,可以用于回归和分类问题,它每一步产生一个弱预测模型(如决策树),并加权累加到总模型中加权累加到总模型中;如果每一步的弱预测模型生成都是依据损失函数的梯度方向,则称之为梯度提升(Gradient Boosting)。梯度提升算法首先给定一个目标损失函数,它的定义域是所有可行的若函数集合(基函数);提升算法通过迭代的选择一个负梯度方向上的基函数来逐渐...原创 2018-11-25 21:15:13 · 2995 阅读 · 0 评论 -
AUC ROC详解及使用
ROC(Receiver Operating Characteristic)曲线和AUC常被用来评价一个二值分类器(binary classifier)的优劣,对两者的简单介绍见这里。这篇博文简单介绍ROC和AUC的特点,以及更为深入地,讨论如何作出ROC曲线图以及计算AUC。ROC曲线需要提前说明的是,我们这里只讨论二值分类器。对于分类器,或者说分类算法,评价指标主要有precision...原创 2018-07-29 19:53:24 · 2037 阅读 · 0 评论 -
Python模块 time, datetime ,date详解
python datetime Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime。time模块我在之前的文章已经有所介绍,它提供的接口与C标准库time.h基本一致。相比于time模块,datetime模块的接口则更直观、更容易调用。今天就来讲讲datetime模块。 datetime模块定义了两个常量:datetime.MINYE...转载 2018-08-02 17:07:49 · 1998 阅读 · 0 评论 -
tensorFlow使用的求导方法原理
原理:TensorFlow使用的求导方法称为自动微分(Automatic Differentiation),它既不是符号求导也不是数值求导,而类似于将两者结合的产物。最基本的原理就是链式法则,关键思想是在基本操作(op)的水平上应用符号求导,并保持中间结果(grad)。基本操作的符号求导定义在\tensorflow\python\ops\math_grad.py文件中,这个文件中的所有函数都用...转载 2018-08-02 17:18:36 · 3729 阅读 · 0 评论 -
机器学习从公理到算法
拉格朗日乘数法在数学最优问题中,拉格朗日乘数法(以数学家约瑟夫·路易斯·拉格朗日命名)是一种寻找变量受一个或多个条件所限制的多元函数的极值的方法。这种方法将一个有n 个变量与k 个约束条件的最优化问题转换为一个有n + k个变量的方程组的极值问题,其变量不受任何约束。这种方法引入了一种新的标量未知数,即拉格朗日乘数:约束方程的梯度(gradient)的线性组合里每个向量的系数。 此方法的...原创 2018-09-04 16:38:16 · 2526 阅读 · 0 评论 -
最优化—梯度下降法
最优化问题最优化问题就是求解函数极值的问题, 包括极大值和极小值, 几乎所有机器学习算法归根到底都是在求解最优化问题。在高等数学/微积分中有求极值统一的思路:找函数导数等于0的点,只要函数可导我们就可以用这种方法。在机器学习中我们一般求函数的极小值,若求极大值我们只需要整体加负号。有些时候我们会对优化变量x有约束, 包括等式约束和不等式约束, 他们定义了优化变量的可行域。我们的目标即一个优化的...原创 2018-09-02 15:32:49 · 1784 阅读 · 0 评论 -
几种距离计算算法及相似度计算算法
在机器学习算法中很多会用到距离计算算法和相似度计算算法,在这里简单总结下方便以后查看。 距离计算算法欧几里得距离 欧几里得度量(euclidean metric)(也称欧氏距离)是一个通常采用的距离定义,指在m维空间中两个点之间的真实距离,或者向量的自然长度...原创 2018-09-03 20:09:49 · 5189 阅读 · 1 评论 -
JupyterLab快捷键
Jupyter Notebook 有两种键盘输入模式。编辑模式,允许你往单元中键入代码或文本;这时的单元框线是绿色的。命令模式,键盘输入运行程序命令;这时的单元框线是灰色。命令模式 (按键 Esc 开启)Enter : 转入编辑模式Shift-Enter : 运行本单元,选中下个单元Ctrl-Enter : 运行本单元Alt-Enter : 运行本单元,在其下插入新单元Y : 单元转入...原创 2018-09-18 13:10:44 · 13595 阅读 · 4 评论 -
模型融合方法概述
模型融合方法概述在比赛中提高成绩主要有3个地方特征工程 调参 模型融合1. Voting模型融合其实也没有想象的那么高大上,从最简单的Voting说起,这也可以说是一种模型融合。假设对于一个二分类问题,有3个基础模型,那么就采取投票制的方法,投票多者确定为最终的分类。2.Averaging对于回归问题,一个简单直接的思路是取平均。稍稍改进的方法是进行加权平均。权值可以用排...原创 2018-12-02 12:09:36 · 3099 阅读 · 0 评论 -
特征工程之特征选择
特征工程是数据分析中最耗时间和精力的一部分工作,它不像算法和模型那样是确定的步骤,更多是工程上的经验和权衡。因此没有统一的方法。这里只是对一些常用的方法做一个总结。本文关注于特征选择部分。后面还有两篇会关注于特征表达和特征预处理。1.特征的来源 在做数据分析的时候,特征的来源一般有两块,一块是业务已经整理好各种特征数据,我们需要去找出适合我们问题需要的特征;另一块是我们从业务特征中自己去...原创 2018-12-02 12:09:18 · 1346 阅读 · 0 评论 -
在调用sklearn fit时出现 Unknown label type: 'unknown'错误
在调用sklearn selectKBest().fit时出现 Unknown label type: 'unknown'错误: 当出现此问题时一般来说是你传入的数据类型被调用函数不接受, 你需要改变数据类型。1.例如采用卡方验证选取特征时,如果你传入的是标签是float类型,会产生此错误。后加上astype(‘int’)即可 例如: ...原创 2018-11-01 21:28:11 · 13220 阅读 · 1 评论 -
特征工程之特征表达
在特征工程之特征选择中,我们讲到了特征选择的一些要点。本篇我们继续讨论特征工程,不过会重点关注于特征表达部分,即如果对某一个特征的具体表现形式做处理。主要包括缺失值处理,特殊的特征处理比如时间和地理位置处理,离散特征的连续化和离散化处理,连续特征的离散化处理几个方面。1.缺失值处理 特征有缺失值是非常常见的,大部分机器学习模型在拟合前需要所有的特征都有值,不能是空或者NULL。那么如...原创 2018-12-02 12:09:29 · 1342 阅读 · 0 评论 -
特征工程之特征预处理
在前面我们分别讨论了特征工程中的特征选择与特征表达,本文我们来讨论特征预处理的相关问题。主要包括特征的归一化和标准化,异常特征样本清洗与样本数据不平衡问题的处理。1. 特征的标准化和归一化 由于标准化和归一化这两个词经常混用,所以本文不再区别标准化和归一化,而通过具体的标准化和归一化方法来区别具体的预处理操作。 z-score标准化:这是最常见的特征预处理方式,基本所有的线性模...原创 2018-12-02 12:09:44 · 1337 阅读 · 0 评论 -
KNN(k-nearest neighbors) K近邻算法深入
K近邻法是机器学习中一种很基本的算法,可以用做分类和回归,主要的思想跟我们生活中近墨者黑,近朱者赤的思想雷同。例如我们看一个人人品的好坏只需要看与之相交的人的品格好坏。KNN算法分类和回归主要区别在于最后做预测时候的决策方式不同:分类时我们选取与之相近的K个样本采取多数表决法来判断类别,回归时我们选取K个样本的平均值来作为预测值。1.KNN算法的三个要素K值 对于K值的选取可根据我...原创 2018-11-10 15:57:31 · 2029 阅读 · 0 评论 -
SVM(Support Vector Machin) 支持向量机 详解
吴恩达的课程中跟国内的一些教程中分析问题的思路还是有些不同的,吴恩达的课程从简单的LR开始让我们先去理解优化目标,一步步的引导我们去理解SVM,然后揭开他神秘的面纱,便于理解,是很不错的课程。我学习的国内课程是直接重点讲解,讲到SVM核心内容。在这里我总结下自己学习SVM的一些想法(目标函数的优化,对偶问题,smo求解,其他核函数,SVM回归,最大间隔等)方便以后查看。引言SVM 一个支持...原创 2018-11-13 22:32:04 · 1657 阅读 · 0 评论 -
决策树 ( decision tree)详解
决策树算法的基本流程决策树顾名思义就是基于树对问题的决策和判别的过程,是人类在面对决策问题时一种很自然的处理机制,下面有个例子 通过决策树得出最终的结果。 我们所要做的就是去得到这样一个树去帮助我们决策问题,使样本通过这个树实现分类。一般来说,一棵树包含一个根节点,若干个内部节点和若干个叶子节点;叶子节点对应于决策结果,其他每个...原创 2018-11-16 20:13:21 · 3755 阅读 · 0 评论 -
贝叶斯网络Bayesian Network (朴素贝叶斯,Naive )
文章目录1. 概率论1.1 条件概率1.2 全概率公式1.3 贝叶斯公式2. 简单图分析(简单贝叶斯网络)3. 朴素贝叶斯3.1朴素贝叶斯的推导1. 概率论与之相关的有概率论的一些知识,这里先做简单知识复习。1.1 条件概率条件概率是指事件A在另外一个事件B已经发生条件下的发生概率。条件概率表示为:P(A|B),读作“在B的条件下A的概率”。若只有两个事件A,B,那么P(A∣B)=P(AB...原创 2018-11-21 20:20:44 · 2857 阅读 · 0 评论 -
Softmax 函数数值稳定性
Softmax 函数数值稳定性我们在使用计算机数学运算时需要使用有限的比特位来表达实数,这会导致近似误差的产生。近似误差可以在多步数值运算中传递、积累,从而导致理论上成功的算法失败。 几种常见的误差产生就是上溢出和下溢出。下面具体看softmax的稳定性:tips:以下大写表示向量上式①中是 softmax(X) 函数,根据式子易得:当x趋于负无穷时exp(x)下溢出;x趋于正无穷时,e...原创 2019-06-01 21:38:54 · 1224 阅读 · 0 评论