
机器学习、python点滴
文章平均质量分 67
jimofanhua0000
这个作者很懒,什么都没留下…
展开
-
Python中排序常用到的sort 、sorted和argsort函数
Python中sort 和 sorted函数 一、介绍sort函数是list列表中的函数,而sorted可以对list或者iterator进行排序二、sort和sorted的比较1、用sort函数对列表排序时会影响列表本身,而sorted不会举例:>>> a = [1,2,1,4,3,5]>>> a.sort()>>> a[1, 1, 2, 3, 4,转载 2016-03-28 14:54:54 · 400 阅读 · 0 评论 -
机器学习中常见分类器的应用场景
正好14年的时候有人做过一个实验[1],比较在不同数据集上(121个),不同的分类器(179个)的实际效果。论文题为:Do we Need Hundreds of Classifiers to Solve Real World Classification Problems?实验时间有点早,我尝试着结合我自己的理解、一些最近的实验,来谈一谈吧。主要针对分类器(Classifier)。转载 2017-06-02 15:22:54 · 15439 阅读 · 1 评论 -
常见分类算法优缺点
1决策树(Decision Trees)的优缺点决策树的优点:一、 决策树易于理解和解释.人们在通过解释后都有能力去理解决策树所表达的意义。二、 对于决策树,数据的准备往往是简单或者是不必要的.其他的技术往往要求先把数据一般化,比如去掉多余的或者空白的属性。三、 能够同时处理数据型和常规型属性。其他的技术往转载 2017-06-02 15:31:57 · 2420 阅读 · 0 评论 -
GBDT算法整理
第一篇Gradient Boost Decision Tree: GBDT是一个应用很广泛的算法,可以用来做分类、回归。在很多的数据上都有不错的效果。GBDT这个算法还有一些其他的名字,比如说MART(Multiple Additive Regression Tree),GBRT(Gradient Boost Regression Tree),Tree Net等,其实它们都原创 2017-06-29 15:23:30 · 16082 阅读 · 3 评论 -
N问GBDT(1-12答案)
1. 怎样设置单棵树的停止生长条件?答:A. 节点分裂时的最小样本数B. 最大深度C. 最多叶子节点数D. loss满足约束条件2. 如何评估特征的权重大小?答:a. 通过计算每个特征在训练集下的信息增益,最后计算每个特征信息增益与所有特征信息增益之和的比例为权重值。b. 借鉴投票机制。用相同的gbdt参数对w每个特征训练出一个模型,然后在该模型下计算每转载 2017-06-29 15:26:07 · 2497 阅读 · 0 评论 -
卷积神经网络
卷积神经网络自今年七月份以来,一直在实验室负责卷积神经网络(Convolutional Neural Network,CNN),期间配置和使用过theano和cuda-convnet、cuda-convnet2。为了增进CNN的理解和使用,特写此博文,以其与人交流,互有增益。正文之前,先说几点自己对于CNN的感触。先明确一点就是,Deep Learning是全部深度学习算法的总称,转载 2017-06-08 22:56:07 · 530 阅读 · 0 评论 -
模型融合(stacking&blending)
参考文献链接英文版本 http://mlwave.com/kaggle-ensembling-guide/ 这里写链接内容这个是上面英文翻译过来的汉语翻译版本 kaggle比赛集成指南 http://m.blog.youkuaiyun.com/article/details?id=53054686搜狗比赛第五名的stacking思路 http://prozh转载 2017-06-02 14:56:59 · 14644 阅读 · 0 评论 -
Adaboost 算法总结
Adaboost 算法实例解析1 Adaboost的原理1.1 Adaboost基本介绍 AdaBoost,是英文"Adaptive Boosting"(自适应增强)的缩写,由Yoav Freund和Robert Schapire在1995年提出。Adaboost是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这转载 2017-06-22 18:11:17 · 1174 阅读 · 0 评论 -
RF,GBDT,xgboost调参方法整理
1、RF调参方法参考:http://wakemeup.space/?p=187http://blog.youkuaiyun.com/y0367/article/details/51501780http://blog.youkuaiyun.com/sun_shengyun/article/details/54618121持续更新。。。原创 2017-07-04 18:41:19 · 15040 阅读 · 0 评论 -
机器学习性能评估指标资料汇总
相关资料:http://blog.youkuaiyun.com/mousever/article/details/46944265http://blog.youkuaiyun.com/l18930738887/article/details/50629409http://www.cnblogs.com/zhaokui/p/ml-metric.htmlhttp://blog.youkuaiyun.com/a原创 2017-07-09 12:06:29 · 438 阅读 · 0 评论 -
特征组合相关资源总结
组合特征较多时候是用在推荐系统或者CTR预估中,下面几篇博客大概讲解了其使用,但是并没有细化每步的具体实现。https://www.qcloud.com/community/article/701728http://www.jianshu.com/p/7445a7b94b45https://www.zhihu.com/question/31989952/answer/54184原创 2017-07-10 11:23:56 · 726 阅读 · 0 评论 -
机器学习中的常见问题——损失函数
一、分类算法中的损失函数在分类算法中,损失函数通常可以表示成损失项和正则项的和,即有如下的形式:J(w)=∑iL(mi(w))+λR(w)其中,L(mi(w))为损失项,R(w)为正则项。mi的具体形式如下:mi=y(i)fw(x(i))y(i)∈{−1,1}fw(x(i))=wTx(i)转载 2017-04-14 10:47:16 · 827 阅读 · 0 评论 -
Hadoop相关知识整理
主要参考以下四篇博客内容:http://blessht.iteye.com/blog/2095675http://blog.youkuaiyun.com/lifuxiangcaohui/article/details/23337905http://www.cnblogs.com/voidy/p/4162395.htmlhttp://blog.youkuaiyun.com/yclzh0522/a转载 2017-08-02 21:39:14 · 685 阅读 · 0 评论 -
多专家模型(mixture of experts)
Mixtures of experts本小节介绍多专家模型(the mixture of experts model),该模型的思想是训练多个神经网络(也就是多个专家),每个神经网络(专家)被指定(specialize)应用于数据集的不同部分。这就是说,数据集可能有着多个不同的来源(different regimes,意思是说数据集中的数据的产生方式不同,这里我翻译成了“不同的来源”),不转载 2017-06-02 15:09:29 · 28410 阅读 · 0 评论 -
机器学习算法中GBDT与Adaboost的区别与联系
一、Adaboost原理参见博客http://blog.youkuaiyun.com/dark_scope/article/details/14103983二、GBDT与Adaboost的区别与联系(GBDT做分类时与LR的区别)https://www.zhihu.com/question/54626685?from=profile_question_card转载 2017-06-02 11:19:26 · 4040 阅读 · 0 评论 -
python中的extend和append的区别
extend()接受一个列表参数,把参数列表的元素添加到列表的尾部append()接受一个对象参数,把对象添加到列表的尾部比如:[1,2].extend([1,2,3])[1,2,1,2,3][1,2].append([1,2,3])[1,2,[1,2,3]]原创 2016-09-20 10:55:52 · 369 阅读 · 0 评论 -
Python中list相关操作
创建列表sample_list = ['a',1,('a','b')]Python 列表操作sample_list = ['a','b',0,1,3]得到列表中的某一个值value_start = sample_list[0]end_value = sample_list[-1]删除列表的第一个值del sample_list[0]在列表中插入一转载 2016-09-20 11:22:30 · 492 阅读 · 0 评论 -
Python读写文件方式的问题
首先,Python中读写文件有三种最基本的方式,即:w 以写的方式打开,文件若存在,首先要清空,然后(重新创建)a 以追加模式打开(从EOF开始,必要时创建新文件),把所有要写入文件的数据追加到文件的末尾,即使使用seek()指向了文件的其它地方,如果文件不存在,将自动创建。r以读的方式打开,文件若不存在,则报错。其次,在此基础上又添加了读写模式和以二进制读写模式,即:原创 2016-09-28 21:27:19 · 1715 阅读 · 0 评论 -
LR 与 SVM 的相同和不同
在大大小小的面试过程中,多次被问及这个问题:“请说一下逻辑回归(LR)和支持向量机(SVM)之间的相同点和不同点”。第一次被问到这个问题的时候,含含糊糊地说了一些,大多不在点子上,后来被问得多了,慢慢也就理解得更清楚了,所以现在整理一下,希望对以后面试机器学习方向的同学有所帮助(至少可以瞎扯几句,而不至于哑口无言ha(*^-^*))。(1)为什么将LR和SVM放在一起来进行比较? 回答这个问题转载 2017-04-14 12:06:44 · 519 阅读 · 0 评论 -
logistic函数和softmax函数
简单总结一下机器学习最常见的两个函数,一个是logistic函数,另一个是softmax函数。本文首先分别介绍logistic函数和softmax函数的定义和应用,然后针对两者的联系和区别进行了总结。1. logistic函数1.1 logistic函数定义 引用wiki百科的定义: A logistic function or logistic curve转载 2017-05-02 17:44:21 · 1849 阅读 · 0 评论 -
熵、交叉熵和相对熵的区别与联系
一、熵的本质是香农信息量()的期望。现有关于样本集的2个概率分布p和q,其中p为真实分布,q非真实分布。按照真实分布p来衡量识别一个样本的所需要的编码长度的期望(即平均编码长度)为:H(p)=。如果使用错误分布q来表示来自真实分布p的平均编码长度,则应该是:H(p,q)=。因为用q来编码的样本来自分布p,所以期望H(p,q)中概率是p(i)。H(p,q)我们称之为“交叉熵”。比如含有4个字转载 2017-05-11 16:12:43 · 7173 阅读 · 0 评论 -
机器学习中的代价函数
注:代价函数(有的地方也叫损失函数,Loss Function)在机器学习中的每一种算法中都很重要,因为训练模型的过程就是优化代价函数的过程,代价函数对每个参数的偏导数就是梯度下降中提到的梯度,防止过拟合时添加的正则化项也是加在代价函数后面的。在学习相关算法的过程中,对代价函数的理解也在不断的加深,在此做一个小结。 什么是代价函数?假设有训练样本(x, y),模型为h,转载 2017-05-11 17:07:52 · 1281 阅读 · 0 评论 -
机器学习中偏差和方差的区别
今天在看L1和L2正则的相关知识时,看到这样一段话: L2与L1的区别在于,L1正则是拉普拉斯先验,而L2正则则是高斯先验。它们都是服从均值为0,协方差为1λ。当λ=0时,即没有先验)没有正则项,则相当于先验分布具有无穷大的协方差,那么这个先验约束则会非常弱,模型为了拟合所有的训练集数据, 参数w可以变得任意大从而使得模型不稳定,即方差大而偏差小。λ越大,标明先验分布协方差越小,原创 2017-05-05 10:53:51 · 12769 阅读 · 1 评论 -
过拟合的解决方法
过拟合 我们都知道,在进行数据挖掘或者机器学习模型建立的时候,因为在统计学习中,假设数据满足独立同分布(i.i.d,independently and identically distributed),即当前已产生的数据可以对未来的数据进行推测与模拟,因此都是使用历史数据建立模型,即使用已经产生的数据去训练,然后使用该模型去拟合未来的数据。但是一般独立同分布的假设往往不成立,即数据的转载 2017-05-06 15:07:45 · 15403 阅读 · 1 评论 -
k-means 的原理,优缺点以及改进
K-Means算法是无监督的聚类算法,它实现起来比较简单,聚类效果也不错,因此应用很广泛。K-Means算法有大量的变体,本文就从最传统的K-Means算法讲起,在其基础上讲述K-Means的优化变体方法。包括初始化优化K-Means++, 距离计算优化elkan K-Means算法和大数据情况下的优化Mini Batch K-Means算法。1. K-Means原理初探 K转载 2017-05-07 18:02:13 · 61523 阅读 · 3 评论 -
机器学习算法集锦:从贝叶斯到深度学习及各自优缺点
目录正则化算法(Regularization Algorithms)集成算法(Ensemble Algorithms)决策树算法(Decision Tree Algorithm)回归(Regression)人工神经网络(Artificial Neural Network)深度学习(Deep Learning)支持向量机(Support V转载 2017-06-01 21:07:46 · 534 阅读 · 0 评论 -
SVM相关知识总结
一、相关理解1. 为什么一定要研究线性分类?首先说一下为什么对数据集一定要说线性可分或线性不可分,难道不可以非线性分开吗?想要非线性分开当然可以,实际上SVM只是把原来线性不可分的数据点映射到一个新的空间,转换为在新空间中线性可分数据来进行分类的。如果返回到原来数据的空间中,其实还是非线性分开的。但是,那为什么不直接在原数据空间中进行非线性分开,而是非要转到新的空间进行线性分开原创 2017-06-06 16:57:33 · 467 阅读 · 0 评论 -
Hadoop中的数据倾斜整理
最近几次被问到关于数据倾斜的问题,这里找了些资料也结合一些自己的理解. 在并行计算中我们总希望分配的每一个task 都能以差不多的粒度来切分并且完成时间相差不大,但是集群中可能硬件不同,应用的类型不同和切分的数据大小不一致总会导致有部分任务极大的拖慢了整个任务的完成时间,硬件不同就不说了,应用的类型不同其中就比如page rank 或者data mining 里面一些计算,它的每条转载 2017-08-07 11:03:45 · 757 阅读 · 0 评论