机器学习
文章平均质量分 93
Eason.wxd
我是Eason,我喂自己袋盐...
展开
-
系统学习机器学习之特征工程(四)--分箱总结
首先from wiki给出一个标准的连续特征离散化的定义:在统计和机器学习中,离散化是指将连续属性,特征或变量转换或划分为离散或标称属性/特征/变量/间隔的过程。这在创建概率质量函数时非常有用 - 正式地,在密度估计中。它是一种离散化的形式,也可以是分组,如制作直方图。每当连续数据离散化时,总会存在一定程度的离散化误差。目标是将数量减少到手头的建模目的可忽略不计的水平。在银行风控模型的建模...转载 2019-11-18 13:27:15 · 6777 阅读 · 2 评论 -
系统学习机器学习之特征工程(三)--多重共线性
什么是多重共线性?回归中的多重共线性是一个当模型中一些预测变量与其他预测变量相关时发生的条件。严重的多重共线性可能会产生问题,因为它可以增大回归系数的方差,使它们变得不稳定。以下是不稳定系数导致的一些后果:即使预测变量和响应之间存在显著关系,系数也可能看起来并不显著。 高度相关的预测变量的系数在样本之间差异很大。 从模型中去除任何高度相关的项都将大幅影响其他高度相关项的估计系数。高度相...原创 2019-10-18 09:54:50 · 6015 阅读 · 0 评论 -
系统学习机器学习之算法评估
一、引言 分类算法有很多,不同分类算法又用很多不同的变种。不同的分类算法有不同的特定,在不同的数据集上表现的效果也不同,我们需要根据特定的任务进行算法的选择,如何选择分类,如何评价一个分类算法的好坏,前面关于决策树的介绍,我们主要用的正确率(accuracy)来评价分类算法。 正确率确实是一个很好很直观的评价指标,但是有时候正确率高并不能代表一个算法就好。比如某个地区某天地震的预测,假原创 2015-12-29 11:21:02 · 11482 阅读 · 0 评论 -
系统学习机器学习之SVM(一)
原文引自:http://blog.csdn.net/sunanger_wang/article/details/7887218此处,我做下补充。一、线性分类器:首先给出一个非常非常简单的分类问题(线性可分),我们要用一条直线,将下图中黑色的点和白色的点分开,很显然,图上的这条直线就是我们要求的直线之一(可以有无数条这样的直线) 假如说,我们令黑色的点 = -1, 白色的原创 2015-12-23 11:13:15 · 8130 阅读 · 0 评论 -
系统学习机器学习之SVM(二)
实际上,之前:http://blog.csdn.net/app_12062011/article/details/50385522的内容,与这里一样,但是,相对来说,这里介绍了整个原理及推到过程,由于当前项目用到SVM,自己最近也在看吴恩达的斯坦福大学机器学习公开课,因此,转载一篇关于视频的笔记,非常感谢作者如此详细的记录,原文来自:http://www.cnblogs.com/jerryle转载 2016-01-18 14:13:49 · 10146 阅读 · 3 评论 -
系统学习机器学习之线性判别式(一)
基础的线性判别式,这里不做说明。主要是逻辑斯蒂判别式的说明和梯度下降迭代求解算法。1.逻辑斯蒂方程(Logistic Equation) 逻辑斯蒂方程的推导 当一种新产品刚面世时,厂家和商家总是采取各种措施促进销售。他们都希望对这种产品的推销速度做到心中有数,这样厂家便于组织生产,商家便于安排进货。怎样建立数学模型描述新产品推销速度呢? 首先要考虑社会的需求量.社会对产品的需原创 2015-12-19 11:19:18 · 7045 阅读 · 0 评论 -
系统学习机器学习之线性判别式(二)
1. 原文:http://www.cnblogs.com/jerrylead2 问题引入 这个例子来自http://www.cnblogs.com/LeftNotEasy/archive/2010/12/05/mathmatic_in_machine_learning_1_regression_and_gradient_descent.html 假设有一个房转载 2016-01-19 09:34:01 · 5891 阅读 · 0 评论 -
系统学习机器学习之非参数方法
前面的章节中,我们介绍了参数和半参数方法,这两种方法在实际训练前都需要对数据遵从的模型进行一个假定,这个假定可以是一个已知的概率分布或混合分布。参数方法的优点是把估计概率密度、判别式或回归函数问题归结为估计少量参数值,缺点则是模型假定并非总成立,当不成立时就会出现很大的误差。这时我们就需要使用非参数方法,其中我们只需要假定一个事实:即相似的输入具有相似的输出。因为我们一般都认为世界的变化时平稳原创 2015-12-18 13:21:35 · 8052 阅读 · 0 评论 -
系统学习机器学习之误差理论
一、偏倚(bias)和方差(variance)在讨论线性回归时,我们用一次线性函数对训练样本进行拟合(如图1所示);然而,我们可以通过二次多项式函数对训练样本进行拟合(如图2所示),函数对样本的拟合程序看上去更“好”;当我们利用五次多项式函数对样本进行拟合(如图3所示),函数通过了所有样本,成为了一次“完美”的拟合。图3建立的模型,在训练集中通过x可以很好的预测y,然而原创 2016-01-25 10:07:01 · 9730 阅读 · 1 评论 -
系统学习机器学习之模型选择
1 问题 模型选择问题:对于一个学习问题,可以有多种模型选择。比如要拟合一组样本点,可以使用线性回归,也可以用多项式回归。那么使用哪种模型好呢(能够在偏差和方差之间达到平衡最优)? 还有一类参数选择问题:如果我们想使用带权值的回归模型,那么怎么选择权重w公式里的参数?形式化定义:假设可选的模型集合是,比如我们想分类,那么SVM、logistic回归、神经网络等模原创 2016-01-19 09:57:07 · 7385 阅读 · 0 评论 -
系统学习机器学习之监督学习
监督学习是指:利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练或有教师学习。监督学习是从标记的训练数据来推断一个功能的机器学习任务。训练数据包括一套训练示例。在监督学习中,每个实例都是由一个输入对象(通常为矢量)和一个期望的输出值(也称为监督信号)组成。监督学习算法是分析该训练数据,并产生一个推断的功能,其可以用于映射出新的实例。一个最佳的方案将允许该算法来正确地决原创 2015-12-07 17:46:17 · 7977 阅读 · 0 评论 -
系统学习机器学习之系统认识
机器学习(MachineLearning, ML)是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。它是人工智能的核心,是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域,它主要使用归纳、综合而不是演绎。研究意义学习是人类具有的一种重要智能行为,原创 2015-12-07 16:31:35 · 10264 阅读 · 0 评论 -
系统学习机器学习之决策树
决策树是一种实现分治策略的层次数据结构,它是一种有效的非参数学习方法,可以用于分类和回归。本节我们来简单介绍决策树的相关知识。什么是决策树单变量树单变量分类树剪枝由决策树提取规则一、什么是决策树决策树(decision tree)是一种用于监督学习 的层次模型,通过这种特殊的层次模型,局部区域可以通过少数几步递归分裂确定。决策树由一些内部决策节点和终端树叶组原创 2015-12-18 13:22:40 · 10904 阅读 · 2 评论 -
系统学习机器学习之增强学习(二)--马尔可夫决策过程
参考:http://blog.csdn.net/zz_1215/article/details/44138823http://www.cnblogs.com/jerrylead/archive/2011/05/13/2045309.htmlhttps://www.cnblogs.com/pinard/p/9426283.html在系统学习机器学习之增强学习(一)--模型基础中,我们...原创 2016-02-16 10:14:36 · 25017 阅读 · 4 评论 -
系统学习机器学习之模型诊断与调试
实际上,这个问题,或多或少,在之前的总结中,有所涉及,在学习了那么多的理论之后,此篇作为一个2015年的技术提升总结。毕竟,在实战中,理论只能作为方向指导。实在不高兴自己去写(虽然,完整的自己梳理一遍,对自己的提升帮助很大),这里有篇专业总结:原创 2016-02-04 15:10:42 · 7093 阅读 · 0 评论 -
系统学习机器学习之SVM(四)--SVM算法总结
这边文章介绍的相当浅显易懂,写的很好。算是SVM总结吧。转自:http://www.blogjava.net/zhenandaci/category/31868.html(一)SVM的简介支持向量机(Support Vector Machine)是Cortes和Vapnik于1995年首先提出的,它在解决小样本、非线性及高维模式识别中表现出许多特有的优势,并能够推广应用到函数拟转载 2016-06-07 17:51:07 · 12856 阅读 · 0 评论 -
系统学习机器学习之SVM(三)--Liblinear,LibSVM使用整理,总结
1.Libsvm与Liblinear区别,简单源码剖析。http://blog.csdn.net/zhzhl202/article/details/7438160http://blog.csdn.net/zhzhl202/article/details/7438313Libsvm是一个整合了支持向量机(C-SVC, nu-SVC)、回归、分布估计(one-class SVM)的软件。并且...原创 2016-01-31 16:04:38 · 15694 阅读 · 2 评论 -
系统学习机器学习之正则化(二)
原文:http://blog.csdn.net/zouxy09/article/details/24971995/机器学习中的范数规则化之(一)L0、L1与L2范数zouxy09@qq.comhttp://blog.csdn.net/zouxy09 今天我们聊聊机器学习中出现的非常频繁的问题:过拟合与规则化。我们先简单的来理解下常用的L0、L1、L2和核范数规转载 2016-06-08 10:55:22 · 6416 阅读 · 0 评论 -
系统学习机器学习之正则化(一)
原文:http://www.cnblogs.com/jianxinzhou/p/4083921.html?utm_source=tuicool&utm_medium=referral1. The Problem of Overfitting1还是来看预测房价的这个例子,我们先对该数据做线性回归,也就是左边第一张图。如果这么做,我们可以获得拟合数据的这样一条直线,但是,实际上转载 2016-06-07 18:16:51 · 5819 阅读 · 0 评论 -
KNN(四)--FLANN库介绍及其应用
FLANN介绍FLANN库全称是Fast Library for Approximate Nearest Neighbors,它是目前最完整的(近似)最近邻开源库。不但实现了一系列查找算法,还包含了一种自动选取最快算法的机制。flann::Index_类该类模板是最近邻索引类,该类用于抽象不同类型的最近邻搜索的索引。 以下是flann::Index_类的声明:templ转载 2016-07-21 22:23:55 · 17552 阅读 · 0 评论 -
KNN(五)--层次Kmean
原文:http://blog.csdn.net/qq_16365849/article/details/50646679一、层次聚类1、层次聚类的原理及分类1)层次法(Hierarchicalmethods)先计算样本之间的距离。每次将距离最近的点合并到同一个类。然后,再计算类与类之间的距离,将距离最近的类合并为一个大类。不停的合并,直到合成了一个类。其中类与类的距离的计算方法有:转载 2016-07-22 16:29:23 · 7150 阅读 · 0 评论 -
KNN(六)--LSH算法
LSH(Location Sensitive Hash),即位置敏感哈希函数。与一般哈希函数不同的是位置敏感性,也就是散列前的相似点经过哈希之后,也能够在一定程度上相似,并且具有一定的概率保证。形式化定义:对于任意q,p属于S,若从集合S到U的函数族H={h1,h2...hn}对距离函数D(,),如欧式距离、曼哈顿距离等等,满足条件: 则称D(,)是位置敏感的。如下图,空间转载 2016-07-22 16:36:35 · 6837 阅读 · 0 评论 -
决策树(四)--随机森林与GBDT
前言:决策树这种算法有着很多良好的特性,比如说训练时间复杂度较低,预测的过程比较快速,模型容易展示(容易将得到的决策树做成图片展示出来)等。但是同时,单决策树又有一些不好的地方,比如说容易over-fitting,虽然有一些方法,如剪枝可以减少这种情况,但是还是不够的。美国金融银行业的大数据算法:随机森林模型+综合模型模型组合(比如说有Boosting,Bagging等)与决策树相关的转载 2016-07-22 17:51:29 · 6368 阅读 · 0 评论 -
决策树(一)--ID3
今天,我来讲解的是决策树。对于决策树来说,主要有两种算法:ID3算法和C4.5算法。C4.5算法是对ID3算法的改进。今天主要先讲ID3算法,之后会讲C4.5算法和随机森林等。 Contents 1. 决策树的基本认识 2. ID3算法介绍 3. 信息熵与信息增益 4. ID3算法的C++实现 1. 决策树的基本认识转载 2016-07-20 15:55:02 · 5984 阅读 · 0 评论 -
决策树(二)--C4.5
C4.5是一系列用在机器学习和数据挖掘的分类问题中的算法。它的目标是监督学习:给定一个数据集,其中的每一个元组都能用一组属性值来描述,每一个元组属于一个互斥的类别中的某一类。C4.5的目标是通过学习,找到一个从属性值到类别的映射关系,并且这个映射能用于对新的类别未知的实体进行分类。 C4.5由J.Ross Quinlan在ID3的基础上提出的。ID3算法用来构造决策树。决策树是一种类似流...转载 2016-07-21 12:02:40 · 5873 阅读 · 0 评论 -
KNN(二)--近似最近邻算法ANN
原文:http://www.68idc.cn/help/buildlang/ask/20150118176470.html高维数据的快速最近邻算法FLANN1. 简介 在计算机视觉和机器学习中,对于一个高维特征,找到训练数据中的最近邻计算代价是昂贵的。对于高维特征,目前来说最有效的方法是 the randomized k-d forest和the转载 2016-07-21 21:16:31 · 16331 阅读 · 0 评论 -
Regularized least-squares classification(RLSC)
原文:http://blog.csdn.net/ikerpeng/article/details/40147733在机器学习或者是模式识别当中有一种重要的分类器叫做:SVM 。这个被广泛的应用于各个领域。但是其计算的复杂度以及训练的速度是制约其在实时的计算机应用的主要原因。因此也很很多的算法被提出来,如SMO,Kernel的方法。但是这里要提到的 Regularized l转载 2016-08-17 11:41:18 · 7361 阅读 · 0 评论 -
决策树(五)--OpenCV决策树
OpenCV中的CvDTree类实现了单一的决策树,可以作为基类用在Boosting 和 Random Trees中。决策树是一个二叉树,回归和分类中都可以用。在分类中,每个树叶都被标记了一个类别,多个叶子也可以是相同的类别,在回归中,一个常量也可以赋值给一个叶子,所以逼近函数是分段的。在机器学习中,基尼纯度被用来作为分类的准则,平方和误差被用来作为回归的评价。在以下四种情况下,分割会终止转载 2016-08-06 13:50:10 · 7396 阅读 · 0 评论 -
KNN(一)--简单KNN原理及实现
原文:http://blog.csdn.net/damotiansheng/article/details/406284171. Knn算法介绍: 百度百科:http://baike.baidu.com/view/1485833.htm?from_id=3479559&type=syn&fromtitle=knn&fr=aladdin,其内容如下:邻近算法,或转载 2016-07-21 13:15:03 · 8344 阅读 · 0 评论 -
SVM算法及OpenCV源码分析
1原创 2016-08-10 09:18:25 · 9731 阅读 · 0 评论 -
贝叶斯(朴素贝叶斯,正太贝叶斯)及OpenCV源码分析
一、原理 OpenCV实现的贝叶斯分类器不是我们所熟悉的朴素贝叶斯分类器(Naïve Bayes Classifier),而是正态贝叶斯分类器(Normal Bayes Classifier),两者虽然英文名称很相似,但它们是不同的贝叶斯分类器。前者在使用上有一个限制条件,那就是变量的特征之间要相互独立,而后者没有这个苛刻的条件,因此它的适用范围更广。为了保持理论的系统性和完整性,我们还是转载 2016-08-09 17:25:27 · 6662 阅读 · 1 评论 -
EM算法及OpenCV源码分析
关于EM原理,见:EM算法的启动和终止算法执行的开始步骤有三种指定方式。如果使用了CvEM::START_AUTO_STEP,则会调用k-means算法估计最初的参数,K-means会随机地初始化类中心,KMEANS_PP_CENTERS,这会导致EM算法得到不同的结果,如果数据量越大,则这种差异性会变小。如果指定CvEM::START_E_STEP或CvEM::START原创 2016-08-09 13:58:04 · 6340 阅读 · 0 评论 -
KNN(七)--最近邻及OpenCV源码分析
原文:http://blog.csdn.net/zhaocj/article/details/50764093一、原理K近邻算法(KNN,K-NearestNeighbors)是一种非常简单的机器学习方法,它既可以处理分类问题,也可以处理回归问题,而且它的执行效果非常好。KNN是一种懒惰学习算法(lazy learningalgorithm)。所谓懒惰算法指的是,直到有了新的测试样转载 2016-08-08 17:29:54 · 8542 阅读 · 1 评论 -
决策树(十)--GBDT及OpenCV源码分析
一、原理梯度提升树(GBT,Gradient Boosted Trees,或称为梯度提升决策树)算法是由Friedman于1999年首次完整的提出,该算法可以实现回归、分类和排序。GBT的优点是特征属性无需进行归一化处理,预测速度快,可以应用不同的损失函数等。从它的名字就可以看出,GBT包括三个机器学习的优化算法:决策树方法、提升方法和梯度下降法。前两种算法在我以前的文章中都有详细的介绍,...原创 2016-08-08 11:46:05 · 7239 阅读 · 1 评论 -
决策树(九)--极端随机森林及OpenCV源码分析
原文:http://blog.csdn.net/zhaocj/article/details/51648966一、原理ET或Extra-Trees(Extremely randomized trees,极端随机树)是由PierreGeurts等人于2006年提出。该算法与随机森林算法十分相似,都是由许多决策树构成。但该算法与随机森林有两点主要的区别:1、随机森林应用的是Baggin转载 2016-08-08 11:44:28 · 9155 阅读 · 0 评论 -
决策树(八)--随机森林及OpenCV源码分析
原文:http://blog.csdn.net/zhaocj/article/details/51580092一、原理随机森林(Random Forest)的思想最早是由Ho于1995年首次提出,后来Breiman完整系统的发展了该算法,并命名为随机森林,而且他和他的博士学生兼同事Cutler把Random Forest注册成了商标,这可能也是Opencv把该算法命名为Random T转载 2016-08-08 11:43:01 · 8165 阅读 · 1 评论 -
决策树(七)--Boost及源码分析
原文:http://blog.csdn.net/zhaocj/article/details/50536385一、原理AdaBoost(Adaptive Boosting,自适应提升)算法是由来自AT&T实验室的Freund和Schapire于1995年首次提出,该算法解决了早期Boosting算法的一些实际执行难题,而且该算法可以作为一种从一系列弱分类器中产生一个强分类器的通用方法。正由转载 2016-08-08 11:30:39 · 6779 阅读 · 0 评论 -
决策树(三)--完整总结(ID3,C4.5,CART,剪枝,替代)
参考:http://blog.csdn.net/zhaocj/article/details/50503450总结很完整一、原理决策树是一种非参数的监督学习方法,它主要用于分类和回归。决策树的目的是构造一种模型,使之能够从样本数据的特征属性中,通过学习简单的决策规则——IF THEN规则,从而预测目标变量的值。 图1 决策树例如,在某医院内,对因心脏病发作而入院治疗...原创 2016-08-06 14:24:47 · 35681 阅读 · 1 评论 -
决策树(六)--随机森林
原文:http://www.cnblogs.com/hrlnw/p/3850459.html1.随机森林原理介绍随机森林,指的是利用多棵树对样本进行训练并预测的一种分类器。该分类器最早由Leo Breiman和Adele Cutler提出,并被注册成了商标。简单来说,随机森林就是由多棵CART(Classification And Regression Tree)构成的。对于每棵树,它转载 2016-07-22 17:48:53 · 5856 阅读 · 0 评论 -
系统学习机器学习之组合多分类器
现在为止我们也了解了不少机器学习相关的算法,实际上,每个算法都有自己的假设条件,不同的归纳偏倚会有不同的数据符合度。一般来说,我们可以针对同一个数据集使用多个机器学习算法,然后比较算法的契合度,基本就是准确率,然后选择最合适的一个。但是也存在一些情况,所有单个算法都不能达到我们预期的准确率,此时我们就要考虑组合学习了。组合学习,顾名思义,就是对于数据集同时使用多个机器学习算法,从而获得算法优劣原创 2015-12-29 11:01:55 · 13060 阅读 · 1 评论