感觉数学似乎总是不够的。这些日子为了解决research中的一些问题,又在图书馆捧起了数学的教科书。从大学到现在,课堂上学的和自学的数学其实不算少了,可是在研究的过程中总是发现需要补充新的数学知识。Learning和Vision都是很多种数学的交汇场。看着不同的理论体系的交汇,对于一个researcher来说,往往是非常exciting的enjoyable的事情。不过,这也代表着要充分了解这个领域并且取得有意义的进展是很艰苦的。记得在两年前的一次blog里面,提到过和learning有关的数学。今天看来,我对于数学在这个领域的作用有了新的思考。对于Learning的研究,
1、LinearAlgebra(线性代数)和Statistics(统计学)是最重要和不可缺少的。这代表了MachineLearning中最主流的两大类方法的基础。一种是以研究函数和变换为重点的代数方法,比如Dimensionreduction,featureextraction,Kernel等,一种是以研究统计模型和样本分布为重点的统计方法,比如Graphicalmodel,Informationtheoreticalmodels等。它们侧重虽有不同,但是常常是共同使用的,对于代数方法,往往需要统计上的解释,对于统计模型,其具体计算则需要代数的帮助。以代数和统计为出发点,继续往深处走,我们会发现需要更多的数学。
2、Calculus(微积分),只是数学分析体系的基础。其基础性作用不言而喻。Learning研究的大部分问题是在连续的度量空间进行的,无论代数还是统计,在研究优化问题的时候,对一个映射的微分或者梯度的分析总是不可避免。而在统计学中,Marginalization和积分更是密不可分——不过,以解析形式把积分导出来的情况则不多见。
3、PartialDifferentialEquation(偏微分方程),这主要用于描述动态过程,或者仿动态过程。这个学科在Vision中用得比Learning多,主要用于描述连续场的运动或者扩散过程。比如Levelset,Opticalflow都是这方面的典型例子
。
4、FunctionalAnalysis(泛函分析),通俗地,可以理解为微积分从有限维空间到无限维空间的拓展——当然了,它实际上远不止于此。在这个地方,函数以及其所作用的对象之间存在的对偶关系扮演了非常重要的角色。Learning发展至今,也在向无限维延伸——从研究有限维向量的问题到以无限维的函数为研究对象。KernelLearning和GaussianProcess是其中典型的例子——其中的核心概念都是Kernel。很多做Learning的人把Kernel简单理解为Kerneltrick的运用,这就把kernel的意义严重弱化了。在泛函里面,Kernel(InnerProduct)是建立整个博大的代数体系的根本,从metric,transform到spectrum都根源于此。
5、MeasureTheory(测度理论),这是和实分析关系非常密切的学科。但是测度理论并不限于此。从某种意义上说,RealAnalysis可以从LebesgueMeasure(勒贝格测度)推演,不过其实还有很多别的测度体系——概率本身就是一种测度。测度理论对于Learning的意义是根本的,现代统计学整个就是建立在测度理论的基础之上——虽然初级的概率论教科书一般不这样引入。在看一些统计方面的文章的时候,你可能会发现,它们会把统计的公式改用测度来表达,这样做有两个好处:所有的推导和结论不用分别给连续分布和离散分布各自写一遍了,这两种东西都可以用同一的测度形式表达:连续分布的积分基于Lebesgue测度,离散分布的求和基于计数测度,而且还能推广到那种既不连续又不离散的分布中去(这种东西不是数学家的游戏,而是已经在实用的东西,在DirchletProcess或者Pitman-YorProcess里面会经常看到)。而且,即使是连续积分,如果不是在欧氏空间进行,而是在更一般的拓扑空间(比如微分流形或者变换群),那么传统的黎曼积分(就是大学一年级在微积分课学的那种)就不work了,你可能需要它们的一些推广,比如HaarMeasure或者Lebesgue-Stieltjes积分。
6、Topology(拓扑学),这是学术中很基础的学科。它一般不直接提供方法,但是它的很多概念和定理是其它数学分支的基石。看很多别的数学的时候,你会经常接触这样一些概念:Openset/Closedset,setbasis,Hausdauf,continuousfunction,metricspace,Cauchysequence,neighborhood,compactness,connectivity。很多这些也许在大学一年级就学习过一些,当时是基于极限的概念获得的。如果,看过拓扑学之后,对这些概念的认识会有根本性的拓展。比如,连续函数,当时是由epison法定义的,就是无论取多小的正数epsilon,都存在xxx,使得xxx。这是需要一种metric去度量距离的,在generaltopology里面,对于连续函数的定义连坐标和距离都不需要——如果一个映射使得开集的原像是开集,它就是连续的——至于开集是基于集合论定义的,不是通常的开区间的意思。这只是最简单的例子。当然,我们研究learning也许不需要深究这些数学概念背后的公理体系,但是,打破原来定义的概念的局限在很多问题上是必须的——尤其是当你研究的东西它不是在欧氏空间里面的时候——正交矩阵,变换群,流形,概率分布的空间,都属于此。
7、DifferentialManifold(微分流形),通俗地说它研究的是平滑的曲面。一个直接的印象是它是不是可以用来fitting一个surface什么的——当然这算是一种应用,但是这是非常初步的。本质上说,微分流形研究的是平滑的拓扑结构。一个空间构成微分流形的基本要素是局部平滑:从拓扑学来理解,就是它的任意局部都同胚于欧氏空间,从解析的角度来看,就是相容的局部坐标系统。当然,在全局上,它不要求和欧氏空间同胚。它除了可以用于刻画集合上的平滑曲面外,更重要的意义在于,它可以用于研究很多重要的集合。一个n-维线性空间的全部k-维子空间(k
8、LieGroupTheory(李群论),一般意义的群论在Learning中被运用的不是很多,群论在Learning中用得较多的是它的一个重要方向Liegroup。定义在平滑流形上的群,并且其群运算是平滑的话,那么这就叫李群。因为Learning和编码不同,更多关注的是连续空间,因为Liegroup在各种群中对于Learning特别重要。各种子空间,线性变换,非奇异矩阵都基于通常意义的矩阵乘法构成李群。在李群中的映射,变换,度量,划分等等都对于Learning中代数方法的研究有重要指导意义。
9、GraphTheory(图论),图,由于它在表述各种关系的强大能力以及优雅的理论,高效的算法,越来越受到Learning领域的欢迎。经典图论,在Learning中的一个最重要应用就是graphicalmodels了,它被成功运用于分析统计网络的结构和规划统计推断的流程。Graphicalmodel所取得的成功,图论可谓功不可没。在Vision里面,maxflow(graphcut)算法在图像分割,Stereo还有各种能量优化中也广受应用。另外一个重要的图论分支就是Algebraicgraphtheory(代数图论),主要运用于图的谱分析,著名的应用包括NormalizedCut和SpectralClustering。近年来在semi-supervisedlearning中受到特别关注。
这是大牛们做的很好的综述啊!
据说,是MIT一牛人对数学在机器学习中的作用给的评述!
相关推荐
通过研究计算机视觉和机器学习技术在电影三维动画制作和虚拟资产采集分析处理中的应用,探讨实现电影视觉表达的新方法和新模式,并从战略层面提出推动电影视觉表达创新发展的相关思考。 计算机视觉技术在电影视觉...
和机器学习和计算机视觉相关的数学.pdf
在计算机视觉领域,我们可以利用机器学习来识别人脸、物体和场景。在自然语言处理领域,机器学习则可以帮助我们进行文本分类、情感分析、机器翻译等操作。在医疗诊断方面,通过利用机器学习的技术,我们可以对医学...
由于提供的文件内容中包含了大量重复的链接信息,并且这些链接信息与主题不相关,因此在生成知识点时,将忽略这些重复的、无关的链接信息,专注于分析文件标题和描述中提及的计算机视觉知识。 《计算机视觉 + 模型...
同时,机器视觉的发展也推动了计算机视觉理论和技术的进步,如从传统的特征提取到现代的深度学习模型的演变。 总之,机器视觉与计算机视觉虽然各有侧重点,但它们在很大程度上是相互依赖、共同发展的。随着人工智能...
在计算机视觉中,数学方法起着至关重要的作用,它们帮助我们解析图像数据,提取特征,进行几何重建,以及识别和理解场景。下面将详细介绍计算机视觉中的数学原理及其应用。 1. 线性代数与矩阵运算:计算机视觉的...
计算机视觉是人工智能领域的一个重要分支,它通过数学方法来分析和理解图像和视频数据。数学方法在计算机视觉中的应用非常广泛,涉及到图像处理、物体识别、场景理解、三维重建等多个方面。 在计算机视觉中,数学...
本篇文章将针对“Python-深度学习面试宝典含数学、机器学习、深度学习、计算机视觉、自然语言处理和SLAM等方向”进行详细的阐述。 一、数学基础 深度学习依赖于强大的数学理论,包括线性代数、概率论与数理统计、微...
这些概念在压缩包文件“机器学习数学基础”中可能会有更详细的解释,包括相关的数学公式、实例演示以及代码实现,帮助学习者深入理解并应用这些技术。在学习过程中,理论知识与实践相结合至关重要,通过实际编程项目...
这份“深度学习面试宝典”涵盖了数学基础、机器学习、深度学习、计算机视觉、自然语言处理以及SLAM(Simultaneous Localization and Mapping,即时定位与地图构建)等多个关键领域,旨在帮助求职者全面准备深度学习...
机器学习和计算机视觉是当前信息技术领域的热门话题,其学习准备涉及到多个数学基础知识。以下是相关知识点的详细说明: 1. **线性代数**:线性代数是机器学习和计算机视觉的基础,它处理向量、矩阵和线性方程组等...
在深入计算机视觉领域的数学方法中,我们首先需要了解的是射影几何学。它是三维计算机视觉的数学理论基础...这对于计算机视觉技术的研究人员以及希望深入学习计算机视觉的工程师和技术人员来说,是非常宝贵的知识财富。
"计算机视觉-模型学习和推理笔记第四章 计算机视觉.pdf" 从给定的文件信息中,我们可以提取出以下几个重要的...这些知识点都是计算机视觉和机器学习中非常重要的概念,它们可以帮助我们更好地理解和应用机器学习算法。
[1][2]机器学习算法用于各种应用,例如电子邮件过滤和计算机视觉,在这些应用中,开发用于执行任务的特定指令的算法是不可行的。机器学习与计算统计学密切相关,计算统计学侧重于使用计算机进行预测。算法优化的研究...
吴福朝所著的《计算机视觉中的数学方法》便是这样一本书籍,它详细讲解了三维计算机视觉领域所涉及的基本数学理论与方法,成为该领域研究者和工程师的重要参考。 计算机视觉的任务通常是利用计算机对图像或视频进行...
【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、...人工智能学习200个实战案例与项目源码合集,包括:Python,数学,机器学习,数据分析,深度学习,计算机视觉等.zip