![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
机器学习笔记
文章平均质量分 79
鸟恋旧林XD
无限风光在险峰
展开
-
《统计学习方法》笔记06:LR逻辑回归模型
1. LR初探逻辑斯蒂回归模型,(logistic regression,LR)是我和队友在腾讯TSA比赛中使用的第一个模型,比赛开始和睿杰讨论过,他推荐先用这个模型,那时我们仨都是小白,也不知道套路,就这样做,结果大部分队伍第一个都会采用该模型。我对LR模型的理解是,这是一个形式很简单的模型,对二分类问题来说: P(y=1|x)=11+e−(wx+b)P(y=1|x)=\frac{1}{1+e^原创 2017-07-31 15:21:30 · 1706 阅读 · 0 评论 -
《西瓜书》笔记10:降维与度量学习-PCA(二)
3 主成分分析Principal Component Analysis,PCA。最常用的降维方法。3.1 怎么来的?正交属性空间中,如何用一个超平面,对所有样本进行恰当表达?最近重构性:样本点到该平面的距离足够近。要表达就要比较相似,距离近。最大可分性:样本点在平面上的投影尽可能分开。点与点足够区分。基于这两个性质,可推导出主成分分析的2种等价推导。假定数据样本进行了中心化(每个值减去均值)。原创 2017-08-14 11:23:22 · 2412 阅读 · 0 评论 -
《西瓜书》笔记05:神经网络
1. 神经元模型神经网络/人工神经网络:由具有适应性的简单单元组成的广泛并行互连的网络。神经网络学习:机器学习和神经网络两个学科交叉的部分。Neural Networks中的基本单元:神经元。从计算机科学的角度,NN就是一个包含了大量参数的数学模型,该模型由若干个函数相互代入而成。2. 感知机与多层网络感知机,实际由两层神经元组成。输入层和输出层。更一般的,神经网络是形如下方的层级结构,每层神经元与原创 2017-08-21 10:48:31 · 2278 阅读 · 0 评论 -
《西瓜书》笔记11:特征选择方法(二)
常见的特征选择方法:过滤式 filter包裹式 wrapper嵌入式 embedding2. 过滤式选择先对数据集进行特征选择,然后再训练分类器,特征选择过程与后续学习无关。相当于先用特征选择过程,对初始特征进行过滤,再用过滤后的特征来训练模型。Relief法:设计了一个相关统计量,度量特征重要性。这是一个向量,每个分量对应一个初始特征,特征子集的重要性是由子集中每个特征对应的相关统计分量之原创 2017-08-14 16:48:10 · 1353 阅读 · 0 评论 -
《西瓜书》笔记10:降维与度量学习(三)
4. 核化线性降维线性降维方法假设:从高维空间到低维空间的函数映射是线性的。现实任务中,可能需要非线性映射才可找到适当的低维嵌入。如上图,样本点从二维空间中的矩形区域采样后,以S形曲面嵌入到三维空间。若直接使用线性降维方法对三维空间观察到的样本点进行降维,将丢失原本的低维结构。“原本采样的”低维空间称为本真低维空间。非线性降维的一种常用方法:基于核技巧对线性降维方法进行核化。如核主成分分析,KPCA原创 2017-08-14 15:49:29 · 1791 阅读 · 0 评论 -
《西瓜书》笔记11:特征选择方法(一)
1. 子集搜索与评价1.1 概述从给定的特征集合中,选择出相关特征子集的过程,称为特征选择。为什么进行特征选择?维数灾难。属性过多,选择出重要特征,后续学习减轻。从此意义上看,特征选择与降维动机相似,这两者是处理高维数据的两大主流技术。去除不相关的特征降低学习任务的难度。抽丝剥茧留下关键因素。特征选择不能丢失重要特征,否则导致欠拟合。给定数据集,若学习任务不同,则相关特征不同。因此无关特征,指原创 2017-08-14 16:38:34 · 713 阅读 · 0 评论 -
《西瓜书》笔记10:降维与度量学习(一)
1.kNN学习1.1 kNN概述给定测试样本,基于某种距离度量找出训练集中与其最靠近的k个训练样本,基于k个邻居的信息进行预测。分类:投票法。 回归:均值法。 加权:基于距离远近做加权平均或投票,距离越近权重越大。明显不足:没有显式的训练过程。属于懒惰学习。而在训练阶段就学习处理的方法为急切学习。k是一个重要参数,不同值导致不同分类结果。另外,采用不同的距离计算方式,找出的近邻或不同,也会导致不原创 2017-08-14 10:05:58 · 1390 阅读 · 0 评论 -
机器学习各种算法的特点归纳
1.感知机适用问题:二分类模型特点:超平面模型类型:判别模型学习策略:极小化误分类点到超平面的距离损失函数:误分点到超平面的距离学习算法:随机梯度下降2.k邻近法适用问题:多类分类,回归模型特点:特征空间,样本点模型类型:判别模型学习策略:-损失函数:-学习算法:-优点:简单、有效。重新训练的代价较低(类别体系的变化和训练集的变化)计算时间和空间O(n),线性于训练原创 2017-08-21 15:09:32 · 3190 阅读 · 0 评论 -
SVM-支持向量机学习(3):线性SVM
1. 接上节的小尾巴上节说道:对线性可分数据集,对偶最优化方法非常完美。有理论支撑,有实际可操作的凸优化解法。但是现实中,线性可分数据集很难找到,有噪声和特异点的存在,使得不能线性可分。于是需要把这个方法推广到一般上来。即本节的《线性SVM》。数据集线性不可分情况下,样本点中肯定有些不能满足约束。于是修改硬间隔最大化,搞一个软间隔最大化:兼顾大多数点的情况下,给某些点走个后门,使得问题可以被解决。通原创 2017-09-01 21:36:26 · 520 阅读 · 0 评论 -
SVM-支持向量机学习(4):再谈线性SVM-正则化合页损失函数
1. 软间隔到损失函数的推导线性可分SVM中认定:存在一个超平面可将不同类的样本完全分开。现实任务中很难确定合适的核函数使得训练样本在特征空间线性可分。即使恰好找到某个核函数使得训练集在特征空间中线性可分,也很难断定这个貌似线性可分的结果不是由于过拟合造成的。缓解办法就是:软间隔,即允许某些样本不满足约束: 当然最大化间隔的同时,不满足约束的样本尽可能少,优化目标可写为: C是常数,l 是0-1原创 2017-09-04 10:50:44 · 1880 阅读 · 0 评论 -
SVM-支持向量机学习(5):SVR-支持向量回归
1. SVR的原始问题前面谈的SVM,针对二分类问题。现在考虑回归问题。给定训练样本T,yi∈Ry_i\in R ,希望学得一个回归模型 f(x)=wTx+bf(x)=w^Tx+b ,使得 f(x) 与 y 尽可能接近,w 和 b 是待确定的模型参数。传统回归模型通常直接基于模型输出 f(x) 与真实输出 y 之间的差别来计算损失,当且仅当两者相等时,损失为0。SVR,support vector原创 2017-09-04 15:32:45 · 3579 阅读 · 0 评论 -
SVM-支持向量机学习(6):非线性SVM和核函数
1. foreword对于线性可分问题和线性问题,都已经有很好的解决方案为了。对于非线性问题,产生了非线性SVM,关键在于核技巧(kernel trick)的引用。如图,对于正负样本无法用直线分开。采用椭圆这样的非线性模型才可正确分开。对于T,若可用R中的一个超曲面正确分开,则称该问题为非线性的可分问题。如图的椭圆方程为:w1(x(1))2+w2(x(2))2+b=0w_1(x^{(1)})^2+w原创 2017-09-04 17:43:28 · 1387 阅读 · 0 评论 -
SVM-支持向量机学习(7):求解SVM算法-SMO-序列最小最优化
1. foreword2. SMO算法的思路3. SMO算法的过程原创 2017-09-04 17:46:23 · 692 阅读 · 0 评论 -
AlphaGo的原理
1. foreword开宗明义。阿尔法狗原理:深度学习网络 + 蒙特卡罗搜索树没看论文,直接看别人的讲解,容易遇到很多生词。前后翻了好几篇博客,对比着来看,方才大略知道怎么回事。2. 蒙特卡罗方法2.1 蒙特卡罗随机算法在《西瓜书》特征选择一节,有随机选择特征子集的步骤。周老师说:拉斯维加斯方法和蒙特卡罗方法是两个著名的随机化方法。这俩方法并不是某个具体的方法,而是代表两类随机算法的思想。蒙特卡罗方原创 2017-09-05 16:04:20 · 2544 阅读 · 0 评论 -
EM(期望最大化)算法(1):初探原理
之前看李航老师的《统计机器学习》,其中第9章讲《EM算法》,一个特点就是数学符号特别多,虽然举了例子但仍是一头雾水。参考了此篇博文,通俗语言中大致知道咋回事。1. 最大似然1.1 以例引入假设我们需要调查学校男生和女生的身高分布。你在校园里随便地活捉了100个男生和100个女生。那下一步怎么办啊?你开始喊:“男的左边,女的右边,其他的站中间!”。然后你就先统计抽样得到的100个男生的身高。假设他们的原创 2017-08-30 20:00:58 · 574 阅读 · 0 评论 -
SVM-支持向量机学习(1):线性可分SVM的基本型
1. foreword先看的是李航老师的书第7章,比较传统按照以下三节展开:线性可分SVM线性SVM非线性SVMSMO算法李航老师讲东西向来不拖泥带水,但本节也几乎用了40页的篇幅,足见涉及内容之多。7月底硬着头皮啃了下来,边看边在笔记上摘抄标注,花了2天时间对SVM有了基本认识。一个月过去了,如今重新整理为博客,再看轻松许多,并不断对比西瓜书的内容,启望达到融会贯通。西瓜书此节明显节奏轻原创 2017-08-31 11:35:30 · 8459 阅读 · 0 评论 -
SVM-支持向量机学习(2):线性可分SVM的对偶型
1. 从原始问题到对偶问题上节整整讨论了两遍(周、李老师),就是为了引出SVM是怎么来的?要解决的问题是什么?如何数学化表达?得到下面的数学问题:这就是SVM的基本型。该问题也称为原始问题。对该问题应用拉格朗日乘子法,通过将原始问题转化为求解对偶问题(dual problem)来得到最优解。即可得到线性可分SVM的对偶问题。为何要引入对偶问题?其优点在于:对偶问题更易求解:只需要求解乘子 α\al原创 2017-08-31 17:50:00 · 1264 阅读 · 2 评论 -
《西瓜书》笔记04:决策树
1. 决策树的划分选择决策树学习的关键是:如何确定最优划分属性。我们希望,决策树划分过程中,分支结点所包含的样本尽可能同属一类。即结点的纯度越来越高。分支结点的纯度越高,则熵越小。对于信息增益,定义为:分支前的熵-分支后的熵。分支后纯度越高,熵越小,减数越小,则差值越大。即信息增益越大,表明分支越好。对于信息增益率,除以该属性取值的分布熵。也是越大越好。信息增益,对可取值数目较多的属性有所偏好,取值原创 2017-08-20 21:40:51 · 1346 阅读 · 0 评论 -
《西瓜书》笔记03:多分类学习和类别不平衡问题(3)
1. 多分类学习对于多分类任务,有些二分类方法可直接推广到多分类(如LDA推广)。但更多情况下,基于一些基本策略,利用二分类学习器来解决多分类问题。假设N个类别。基本思路:拆解法。将多分类任务拆分为若干个二分类任务。为每个二分类任务训练一个分类器;测试时,对这些分类器的结果进行集成获得最终结果。关键问题:如何拆分?如何集成?经典策略:一对一(one vs one,OvO)一对多(one vs r原创 2017-08-17 11:36:30 · 2293 阅读 · 0 评论 -
《统计学习方法》笔记07:最大熵模型
foreword最大熵模型,最初在吴军博士《数学之美》看到。那节题目为《不要把鸡蛋放在一个篮子里——最大熵模型》。吴军谈到最大熵原理在人们日常生活中不自觉用到.比如掷一个色子,六面均匀的情况下6出现的概率为1/6,这几乎是所有人都会给出的答案,但为什么是1/6?其实其中蕴含了最大熵原理。吴军谈到这个模型挺复杂,搞了好长时间最终有科学家以指数形式表达出此模型,并给出最优化求解。看了西瓜书没有讲最大熵,原创 2017-07-31 17:22:15 · 576 阅读 · 0 评论 -
机器学习类岗位-面试资料
1.机器学习面试问题1-10简介:机器学习面试问题系列博客共10章,分别总结了机器学习面试的经典常用问题,也是阿里面试常用考题 链接:http://blog.csdn.net/u012073449/article/category/60151252.scikit-learn实战简介:作者是业界工程师,博客讲了算法原理并在scikit-learn上应用。可体会实战用法。 链接:http://blo原创 2017-08-07 21:57:51 · 1219 阅读 · 0 评论 -
《统计学习方法》笔记08:boosting(1)
1. foreword第一次看书上boosting算法,几个简单的模型组合起来,就可以将非线性划分的数据完美地划分开来,颇为神奇。回想起TSA比赛中使用的GBDT(梯度提升决策树),lightGBM(轻量级梯度提升机),这些名词中闪耀着“梯度”“提升”“决策树”,这说明要理解boosting这一堆东西,得从这几个点入手。李航老师的书的第8章着重讲了Adaboost算法和提升树,西瓜书讲的点稍多。2.原创 2017-08-01 10:03:34 · 728 阅读 · 0 评论 -
《统计学习方法》笔记08:boosting(2)
上节对AdaBoost算法有了全面梳理。本节讨论提升树模型。1. 提升树模型(Boosting Tree)提升方法 = 加法模型 + 前向分步算法加法模型:基函数的线性组合提升树模型:以决策树(Decision Tree)为基函数的提升方法分类问题中,决策树为二叉分类树;回归问题中,决策树为二叉回归树。例8.1中,我们使用的基本分类器(x<vx\lt{v}),可以看做由一个根节点直接连接两个叶节点的原创 2017-08-01 16:54:50 · 689 阅读 · 0 评论 -
《西瓜书》笔记09:聚类
1.聚类任务无监督学习:训练样本的标记信息是未知的。目标是通过对无标记样本的学习揭示数据内在性质,为进一步数学分析提供基础。此类学习任务中研究最多,应用广泛的是聚类。聚类:试图将数据集中的样本划分为若干个通常互不相交的子集。每个子集称为一个簇(cluster)。每个簇可能对应于一些潜在概念。这些概念对于聚类算法而言事先未知。聚类过程仅能自动形成簇结构。簇所对应的概念语义需有使用者把握。聚类可作为一个原创 2017-08-08 21:37:01 · 2953 阅读 · 0 评论 -
《西瓜书》笔记08:集成学习
1. 个体与集成集成学习(ensemble learning)通过构建多个个体学习器并结合起来完成学习任务。要获得好的集成,个体学习器应该“好而不同”,要有一定的“准确性”,即学习器不能太坏,并且要有多样性,之间具有差异。互为补充,才可提升效果。集成学习研究核心:如何产生并结合个体学习器。根据个体学习器的生成方式,集成学习大致分为两类: {个体学习器间有强依赖,必须串行生成的序列化方法。代表:Ad原创 2017-08-01 22:17:47 · 3020 阅读 · 0 评论 -
《统计学习方法》笔记05:决策树模型
《统计学习方法》笔记05:决策树模型决策树模型:由训练数据集估计条件概率模型。学习算法:ID3,L4.5,CART三种。5.1 预备知识1. 熵熵可用来衡量一个随机变量的概率分布的不确定性情况。当随机变量在各取值上概率相同时,熵最大。熵反映了分布的不确定性程度。当分布中各取值概率相同时,不确定性最大,则熵最大。举例:巴西,德国,中国三国足球联赛,巴西和德国取胜概率远大于中国,不确定性小,可以看做“熵原创 2017-07-28 15:45:29 · 858 阅读 · 0 评论 -
《西瓜书》笔记01:机器学习绪论
1. 概述“朝霞不出门,晚霞行千里”日常生活中,我们积累了许多经验,通过对经验的利用,就能对新情况做出有效决策。机器学习:致力于研究如何通过计算的手段,利用经验来改善系统自身性能。计算机系统中,经验以数据形式存在。ML研究的主要内容:关于在计算机上从数据中产生模型的算法。有了学习算法,把经验数据提供给它,就能基于这些数据产生模型。面对新情况,模型会提供相应判断。2. 基本术语数据集,样本/示例,属性原创 2017-08-16 15:02:25 · 788 阅读 · 0 评论 -
XGBoost特点、调参、讨论
XGBoost是在GBDT(梯度提升决策树)基础上发展而来。GBDT含有几个关键点:梯度提升,提升决策树,回归问题。本质模型为加法模型,基函数为决策树,迭代拟合标注和模型的残差,来不断逼近损失函数最小化。更一般的情况,以当前模型在L负梯度方向的值,作为残差的近似。XGBoost(eXtreme Gradient Boosting)针对GBDT框架,加入了很多改进点。1. XGB的特点(1)传统GBD原创 2017-08-02 12:12:53 · 11767 阅读 · 0 评论 -
lightGBM原理、改进简述
1. forewordTSA比赛中,开始整的LR,把原始特征one-hot处理后输入LR训练。过了段时间开始搞RF和XGB,再后面搞LightGBM。2. lightGBM简介xgboost的出现,让数据民工们告别了传统的机器学习算法们:RF、GBM、SVM、LASSO……..。现在微软推出了一个新的boosting框架,想要挑战xgboost的江湖地位。顾名思义,lightGBM包含两个关键点:l原创 2017-08-02 16:40:13 · 79328 阅读 · 3 评论 -
《西瓜书》笔记02:模型评估和选择
1. 经验误差与过拟合训练误差:学习器在训练集上的误差。泛化误差:学习器在新样本上的误差。希望得到泛化误差小的学习器,但能做的是让训练误差尽量小。为了达到这个目的,应该从训练样本中尽可能学习出适用于所有潜在样本的普遍规律,这样才可遇到新样本正确判断。过拟合:当学习器把训练样本学得太好了的时候,很可能已经把训练样本的一些特点,当成了所有潜在样本都具有的一般性质,导致泛化能力下降。欠拟合:对训练样本的一原创 2017-08-16 17:53:08 · 2322 阅读 · 0 评论 -
偏差-方差权衡(Bias-Variance Tradeoff)
机器学习中讨论某模型时,提到偏差-方差权衡。如上图,用直线拟合后,相比原来的点其偏差最大,最后一个图则可完全拟合数据点,其偏差最小。但是拿第一个直线模型去预测未知数据,可能会相比最后一个模型更准确,因为最后一个模型过拟合,即第一个模型的方差比最后一个模型小。一般而言,高偏差意味着欠拟合,高方差意味着过拟合。两者之间有如下关系:随着模型复杂度增加,模型对于训练集的偏差越小,其方差越大;在训练上表现非常原创 2017-08-02 16:09:37 · 1626 阅读 · 2 评论 -
《统计学习方法》笔记01:总结概括
概述记笔记应该从学习初始开始。但自己喜欢在纸上抄录笔记,主要是写写画画,标注,想法等可随意添加,比较方便。但纸质笔记终不如电子笔记记录长远。今天把《统计学习方法》未看的最后一节《支持向量机》学习完毕。全书基本过了一遍,开始些博客笔记。当初开始看条件随机场的时候,先看的是周志华老师的《机器学习》即著名的西瓜书,概率图模型只有一章,到单独讲CRF就只有一节。于是开始看李航老师的《统计学习方法》第10、1原创 2017-07-25 20:35:53 · 392 阅读 · 0 评论 -
《西瓜书》笔记03:线性模型之线性回归(1)
1. 基本形式线性模型的优点:,形式简单,易于建模。蕴含着机器学习中一些重要思想。许多功能更为强大的非线性模型,可在线性模型的基础上通过引入层级结构或高维映射得到。良好的可解释性:w直观地表达了各属性在预测中的重要性,使得其具有很好的解释性。权重越大,代表该属性的重要程度越高。2. 线性回归linear regression,LR。当输出值为实数取值时,LR试图学习一个线性模型,尽可能准确的原创 2017-08-17 09:44:55 · 1408 阅读 · 0 评论 -
《西瓜书》笔记03:线性模型之LR、线性判别分析(2)
1. 对数几率回归/逻辑回归/LR此篇详述见《统计学习方法笔记06:LR逻辑回归模型》。《西瓜书》讲此节的衔接很好。特此补充。上节讲到线性回归应用于回归任务。但若要做分类任务咋办?从广义模型上入手:只需要将回归模型的预测值,映射到分类任务的标记上。例如:单位阶跃函数。对二分类任务,将模型产生的预测值是实值,转化为0/1值通过下式:但阶跃函数不可导。一个近似替代函数就是对数几率函数:这是一个“Sigm原创 2017-08-17 11:28:23 · 1400 阅读 · 0 评论 -
《西瓜书》笔记11:特征选择与稀疏表示(三)
5. 稀疏表示与字典学习将数据集D表示为矩阵,每一行对应一个样本,每列对应于一种特征。特征选择所考虑的问题是特征具有稀疏性:即矩阵中的许多列与当前学习无关,通过特征选择去掉这些列,难度有所降低,计算开销减小,模型的可解释性提高。 模型的输入因素减少了,模型建立的输入输出关系会更清晰。现在看另一种“稀疏性”:D对应的矩阵存在很多零元素,杂乱分布,而非整行整列的形式。比如文档分类中,每行是一个文档原创 2017-08-14 18:50:25 · 1566 阅读 · 0 评论 -
神经网络的利用率和
1. 神经网络的利用率当一个CNN网络做forward时,对于硬件资源的利用情况,称之为利用率。如何计算利用率?计算网络的计算量,通常是乘累加的次数测量网络运行耗时乘累加次数除以耗时, 计算该网络的GFLOPS用计算的网络GFLOPS除以硬件资源的理论GFLOPS,即利用率2. GFLOPS全称:float operations per second,每秒可做浮点操作的数量。用...原创 2018-11-14 20:36:16 · 2809 阅读 · 0 评论