数学学习(林达华原著)

这里说说几本我看过后觉得不错的数学教科书。
1. 线性代数 (Linear Algebra):
我想国内的大学生都会学过这门课程,但是,未必每一位老师都能贯彻它的精要。这门学科对于Learning是必备的基础,对它的透彻掌握是必不可少的。我在科大一年级的时候就学习了这门课,后来到了香港后,又重新把线性代数读了一遍,所读的是
Introduction to Linear Algebra (3rd Ed.)  by Gilbert Strang.
这本书是MIT的线性代数课使用的教材,也是被很多其它大学选用的经典教材。它的难度适中,讲解清晰,重要的是对许多核心的概念讨论得比较透彻。我个人觉得,学习线性代数,最重要的不是去熟练矩阵运算和解方程的方法——这些在实际工作中MATLAB可以代劳,关键的是要深入理解几个基础而又重要的概念:子空间(Subspace),正交(Orthogonality),特征值和特征向量(Eigenvalues and eigenvectors),和线性变换(Linear transform)。(如果你能理解傅立叶变化究竟做了一件什么事情,你才能说你知道了子空间!学线性代数一定要理解MATLAB能为你做的事情之外其他的东西,这才是精髓。而很遗憾,很多高校的线性代数考试只测试学生的计算能力。有几个数学老师能告诉学生:我们为什么要计算特征值?)从我的角度看来,一本线代教科书的质量,就在于它能否给这些根本概念以足够的重视,能否把它们的联系讲清楚。Strang的这本书在这方面是做得很好的。
而且,这本书有个得天独厚的优势。书的作者长期在MIT讲授线性代数课(18.06),课程的video在MIT的Open courseware网站上有提供。有时间的朋友可以一边看着名师授课的录像,一边对照课本学习或者复习。
http://ocw.mit.edu/OcwWeb/Mathematics/18-06Spring-2005/CourseHome/index.htm
2. 概率和统计 (Probability and Statistics): (功利一点的讲,统计是最实用的一门学科,如果你不去研究,不去做高端的金融投资分析,那么你可以不去学泛函,不去学线性代数,不去了解拓扑,但你一定离不开统计!时间序列分析也很重要,甚至比统计还来得实用,可国内却鲜有高校开设这门课程。。。)
概率论和统计的入门教科书很多,我目前也没有特别的推荐。我在这里想介绍的是一本关于多元统计的基础教科书:
Applied Multivariate Statistical Analysis (5th Ed.)  by Richard A. Johnson and Dean W. Wichern
这本书是我在刚接触向量统计的时候用于学习的,我在香港时做研究的基础就是从此打下了。实验室的一些同学也借用这本书学习向量统计。这本书没有特别追求数学上的深度,而是以通俗易懂的方式讲述主要的基本概念,读起来很舒服,内容也很实用。对于Linear regression, factor analysis, principal component analysis (PCA), and canonical component analysis (CCA)这些Learning中的基本方法也展开了初步的论述。
之后就可以进一步深入学习贝叶斯统计和Graphical models。(To my great acknowledgement, it is just for research.)一本理想的书是
Introduction to Graphical Models (draft version).  by M. Jordan and C. Bishop.
我不知道这本书是不是已经出版了(不要和Learning in Graphical Models混淆,那是个论文集,不适合初学)。这本书从基本的贝叶斯统计模型出发一直深入到复杂的统计网络的估计和推断,深入浅出,statistical learning的许多重要方面都在此书有清楚论述和详细讲解。MIT内部可以access,至于外面,好像也是有电子版的。
3. 分析 (Analysis): (这才是真正数学家应该做的事情,无奈本人智力水平有限,无法于此领域有多少见地)
我想大家基本都在大学就学过微积分或者数学分析,深度和广度则随各个学校而异了。这个领域是很多学科的基础,值得推荐的教科书莫过于
Principles of Mathematical Analysis, by Walter Rudin
有点老,但是绝对经典,深入透彻。缺点就是比较艰深——这是Rudin的书的一贯风格,适合于有一定基础后回头去看。
在分析这个方向,接下来就是泛函分析(Functional Analysis)。
Introductory Functional Analysis with Applications, by Erwin Kreyszig.
适合作为泛函的基础教材,容易切入而不失全面。我特别喜欢它对于谱论和算子理论的特别关注,这对于做learning的研究是特别重要的。Rudin也有一本关于functional analysis的书,那本书在数学上可能更为深刻,但是不易于上手,所讲内容和learning的切合度不如此书。
在分析这个方向,还有一个重要的学科是测度理论(Measure theory),(泛函是一切数学之源,而测度论又是泛函的基石。如今世界顶级投行的quant大部分都是利用概率测度去做风险中性建模和衍生品定价,谁说分析数学没有用?!ibank的衍生品投资分析都是基于测度中性去做的,因为对于大规模投资来说,最大的问题不是profit,而是risk hedging)但是我看过的书里面目前还没有感觉有特别值得介绍的。
4. 拓扑 (Topology):
在我读过的基本拓扑书各有特色,但是综合而言,我最推崇:
Topology (2nd Ed.)  by James Munkres
这本书是Munkres教授长期执教MIT拓扑课的心血所凝。对于一般拓扑学(General topology)有全面介绍,而对于代数拓扑(Algebraic topology)也有适度的探讨。此书不需要特别的数学知识就可以开始学习,由浅入深,从最基本的集合论概念(很多书不屑讲这个)到Nagata-Smirnov Theorem和Tychonoff theorem等较深的定理(很多书避开了这个)都覆盖了。讲述方式思想性很强,对于很多定理,除了给出证明过程和引导你思考其背后的原理脉络,很多令人赞叹的亮点——我常读得忘却饥饿,不愿释手。很多习题很有水平。
5. 流形理论 (Manifold theory):
对于拓扑和分析有一定把握时,方可开始学习流形理论,否则所学只能流于浮浅。我所使用的书是
Introduction to Smooth Manifolds.  by John M. Lee
虽然书名有introduction这个单词,但是实际上此书涉入很深,除了讲授了基本的manifold, (个人觉得现在vision领域的manifold learning只是一些无病呻吟的研究,it is just for papers,但是我并不是说流行学习对vision没有用处,只是manifold真正的魅力远没有被挖掘出来!正像俄罗斯那一群科学怪人整出的l1-norm,谁能想到今天对vision界带来了如此大的变革。其实,有时学习数学只是一种信仰。)tangent space, bundle, sub-manifold等,还探讨了诸如纲理论(Category theory),德拉姆上同调(De Rham cohomology)和积分流形等一些比较高级的专题。对于李群和李代数也有相当多的讨论。行文通俗而又不失严谨,不过对某些记号方式需要熟悉一下。
虽然李群论是建基于平滑流形的概念之上,不过,也可能从矩阵出发直接学习李群和李代数——这种方法对于急需使用李群论解决问题的朋友可能更加实用。而且,对于一个问题从不同角度看待也利于加深理解。下面一本书就是这个方向的典范:
Lie Groups, Lie Algebras, and Representations: An Elementary Introduction.  by Brian C. Hall
此书从开始即从矩阵切入,从代数而非几何角度引入矩阵李群的概念。并通过定义运算的方式建立exponential mapping,并就此引入李代数。这种方式比起传统的通过“左不变向量场(Left-invariant vector field)“的方式定义李代数更容易为人所接受,也更容易揭示李代数的意义。最后,也有专门的论述把这种新的定义方式和传统方式联系起来。
————————————————————————————
无论是研究Vision, Learning还是其它别的学科,数学终究是根基所在。(数学是能与上帝对话的语言)学好数学是做好研究的基石。(如果你能摒弃了功利的去学习数学,那么数学也势必能够为你带来功利!)学好数学的关键归根结底是自己的努力但是选择一本好的书还是大有益处的。不同的人有不同的知识背景,思维习惯和研究方向,因此书的选择也因人而异,只求适合自己,不必强求一致。上面的书仅仅是从我个人角度的出发介绍的,我的阅读经历实在非常有限,很可能还有比它们更好的书(不妨也告知我一声,先说声谢谢了)

