机器学习与图像处理
三更灯火五更鸡
这个作者很懒,什么都没留下…
展开
-
RobHess的SIFT源码分析:sift.h和sift.c文件(转)
SIFT源码分析系列文章的索引在这里: RobHess的SIFT源码分析:综述这两个文件是RobHess的SIFT库中最重要的两个文件,里面包括用SIFT算法进行特征点检测的函数。文件中的内容说白了很简单,就是两个特征点检测函数sift_features()和 _sift_features(),sift_features() 是用默认参数进行特征点检测, _sift转载 2016-05-09 00:20:35 · 756 阅读 · 0 评论 -
牛顿法与拟牛顿法学习笔记(三)DFP 算法
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering 算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是 L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接(1) 牛顿法(2) 拟牛顿条件(3转载 2016-11-18 22:36:55 · 505 阅读 · 0 评论 -
牛顿法与拟牛顿法学习笔记(二)拟牛顿条件
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering 算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是 L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接(1) 牛顿法(2) 拟牛顿条件(3转载 2016-11-18 22:36:18 · 487 阅读 · 0 评论 -
牛顿法与拟牛顿法学习笔记(一)牛顿法
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering 算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是 L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接(1) 牛顿法(2) 拟牛顿条件(3转载 2016-11-18 22:35:18 · 524 阅读 · 0 评论 -
Wolfe和Armijo准则之Matlab实现
Wolfe准则function [alpha, newxk, fk, newfk] = wolfe(xk, dk)rho = 0.25; sigma = 0.75;alpha = 1; a = 0; b = Inf; while (1) if ~(fun(xk+alpha*dk)'*dk) b = alpha; alpha = (alpha+a)/2;转载 2016-11-17 16:25:37 · 10450 阅读 · 2 评论 -
最优化之路
进入算法研发部,在大致了解部门的项目构成,主要职责之后,我意识到最优化算法在各个项目组中都具有重要的作用,例如CTR预估、排序等。然而,由于自己在读博期间除了“逻辑回归”以外,没有系统参与过涉及最优化的项目,因此在还没有分配到具体任务的情况下,首先自发地对最优化算法的发展历程进行了调研。心得体会如下:最优化领域中的方法虽然“多如牛毛”,但是总体上还是沿着一条“主线”发展的。这里按照时间顺序转载 2016-11-17 11:23:58 · 653 阅读 · 0 评论 -
Sublime Text 3 快捷键汇总
Sublime Text 3非常实用,但是想要用好,一些快捷键不可或缺,所以转了这个快捷键汇总。用惯了vim,有些快捷键也懒得用了,尤其是在win下面,还有图形界面,所以个人觉得最有用的还是搜索类,对于阅读和修改代码来说,非常实用。选择类Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本。Alt+F3 选中文本按下快捷键,即可一次性选择全转载 2016-10-17 10:24:16 · 318 阅读 · 0 评论 -
马尔科夫随机场和马尔科夫链
1.什么是随机过程?在当代科学与社会的广阔天地里,人们都可以看到一种叫作随机过程的数学模型:从银河亮度的起伏到星系空间的物质分布、从分子的布朗运动到原子的蜕变过程,从化学反应动力学到电话通讯理论、从谣言的传播到传染病的流行、从市场预测到密码破译,随机过程理论及其应用几乎无所不在。人类历史上第一个从理论上提出并加以研究的过程模型是马尔科夫链,它是马尔科夫对概率论乃至人类思想发展作出的又一伟大转载 2016-10-25 14:52:34 · 585 阅读 · 0 评论 -
深度学习(Deep Learning) 学习资料
深度学习,是当前热门的机器学习领域。 最近开始想系统学习一下, 整理了一些网上学习资料, 也供有共同兴趣的朋友参考。如果有好的推荐,也欢迎给我留言。学习网站1. Deep Learning 101 http://markus.com/deep-learning-101/?utm_campaign=Manong_Weekly_Issue_11&utm_medium=EDM&转载 2016-10-24 18:44:39 · 617 阅读 · 0 评论 -
深度学习的一些教程
转自:http://baojie.org/blog/2013/01/27/deep-learning-tutorials/几个不错的深度学习教程,基本都有视频和演讲稿。附两篇综述文章和一副漫画。还有一些以后补充。Jeff Dean 2013 @ Stanfordhttp://i.stanford.edu/infoseminar/dean.pdf转载 2016-10-23 10:14:42 · 1293 阅读 · 0 评论 -
《机器学习&&深度学习》 视频课程资源百度云下载
《机器学习&&深度学习》 视频课程资源百度云下载。 林轩田:机器学习基石 链接:http://pan.baidu.com/s/1qXSKZP64 密码:dwie林轩田:機器學習技法 (Machine Learning Techniques)链接:http://pan.baidu.com/s/1i5I0kZj3 密码:zwceandrew Ng视频课程和讲义链接:转载 2016-10-23 09:51:42 · 7601 阅读 · 1 评论 -
Opencv2.4.9源码分析
赵春江的专栏转载 2016-10-12 08:49:42 · 413 阅读 · 0 评论 -
信息论
信息论(Information Theory)是概率论与数理统计的一个分枝。用于信息处理、信息熵、通信系统、数据传输、率失真理论、密码学、信噪比、数据压缩和相关课题。基本概念先说明一点:在信息论里面对数log默认都是指以2为底数。自信息量联合自信息量条件自信息量信息熵条件熵联合熵根据链式规则,有可以得出信息增益Inform转载 2016-10-11 20:15:27 · 1431 阅读 · 0 评论 -
机器学习之--损失函数
此文章翻译至机器学习的一章讲义: http://www.ics.uci.edu/~dramanan/teaching/ics273a_winter08/lectures/lecture14.pdf损失函数。 我们能得到一般化的损失函数表达式,如下(14.1),在(14.1)中,我们注意到损失函数有两部分组成:损失项和规则项。我们将会在接下来的章节中介绍这两部分。 一、损失转载 2016-10-11 20:09:57 · 1428 阅读 · 0 评论 -
交叉熵代价函数(损失函数)及其求导推导
前言交叉熵损失函数交叉熵损失函数的求导前言转载 2016-10-11 20:08:14 · 2151 阅读 · 0 评论 -
牛顿法与拟牛顿法学习笔记(四)BFGS 算法
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering 算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是 L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接(1) 牛顿法(2) 拟牛顿条件(3转载 2016-11-18 22:37:31 · 1456 阅读 · 0 评论 -
牛顿法与拟牛顿法学习笔记(五)L-BFGS 算法
机器学习算法中经常碰到非线性优化问题,如 Sparse Filtering 算法,其主要工作在于求解一个非线性极小化问题。在具体实现中,大多调用的是成熟的软件包做支撑,其中最常用的一个算法是 L-BFGS。为了解这个算法的数学机理,这几天做了一些调研,现把学习过程中理解的一些东西整理出来。目录链接(1) 牛顿法(2) 拟牛顿条件(3转载 2016-11-18 22:38:23 · 547 阅读 · 0 评论 -
聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut
聚类算法是ML中一个重要分支,一般采用unsupervised learning进行学习,本文根据常见聚类算法分类讲解K-Means, K-Medoids, GMM, Spectral clustering,Ncut五个算法在聚类中的应用。Clustering Algorithms分类1. Partitioning approach:转载 2016-12-11 11:50:02 · 824 阅读 · 0 评论 -
DoG (Difference of Gaussian)角点检测
DoG (Difference of Gaussian)是灰度图像增强和角点检测的方法,其做法较简单,证明较复杂,具体讲解如下:Difference of Gaussian(DOG)是高斯函数的差分。我们已经知道可以通过将图像与高斯函数进行卷积得到一幅图像的低通滤波结果,即去噪过程,这里的Gaussian和高斯低通滤波器的高斯一样,是一个函数,即为正态分布函数。那么di转载 2016-05-12 22:18:48 · 704 阅读 · 0 评论 -
SIFT特征提取分析
SIFT(Scale-invariant feature transform)是一种检测局部特征的算法,该算法通过求一幅图中的特征点(interest points,or corner points)及其有关scale 和 orientation 的描述子得到特征并进行图像特征点匹配,获得了良好效果,详细解析如下:算法描述SIFT特征不只具有尺度不变性,即使改变旋转角度转载 2016-05-14 23:53:34 · 440 阅读 · 0 评论 -
RobHess的SIFT源码分析:kdtree.h和kdtree.c文件
SIFT源码分析系列文章的索引在这里:RobHess的SIFT源码分析:综述kdtree.h和kdtree.c这两个文件中实现了k-d树的建立以及用BBF(Best Bin First)算法搜索匹配点的函数。如果你需要对两个图片中的特征点进行匹配,就要用到这两个文件。关于k-d树的理解,参考这篇文章,写的挺好:http://blog.csdn.net/ijuli转载 2016-05-15 08:18:16 · 509 阅读 · 0 评论 -
SIFT算法详解
尺度不变特征变换匹配算法详解Scale Invariant Feature Transform(SIFT)Just For Fun对于初学者,从David G.Lowe的论文到实现,有许多鸿沟,本文帮你跨越。如果你学习SIFI得目的是为了做检索,也许OpenSSE更适合你,欢迎使用。1、SIFT综述尺度不变特征转换(Scale-i转载 2016-09-07 16:42:15 · 327 阅读 · 0 评论 -
Proximal Gradient Method近端梯度算法
本文参考文献附在最后。是对参考文献的理解。 1:此算法解决凸优化问题模型如下:minF(x)=g(x)+h(x)其中g(x)凸的,可微的。h(x) 闭的凸的。其中g(x),h(x)是由F(x) 分离出来的两项,当F(x) 分离的结果不同,即使是同一个问题,算法的实现方式也不尽相同, 2:算法的实现 1)对于凸函数h(x)的proximal map如下:proxh转载 2016-07-04 00:10:03 · 3507 阅读 · 0 评论 -
低秩矩阵在机器视觉中的理解--Low-Rank representations
阅读论文Learning Structured Low-rank Representations for Image Classification文章主要有两个创新点1.在普通的低秩表示外另外加了对低秩表示的系数需要稀疏,这个的物理意义就是使得得出的低秩表示矩阵更有有分类性,更加表征它属于哪一类。2。加入了一个低秩的约束,先给出了一个理想化的低秩表示的形式,再使得我们求解的低秩表示接近转载 2016-11-02 16:02:54 · 1885 阅读 · 0 评论 -
图像拼接
图像拼接的基本流程(1) 图像预处理:对原始图像进行直方图匹配、平滑滤波、增强变换等数字图像处理的基本操作,为图像拼接的下一步作好准备。(2) 图像配准:图像配准是整个图像拼接流程的核心,配准的精度决定了图像的拼接质量。其基本思想是:首先找到待配准图像与参考图像的模板或特征点的对应位置,然后根据对应关系建立参考图像与待配准图像之间的转换数学模型,将待配准图像转换到参考图像的转载 2017-02-13 11:18:33 · 22140 阅读 · 6 评论 -
泰森多边形(Voronoi图)生成算法
一、文档目的本文描述了在geomodel模块中,生成泰森多边形所使用的算法。二、概述GIS和地理分析中经常采用泰森多边形进行快速插值,和分析地理实体的影响区域,是解决邻接度问题的又一常用工具。荷兰气候学家A·H·Thiessen提出了一种根据离散分布的气象站的降雨量来计算平均降雨量的方法,即将所有相邻气象站连成三角形,作这些三角形各边的垂直平分线,于是每个气象站周围的若干垂转载 2016-12-18 23:44:03 · 18393 阅读 · 0 评论 -
Clustering Algorithms: From Start To State Of The Art
It’s not a bad time to be a Data Scientist. Serious people may find interest in you if you turn the conversation towards “Big Data”, and the rest of the party crowd will be intrigued when you mention转载 2016-12-21 11:15:31 · 959 阅读 · 0 评论 -
VLAD
给定一个由类似K-means算法得到的码本和一个从某张图像提取到的局部描述子集合。VLAD算法包括如下步骤 (1) 赋值,把每个描述子赋给最近的码本: (2)(3)计算Voronoi区域的: 最后将所有区域得到的向量串在一起并做归一化。(1)(2)(3)三步骤可用如下图表示:转载 2016-12-13 21:31:39 · 942 阅读 · 0 评论 -
[VLFeat]Fisher vector提取matlab代码
fisher vector学习笔记:http://blog.csdn.net/happyer88/article/details/46576379 fisher vector改进:http://blog.csdn.net/happyer88/article/details/46625639使用vlfeat提取fisher vector的matlab 代码% 读入图片I = vl_转载 2016-12-06 20:54:56 · 1305 阅读 · 0 评论 -
Fisher vector学习笔记
最近在看fisher vector的相关知识,fisher vector被广泛应用到了图像的分类,目标识别等领域,特别是结合着BOW model。 模式识别方法可以分为生成方法和判别方法。前者注重对类条件概率密度函数的建模,而后者聚焦于分类。而Fisher核方法同时具有这两种方法的优点[4]。这里fisher 核和fisher vector是不一样的(感觉像是废话),其实在文章[4]转载 2016-12-06 20:50:31 · 475 阅读 · 0 评论 -
Fisher Vector 通俗学习
我写东西喜欢五颜六色,也喜欢通俗的来讲!哈哈。。。。核心:Fisher vector本质上是用似然函数的梯度vector来表达一幅图像基础知识的预备:1. 高斯分布生活和自然中,很多的事和物的分布都可以近似的看做是高斯分布。比如说:一个班的成绩的优良中差的分布。最优秀的和最差的往往都是少数,一般人是大多数。高斯分布直观的感受是这样的:这是这种分布的概转载 2016-12-06 20:43:29 · 531 阅读 · 0 评论 -
GMM的EM算法实现
在 聚类算法K-Means, K-Medoids, GMM, Spectral clustering,Ncut一文中我们给出了GMM算法的基本模型与似然函数,在EM算法原理中对EM算法的实现与收敛性证明进行了详细说明。本文主要针对如何用EM算法在混合高斯模型下进行聚类进行代码上的分析说明。1. GMM模型:每个 GMM 由 K 个 Gaussian 分布组成,每转载 2016-12-11 11:51:13 · 548 阅读 · 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转载 2016-10-11 15:46:41 · 1437 阅读 · 0 评论 -
kullback-leibler distance的计算(matlab)
KL-distance是用来计算两组离散数值的信息量(相对熵)的,一般针对的是离散数据。可以用来做特征筛选。但如果是连续数据,则先要离散化求每个bin内的frequency后再计算KL-distance。KL-distance的解释:(1)http://en.wikipedia.org/wiki/Kullback–Leibler_divergence(2)http://mathwo转载 2016-09-25 08:38:52 · 4682 阅读 · 1 评论 -
fminunc函数求解最优解
利用MATLAB优化工具箱解决如下的最小二乘问题: a)利用MATLAB优化工具箱中的函数fminunc,分别调用最速下降法、拟牛顿法(BFGS、DFP)求解以上问题的最优解,并比较不同方法的计算结果。b)利用optimset进行相关设置,给出迭代运算的中间结果,并改变终止精度,原创 2016-09-13 01:28:08 · 6162 阅读 · 2 评论 -
使用fminunc找逻辑回归(logistic)代价函数的最小值
在看完UFLDL自编码器autoencoder的代码后,发现其中的训练过程并不是使用训练的手段找到最优的参数theta,而是使用了minFunc寻找代价函数的最小值,并返回优化后的参数theta。其中的minFunc函数的说明里头提到了这个函数提供的各种选项和matlab提供的fminunc函数非常像,所以就去看了下matlab的help。这里贴出fminunc函数help中最基本的翻译:转载 2016-09-13 01:23:17 · 1427 阅读 · 1 评论 -
Matlab中fminunc函数的意义 以及options函数的初级用法。
本文问题出自Stanford大学 Andrew Ng老师的机器学习week 3 Logistic Regression Model 中出现如下高级函数:该过程涉及matlab两个函数 fminunc 和options;要清楚的了解这两个算法如何使用,我们需要知道自定义函数的使用方法,以图上的自定义函数function [jVal,gradient] = costFuncti转载 2016-09-13 01:16:53 · 1923 阅读 · 0 评论 -
牛顿法
平时经常看到牛顿法怎样怎样,一直不得要领,今天下午查了一下维基百科,写写我的认识,很多地方是直观理解,并没有严谨的证明。在我看来,牛顿法至少有两个应用方向,1、求方程的根,2、最优化。牛顿法涉及到方程求导,下面的讨论均是在连续可微的前提下讨论。 1、求解方程。并不是所有的方程都有求根公式,或者求根公式很复杂,导致求解困难。利用牛顿法,可以迭代求解。原理是利用泰勒公式转载 2016-09-13 00:57:20 · 377 阅读 · 0 评论 -
L-BFGS算法
前面的文章中,讲述过BFGS算法,它是用来求解最优化问题的,在这个算法中,相对于普通的牛顿迭代法有很大的改进。链接:http://blog.csdn.net/acdreamers/article/details/44664941。在BFGS算法中,仍然有缺陷,比如当优化问题规模很大时,矩阵的存储和计算将变得不可行。为了解决这个问题,就有了L-BFGS算法。 Con转载 2016-09-13 00:37:20 · 1595 阅读 · 0 评论 -
【机器学习-斯坦福】 - 牛顿方法
牛顿方法本次课程大纲:1、 牛顿方法:对Logistic模型进行拟合2、 指数分布族3、 广义线性模型(GLM):联系Logistic回归和最小二乘模型 复习:Logistic回归:分类算法假设给定x以为参数的y=1和y=0的概率:求对数似然性:对其求偏导数,应用梯度转载 2016-09-12 23:46:46 · 363 阅读 · 0 评论