机器学习
文章平均质量分 96
CWS_chen
之前都是,把学习记录、开发经验、踩过的坑,都保存到云盘里了。
展开
-
【机器学习】 SVD矩阵分解 整理
矩阵分解 (特征值/奇异值分解+SVD+解齐次/非齐次线性方程组)1.1 应用领域最优化问题:最小二乘问题 (求取最小二乘解的方法一般使用SVD) 统计分析:信号与图像处理 求解线性方程组:Ax=0或Ax=bAx=0或Ax=b 奇异值分解:可以降维,同时可以降低数据存储需求1.2 矩阵是什么矩阵是什么取决于应用场景 矩阵可以是: 只是一堆数:如果不对这堆数建立一些运算规则...原创 2018-01-16 10:05:56 · 2869 阅读 · 0 评论 -
【机器学习】线性判别分析LDA 算法原理 整理
在主成分分析(PCA)原理总结中,我们对降维算法PCA做了总结。这里我们就对另外一种经典的降维方法线性判别分析(Linear Discriminant Analysis, 以下简称LDA)做一个总结。LDA在模式识别领域(比如人脸识别,舰艇识别等图形图像识别领域)中有非常广泛的应用,因此我们有必要了解下它的算法原理。 在学习LDA之前,有必要将其自然语言处理领域的LDA区别开来,在自...原创 2017-06-28 14:24:18 · 6242 阅读 · 2 评论 -
【机器学习】最大熵算法 整理
最大熵模型由最大熵原理推导实现1.最大熵原理 最大熵原理认为,学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型。通常用约束条件来确定概率模型的集合,所以,最大熵原理也可以表述为在满足约束条件的模型集合中选取熵最大的模型。假设离散随机变量X的概率分布式P(X),则其熵是:熵满足下列不等式:式中,|X|是X的取值个数,当且仅当X的分布是均匀分布时右边的等号成...原创 2018-03-14 15:42:50 · 8221 阅读 · 0 评论 -
【机器学习】Boost算法(GDBT,AdaBoost,XGBoost)整理
Bagging的原理是从现有数据中有放回抽取若干个样本构建分类器,重复若干次建立若干个分类器进行投票。它的典型应用,就是随机森林。现在讨论另一种算法:提升(Boost)。简单地来说,提升就是指每一步我都产生一个弱预测模型,然后加权累加到总模型中,然后每一步弱预测模型生成的的依据都是损失函数的负梯度方向,这样若干步以后就可以达到逼近损失函数局部最小值的目标。下面开始要不说人话了,我们来详...原创 2018-03-22 15:12:01 · 2538 阅读 · 0 评论 -
【机器学习】 K近邻(kNN)算法 整理
k-近邻(kNN,k-Nearest Neighbors)算法是一种基于实例的分类方法。该方法就是找出与未知样本x距离最近的k个训练样本,看这k个样本中多数属于哪一类,就把x归为那一类。k-近邻方法是一种懒惰学习方法,它存放样本,直到需要分类时才进行分类,如果样本集比较复杂,可能会导致很大的计算开销,因此无法应用到实时性很强的场合。一 . K-近邻算法(KNN)概述 最简单最初级的...原创 2018-04-13 11:33:50 · 1370 阅读 · 0 评论 -
【机器学习】神经网络NeuralNetwork 算法 整理
人工神经网络(Artificial Neural Networks,ANN)是一种应用类似于大脑神经突触联接的结构进行信息处理的数学模型。在这种模型中,大量的节点(或称”神经元”,或”单元”)之间相互联接构成网络,即”神经网络”,以达到处理信息的目的。神经网络通常需要进行训练,训练的过程就是网络进行学习的过程。训练改变了网络节点的连接权的值使其具有分类的功能,经过训练的网络就可用于对象的识别。...原创 2018-03-20 11:09:56 · 3046 阅读 · 1 评论 -
【机器学习】常用聚类算法 整理
sparkML 常用聚类算法 http://spark.apache.org/docs/latest/mllib-clustering.html如下为 机器学习聚类算法的理论知识:在机器学习中,无监督学习一直是追求的方向,因为,这样可以更加自动化,减少人工参与等好处,而其中的聚类算法更是发现隐藏数据结构与知识的有效手段。目前如谷歌新闻等很多应用都将聚类算法作为主要的实现手段,它们能利...原创 2018-01-23 09:34:25 · 5257 阅读 · 0 评论 -
【机器学习】决策树算法 整理
决策树决策树是一种分类和回归的基本模型,可从三个角度来理解它,即:一棵树 if-then规则的集合,该集合是决策树上的所有从根节点到叶节点的路径的集合 定义在特征空间与类空间上的条件概率分布,决策树实际上是将特征空间划分成了互不相交的单元,每个从根到叶的路径对应着一个单元。决策树所表示的条件概率分布由各个单元给定条件下类的条件概率分布组成。实际中,哪个类别有较高的条件概率,就把该单元中...原创 2017-12-15 11:21:55 · 1990 阅读 · 0 评论 -
【机器学习】熵(信息熵,联合熵,交叉熵,互信息)
机器学习中的各种熵,什么是熵?什么是交叉熵?什么是联合熵?什么是条件熵?什么是相对熵?它们的联系与区别是什么?前言:你必须知道的信息论1948年,数学家和电气工程师克劳德香农(Claude Elwood Shannon)在其开创性论文《通信的数学理论》中提出了“信息论”,这一概念。 对深度学习和人工智能的发展具有非凡的意义。那么,对于信息论大家又了解多少呢? 在本文中,Abhis...原创 2018-01-12 12:39:10 · 2455 阅读 · 1 评论 -
【机器学习】逻辑回归 LR 算法 整理
有了 Sigmoid 函数之后,由于其值取值范围在[0,1]。就可以将其视为类 1 的后验概率估计 p(y=1|X)。就是如果有一个测试点 x,就可以用Sigmoid函数算出来的结果当作该点 x 属于类别 1 的概率大小。于是,非常自然地,把 Sigmoid 函数计算得到的值大于等于0.5的归为类别1,小于0.5的归为类别0:1.逻辑斯蒂回归模型LR模型主要用于分类模型,细...原创 2018-01-20 11:38:12 · 3029 阅读 · 0 评论 -
【机器学习】Adboost 算法 整理
Adaboost是adaptive boosting(自适应boosting)的缩写,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。它有一个明显的特点就是排除一些不必要的特征值,把模型训练放在关键特征值数据上。它的算法过程如下:Adaboost从以上概念可以看出它有两种分类器,一种是y1称之为弱分类器,另外一种是Y...原创 2017-06-01 14:22:01 · 3651 阅读 · 0 评论 -
【机器学习】时序预测Arima & HoltWinters算法及评估方法 整理
时序预测(Arima 和 HoltWinters)算法 及 评估方法 整理。spark 库里没有 Spark TimeSeries 时序预测算法,但是国外有人已经写好了相应的算法。https://github.com/sryza/spark-timeseries时间序列分析时间序列,就是按时间顺序排列的,随时间变化的数据序列。生活中各领域各行业太多时间序列的数据了,销售额,顾客数,访问量...原创 2018-03-21 15:51:58 · 10121 阅读 · 0 评论 -
【机器学习】EM 期望最大化算法 整理
极大似然估计,只是一种概率论在统计学的应用,它是参数估计的方法之一。说的是已知某个随机样本满足某种概率分布,但是其中具体的参数不清楚,参数估计就是通过若干次试验,观察其结果,利用结果推出参数的大概值。最大似然估计是建立在这样的思想上:已知某个参数能使这个样本出现的概率最大,我们当然不会再去选择其他小概率的样本,所以干脆就把这个参数作为估计的真实值。 先假设这样一个问题:要求解人群(10...原创 2017-06-22 17:02:46 · 2027 阅读 · 0 评论 -
【机器学习】条件随机场CRF算法 梳理
条件随机域(场)(conditional random fields,简称 CRF,或CRFs),是一种判别式概率模型,是随机场的一种,常用于标注或分析序列资料,如自然语言文字或是生物序列。如同马尔可夫随机场,条件随机场为具有无向的图模型,图中的顶点代表随机变量,顶点间的连线代表随机变量间的相依关系,在条件随机场中,随机变量Y 的分布为条件机率,给定的观察值则为随机变量 X。原则上,条件随机...原创 2017-06-19 10:39:01 · 8024 阅读 · 0 评论 -
【机器学习】LR多分类推广 - Softmax回归 整理
1.softmax在机器学习尤其是深度学习中,softmax是个非常常用而且比较重要的函数,尤其在多分类的场景中使用广泛。他把一些输入映射为0-1之间的实数,并且归一化保证和为1,因此多分类的概率之和也刚好为1。首先我们简单来看看softmax是什么意思。顾名思义,softmax由两个单词组成,其中一个是max。对于max我们都很熟悉,比如有两个变量a,b。如果a>b,则max为a,反...原创 2018-01-28 09:21:22 · 3610 阅读 · 0 评论 -
【机器学习】朴素贝叶斯 Naive Bayes Classifiers 算法 整理
贝叶斯(Bayes)分类算法是一类利用概率统计知识进行分类的算法,如朴素贝叶斯(Naive Bayes)算法。这些算法主要利用Bayes定理来预测一个未知类别的样本属于各个类别的可能性,选择其中可能性最大的一个类别作为该样本的最终类别。由于贝叶斯定理的成立本身需要一个很强的条件独立性假设前提,而此假设在实际情况中经常是不成立的,因而其分类准确性就会下降。为此就出现了许多降低独立性假设的贝叶斯分类算...原创 2018-01-16 09:39:44 · 4144 阅读 · 0 评论 -
【机器学习】Apriori算法详解 整理
1、数据挖掘与机器学习有时候,人们会对机器学习与数据挖掘这两个名词感到困惑。如果你翻开一本冠以机器学习之名的教科书,再同时翻开一本名叫数据挖掘的教材,你会发现二者之间有相当多重合的内容。比如机器学习中也会讲到决策树和支持向量机,而数据挖掘的书里也必然要在决策树和支持向量机上花费相当的篇幅。可见二者确有相当大的重合面,但如果细研究起来,二者也的确是各自不同的领域。大体上看,数据挖掘可以视为数据...原创 2018-03-23 14:50:30 · 3233 阅读 · 0 评论 -
【机器学习】面试N00题 - 整理
算法工程师面试,每天看一遍,看看哪里不会?点哪里1 请简要介绍下SVM。2 请简要介绍下Tensorflow的计算图。3 请问GBDT和XGBoost的区别是什么?4 在k-means或kNN,我们是用欧氏距离来计算最近的邻居之间的距离。为什么不用曼哈顿距离?5 百度2015校招机器学习笔试题。6 简单说说特征工程。7 关于LR。8 ...原创 2017-12-17 19:54:50 · 714 阅读 · 0 评论 -
【机器学习】马尔可夫(Markov)预测法 整理
隐马尔可夫模型(Hidden Markov Model,HMM)作为一种统计分析模型,创立于20世纪70年代。80年代得到了传播和发展,成为信号处理的一个重要方向,现已成功地用于语音识别,行为识别,文字识别以及故障诊断等领域。基本理论隐马尔可夫模型是马尔可夫链的一种,它的状态不能直接观察到,但能通过观测向量序列观察到,每个观测向量都是通过某些概率密度分布表现为各种状态,每一个观测向...原创 2018-01-11 09:46:25 · 22268 阅读 · 1 评论 -
【机器学习】降维算法 PCA、LDA、LLE、Laplacian EigenmapsI、SOMAP 、 MDS、SNE、TSNE
机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达形式。 y是数据点映射后的低维向量表达,通常y的维度小于x的维度(当然提高维度也是可以的)。f可能是显式的或隐式的、线性的或非线性的。目前大部分降维算法处理向量表达的数据,也有一些降维算法处理高阶张量表达...原创 2018-01-22 14:34:34 · 2715 阅读 · 0 评论 -
【机器学习】支持向量机SVM 算法 整理 及svm与lr的区别
支持向量机(Support Vector Machine ,SVM)的主要思想是:建立一个最优决策超平面,使得该平面两侧距离该平面最近的两类样本之间的距离最大化,从而对分类问题提供良好的泛化能力。对于一个多维的样本集,系统随机产生一个超平面并不断移动,对样本进行分类,直到训练样本中属于不同类别的样本点正好位于该超平面的两侧,满足该条件的超平面可能有很多个,SVM正式在保证分类精度的同时,寻找到这样...原创 2017-12-22 10:30:29 · 8009 阅读 · 0 评论 -
【机器学习】组合算法 Bootstraping, Bagging, Boosting, AdaBoost, RandomForest, Gradient boosting
组合模型Bootstraping名字来自成语“pull up by your own bootstraps”,意思就是依靠你自己的资源,称为自助法,它是一种有放回的抽样方法,它是非参数统计中一种重要的估计统计量方差进而进行区间估计的统计方法。其核心思想和基本步骤如下:采用重抽样技术从原始样本中抽取一定数量(自定义)的样本,此过程允许重复抽样。根据抽出的样本计算给定的统计量T。重复...原创 2018-05-16 14:17:51 · 1952 阅读 · 0 评论 -
【机器学习】因子分解机FM、场感知因子分解机FFM 算法 整理
逻辑回归无法学习到特征间的组合关系,因此有了 因子分解机FM 和 场感知因子分解机FFM。接下来,介绍下场感知因子分解机的主要应用。FFM模型可以自动做特征组合和处理高维稀疏特征,因而它在处理大量离散特征问题上往往有比较好的效果。但要注意对连续特征做归一化或者离散化。因子分解机FM1.FM背景在计算广告中,CTR预估(click-through rate)是非常重要的一个环节,因为...原创 2018-04-23 11:42:58 · 3113 阅读 · 3 评论 -
【机器学习】蒙特卡罗算法 整理
蒙特·卡罗方法(Monte Carlo method),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。与它对应的是确定性算法。蒙特·卡罗方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)...原创 2018-04-11 13:59:53 · 5829 阅读 · 0 评论 -
【机器学习】常用算法优缺点及选用指南 整理
1.朴素贝叶斯算法朴素贝叶斯属于生成式模型(关于生成模型和判别式模型,主要还是在于是否是要求联合分布),非常简单,你只是做了一堆计数。如果注有条件独立性假设(一个比较严格的条件),朴素贝叶斯分类器的收敛速度将快于判别模型,如逻辑回归,所以你只需要较少的训练数据即可。即使NB条件独立假设不成立,NB分类器在实践中仍然表现的很出色。它的主要缺点是它不能学习特征间的相互作用,用mRMR中R来讲,就是...原创 2018-02-28 16:23:58 · 897 阅读 · 0 评论 -
【机器学习】LDA算法 (主题模型算法)
随着互联网的发展,文本分析越来越受到重视。由于文本格式的复杂性,人们往往很难直接利用文本进行分析。因此一些将文本数值化的方法就出现了。LDA就是其中一种很NB的方法。 LDA有着很完美的理论支撑,而且有着维度小等一系列优点。本文对LDA算法进行介绍,欢迎批评指正。本文目录:1、Gamma函数2、Dirichlet分布3、LDA文本建模4、吉普斯抽样概率公式推导5、使用...转载 2018-01-14 12:17:59 · 23549 阅读 · 1 评论 -
【机器学习】常用优化方法原理
在ML/DL中,有许多优化方法可以选择,只有清楚了它们的原理才能更好地选择。1、SGD随机梯度下降是最经典的方法,其思想如下图所示:首先求出m个样本的Loss的和,求这个和对于神经网络参数theta的梯度,并将该梯度除以样本数m,得到平均梯度。然后,利用反向梯度来更新参数theta。η_k是学习率,k表示第k次迭代更新。通常,学习率会随着k的增大逐渐减小。其他的优化器,都是在这...原创 2018-01-02 21:39:20 · 4678 阅读 · 0 评论 -
【机器学习】Bagging算法 与 随机森林算法 整理
集成学习有两个流派,一个是boosting派系,它的特点是各个弱学习器之间有依赖关系。另一种是bagging流派,它的特点是各个弱学习器之间没有依赖关系,可以并行拟合。本文就对集成学习中Bagging与随机森林算法做一个总结。 随机森林是集成学习中可以和梯度提升树GBDT分庭抗礼的算法,尤其是它可以很方便的并行训练,在如今大数据大样本的的时代很有诱惑力。1. bagging的原理 ...原创 2017-12-17 17:26:37 · 1853 阅读 · 0 评论 -
【机器学习】线性回归,多元线性回归、自回归及衡量指标
经典线性模型自变量的线性预测就是因变量的估计值。广义线性模型:自变量的线性预测的函数是因变量的估计值。常见的广义线性模型有:probit模型、poisson模型、对数线性模型等。对数线性模型里有:logistic regression、Maxinum entropy。1.线性回归原理其中,为偏置参数,M为特征数目,为基函数(径向基函数(rbf)、sigmoid基函数等),特...原创 2018-01-20 14:03:24 · 4916 阅读 · 2 评论 -
数据挖掘十大经典算法 整理
数据挖掘的主要任务是分类、聚类、关联分析、预测、时序模式和偏差分析。(一)C4.5 算法C4.5算法是机器学习中的一种分类决策树算法,其核心是ID3 算法,C4.5算法继承了ID3算法的优点,并在以下几方面对ID3算法进行了改进:1) 用信息增益率来选择属性,克服了用信息增益选择属性时偏向选择取值多的属性的不足;2) 在树构造过程中进行剪枝;【剪枝有两种方式:1、先构造后剪枝...原创 2017-12-26 11:30:51 · 6938 阅读 · 0 评论 -
【机器学习】模型过拟合的处理方法 整理
过拟合标准定义:给定一个假设空间H,一个假设 h 属于H,如果存在其他的假设 h’ 属于H,使得在训练样例上 h 的错误率比 h’ 小,但在整个实例分布上 h’ 比 h 的错误率小,则假设 h 过度拟合训练数据。 —-《Machine Learning》Tom M.Mitchell 因为在统计学习中,假设数据满足独立同分布(i.i.d,independently ...原创 2017-12-29 16:51:11 · 23455 阅读 · 0 评论 -
【机器学习】XGBoost 原理及调参指南 整理
XGBoostXGBoost能自动利用cpu的多线程,而且适当改进了gradient boosting,加了剪枝,控制了模型的复杂程度 传统GBDT以CART作为基分类器,特指梯度提升决策树算法,而XGBoost还支持线性分类器(gblinear),这个时候XGBoost相当于带L1和L2正则化项的逻辑斯蒂回归(分类问题)或者线性回归(回归问题)。 传统GBDT在优化时只用到一...原创 2018-05-31 17:59:05 · 4210 阅读 · 0 评论 -
【机器学习】特征选择常用方法 整理
特征选择在实际工程中,对于特征变量的选取,往往是基于业务经验,也就是所谓你的先验知识。现在数据的特征维度很多,而能作为训练集的样本量却往往远小于特征数量(如基因测序、文本分类)。特征选择的好处:便于理解和可视化数据,降低计算及存储压力,对抗维度灾难以提高模型预测准确率等等。特征选择的三类主流方法为:过滤式、包裹式、嵌入式。一、过滤式变量排序就是一种典型的过滤式方法,...原创 2018-06-14 19:36:12 · 12906 阅读 · 0 评论