- 博客(24)
- 收藏
- 关注
原创 快速排序的优化
1、快速排序的基本思想: 快速排序使用分治的思想,通过一趟排序将待排序列分割成两部分,其中一部分记录的关键字均比另一部分记录的关键字小。之后分别对这两部分记录继续进行排序,以达到整个序列有序的目的。2、快速排序的三个步骤:(1)选择基准:在待排序列中,按照某种方式挑出一个元素,作为 "基准"(pivot)(2)分割操作:以该基准在序列中的实际位置,把序列分成两个
2015-09-09 21:00:00
1245
原创 逻辑回归和SVM的区别
1、LR采用log损失,SVM采用合页损失。2、LR对异常值敏感,SVM对异常值不敏感。3、在训练集较小时,SVM较适用,而LR需要较多的样本。4、LR模型找到的那个超平面,是尽量让所有点都远离他,而SVM寻找的那个超平面,是只让最靠近中间分割线的那些点尽量远离,即只用到那些支持向量的样本。5、对非线性问题的处理方式不同,LR主要靠特征构造,必须组合交叉特征,特征离散化。SVM也可
2015-09-01 21:34:52
5886
1
转载 Logistic Regression 模型简介
本文转自美团技术团队:http://tech.meituan.com/intro_to_logistic_regression.html 逻辑回归(Logistic Regression)是机器学习中的一种分类模型,由于算法的简单和高效,在实际中应用非常广泛。本文作为美团机器学习InAction系列中的一篇,主要关注逻辑回归算法的数学模型和参数求解方法,最后也会简单讨论下逻辑回
2015-08-13 16:03:59
1336
转载 机器学习中的数据清洗与特征处理综述
本文出自美团技术团队:http://tech.meituan.com/machinelearning-data-feature-process.html背景随着美团交易规模的逐步增大,积累下来的业务数据和交易数据越来越多,这些数据是美团做为一个团购平台最宝贵的财富。通过对这些数据的分析和挖掘,不仅能给美团业务发展方向提供决策支持,也为业务的迭代指明了方向。目前在美团的团购系
2015-08-12 17:37:47
1263
转载 实例详解机器学习如何解决问题
本文出自美团技术团队:http://tech.meituan.com/mt-mlinaction-how-to-ml.html前言随着大数据时代的到来,机器学习成为解决问题的一种重要且关键的工具。不管是工业界还是学术界,机器学习都是一个炙手可热的方向,但是学术界和工业界对机器学习的研究各有侧重,学术界侧重于对机器学习理论的研究,工业界侧重于如何用机器学习来解决实际问题。我们
2015-08-12 17:32:36
1150
原创 MapReduce的工作机制
MapReduce的执行流程简单概括如下:用户作业执行JobClient.runJob(conf)代码会在Hadoop集群上将其启动。启动之后JobClient实例会向JobTracker获取JobId,而且客户端会将作业执行需要的作业资源复制到HDFS上,然后将作业提交给JobTracker。JobTracker在本地初始化作业,再从HDFS作业资源中获取作业输入的分割信息,根据这些信息JobT
2015-08-10 15:20:52
1009
原创 MapReduce执行流程详解
在hadoop中,每个mapreduce任务都会被初始化为一个Job。每个Job又可以分为两个阶段:map阶段和reduce阶段。这两个阶段分别用两个函数来表示,即map函数和reduce函数。map函数接收一个形式的输入,然后产生同样为形式的中间输出,hadoop会负责将所有具有相同中间key值的value集合到一起传递给reduce函数,reduce函数接收一个如<key,(list of
2015-08-10 14:19:16
1744
原创 用Hadoop流实现mapreduce版推荐系统基于物品的协同过滤算法
以个性化新闻推荐为例,整个过程分成两个mapreduce阶段,由于hadoop流不支持多个mapreduce过程的自动化,所以所有mapreduce过程命令必须人工一个一个的执行。1、首先需要将原始数据处理成如下形式的两个文件文件一:Item_user_score.txt格式:物品—用户—分数如下图中第一行,物品100655565被用户1634974浏览过,则将分数记为1
2015-08-07 17:44:38
5358
1
原创 SVM如何解决多分类问题
从 SVM的那几张图可以看出来,SVM是一种典型的两类分类器,即它只回答属于正类还是负类的问题。而现实中要解决的问题,往往是多类的问题(少部分例外,例如垃圾邮件过滤,就只需要确定“是”还是“不是”垃圾邮件),比如文本分类,比如数字识别。如何由两类分类器得到多类分类器,就是一个值得研究的问题。 还以文本分类为例,现成的方法有很多,其中一种一劳永逸的方法,就是真的一次性考虑所有样本,
2015-08-07 14:41:27
10887
2
原创 不容易产生过拟合的算法
1.SVM 首先,SVM有个L2正则项,在目标函数中加入这个对模型的规模进行了限制。L2正则为什么能保证控制过拟合,这里面就有个哲学思想,叫做奥卡姆剃刀法则,简单来说这个想法就是“能简单说的话,不要复杂的说”。L2正则项就能代表模型的复杂度,根据奥卡姆,如果同样效果那么越简单的模型泛化效果越好。所以最优化过程中尽量追求小的L2的值就会提高泛化能力,也就抑制了过拟合的问题。其次,会
2015-08-04 18:46:30
4884
原创 为什么会产生过拟合,有哪些方法可以预防或克服过拟合
为什么会产生过拟合,有哪些方法可以预防或克服过拟合?什么是过拟合:所谓过拟合(Overfit),是这样一种现象:一个假设在训练数据上能够获得比其他假设更好的拟合,但是在训练数据外的数据集上却不能很好的拟合数据。此时我们就叫这个假设出现了overfit的现象。过拟合产生的原因:出现这种现象的主要原因是训练数据中存在噪音或者训练数据太少。预防或克服措施:
2015-08-04 17:46:09
6159
原创 如何进行特征选择?
特征选择(排序)对于数据科学家、机器学习从业者来说非常重要。好的特征选择能够提升模型的性能,更能帮助我们理解数据的特点、底层结构,这对进一步改善模型、算法都有着重要作用。特征选择主要有两个功能:减少特征数量、降维,使模型泛化能力更强,减少过拟合增强对特征和特征值之间的理解 拿到数据集,一个特征选择方法,往往很难同时完成这两个目的。通常情况下,我们经常不管三七二十一,选择
2015-08-04 16:29:48
14010
3
原创 利用随机森林做特征选择
随机森林具有准确率高、鲁棒性好、易于使用等优点,这使得它成为了目前最流行的机器学习算法之一。随机森林提供了两种特征选择的方法:mean decrease impurity和mean decrease accuracy。平均不纯度减少----mean decrease impurity 随机森林由多个决策树构成。决策树中的每一个节点都是关于某个特征的条件,为的是将数据集按照
2015-08-04 15:27:36
34378
原创 随机森林的优缺点
网上有很多关于随机森林优缺点的总结,但是都只是抄来抄去,并没有对这些优缺点作说明,导致有些看不懂。本人根据自己的理解,对某些优缺点做一下说明,如果理解有不对的地方,欢迎大家指正。 随机森林是一个用随机方式建立的,包含多个决策树的分类器。其输出的类别是由各个树输出的类别的众数而定。 随机性主要体现在两个方面:(1)训练每棵树时,从全部训练样本中选取一个子集进行训练
2015-08-04 11:12:19
61752
6
原创 GBDT和随机森林的区别
GBDT和随机森林的相同点:1、都是由多棵树组成2、最终的结果都是由多棵树一起决定GBDT和随机森林的不同点:1、组成随机森林的树可以是分类树,也可以是回归树;而GBDT只由回归树组成2、组成随机森林的树可以并行生成;而GBDT只能是串行生成3、对于最终的输出结果而言,随机森林采用多数投票等;而GBDT则是将所有结果累加起来,或者加权累加起来PS:本
2015-08-04 10:20:34
17176
6
转载 GBDT(MART) 迭代决策树入门教程 | 简介
在网上看到一篇对从代码层面理解gbdt比较好的文章,转载记录一下: GBDT(Gradient Boosting Decision Tree) 又叫 MART(Multiple Additive Regression Tree),是一种迭代的决策树算法,该算法由多棵决策树组成,所有树的结论累加起来做最终答案。它在被提出之初就和SVM一起被认为是泛化能力(g
2015-08-03 17:20:25
1181
原创 决策树的特性及优缺点
决策树是一种树形结构,其中每个内部节点表示一个属性上的测试,每个分支代表一个测试输出,每个叶节点代表一种类别。 决策树(Decision Tree)是在已知各种情况发生概率的基础上,通过构成决策树来求取净现值的期望值大于等于零的概率,评价项目风险,判断其可行性的决策分析方法,是直观运用概率分析的一种图解法。 构建决策树采用贪心算法,只考虑当前纯度差最大的情况作为
2015-07-31 12:32:19
55368
原创 数据丢失处理方法
训练数据中样本特征值的部分缺失是很棘手的问题,很多文献致力于解决该问题,因为数据直接丢掉太可惜,重新获取代价也昂贵。一些可选的数据丢失处理方法包括:1、使用可用特征的均值来填补缺失值;2、使用特殊值来±真补缺失值,如-1;3、忽略有缺失值的样本;4、使用相似样本的均值添补缺失值;5、使用另外的机器学习算法预测缺失值。
2015-07-30 17:26:41
2856
原创 逻辑斯底回归的特征、多分类问题及过拟合问题
首先,Logistic回归虽然名字里带“回归”,但是它实际上是一种分类方法,主要用于两分类问题,此外还能解决非线性问题。LR分类器(Logistic Regression Classifier)目的就是从训练数据特征学习出一个0/1分类模型--这个模型以样本特征的线性组合作为自变量,使用logistic函数将自变量映射到(0,1)上。因此LR分类器的求解就是求解一组权值,当有一新样本过来时,首
2015-07-30 16:51:32
4032
原创 逻辑回归与决策树在分类上的区别
在讨论之前,让我们来看一下逻辑回归和决策树的主要差别:有些分歧是表面的,例如决策树可以对付缺失值,而逻辑回归需要挖掘人员预先对缺失数据进行处理。但实际上决策树同样要对缺失值做出某种假设和处理。例如CART在遇到一个变量中有缺失情况时,是用次级变量进行替换切分。这种做法在逻辑回归中也可以办到,但需要单独的编程。而在决策树中,这一步已经嵌入软件的算法引擎。从实质上看,决
2015-07-30 16:29:15
7492
1
原创 SVM 的推导、特点、优缺点、多分类问题及应用
关于SVM的推导网上有一大堆的资料可以参考,在这里就不在叙述了,重点讲解SVM的其他问题SVM有如下主要几个特点:(1)非线性映射是SVM方法的理论基础,SVM利用内积核函数代替向高维空间的非线性映射;(2)对特征空间划分的最优超平面是SVM的目标,最大化分类边际的思想是SVM方法的核心;(3)支持向量是SVM的训练结果,在SVM分类决策中起决定作用的是支持向量。(4)SV
2015-07-30 11:07:39
14920
原创 用python编写mapreduce版的wordcount程序
python版的mapreduce版的wordcount程序网上有很多,但是都或多或少的有问题,运行时基本上都会出错,从而导致本人走了不少弯路。经过本人的探索和实践,整理出了能正常运行的代码,并且附上几点需要注意的地方。1、代码整个编码阶段必须全过程在linux环境下编写,如果从windows拷贝过去,则会由于字符编码不一致,导致程序不能正常运行。2、如果运行./mapper.py时报错,
2015-07-30 09:02:10
1218
原创 无监督和有监督算法的区别
无监督和有监督的理解方法有很多,主要可以从以下几方面来理解:1、无监督与监督学习的区别在于一个无教学值,一个有教学值。但是,个人认为他们的区别在于无监督学习一般是采用聚簇等算法来分类不同样本。而监督学习一般是利用教学值与实际输出值产生的误差,进行误差反向传播修改权值来完成网络修正的。但是无监督学习没有反向传播修改权值操作。 2、样本全部带标记/样本全部不带标记··· PS:
2015-07-28 12:09:51
44963
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人