机器学习中有关数学的一些推荐书籍相关推荐

  1. 我们该如何学习机器学习中的数学

    数学在机器学习中非常重要,不论是在算法上理解模型代码,还是在工程上构建系统,数学都必不可少.通常离开学校后很难有机会静下心学习数学知识,因此我们最好能通过阅读小组或读书会等形式营造环境,并专注学习那些 ...

  2. 机器学习中的数学:一份新鲜出炉的热门草稿

    来源:机器之心 本文约1500字,建议阅读5分钟. 本文为你分享近日<Mathematics for Machine Learning>的全部草稿已放出,我们整理了这本书的简要概述. 近日 ...

  3. 机器学习中的数学(上)

      上篇博文介绍了<机器学习之支持向量机>后发现利用到了梯度.凸优化.拉格朗日对偶性等数学问题.而且凸优化是本科非数学专业学不到的科目,所以这篇博文就要和大家分享一下机器学习中常用的数学概 ...

  4. 机器学习中的数学:线性代数

    专栏亮点 围绕主要脉络,贯穿整个学科:紧紧围绕空间变换这个线性代数的主要脉络,深刻理解如何用空间表示数据.用空间处理数据.用空间优化数据,用一条线索贯穿整个学科的主干内容. 聚焦四大纬度,筑牢知识体系 ...

  5. Python机器学习中的数学原理详解(补充勘误表)

    数学是机器学习和数据科学的基础,任何期望涉足相关领域并切实领悟具体技术与方法的人都无法绕过数学这一关.在一篇题为<放弃幻想,搞AI必须过数学关>的网文中,作者一针见血地指出想从事AI相关工 ...

  6. 机器学习中的数学 人工智能深度学习技术丛书

    作者:孙博 著 出版社:中国水利水电出版社 品牌:智博尚书 出版时间:2019-11-01 机器学习中的数学 人工智能深度学习技术丛书 ISBN:9787517077190

  7. 机器学习中的数学知识(part4)--拟牛顿法

    学习笔记,仅供参考,有错必究 文章目录 机器学习中的数学知识 拟牛顿法 面临的问题(局部极小/鞍点) 机器学习中的数学知识 拟牛顿法

  8. 机器学习中的数学知识(part3)--凸优化

    学习笔记,仅供参考,有错必究 文章目录 机器学习中的数学知识 凸优化 非凸优化 机器学习中的数学知识 凸优化 下面是实际问题中常见的凸集,记住它们对理解后面的算法非常有帮助. n n

  9. 机器学习中的数学知识(part2)

    学习笔记,仅供参考,有错必纠 参考自:<机器学习与应用>–雷明 文章目录 机器学习中的数学知识 泰勒展开 梯度下降法 牛顿法 机器学习中的数学知识 泰勒展开 梯度下降法

