学习计算机科学总共需要多少数学基础?大概 1900 页吧。宾夕法尼亚大学计算机和信息科学系教授 Jean Gallier 的开源书籍《Algebra, Topology, Differential Calculus, and Optimization Theory For Computer Science and Engineering》用一本书的容量解决了所有问题。

这本书涵盖了计算机科学所需的线性代数、微分和最优化理论等问题,可谓详尽。
链接:http://www.cis.upenn.edu/~jean/math-basics.pdf


为什么要读这本书?
近年来,计算机科学、机器人学、机器学习和数据科学已经成为技术发展的重要推力。任何查看这些领域相关论文的人都会受到一些奇怪术语的困扰,如核 PCA、岭回归、套索回归、支持向量机(SVM)、拉格朗日乘数、KKT 条件等。这些奇怪的术语背后涉及的是大量有关最优化理论的「经典」线性代数知识。那么问题来了:要想理解并用好机器学习、计算机视觉等领域的工具,你就需要打好线性代数和最优化理论的知识基础。而且,你还需要学一些概率和统计方面的东西。
很多有关机器学习的书籍都在试图解决上述问题。如果你不了解拉格朗日对偶框架,那又从何理解领回归问题的对偶变量呢?同样地,如果你没有深刻理解拉格朗日框架,又怎么可能探讨 SVM 的对偶公式呢?
对这些问题避而不谈是一种省事的解决方式。如果你只是上述方法技巧的使用者,「食谱」类方法或许就足够了。但是,这种方法并不适用于那些真正想要从事研究并希望做出重大贡献的人。所以,作者认为,你还必须具有扎实的线性代数、最优化理论等方面的背景知识。
这会是一个问题,因为你需要投入大量的时间和精力来学习这些领域的知识,但作者相信坚持不懈的努力总会收到丰厚的回报。
这本书讲了什么?
这本书的主要目的是介绍线性代数和最优化理论的基础知识以及这些知识在机器学习、机器人学、计算机视觉等领域的应用。
该书包含以下 10 卷:
1. 线性代数2. 仿射几何和射影几何3. 双线性形式的几何4. 几何:PID、UFD、诺特环、张量、PID 上的模块、规范形5. 拓扑和微分6. 最优化理论基础7. 线性优化8. 非线性优化9. 在机器学习中的应用10. 附录
从大纲来看,除了基础内容外,该书还探讨了一些对于应用非常重要的知识。
对于大部分内容,该书都提供了完整的证明,一是为了使该书自成体系,二是因为只有证明出来才能对内容有深刻的理解。但作者建议在第一次阅读时跳过那些证明过程,尤其是比较长或比较复杂的证明。
以下是本书的部分目录:

作者

本书作者 Jean Gallier 今年 70 岁,来自宾夕法尼亚大学。目前的研究方向主要为计算机图形学、计算机视觉、机器人技术等。他还曾发表过谐波分析与表征理论、线性代数和优化器的机器学习应用、关于微分几何和李氏群的说明等书籍。

————

编辑 ∑Gemini

来源:算法爱好者

☞泰勒定理的奇闻轶事

☞丘成桐:漫谈微分几何

☞Leibniz 如何想出微积分?(一)

☞线性相关和秩的物理意义

☞数学史上你认为最丑陋的公式是什么?

☞陶哲轩谈什么是好的数学

☞田渊栋:数学的用处(下篇)

☞你绝对没想过原来数学家这么流氓,一言不合就进行暴力证明

☞世界上最牛的五篇博士论文

☞数学中有哪些巧合让人眼前一亮?

☞算法立功!清华毕业教授美国被抢车,警察无能为力自己用“贪心算法”找回

☞学术史上的奇文:怎样用数学抓狮子

☞台大教授的反思:最难的一课 我们却没教给学生

☞麻省理工学院(MIT)研究生学习指导—— 怎样做研究生

☞分享 数学,常识和运气 ——投资大师詹姆斯·西蒙斯2010年在MIT的讲座

算法数学之美微信公众号欢迎赐稿

稿件涉及数学、物理、算法、计算机、编程等相关领域,经采用我们将奉上稿酬。

投稿邮箱:math_alg@163.com

