机器学习实战笔记
文章平均质量分 90
该笔记为本人基于机器学习实战这本书所做的个人笔记,包括总结和代码,书中的错误,也有所修正
小村长
大学在校研究生一枚,关注方向:计算机视觉,数据结构,C希望和大家交流,共同提高
微博:http://weibo.com/u/2653613245 欢迎交流!
展开
-
最小二乘法和最大似然估计
一:背景:当给出我们一些样本点,我们可以用一条直接对其进行拟合,如y= a0+a1x1+a2x2,公式中y是样本的标签,{x1,x2,x3}是特征,当我们给定特征的大小,让你预测标签,此时我们就需要事先知道参数{a1,a2}。而最小二乘法和最大似然估计就是根据一些给定样本(包括标签值)去对参数进行估计参数估计的方法>。 二:最小二乘法:基本思想:简单地说,最小二乘的思想就是要使得观原创 2015-04-13 21:46:22 · 17617 阅读 · 0 评论 -
VC维
有关于VC维可以在很多机器学习的理论中见到,它是一个重要的概念。在读《神经网络原理》的时候对一个实例不是很明白,通过这段时间观看斯坦福的机器学习公开课及相关补充材料,又参考了一些网络上的资料(主要是这篇,不过个人感觉仍然没有抓住重点),重新思考了一下,终于理解了这个定义所要传达的思想。 先要介绍分散(shatter)的概念:对于一个给定集合S={x1, ... ,xd},如果一个假设类H能够原创 2015-04-13 20:54:23 · 3557 阅读 · 0 评论 -
PCA降维简介
PCA全称为principal componentanalysis,即主成成分分析,用于降维。对数据进行降维有很多原因。比如: 1:使得数据更易显示,更易懂 2:降低很多算法的计算开销 3:去除噪声一:基本数学概念1:方差均值太简单了,不说了。方差是各个数据分别与其和的平均数之差的平方的和的平均数,用字母D表示。计算公式如下:原创 2014-11-27 13:09:39 · 47321 阅读 · 1 评论 -
信息检索的评价指标(Precision, Recall, F-score, MAP)
之前写过一篇blog叫做机器学习实战笔记之非均衡分类问题:http://blog.csdn.net/lu597203933/article/details/38666699其中对Precision和Recall及ROC都有所讲解,其中区别在于Precision,Recall, F-score, MAP主要用于信息检索,而ROC曲线及其度量指标AUC主要用于分类和识别,ROC的详细介绍见上面的b原创 2014-12-08 12:39:36 · 39960 阅读 · 2 评论 -
理解矩阵及谱聚类小记
最近看了一些矩阵和谱聚类的知识,特在此简单记录一下。详细可以先看下参考文献。首先看到的是孟岩写的三篇.一:理解矩阵(一)1:传统书籍空间的定义:存在一个集合,在这个集合上定义某某概念,然后满足某些性质”,就可以被称为空间。孟的空间包含四点:(1). 由很多(实际上是无穷多个)位置点组成;(2). 这些点之间存在相对的关系;(3). 可以在空间中定义长度、角度;4.这个空间可以容纳运原创 2014-12-15 16:52:08 · 4951 阅读 · 1 评论 -
机器学习实战笔记9(Apriori算法)
Apriori算法也属于无监督学习,它强调的是“从数据X中能够发现什么”。从大规模的数据集中寻找物品之间隐含关系被称为关联分析或者称为关联规则学习。这里的主要问题在于,寻找物品的不同组合是一项十分耗时的任务,所需的计算代价很高,蛮力搜索并不能解决这个问题。因此此处介绍使用Apriorio算法来解决上述问题。1:简单概念描述(1) 频繁项集:指经常出现在一块的物品的原创 2014-09-09 19:18:58 · 13028 阅读 · 3 评论 -
机器学习实战笔记8(kmeans)
前面的7次笔记介绍的都是分类问题,本次开始介绍聚类问题。分类和聚类的区别在于前者属于监督学习算法,已知样本的标签;后者属于无监督的学习,不知道样本的标签。下面我们来讲解最常用的kmeans算法。1:kmeans算法 Kmeans中文称为k-均值,步骤为:(1)它事先选定k个聚类中心,(2)然后看每个样本点距离那个聚类中心最近,则该样本就属于该聚类中心。(3)求每个聚类中心的样本原创 2014-09-09 13:22:19 · 7353 阅读 · 0 评论 -
机器学习实战笔记之非均衡分类问题
通常情况下,我们直接使用分类结果的错误率就可以做为该分类器的评判标准了,但是当在分类器训练时正例数目和反例数目不相等时,这种评价标准就会出现问题。这种现象也称为非均衡分类问题。此时有以下几个衡量标准。(1) 正确率和召回率 如下图所示:其中准确率指预测的真实正例占所有真实正例的比例,等于TP/(TP+FP),而召回率指预测的真实正例占所有真实正例的比例,等于T原创 2014-08-18 22:01:17 · 6087 阅读 · 0 评论 -
机器学习实战笔记7(Adaboost)
1:简单概念描述 Adaboost是一种弱学习算法到强学习算法,这里的弱和强学习算法,指的当然都是分类器,首先我们需要简单介绍几个概念。1:弱学习器:在二分情况下弱分类器的错误率会高于50%。其实任意的分类器都可以做为弱分类器,比如之前介绍的KNN、决策树、Naïve Bayes、logiostic回归和SVM都可以。这里我们采用的弱分类器是单层决策树,它是一个单节点的决策树。原创 2014-08-18 21:26:57 · 11641 阅读 · 4 评论 -
机器学习实战笔记6(SVM)
鉴于July大哥的SVM三层境界(http://blog.csdn.net/v_july_v/article/details/7624837)已经写得非常好了,这里我就不详细描述,只是阐述简单的几个概念。如果看SVM三层境界有困惑,我也愿意与大家交流,共同进步。简单概念描述:(1) 支持向量机(SVM, support vectormachine)就是通过最大化支持向量到分类超平原创 2014-08-12 20:33:00 · 4961 阅读 · 2 评论 -
机器学习实战笔记5(logistic回归)
1:简单概念描述假设现在有一些数据点,我们用一条直线对这些点进行拟合(改线称为最佳拟合直线),这个拟合过程就称为回归。训练分类器就是为了寻找最佳拟合参数,使用的是最优化算法。基于sigmoid函数分类:logistic回归想要的函数能够接受所有的输入然后预测出类别。这个函数就是sigmoid函数,它也像一个阶跃函数。其公式如下:其中: z = w0x0+w1x1+….+wnxn,w原创 2014-08-10 11:12:59 · 25822 阅读 · 38 评论 -
机器学习实战笔记4(朴素贝叶斯)
前面介绍的kNN和决策树都给出了“该数据实例属于哪一类”这类问题的明确答案,而有时候的分类并不能给出明确的答案,本节讲解使用概率论进行分类的方法。1:简单概念描述概念比较简单,这里我摘抄自百度百科,很容易理解。朴素贝叶斯模型(NaiveBayesian classification)):----Vmap=arg max P( Vj | a1,a2...an)Vj属于V集合原创 2014-08-08 21:20:37 · 9733 阅读 · 14 评论 -
机器学习实战笔记3(决策树与随机森林)
决策树的优势就在于数据形式非常容易理解,而kNN的最大缺点就是无法给出数据的内在含义。1:简单概念描述 决策树的类型有很多,有CART、ID3和C4.5等,其中CART是基于基尼不纯度(Gini)的,这里不做详解,而ID3和C4.5都是基于信息熵的,它们两个得到的结果都是一样的,本次定义主要针对ID3算法。下面我们介绍信息熵的定义。 事件ai发生的概率用p(ai原创 2014-07-21 21:26:44 · 15092 阅读 · 7 评论 -
机器学习实战笔记2(k-近邻算法)
1:算法简单描述 给定训练数据样本和标签,对于某测试的一个样本数据,选择距离其最近的k个训练样本,这k个训练样本中所属类别最多的类即为该测试样本的预测标签。简称kNN。通常k是不大于20的整数,这里的距离一般是欧式距离。2:python代码实现创建一个kNN.py文件,将核心代码放在里面了。(1) 创建数据#创造数据集def createDataSet():原创 2014-07-19 22:22:17 · 14107 阅读 · 14 评论 -
机器学习实战笔记1(机器学习基础)
1:如何选择合适的算法2:python简介(1) python的优势:相对于matlab,matlab单个软件授权就要花费数千美元,也没有一个有影响力的大型开源项目。相对于c++/c/java,完成简单的操作就需要编写大量的代码;而如今我们应该花费更多的时间去处理数据内在的含义,而无需花费太多精力解决计算机如何得到数据结果(python简洁)(2) python原创 2014-07-16 22:00:14 · 4961 阅读 · 7 评论