最新文章

  1. 【Java例题】4.3 3. 使用Gauss消元法求解n元一次方程组的根,
  2. pdfparser java_如何使用java从PDF中提取内容?
  3. 监视和管理GlassFish 3的多种方法
  4. java基本数据类型存储,JAVA - 基本数据类型的存储空间长度
  5. 风湿病年鉴 | scRNA-seq研究揭示骨关节炎患者的半月板退变新机制
  6. 个推基于Consul的配置管理
  7. Python 之 %s字符串、%d整型、%f浮点型
  8. java 杭电1237简单计算器
  9. [转载] opengl能做什么_python能做什么
  10. HashMap和HashSet的区别?
  11. Cesium - 地形瓦片(Quantized-mesh)
  12. 推荐5款超实用的小软件,建议先收藏再下载
  13. r语言导出文件为xlxs_【软件】R语言数据导入与导出
  14. mysql hsqldb_HSQLDB的使用方法
  15. 帆软报表更新到服务器控件展示不出来_如何报表控件FineReport实现自定义附件处理...
  16. 测试自动化的三波浪潮
  17. java 取上界_java-泛型及上界下界详解
  18. 妖怪,看法宝-看反射的“照妖镜”如何让类原形毕露
  19. 乡村振兴公益基金启动暨古茶树非遗保护公益行发布
  20. QT提取字符串中的数字

热门文章

  1. Html内联定义特点,HTML5
  2. vue路由切换时内容组件的滚动条回到顶部
  3. fastdfs java上传文件_FastDFS java客户端文件上传demo
  4. python3.6卸载教程_Python3.6安装卸载、执行命令、执行py文件的方法详解
  5. 瀑布流布局JavaScript实现
  6. Nvidia: Mx150 CUDA10安装驱动
  7. **PCL:嵌入VTK/QT显示(Code^_^)
  8. Linux搭建私有Git服务器以及ssh免密登陆配置
  9. 3.5. Buttons
  10. Kubernetes 1.2新功能解析:使用Deployment