
机器学习
zhaosarsa
C'est la vie
Carpe diem
展开
-
【机器学习】主题模型
主题模型(LDA)(一)–通俗理解与简单应用主题模型(LDA)(二)-公式推导主题模型-LDA浅析(简短清楚)通俗理解LDA主题模型(超详细)数学之美(上一篇的参考文章)plsa和LDA的区别–七月在线...转载 2018-11-01 21:34:42 · 772 阅读 · 0 评论 -
【机器学习】LR与最大熵模型的关系
逻辑回归与最大熵模型MaxEnt的关系?逻辑回归跟最大熵模型到底有啥区别呢?简单粗暴 的回答是:逻辑回归跟最大熵模型没有本质区别。逻辑回归是最大熵对应类别为二类时的特殊情况,也就是当逻辑回归类别扩展到多类别时,就是最大熵模型。在进行下面推导之前,先上几个数学符号定义,假定输入是一个n维空间的实数向量:表示输入数据,其中。其中表示第条记录。同时使用来表示记录中的某个特征,或者对应...转载 2018-08-17 19:56:11 · 4347 阅读 · 1 评论 -
【机器学习】支持向量机面试知识点小结
之前写了几篇原理性的文章,先列一个目录好了。【数学基础】拉格朗日乘子法【数学基础】KKT条件【数学基础】拉格朗日对偶【机器学习】SVM线性可分【机器学习】SVM基本线性可分与多分类【机器学习】SVM核方法【机器学习】SVM之Hinge Loss,从LR到SVM,SVM核函数进一步理解【机器学习】SVM之回归模型写的还算详细,原理与推导具体可以参照以上。不过还差了...原创 2018-08-19 18:10:42 · 4731 阅读 · 0 评论 -
【机器学习】朴素贝叶斯(Naive Bayes)
在所有的机器学习分类算法中,朴素贝叶斯和其他绝大多数的分类算法都不同。对于大多数的分类算法,比如决策树,KNN,逻辑回归,支持向量机等,他们都是判别方法,也就是直接学习出特征输出Y和特征X之间的关系,要么是决策函数,要么是条件分布。但是朴素贝叶斯却是生成方法,也就是直接找出特征输出Y和特征X的联合分布,然后用得出。朴素贝叶斯很直观,计算量也不大,在很多领域有广泛的应用,这里我们就对朴素贝叶斯算...转载 2018-08-26 17:17:58 · 658 阅读 · 0 评论 -
【机器学习】逻辑回归特征的离散化与交叉
以下为综合转载。连续特征离散化有些特征虽然也是数值型的,但是该特征的取值相加相减是没有实际意义的,那么该数值型特征也要看成离散特征,采用离散化的技术。连续特征离散化主要分为有监督方法与无监督方法。无监督方法:无监督方法都具有的问题就是都需要人为规定划分区间这个参数,常用的方法有分箱法和直观划分。分箱法又分为等宽分箱法和等频分箱法,其实从名字就能看出算法的做法了,前者指定定长...转载 2018-08-19 14:18:09 · 3593 阅读 · 0 评论 -
【机器学习】逻辑斯蒂回归(Logistic Regression)详解
引言LR回归,虽然这个算法从名字上来看,是回归算法,但其实际上是一个分类算法,学术界也叫它logit regression, maximum-entropy classification (MaxEnt)或者是the log-linear classifier。在机器学习算法中,有几十种分类器,LR回归是其中最常用的一个。logit和logistic模型的区别:二者的根本区别在于广义...原创 2018-08-16 18:45:31 · 35013 阅读 · 1 评论 -
【机器学习】坐标下降法(Coordinate descent)
coordinate-wise minimization(坐标朝向最小)coordinate-wise minimization介绍的是坐标下降法的理论依据。问题的描述:给定一个可微的凸函数,如果在某一点,使得在每一个坐标轴上都是最小值,那么是不是一个全局的最小值。形式化的描述为:是不是对于所有的都有这里的代表第个标准基向量。答案为成立。这是因为:但是问题来...转载 2018-08-16 13:18:38 · 19949 阅读 · 3 评论 -
【数学基础】L2范数之解救矩阵病态
在之前的两篇文章岭回归以及L1正则化与L2正则化详解中都有提到L2范数。但对于L2范数在优化计算角度上都跳过了。故在这里新开一篇详细介绍一下,为什么L2范数可以解救病态矩阵,以及优化计算。病态系统现在有线性系统: , 解方程很容易得到解为: 。如果在样本采集时存在一个微小的误差,比如,将 A 矩阵的系数 400 改变成 401:则得到一个截然不同的解: 。当解集 x 对...原创 2018-08-14 00:06:07 · 9706 阅读 · 1 评论 -
【机器学习】岭回归(L2正则在干嘛!)
在之前我们有介绍过贝叶斯线性回归,贝叶斯线性回归利用了最大后验估计(MAP)加上权重的高斯分布先验推导出带有L2正则项的线性回归。其实这就是岭回归,即 岭回归=MAP+高斯先验。推导就参见贝叶斯线性回归了,其实两者就是一模一样的东西,不过贝叶斯线性回归更侧重于推导这个过程,因为用了MAP方法,而提到岭回归我们就会更去研究强调其L2正则项的一些特性与作用。直接给出岭回归的推导结果...原创 2018-08-13 20:49:52 · 4892 阅读 · 2 评论 -
【机器学习】L1正则化与L2正则化详解及解决过拟合的方法
在详细介绍L1与L2之前,先讲讲正则化的应用场景。正则化方法:防止过拟合,提高泛化能力所谓过拟合(over-fitting)其实就是所建的机器学习模型或者是深度学习模型在训练样本中表现得过于优越,导致在验证数据集以及测试数据集中表现不佳。造成过拟合的本质原因是模型学习的太过精密,导致连训练集中的样本噪声也一丝不差的训练进入了模型。所谓欠拟合(under-fitting),与过拟...原创 2018-08-13 17:29:56 · 14627 阅读 · 3 评论 -
【机器学习】逻辑回归小结
之前对于LR的介绍已经不少了,有从LR的极大似然概率模型开始推导的,从极大似然开始推导可以得到我们常用的损失函数形式,接下来就可以利用梯度下降方法。也从最大熵模型推导了满足二项分布的LR模型Hypothesis函数来源,以及满足多项式分布的Softmax回归模型。接下来对LR模型做一个总结。(参照面经等,以后可能会有补充……)如何凸显你是一个对逻辑回归已经非常了解的人呢。那就是用一句话概...转载 2018-08-17 22:03:58 · 1345 阅读 · 0 评论 -
【机器学习】决策树知识点小结
决策树原理简述决策树是一类常见的机器学习方法,它是基于树的结构进行决策的。每次做决策时选择最优划分属性,一般而言,随着划分过程不断进行,我们希望决策树的分支节点所包含的样本尽可能属于同一个类别,即节点的“纯度”(purity)越来越高。决策树学习算法包含特征选择、决策树的生成与剪枝过程。决策树的学习算法通常是递归地选择最优特征,并用最优特征对数据集进行分割。开始时,构建根节点,选择最优特征...原创 2018-08-20 13:22:03 · 5762 阅读 · 0 评论 -
【机器学习】LR的分布式(并行化)实现
逻辑回归(Logistic Regression,简称LR)是机器学习中十分常用的一种分类算法,在互联网领域得到了广泛的应用,无论是在广告系统中进行CTR预估,推荐系统中的预估转换率,反垃圾系统中的识别垃圾内容……都可以看到它的身影。LR以其简单的原理和应用的普适性受到了广大应用者的青睐。实际情况中,由于受到单机处理能力和效率的限制,在利用大规模样本数据进行训练的时候往往需要将求解LR问题的过程进...原创 2018-08-27 23:19:02 · 11275 阅读 · 2 评论 -
【机器学习】数据挖掘算法——关联规则(二),挖掘过程,Aprioir算法
关联规则挖掘的原理和过程从关联规则(一)的分析中可知,关联规则挖掘是从事务集合中挖掘出这样的关联规则:它的支持度和置信度大于最低阈值(minsup,minconf),这个阈值是由用户指定的。根据support=(X,Y).count/T.countsupport=(X,Y).count/T.countsupport=(X,Y).count/T.countconfidence=(X,Y).co...原创 2018-10-27 19:24:53 · 4146 阅读 · 0 评论 -
【机器学习】数据挖掘算法——关联规则(一),相关概念,评价指标
综述:数据挖掘是指以某种方式分析数据源,从中发现一些潜在的有用的信息,所以数据挖掘又称作知识发现,而关联规则挖掘则是数据挖掘中的一个很重要的课题,顾名思义,它是从数据背后发现事物之间可能存在的关联或者联系。关联规则的目的在于在一个数据集中找出项之间的关系,也称之为购物蓝分析 (market basket analysis)。例如,购买鞋的顾客,有10%的可能也会买袜子,60%的买面包的顾客,也...原创 2018-10-27 11:23:43 · 10970 阅读 · 1 评论 -
【机器学习】数据挖掘算法——关联规则(三),FP-growth算法
前言 上一篇文章介绍了用来挖掘发现强关联规则的Apriori算法。同时也知道了Apriori算法在实现过程中由于需要频繁的扫描数据集导致效率较低。 FP-growth算法基于Apriori构建,但采用了高级的数据结构减少扫描次数,大大加快了算法速度。FP-growth算法只需要对数据库进行两次扫描,而Apriori算法对于每个潜在的频繁项集都会扫描数据集判定给定模式是否频繁,因此FP-gr...转载 2018-10-28 15:23:16 · 1522 阅读 · 0 评论 -
【推荐算法入门】推荐系统之推荐算法概述
1. 什么是推荐算法推荐算法最早在1992年就提出来了,但是火起来实际上是最近这些年的事情,因为互联网的爆发,有了更大的数据量可以供我们使用,推荐算法才有了很大的用武之地。最开始,所以我们在网上找资料,都是进yahoo,然后分门别类的点进去,找到你想要的东西,这是一个人工过程,到后来,我们用google,直接搜索自己需要的内容,这些都可以比较精准的找到你想要的东西,但是,如果我自己都不知道...原创 2018-09-23 17:23:28 · 31210 阅读 · 0 评论 -
【机器学习】主元分析(PCA)以及与SVD的区别联系
参考文章:如何理解主元分析(PCA)?主元分析的目的是降低数据的维度。主元分析也就是PCA,主要用于数据降维。1 什么是降维?比如说有如下的房价数据:这种一维数据可以直接放在实数轴上:不过数据还需要处理下,假设房价样本用表示,那么均值为:然后平移到以均值为原点:以为原点的意思是,以为0,那么上述表格的数字就需要修改下:这个过程称为“中心化”。...转载 2018-09-02 17:00:22 · 1562 阅读 · 0 评论 -
【机器学习】贝叶斯整理
简述朴素贝叶斯算法原理和工作流程事件A和B同时发生的概率为在A发生的情况下发生B或者在B发生的情况下发生A。所以有:对于给出的待分类项,求解在此项出现的条件下各个目标类别出现的概率,哪个最大,就认为此待分类项属于哪个类别。工作原理:假设现在有样本这个待分类项(并认为x中的特征独立)。 再假设现在有分类目标 那么就是最终的分类类别。 而 因为x对于每个分类目标来说...原创 2018-08-25 21:26:41 · 3812 阅读 · 2 评论 -
【机器学习】集成学习知识点总结一
集成学习算法概述严格意义上来说,集成学习算法不算是一种机器学习算法,而更像是一种优化手段或策略,它通常是结合多个简单的弱机器学习算法,去做更可靠的决策。有人把它称为机器学习中的“屠龙刀”,非常万能且有效。集成模型是一种能在各种机器学习任务上提高准确率的强有力技术,能够很好地提升算法的性能。集成方法是由多个较弱的模型集成组成,一般弱分类器可以是决策树,SVM,KNN等构成。其中的模型可以单独...原创 2018-08-21 22:00:41 · 1344 阅读 · 0 评论 -
【机器学习】偏差-方差分解Bias-variance Decomposition
偏差-方差分解(Bias-Variance Decomposition)偏差-方差分解(Bias-Variance Decomposition)是统计学派看待模型复杂度的观点。Bias-variance分解是机器学习中一种重要的分析技术。给定学习目标和训练集规模,它可以把一种学习算法的期望误差分解为三个非负项的和,即样本真实噪音noise、bias和 variance。noise 样本真实...原创 2018-08-28 11:52:16 · 20349 阅读 · 3 评论 -
【机器学习】集成学习知识点总结二
GBDT原理概述GBDT是集成学习Boosting的一种。算法流程详见集成学习之梯度提升树GBDT。Gradient boosting的主要思想是,每一次建立单个学习器时,是在之前建立的模型的损失函数的梯度下降方向。损失函数越大,说明模型越容易出错,如果我们的模型能够让损失函数持续的下降,则说明我们的模型在不断改进,而最好的方式就是让损失函数在其梯度的方向上下降。GBDT的核心就在于,...原创 2018-08-23 19:53:33 · 1266 阅读 · 1 评论 -
【机器学习】次梯度(subgradient)方法
次梯度方法(subgradient method)是传统的梯度下降方法的拓展,用来处理不可导的凸函数。它的优势是比传统方法处理问题范围大,劣势是算法收敛速度慢。但是,由于它对不可导函数有很好的处理方法,所以学习它还是很有必要的。次导数设f:I→R是一个实变量凸函数,定义在实数轴上的开区间内。这种函数不一定是处处可导的,例如最经典的例子就是,在处不可导。但是,从下图的可以看出,对于定义域...转载 2018-08-15 16:08:01 · 59191 阅读 · 14 评论 -
【机器学习】集成学习之stacking
stacking方法也是集成学习的一个作弊一样的方法。比bagging,boosting内容要少一点。简介Stacking(有时候也称之为stacked generalization)是指训练一个模型用于组合(combine)其他各个模型。即首先我们先训练多个不同的模型,然后再以之前训练的各个模型的输出为输入来训练一个模型,以得到一个最终的输出。如果可以选用任意一个组合算法,那么理论上...转载 2018-08-02 20:46:40 · 12633 阅读 · 4 评论 -
【机器学习】集成学习各方法优缺点特征总结
随机森林优点具有极高的准确率 随机性的引入,使得随机森林不容易过拟合,有很好的抗噪声能力,对异常点离群点不敏感 能处理很高维度的数据,并且不用做特征选择 既能处理离散型数据,也能处理连续型数据,数据集无需规范化(归一化) 实现简单,训练速度快,可以得到变量重要性排序(计算每个特征在分裂时被选到的次数或者某个特征不纯度平均下降了多少) 容易实现并行化 在创建随机森林的时候,对ge...原创 2018-08-02 19:35:11 · 20728 阅读 · 0 评论 -
【机器学习】 树的剪枝策略
剪枝决策树剪枝分前剪枝(预剪枝)和后剪枝两种形式.决策树为什么(WHY)要剪枝?原因是避免决策树过拟合(Overfitting)样本。前面的算法生成的决策树非常详细并且庞大,每个属性都被详细地加以考虑,决策树的树叶节点所覆盖的训练样本都是“纯”的。因此用这个决策树来对训练样本进行分类的话,你会发现对于训练样本而言,这个树表现完好,误差率极低且能够正确得对训练样本集中的样本进行分类。训练样本...转载 2018-07-31 16:28:12 · 5107 阅读 · 1 评论 -
【机器学习】 ID3,C4.5,CART决策树
决策树模型在监督学习中非常常见,可用于分类(二分类、多分类)和回归。虽然将多棵弱决策树的Bagging、Random Forest、Boosting等tree ensembel 模型更为常见,但是“完全生长”决策树因为其简单直观,具有很强的解释性,也有广泛的应用,而且决策树是tree ensemble 的基础,值得好好理解。一般而言一棵“完全生长”的决策树包含,特征选择、决策树构建、剪枝三个过程,...转载 2018-07-31 15:42:45 · 878 阅读 · 0 评论 -
【机器学习】SVM线性可分
Introduction支持向量机(Support Vector Machine,SVM)是定义在特征空间中的最大间隔线性分类器,对于非线性可分的数据,SVM引入核方法(kernel trick)使它实质上成为非线性分类器。SVM 有两种解释求解间隔最大的分类平面,这种情况可以转化为一个求解凸二次规划的问题,一般转换为对偶问题求解; Hinge Loss,通过经验风险最小化,采取 Hin...原创 2018-08-04 20:55:07 · 1832 阅读 · 0 评论 -
【机器学习】 二次损失函数的不足及交叉熵损失softmax详解
二次代价函数的不足:以sigmoid激活函数为例,由于初始化是随机的,假设目标值为0,第一次随机初始化使得输入为0.82,那么还可以,多次迭代之后可以收敛到0.09,但如果第一次随机初始化到0.98,由于sigmoid激活函数的性质,就会使得梯度特别小,从而即使迭代次数特别大,也很难收敛到一个较好的值。故实验二的输出0.2很不理想。这个时候就需要引入交叉熵损失。当然我们可以更换激活...转载 2018-07-30 23:12:48 · 2104 阅读 · 1 评论 -
【机器学习基础知识】各类熵总结
发现以前学的东西特别容易忘,还是得腾个地儿写一写,有新的理解会继续补充。信息等基础见下面一篇博http://leijun00.github.io/2014/07/information-theory/https://www.cnblogs.com/fantasy01/p/4581803.html相对熵就是KL散度,表示q分布和p分布有多接近,越小越接近,就是p,q两者之间的交叉熵减...转载 2018-07-30 18:59:52 · 668 阅读 · 0 评论 -
【机器学习】机器学习一些概念的整理(不断更新中)
维数灾难:当特征维数很高的时候,即使训练集性能很好,也很有可能是由于过拟合造成的,模型的泛化能力很弱。 当特征维数很高的时候,样本映射到高维的特征空间下,距离度量逐渐失去了度量差异性的能力。https://blog.youkuaiyun.com/zbc1090549839/article/details/38929215https://blog.youkuaiyun.com/tanya_girl/articl...原创 2018-08-03 23:52:47 · 1630 阅读 · 0 评论 -
【机器学习】传统目标检测算法总结
目标检测是什么object detection,就是在给定的图片中精确找到物体所在位置,并标注出物体的类别。所以,object detection要解决的问题就是物体在哪里以及是什么的整个流程问题。然而,这个问题可不是那么容易解决的,1、物体可以出现在图片的任何地方,并且其尺寸变化范围很大。2、摆放物体的角度,姿态不定。3、物体还可以是多个类别。目前学术和工业界出现的目标检测算法分成...原创 2018-08-03 23:49:23 · 44118 阅读 · 4 评论 -
【机器学习】传统目标检测算法之DPM
前面介绍了一下HOG,HOG有一个缺点:很难处理遮挡问题,人体姿势动作幅度过大或物体方向改变也不易检测。继2005年HOG提出之后,DPM模型在借鉴了HOG之后也被提了出来同时还取得了不错的成绩。DPM概述DPM(Deformable Part Model),正如其名称所述,可变形的组件模型,是一种基于组件的检测算法,其所见即其意。该模型由大神Felzenszwalb在2008年提出,...转载 2018-08-03 22:08:08 · 14522 阅读 · 2 评论 -
【机器学习】传统目标检测算法之HOG
转载+理解:hog:https://www.cnblogs.com/wyuzl/p/6792216.htmlhog:https://blog.youkuaiyun.com/masibuaa/article/details/14056807基础知识:http://blog.sina.com.cn/s/blog_60e6e3d50101bier.html非极大值抑制NMS:https://www.cn...原创 2018-08-03 21:09:44 · 3155 阅读 · 0 评论 -
【机器学习】传统目标检测算法之级联分类器Cascade
先附上参考文章吧。文章其实是“P. Viola, M. Jones. Rapid Object Detection using a Boosted Cascade of Simple Features[J].CVPR, 2001”的学习笔记,下面第二个链接是文献的中英文版本。https://www.cnblogs.com/YiXiaoZhou/p/5875492.htmlhttps:/...原创 2018-08-03 19:23:10 · 22641 阅读 · 1 评论 -
【机器学习】SVM基本线性可分与多分类
上一篇讲了线性可分的SVM推导,现在讲一讲基本线性可分的情形,后面还会介绍多分类的使用以及核函数的使用。outlier 的处理给定数据集 ,当样本数据大部分为线性可分的,存在少量异常值使得数据线性不可分,或者导致分离超平面被挤压,可以通过一些方法仍然按照线性可分的方式处理,异常值的情况如下图所示:以上情况意味着某些样本点的函数间隔并不满足大于 1 的要求。为了解决这个问题,为每个...原创 2018-08-05 12:38:45 · 2792 阅读 · 0 评论 -
【机器学习】SVM核方法
Kernel Trick在 SVM 中引入核方法便可使得 SVM 变为非线性分类器,给定非线性可分数据集 ,如下图所示,此时找不到一个分类平面来将数据分开,核方法可以将数据投影到新空间,使得投影后的数据线性可分,下图给出一个 的映射,原空间为 ,新空间为 ,根据图可以看出映射后样本点的变化,此时样本便为线性可分的了,直接用 分类即可。上图是一个 的映射,但一般情况下,特征空间...原创 2018-08-05 16:32:37 · 2074 阅读 · 0 评论 -
【机器学习】XGBoost学习笔记
推荐博文https://blog.youkuaiyun.com/sb19931201/article/details/52557382https://www.jianshu.com/p/7467e616f227xgb讲起来还有点复杂,刚开始看算法的时候也是一愣一愣的。白话讲一讲吧。先确定一个概念,xgboost是什么?就是一堆二叉树,准确来讲是CART树,和GBDT一样,在GBDT中,无论是分...转载 2018-08-02 17:09:25 · 2017 阅读 · 0 评论 -
【机器学习】Lasso回归(L1正则,MAP+拉普拉斯先验)
前言目前这个方法还没有一个正规的中文名,如果从lasso这个单词讲的话,叫套索。那么套索是啥呢,就是套马脖子的东西,见下图: 就是拿这个东西把动物脖子套住,不要它随便跑。lasso 回归就是这个意思,就是让回归系数不要太大,以免造成过度拟合(overfitting)。所以呢,lasso regression是个啥呢,就是一个回归,并且回归系数不要太大。具体的实现方式是加了一个L1正...原创 2018-08-14 20:37:20 · 6242 阅读 · 0 评论 -
【机器学习】集成学习之梯度提升树GBDT
Boosting方法的核心思想是对错分类的样本给予更高关注度,也就是样本权重,在提升树中与之对应的就是残差,在梯度提升树中就是梯度了。Regression Decision Tree:回归树回归树在之前讲决策树的讲过,这里重提一下。其实很简单,不要对它抱有什么很恐惧对感觉,哈哈,可能有的时候刚看到公式或者算法步骤很长一串,还有一堆数学表达,就感到头大。其实真的很简单,关键的东西就一点点,而...原创 2018-08-01 23:53:57 · 1036 阅读 · 0 评论