随笔分类 -  机器学习

上一页 1 2 3 4 5 下一页
Deep learning:八(Sparse Autoencoder)
摘要:前言: 这节课来学习下Deep learning领域比较出名的一类算法——sparse autoencoder,即稀疏模式的自动编码。我们知道,deep learning也叫做unsupervised learning,所以这里的sparse autoencoder也应是无监督的。按照前面的博文:Deep learning:一(基础知识_1),Deep learning:七(基础知识_2)所讲,如果是有监督的学习的话,在神经网络中,我们只需要确定神经网络的结构就可以求出损失函数的表达式了(当然,该表达式需对网络的参数进行”惩罚”,以便使每个参数不要太大),同时也能够求出损失函数偏导函数的... 阅读全文
posted @ 2013-03-19 22:01 tornadomeet 阅读(47844) 评论(13) 推荐(3) 编辑
Deep learning:七(基础知识_2)
摘要:前面的文章已经介绍过了2种经典的机器学习算法:线性回归和logistic回归,并且在后面的练习中也能够感觉到这2种方法在一些问题的求解中能够取得很好的效果。现在开始来看看另一种机器学习算法——神经网络。线性回归或者logistic回归问题理论上不是可以解决所有的回归和分类问题么,那么为什么还有其它各种各样的机器学习算法呢?比如这里马上要讲的神经网络算法。其实原因很简单,在前面的一系列博文练习中可以发现,那些样本点的输入特征维数都非常小(比如说2到3维),在使用logistic回归求解时,需要把原始样本特征重新映射到高维空间中,如果特征是3维,且指数最高为3时,得到的系数最高维数应该是2... 阅读全文
posted @ 2013-03-18 15:05 tornadomeet 阅读(20893) 评论(13) 推荐(2) 编辑
Deep learning:六(regularized logistic回归练习)
摘要:前言: 在上一讲Deep learning:五(regularized线性回归练习)中已经介绍了regularization项在线性回归问题中的应用,这节主要是练习regularization项在logistic回归中的应用,并使用牛顿法来求解模型的参数。参考的网页资料为:http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearning&doc=exercises/ex5/ex5.html。要解决的问题是,给出了具有2个特征的一堆训练数据集,从该数据的分布可以看出它们并不是非常线性可分的, 阅读全文
posted @ 2013-03-17 20:04 tornadomeet 阅读(15304) 评论(5) 推荐(0) 编辑
Deep learning:五(regularized线性回归练习)
摘要:前言: 本节主要是练习regularization项的使用原则。因为在机器学习的一些模型中,如果模型的参数太多,而训练样本又太少的话,这样训练出来的模型很容易产生过拟合现象。因此在模型的损失函数中,需要对模型的参数进行“惩罚”,这样的话这些参数就不会太大,而越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象。本文参考的资料参考网页:http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearning&doc=exercises/ex5/ex5.html。主要是给定7个训练样本点,需 阅读全文
posted @ 2013-03-17 15:15 tornadomeet 阅读(16782) 评论(6) 推荐(0) 编辑
Deep learning:四(logistic regression练习)
摘要:前言: 本节来练习下logistic regression相关内容,参考的资料为网页:http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearning&doc=exercises/ex4/ex4.html。这里给出的训练样本的特征为80个学生的两门功课的分数,样本值为对应的同学是否允许被上大学,如果是允许的话则用’1’表示,否则不允许就用’0’表示,这是一个典型的二分类问题。在此问题中,给出的80个样本中正负样本各占40个。而这节采用的是logistic regression来求解,该求解 阅读全文
posted @ 2013-03-16 21:59 tornadomeet 阅读(30209) 评论(12) 推荐(3) 编辑
Deep learning:三(Multivariance Linear Regression练习)
摘要:前言: 本文主要是来练习多变量线性回归问题(其实本文也就3个变量),参考资料见网页:http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearning&doc=exercises/ex3/ex3.html.其实在上一篇博文Deep learning:二(linear regression练习)中已经简单介绍过一元线性回归问题的求解,但是那个时候用梯度下降法求解时,给出的学习率是固定的0.7.而本次实验中学习率需要自己来选择,因此我们应该从小到大(比如从0.001到10)来选择,通过观察损失值 阅读全文
posted @ 2013-03-15 20:55 tornadomeet 阅读(23020) 评论(19) 推荐(2) 编辑
Deep learning:二(linear regression练习)
摘要:前言 本文是多元线性回归的练习,这里练习的是最简单的二元线性回归,参考斯坦福大学的教学网http://openclassroom.stanford.edu/MainFolder/DocumentPage.php?course=DeepLearning&doc=exercises/ex2/ex2.html。本题给出的是50个数据样本点,其中x为这50个小朋友到的年龄,年龄为2岁到8岁,年龄可有小数形式呈现。Y为这50个小朋友对应的身高,当然也是小数形式表示的。现在的问题是要根据这50个训练样本,估计出3.5岁和7岁时小孩子的身高。通过画出训练样本点的分布凭直觉可以发现这是一个典型的线性回 阅读全文
posted @ 2013-03-15 16:20 tornadomeet 阅读(38845) 评论(25) 推荐(4) 编辑
Deep learning:一(基础知识_1)
摘要:前言: 最近打算稍微系统的学习下deep learing的一些理论知识,打算采用Andrew Ng的网页教程UFLDL Tutorial,据说这个教程写得浅显易懂,也不太长。不过在这这之前还是复习下machine learning的基础知识,见网页:http://openclassroom.stanford.edu/MainFolder/CoursePage.php?course=DeepLearning。内容其实很短,每小节就那么几分钟,且讲得非常棒。 教程中的一些术语: Model representation: 其实就是指学习到的函数的表达形式,可以用矩阵表示。 Vecto... 阅读全文
posted @ 2013-03-14 12:48 tornadomeet 阅读(89867) 评论(14) 推荐(20) 编辑
ChaLearn Gesture Challenge_5:GSD数据库使用的再次理解
摘要:通过前面的博文ChaLearn Gesture Challenge_1:CGD数据库简单介绍分析可以看出,CGD数据库是2011年建立的,且在2012年利用该数据库进行了两轮One shot learning的挑战赛,从官网上给的CGD数据库可以推断出组织方是花费了很大的精力来收集这些数据的,不仅而此,组织方还给出了很多sample代码以及一些对应数据采集界面,方便大家共同扩大该数据库。CGD数据库目前有50000多个关于手势视频,共500个batch,每个batch都是同一个人在相同环境下的手势动作,只是手势内容不同而已。且每个batch都分为训练部分和测试部分。训练部分的每个视频只包含.. 阅读全文
posted @ 2013-02-27 22:01 tornadomeet 阅读(2046) 评论(0) 推荐(1) 编辑
ChaLearn Gesture Challenge_4:one shot learning比赛结果简单分析
摘要:关于ChaLearn数据库在前面文章ChaLearn Gesture Challenge_1:CGD数据库简单介绍中已经介绍过,当然了,关于该数据库的挑战赛在2012年主办了2场,其比赛结果依次分别在CCPRW2012和ICPRW2012中公布。这2轮比赛过程中官网http://gesture.chalearn.org/中都有对参加比赛的队伍所使用的方法等从感性上做了个调查,并且公布了其调查报告。从这些报告中我们可以参考到做手势识别的大概流程,每个流程中常见的方法是什么,我想这点对初步进入该领域的人来说应该有很大的启发作用。下面就官网发布的第二轮比赛调查Method survey文章来简单.. 阅读全文
posted @ 2013-02-26 12:45 tornadomeet 阅读(2545) 评论(0) 推荐(0) 编辑
Reading papers_16(Learning hierarchical invariant spatio-temporal features for action recognition with independent subspace analysis)
摘要:前言 本次读的文章是与feature learning相关,feature learning也叫做deep learning,是最近一个比较热门的话题。因为它可以无监督的学习到图片和视频的一些特征(当然在其它领域也可以,比如语音,语言处理等),而这些特征并不需要人为手动去设。手动设计的特征,常见的有sift,surf,hog等,它们都是经过了很长的时间才设计出来的,并且它只适应于2D的图片,如果把所需学习的目标换成视频,则也同样需要把这些算法扩展到3D,比如HOG3D,3Dsurf,这个扩展过程也是需要很多技巧和时间的。另外,手动设计的某一特征只对某些数据库表现好,而对其它的数据库效... 阅读全文
posted @ 2013-01-04 22:27 tornadomeet 阅读(3772) 评论(9) 推荐(0) 编辑
一些知识点的初步理解_9(独立成分分析-ICA,ing...)
摘要:独立成分分析(后面都用ICA代替)在维基百科中的解释是:一种利用统计原理进行计算的方法它是一个线性变换。这个变换把数据或信号分离成统计独立的非高斯的信号源的线性组合。独立成分分析是盲信号分离(Blind source separation)的一种特例。 可以感性上对比下ICA和PCA的区别,PCA是将原始数据降维并提取出不相关的属性,可以参考前面博文的介绍:PCA算法学习_1(OpenCV中PCA实现人脸降维)和PCA算法学习_2(PCA理论的matlab实现),而ICA是将原始数据降维并提取出相互独立的属性。我们知道两个随机变量独立则它们一定不相关,但2个随机变量不相关则不能保证它... 阅读全文
posted @ 2012-12-30 16:51 tornadomeet 阅读(12872) 评论(5) 推荐(0) 编辑
PCA算法学习_2(PCA理论的matlab实现)
摘要:前言 在前面的博文PCA算法学习_1(OpenCV中PCA实现人脸降维)中已经初步介绍了PCA算法的大概流程及在人脸降维上面的应用。本文就进一步介绍下其理论基础和matlab的实现(也是网上学者的代码)。 开发环境:Matlab2012a 基础 假设X是一个m*n的矩阵,是由样本数据构成的矩阵。其中m表示样本的属性维数,n表示样本的个数。现在要对X进行线性变换变成另一个矩阵Y,使得Y的协方差矩阵为对角矩阵,这样的Y就认为是对原始矩阵X提取主成分后的矩阵,实际过程中只需取Y的前面主要的行即可。 X变换到Y的线性变换公式为: X和Y的协方差计算方法为: 从下面的公式可... 阅读全文
posted @ 2012-12-30 11:24 tornadomeet 阅读(46001) 评论(9) 推荐(4) 编辑
龙星计划机器学习笔记
摘要:前言 最近几周花了点时间学习了下今年暑假龙星计划的机器学习课程,具体的课程资料参考见附录。本课程选讲了写ML中的基本模型,同时还介绍了最近几年比较热门,比较新的算法,另外也将ML理论和实际问题结合了起来,比如将其应用在视觉上,web上的等。总之,虽然课程内容讲得不是特别细(毕竟只有那么几节课),但是内容还算比较新和比较全的。学完这些课后,收获还算不少的,至少了解到了自己哪方面的知识比较弱,下面是课程中做的一些简单笔记。 第1课 绪论课 机器学习中3个比不可少的元素,数据,模型和算法。现在数据来源比较广泛,每天都可以产生T级以上的数据。模型的话就是机器学习课程中需要研究的各种模型,算法... 阅读全文
posted @ 2012-11-12 15:51 tornadomeet 阅读(26744) 评论(6) 推荐(6) 编辑
一些知识点的初步理解_8(Graph Cuts,ing...)
摘要:Graph cuts是一种十分有用和流行的能量优化算法,在计算机视觉领域普遍应用于前背景分割(Image segmentation)、立体视觉(stereo vision)、抠图(Image matting)等。Graph Cuts理论最早是出现在流网络优化领域的,比如说水管网络,通信传输网络,城市车流网络等。此时的Graph Cuts算法是用来确定网络流的最小分割,即寻找一个容量最小的边的集合,去掉这个集合中的所有边就可以阻挡这个网络了。需要注意的是,通常所说的Graph Cuts算法是指的采用最大流-最小分割来优化的模型,其它的Graph Cutting算法一般用graph par... 阅读全文
posted @ 2012-11-06 18:48 tornadomeet 阅读(17626) 评论(5) 推荐(2) 编辑
一些知识点的初步理解_7(随机森林,ing...)
摘要:在机器学习中,随机森林由许多的决策树组成,因为这些决策树的形成采用了随机的方法,因此也叫做随机决策树。随机森林中的树之间是没有关联的。当测试数据进入随机森林时,其实就是让每一颗决策树进行分类,最后取所有决策树中分类结果最多的那类为最终的结果。因此随机森林是一个包含多个决策树的分类器,并且其输出的类别是由个别树输出的类别的众数而定。随机森林可以既可以处理属性为离散值的量,比如ID3算法,也可以处理属性为连续值的量,比如C4.5算法。另外,随机森林还可以用来进行无监督学习聚类和异常点检测。 随机森林由决策树组成,决策树实际上是将空间用超平面进行划分的一种方法,每次分割的时候,都将当前的空间一... 阅读全文
posted @ 2012-11-06 09:33 tornadomeet 阅读(32925) 评论(2) 推荐(2) 编辑
PCA算法学习_1(OpenCV中PCA实现人脸降维)
摘要:前言: PCA是大家经常用来减少数据集的维数,同时保留数据集中对方差贡献最大的特征来达到简化数据集的目的。本文通过使用PCA来提取人脸中的特征脸这个例子,来熟悉下在oepncv中怎样使用PCA这个类。 开发环境:ubuntu12.04+Qt4.8.2+QtCreator2.5.1+opencv2.4.2 PCA数学理论: 关于PCA的理论,资料很多,公式也一大把,本人功底有限,理论方面这里就不列出了。下面主要从应用的角度大概来讲讲具体怎么实现数据集的降维。把原始数据中每个样本用一个向量表示,然后把所有样本组合起来构成一个矩阵。当然了,为了避免样本的单位的影响,样本集需要标准化。求该... 阅读全文
posted @ 2012-09-06 11:13 tornadomeet 阅读(58558) 评论(7) 推荐(3) 编辑
一些知识点的初步理解_6(核函数,ing...)
摘要:在SVM中经常听说核函数,关于各种核函数的推导公式写得天花乱坠。SVM大概意思是说将低维不可分的样本映射到高维空间中后就线性可分了,由于最后用训练出来的模型进行分类预测 时需要求高维空间中映射特征间的内积,而核函数的功能就是我们计算时不需要考虑高维空间的具体形式,降低了其计算复杂度。 下面就简单讲讲核函数的作用,当然这里是以2分类器为例。 首先我们需要了解我们的目的是用训练样本学习到一个线性的表达式,即下面的公式: (1) 通过训练数据可以学校到其中的权值向量w... 阅读全文
posted @ 2012-07-18 16:35 tornadomeet 阅读(3962) 评论(0) 推荐(1) 编辑
EM算法学习笔记_1(对EM算法的简单理解)
摘要:因做实验的需要,最近在学习EM算法,算法介绍的资料网上是有不少,可是没有一篇深入浅出的介绍,算法公式太多,比较难懂,毕竟她是ML领域10大经典算法之一 ,且一般是结合GMM模型的参数估计来介绍EM的。看过不少EM的资料,现将自己对EM算法用稍微通俗点的文字写下来,当然你可以用GMM这个具体的例子来帮助理解。 问题的提出:给定一些样本数据x,且知道该数据是有k个高斯混合产生的,现在要用给的样本数据x去估计模型的参数sida,即在该参数sida下产生x数据的概率最大。(其实就是个MLE估计)原问题等价与求sida,使得满足max(logP((x/sida))),那么我们为什么不直接用MLE去... 阅读全文
posted @ 2012-07-14 18:20 tornadomeet 阅读(8654) 评论(6) 推荐(0) 编辑
神经网络学习笔记_1(BP网络分类双螺旋线)
摘要:这个也是本学期模式识别的一个小作业题。实验目的:采用神经网络的方法对二维双螺旋样本点进行分类。实验数据:由于本次的实验数据是双螺旋,需要用数学公式产生,其产生方法见参考文献[1]. 即由下面的公式产生: 实验数据分为2部分:训练数据和测试数据。由于双螺旋曲线有自己的方程表达式,我们产生的测试数据不能与训练数据一样,否则训练出来的网络没有说服力,因此我们在程序中2个样本集在双螺旋曲线上的采样间隔不同,且起始位置不同,这样保证了测试样本和训练样本的数据集没有重叠,训练出来的模型的分类能力更具有说服力。 下图是试验过程中产生的训练样本和测试样本分布图: 其中训练样本200个,每条螺... 阅读全文
posted @ 2012-06-05 22:18 tornadomeet 阅读(13645) 评论(2) 推荐(3) 编辑

上一页 1 2 3 4 5 下一页

阿萨德发斯蒂芬