1900 页数学基础:面向 CS 的线性代数、拓扑、微积分和最优化相关推荐

  1. 1900页数学基础:面向CS的线性代数、拓扑、微积分和最优化

    机器之心整理 机器之心编辑部 学习计算机科学总共需要多少数学基础?大概 1900 页吧.宾夕法尼亚大学计算机和信息科学系教授 Jean Gallier 的开源书籍<Algebra, Topolo ...

  2. 这本1900页的机器学习数学全书火了!完整版开放下载

    要搞机器学习离不开数学,本文分享一本来自宾夕法尼亚大学计算机系教授Jean Gallier主编的面向机器学习的"数学全书"开源书籍,内容涵盖线性代数.概率统计.拓扑学.微积分.最优 ...

  3. 1900页Python系列PPT分享八:异常处理结构与程序调试、测试(70页)

    总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2018年2月第6次印刷).<Python程序设计(第2版)>(2018年1 ...

  4. 1900页Python系列PPT分享七:文件操作(132页)

    总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2017年7月第5次印刷).<Python程序设计(第2版)>(2018年1 ...

  5. 1900页Python系列PPT分享六:面向对象程序设计(86页)

    总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2017年7月第5次印刷).<Python程序设计(第2版)>(2017年9 ...

  6. 1900页Python系列PPT分享五:函数设计与应用(134页)

    总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2017年7月第5次印刷).<Python程序设计(第2版)>(2017年9 ...

  7. 董付国老师1900页系列Python教学PPT阅读地址汇总

    本文是汇总帖,后面发了会陆续更新到这里来. 1900页Python系列PPT分享一:基础知识(106页) 1900页Python系列PPT分享二:Python序列(列表.元组.字典.集合)(154页) ...

  8. 1900页Python系列PPT分享四:字符串与正则表达式(109页)

    总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2017年7月第5次印刷).<Python程序设计(第2版)>(2017年9 ...

  9. 1900页Python系列PPT分享三:选择与循环结构语法及案例(96页)

    总体说明:本套PPT共约1900页,包含董付国老师Python系列图书<Python程序设计基础>(2017年7月第5次印刷).<Python程序设计(第2版)>(2017年9 ...

最新文章

  1. Linux修改主机名的两种方法
  2. 手把手教你写C语言的动态库的开发
  3. java 删除文件失败_java 文件删除失败(被进程占用)
  4. 棋盘代码_【案例】 绘制国际象棋棋盘?(turtle 登场)
  5. linux下安装nvm进行node的版本的快速切换
  6. 数学--数论--逆元(拓展欧几里得)模板
  7. VS, VS Code, VS Online, VS xxx, 你都分清了吗?
  8. 再谈SQL Server中日志的的作用
  9. fastjson反序列化漏洞_【漏洞复现】fastjson反序列化漏洞
  10. CountDownLatch和CyclicBarrier 举例详解
  11. 小白新建C语言程序(VS2019创建C语言编程环境方法详解)
  12. javascript之函数的定义传参
  13. 第一视角:深度学习框架这几年
  14. 标准正态分布函数表的程序实现
  15. 教你解包华为U8825D官方固件UPDATE.APP --以B956为例
  16. 面经1.小米前端实习
  17. win10远程登录Ubuntu14.04图形化界面
  18. 使用PCL库将KITTI数据集可视化
  19. 服务器硬盘整体ghost,GHOST备份操作系统与实现整块硬盘对拷数据还是很简单的...
  20. 阶乘计算(1~10)(C#)

热门文章

  1. linux常用架构,Linux常用到的一些命令-Go语言中文社区
  2. java 窗口线程_Java 窗体与线程问题
  3. zlib数据格式及解压缩实现
  4. web处理高并发措施
  5. 我的原创,思考写作时间在1小时以上,希望读者有真正收获的博客
  6. 红帽Linux7怎么修改网卡名称,新安装的Centos 7系统怎么将网卡名称改为eth0?
  7. 利用melendy插入参考文献_四苯基卟啉在改性磷酸锆层间的插入及荧光增强
  8. android studio占内存大小,极大精简android studio在C盘的内存
  9. python测试框架untest怎么循环执行_unittest如何在循环遍历一条用例时生成多个测试结果...
  10. php中arraymultisort,php 数组函数array_multisort()用法