ai-resources
ai-resources 是一份精心整理的人工智能学习资源清单,涵盖机器学习、统计推断、深度学习及强化学习等核心领域。它主要解决了初学者在面对庞大且复杂的 AI 知识体系时,难以筛选高质量学习资料以及缺乏系统性学习路径的痛点。
这份资源特别适合没有计算机科学背景但希望深入理解 AI 算法与数学原理的开发者、创意编码艺术家及自学者。与其他仅罗列链接的清单不同,ai-resources 的独特之处在于所有收录内容均经过作者亲自研习与验证,并附带了宝贵的个人心得与建议。它强调“夯实基础”的重要性,不仅提供进阶教程,还包含了线性代数、概率统计和微积分等必要的数学前置课程,帮助学习者克服陡峭的学习曲线。
此外,该清单鼓励通过不同视角的重复学习来建立直觉,特别推荐了面向创意社区的资源(如 ml4a),旨在引导用户从零基础逐步成长至能够独立阅读和理解前沿学术论文的水平。无论你是想透彻掌握背后的数学逻辑,还是仅需概念层面的认知,都能从中找到适合的学习阶段指引。
使用场景
一位非计算机科班出身的创意开发者,试图从零开始掌握深度学习算法以完成艺术生成项目,却因数学基础薄弱而陷入学习困境。
没有 ai-resources 时
- 资源过载且良莠不齐:面对网络上爆炸式增长的教程、视频和文章,无法分辨哪些适合零基础入门,浪费大量时间试错。
- 知识断层严重:直接啃读深度学习论文时,因缺乏线性代数、概率统计等前置数学知识,导致理解过程如“攀爬垂直冰壁”般艰难且令人沮丧。
- 学习路径混乱:没有经过验证的进阶路线,只能在各个碎片化知识点间盲目跳跃,难以构建从基础统计到高级深度学习的完整知识体系。
- 单一视角局限:仅依赖单一来源的解释,遇到晦涩概念时缺乏不同角度的解读,难以形成直观的直觉理解。
使用 ai-resources 后
- 精选路径指引:依托作者亲身完成并评论过的资源列表,直接锁定适合非科班背景的高质量材料,避免了在低质内容中大海捞针。
- 夯实数学地基:按照推荐顺序先系统补习线性代数与微积分等核心数学课,为后续理解复杂的机器学习算法扫清了根本障碍。
- 循序渐进进阶:遵循从传统机器学习/统计推断到深度学习的自然演进路径,稳固基础后再接触前沿论文,学习曲线变得平滑可控。
- 多维视角解惑:利用列表中重叠的课程资源,通过不同讲师对同一概念的多样化阐释,迅速突破理解瓶颈,获得深刻的直觉洞察。
ai-resources 通过提供一条经实战验证的、重视数学根基的个性化学习路径,帮助非科班开发者将原本陡峭危险的学习过程转化为可执行的稳步进阶之旅。
运行环境要求
未说明
未说明

快速开始
此列表可在 GitHub 和 Medium 上找到:
https://github.com/memo/ai-resources
https://medium.com/@memoakten/selection-of-resources-to-learn-artificial-intelligence-machine-learning-statistical-inference-23bc56ba655
更新于 2017 年 4 月:自从我发布这份资源清单以来,已经近一年了。这一年里,关于人工智能、机器学习、统计推断、深度学习和强化学习等主题的文章、视频、书籍、教程等内容呈井喷式增长,甚至出现了许多类似的“资源列表”。因此,要保持这份清单的实时更新几乎是不可能的。不过,我想补充的一份资源是由 Gene Kogan 主导的 https://ml4a.github.io/(https://github.com/ml4a)。该资源特别面向艺术家和创意编程社区。
引言
这是一份非常不完整且带有主观色彩的资源精选,旨在帮助大家学习人工智能(AI)、机器学习(ML)、统计推断(SI)、深度学习(DL)和强化学习(RL)相关的算法与数学知识。本资源主要面向初学者(即没有计算机科学背景、对这些领域一无所知的人),目标是引导他们达到相当高级的水平(能够阅读并理解深度学习领域的论文)。这份清单并非详尽无遗,仅包含了我个人已完成的部分学习材料,并附上了简短的个人评注。同时,它也绝非所谓的“最佳”学习路径(如今大多数 MOOC 平台都提供了从基础统计学、线性代数到机器学习和深度学习的完整课程体系)。然而,这确实是我曾经走过的学习路径,某种程度上也是我对深度学习探索历程的一种记录(实际上,我在这些领域之间反复切换,可谓“疯狂”)。作为一名没有正式计算机科学背景但已多年从事编程工作的人,机器学习、统计推断、深度学习乃至计算机科学的语言、符号和概念对我来说完全陌生,学习曲线不仅陡峭,更像垂直、险峻且湿滑如冰的岩壁。
以下许多资源其实并不专门针对深度学习,而是涵盖更为全面的机器学习和统计推断内容。深度学习本质上是在传统技术基础上进行的改进,因此一旦你打下了坚实的机器学习和统计推断基础,再学习深度学习就会更加得心应手。如果你系统地观看下面的视频课程,包括那些较为高级的内容,就能直接从相关学术论文中了解当前深度学习领域的最新进展。
若想深入理解人工智能、机器学习、统计推断、深度学习和强化学习的核心原理,并掌握其中的数学知识,你需要扎实的线性代数(向量与矩阵)、概率论与统计学(其复杂程度远超想象)以及微积分基础(主要是多元微分学,往往比表面看起来简单)。为此,我也在清单中加入了相应的课程。切勿投机取巧。请务必花时间从头开始尽可能多地学习这些内容,因为牢固的基础至关重要。我常常会先打开一节课程,听上五分钟就发现自己完全不懂,于是又返回去观看另一节更基础的课程;再听五分钟还是不明白,便继续往前找更基础的课程……如此反复,有时甚至要倒退十节课程。这样的过程有时令人沮丧,仿佛徒手攀登垂直、险峻且湿滑如冰的岩壁,却缺乏合适的工具。
当然,如果你只是想“使用”这些算法,而不必深入理解其背后的数学原理,或者仅仅希望从高层次的概念层面把握它们的工作机制,那也完全没问题。希望我下面的评注能帮助你厘清各部分内容。
小贴士
以下列出的课程内容存在大量重叠,但这恰恰是一件好事。不要因为已经在其他地方看过或读过相关内容而跳过某些部分。当你试图学习并真正理解一些可能相当复杂的事物时,让不同的人以不同的方式为你讲解同一主题,往往能带来独特的见解和直觉,这是单纯依靠单一来源难以获得的。
如果你对某些章节已经非常熟悉,可以尝试以 1.25 倍、1.5 倍甚至 2.0 倍的速度快速浏览,以便大致了解内容;一旦遇到新知识点或对已有内容的新视角时,再将播放速度调回正常速率。
视频讲座与研讨会
这些是一次性的视频讲座(约一小时)或研讨会(约两到三小时),旨在提供概览、直观理解或进阶速成课程。虽然你可能无法深入了解其内部运作机制,但至少能够明白这些技术是什么、有何意义以及如何应用。通常,在深入学习更系统的 MOOC 课程之前,先观看这类入门级内容会很有帮助。
入门概述
Yann LeCun 和 Yohua Bengio 在 NIPS 2015 上的深度学习演讲
http://research.microsoft.com/apps/video/?id=259574
由深度学习领域的两位泰斗 Yoshua Bengio 和 Yann LeCun 主讲,对深度学习的定义、基本原理(高度概括)以及最新进展进行了相当前沿的综述。其中也不乏对其各自研究团队的宣传成分。整体内容并不十分技术化,也不需要太多数学基础。不过,部分幻灯片会涉及一些技术细节,若你熟悉常用的线性代数、微积分等知识,则能从中获得更多收获。对于完全不了解 AI、ML 或 DL 的人来说,这门课程将非常有帮助,能够让你初步认识深度学习究竟是什么;而对于已经掌握机器学习但尚未接触深度学习的人来说,同样具有较高的参考价值。
Yann LeCun 2014 年的《深度学习的不合理有效性》演讲
http://videolectures.net/sahd2014_lecun_deep_learning/
来自深度卷积神经网络之父 Yann LeCun 的著名演讲。简要介绍了深度学习及其强大之处,随后重点讨论了卷积神经网络。内容与上述演讲颇为相似,若已观看前者,可考虑略过此篇。
Juergen Schmidhuber 在 NYC ML Meetup 2014 上的“深度学习文艺复兴”演讲
https://www.youtube.com/watch?v=6bOMf9zr7N8
由另一位深度学习领域的泰斗 Juergen Schmidhuber 带来的另类历史回顾。他详细梳理了深度学习算法的发展脉络及其起源,随后聚焦于循环神经网络(RNN),而他的实验室正是 RNN 领域诸多创新的发源地(包括 LSTM)。演讲中也包含对自己研究团队的宣传成分。相较于前两篇,本视频内容更具深度,或许也更为有趣。
Michael Littman 在 RLDM 2015 上的“计算强化学习基础”演讲
http://videolectures.net/rldm2015_littman_computational_reinforcement
这是一场关于强化学习的概览性入门介绍。具备马尔可夫决策过程等相关经验会更有帮助,但并非必需。Michael Littman 是强化学习领域的老派大师之一,演讲风格风趣幽默。
高级速成课程
Ruslan Salakhutdinov 在 KDD 2014 上讲授的深度学习
http://videolectures.net/kdd2014_salakhutdinov_deep_learning
深度学习概述,包括 DBN、RBM、PGM 等,这些方法如今已不如以前流行。内容非常理论化、密集且数学性强。对于初学者来说可能用处不大。Salakhutdinov 是深度学习领域的另一位重要人物。
Rich Sutton 在 NIPS 2015 上讲授的带有函数逼近的强化学习导论
http://research.microsoft.com/apps/video/?id=259577
另一门强化学习入门课程,但更加技术性和理论性。Rich Sutton 是强化学习领域的老派宗师。
David Silver 在 RLDM 2015 上讲授的深度强化学习
http://videolectures.net/rldm2015_silver_reinforcement_learning
关于 DeepMind 在 Atari 游戏和 AlphaGo 中使用的深度强化学习的高级入门课程。内容相当技术性,需要对强化学习、TD 学习和 Q-Learning 等有较好的理解(参见下面的强化学习课程)。David Silver 是新一代强化学习的领军人物,也是 DeepMind 的 AlphaGo(使用深度强化学习)中的超级明星。
Ian Murray 在 NIPS 2015 上讲授的蒙特卡洛推理方法
http://research.microsoft.com/apps/video/?id=259575
对采样/基于蒙特卡洛的方法的良好介绍和概述。虽然对许多深度学习任务并非必需,但作为辅助知识还是很有帮助的。
Josh Tenenbaum 在 AAAI 2012 上讲授的“如何发展心智:统计、结构与抽象”
http://videolectures.net/aaai2012_tenenbaum_grow_mind/
与当前的深度学习完全无关,采用了非常不同的方法:贝叶斯层次模型。目前在实际应用中尚未取得太大成功,但我仍然很欣赏这种方法,因为它所关注的问题和研究方向比深度学习更贴近现实世界(例如一次学习和迁移学习,尽管 DeepMind 现在也在用深度学习研究这些问题)。
Josh Tenenbaum 在 NIPS 2013 上讲授的“用于一次学习的两种架构”
http://videolectures.net/nipsworkshops2013_tenenbaum_learning
与上述内容类似,但稍为新近一些。
Nathaniel Daw 在 NIPS 2015 上讲授的“大脑与行为中的最优与次优控制”
http://videolectures.net/rldm2015_daw_brain_and_behavior
与深度学习关系不大,从强化学习的计算视角出发,结合心理学和神经科学的研究,探讨人类的学习过程。需要对强化学习有较好的理解。
更多单次视频讲座请访问:
http://videolectures.net/Top/Computer_Science/Artificial_Intelligence
http://videolectures.net/Top/Computer_Science/Machine_Learning/
大规模在线开放课程(MOOC)
这些是包含大量视频讲座的长期集中课程。我大致按照推荐观看的顺序排列。
基础 / 数学
如果你想理解机器学习/统计学/深度学习的数学原理,那么这些课程至关重要。如果你只想了解概念而不想深入数学细节,那么可以跳过这些基础课程直接进入机器学习入门课程。不过,这里也定义了一些基本术语(先验、条件概率、期望值、导数、向量、矩阵等),因此至少要明白这些术语的含义。
与其现在把所有课程都看完,不如先看一些基础课程来掌握基本概念,等到遇到相关问题时再回过头来看更高级的内容。比如,你很可能永远都不会接触到海森矩阵,也不需要计算特征向量或手算矩阵的行列式。只有在真正需要的时候,再回来观看相关的课程即可。如果时间紧张,也可以跳过证明部分,但它们确实有助于更好地理解内容。不要急于求成。
Khan 是一位超级英雄,他能让你理解那些你原本以为自己不可能懂的东西。
Khan Academy - 概率与统计
https://www.khanacademy.org/math/probability
机器学习基本上是应用统计学与计算机科学相结合的一个分支学科。因此,对概率与统计的基本理解至关重要。不必观看所有课程,但至少要先看前几节以理解基本概念。需要注意的是,即使是一些对机器学习来说可能并不必要的高级内容,也能帮助你更好地理解基础知识。
Khan Academy - 线性代数
https://www.khanacademy.org/math/linear-algebra
同样,你可能不需要全部看完,但至少要掌握向量、矩阵及其运算、点积与叉积、矩阵乘法等内容,这是理解机器学习数学基础所必需的。基底、特征值/特征向量对于深入理解某些领域很重要,但至少目前可以暂时不学。
Khan Academy - 微积分
https://www.khanacademy.org/math/calculus-home
预科微积分——三角函数、向量、矩阵等内容是必不可少的。如果你已经看过线性代数课程,这部分可能就不必再学了。复数、数列与级数等知识也很有用,在一些高级领域会用到,但对于基础学习来说并非必需。
微分学——如果你想理解机器学习的数学原理,微分学是必不可少的(尤其是链式法则)。如果你比较着急,可以跳过证明和应用部分,但极值、凹凸性、拐点以及优化等内容还是很重要的。
积分学——我认为积分学对深度学习并不是至关重要的(你看,我在这里玩了个文字游戏 :)。我在一些证明中见过积分,但它更像是机器学习中的一个细分领域,初学者可以暂时跳过。至少先看看前几节,了解一下积分是什么。函数逼近、级数等内容会在更高级的领域出现,但目前可以先跳过。
多元微积分——如果你真的想理解深度学习的数学原理,那么多元微积分是必不可少的,尤其是多元函数的(偏)导数。海森矩阵、雅可比矩阵、拉普拉斯算子等在高级领域中经常出现,但至少目前你可以先不学,等到遇到相关问题时再回过头来学习。也就是说,你可以暂时跳过这些内容,等以后需要用到时再继续学习。
机器学习 / 深度学习
短期/入门课程
如果你只是想玩一玩、调一调现有的机器学习/深度学习代码和算法,这些课程(再加上一些教程)可能就足够了。
吴恩达的机器学习课程 @ Coursera
https://www.coursera.org/learn/machine-learning
这是一门非常棒的机器学习入门课程,为后续学习打下坚实基础。课程内容从线性回归、逻辑回归到人工神经网络,涵盖了机器学习的基础知识。它以较少的数学推导深入浅出地讲解各种概念和技术。要求具备线性代数和微积分的基础知识。需要注意的是,该课程并未涉及当前深度学习的具体内容(如卷积神经网络、循环神经网络等),因此主要作为更高级学习的基础。吴恩达曾是Google Brain的联合创始人,现任百度研究院首席科学家,他擅长用直观的方式解释复杂的概念。
谷歌的深度学习课程 @ Udacity
https://www.udacity.com/course/deep-learning--ud730
这是一门针对已有机器学习基础的学习者的简短深度学习入门课程。我个人觉得整个课程不到2小时就能看完。它几乎就是对TensorFlow官方教程(https://www.tensorflow.org/versions/master/tutorials/index.html)的简单梳理,提供了一些基本深度学习技术的高层次概述。课程假设你已经熟悉机器学习及相关概念,因此至少需要掌握吴恩达Coursera课程的内容或同等水平的知识。不要指望学完这门课就能成为深度学习高手,但至少你会知道什么是CNN或RNN。如果你想学习下面提到的更高级的机器学习课程,建议先完成这门深度学习课程。
长期/进阶课程
这些课程能帮助你深入理解背后的原理,甚至读懂一些深度学习论文(当然,只能说“一些”,因为很多论文确实过于理论化且晦涩难懂)。
伯克利大学Pieter Abbeel的CS188 人工智能导论
(部分视频存在音频问题,因此我整理了不同年份的多个播放列表,根据音频情况从中挑选观看)。
https://www.youtube.com/channel/UCDZUttQj8ytfASQIcvsLYgg(2015年春季)
https://www.youtube.com/channel/UCB4_W1V-KfwpTLxH9jG1_iA(2014年春季)
https://www.youtube.com/channel/UCshmLD2MsyqAKBx8ctivb5Q(2013年秋季)
https://www.youtube.com/user/CS188Spring2013(2013年春季)
这门课程是对人工智能整体的绝佳入门介绍,并非专门针对机器学习。它涵盖了人工智能和机器学习中的多个基础领域,范围非常广泛。如果你只对运行卷积神经网络来实现DeepDream之类的效果感兴趣,那么这门课程中约90%的内容对你来说可能并不相关。课程前半部分主要围绕基于智能体的人工智能展开,从约束满足问题、决策树、马尔可夫决策过程等开始,在这一点上与其他课程相比显得较为独特。随后课程会进入各种经典的机器学习主题。由于是入门课程,不需要任何人工智能或机器学习的基础知识,但会涉及一定的数学内容,因此需要对概率论、线性代数、微积分等有较好的理解。该课程不涉及深度学习,但对于想要深入研究基于智能体的人工智能(如强化学习和蒙特卡洛树搜索)的人来说,是一个非常好的基础。
UBC大学Nando de Freitas的CS540 机器学习课程 2013年
https://www.youtube.com/playlist?list=PLE6Wd9FR--EdyJ5lbFl8UuGjecvVw66F6
这门课程从基础讲起,一直涵盖到神经网络,内容全面,涉及经典机器学习和符号人工智能等多个领域。无需机器学习的基础知识,可以视为一门综合性的入门课程。与吴恩达的Coursera课程相比,这门课程更加深入细致,数学推导也更为繁重。需要注意的是,这是一门研究生级别的计算机科学课程,因此难度较高。虽然课程覆盖面也很广,但不如CS188那样宽泛,而是更深入地探讨某些特定领域。课程对深度学习仅有简要介绍,但在机器学习和符号人工智能方面提供了非常扎实的基础。Nando本人非常出色,同时也是牛津大学的教授,并在DeepMind工作。
UBC大学Nando de Freitas的CS340 机器学习课程 2012年
https://www.youtube.com/playlist?list=PLE6Wd9FR--Ecf_5nCbnSQMHqORpiChfJf
与上述CS540类似,但这是本科版本。我本人尚未观看过该课程,因此不清楚它与CS540有何区别。不过可以推测,其难度可能会稍低一些。
牛津大学Nando de Freitas的深度学习课程 2015年
https://www.youtube.com/playlist?list=PLE6Wd9FR--EfW8dtjAuPoTuPcqmOV53Fu
这门课程与CS540相似,但更专注于深度学习。它对统计学和多元微积分的要求更高,同时也需要具备一定的机器学习和符号人工智能的基础知识(吴恩达的Coursera课程或许足够,但我更推荐Nando的CS540或Pieter的CS188)。此外,信息论方面的知识也会有所帮助。课程还邀请了多位重量级嘉宾,例如Alex Graves关于生成式循环神经网络的讲座,以及Karol Gregor关于变分自编码器的讲解。
斯坦福大学Andrew Ng的CS229 机器学习课程 2008年
https://www.youtube.com/view_play_list?p=A89DCFA6ADACE599
这又是一门非常全面的机器学习和符号人工智能入门课程。与他的Coursera课程完全不同,本课程更具理论性,涵盖的主题更多,内容也更加深入。它有点像Pieter Abbeel的CS188人工智能课程和Nando de Freitas的CS540机器学习课程的结合版。在这门课程中,某些部分讲解得更详细,而另一些则相对简略(例如,据我所知,它比Abbeel的CS188更深入地探讨了马尔可夫决策过程和强化学习,但没有涉及贝叶斯网络)。每门课程都提供了略有不同的视角和见解。同样,本课程也不涉及深度学习,但它为机器学习和符号人工智能提供了一个非常扎实的综合基础。
Coursera上的Geoffrey Hinton的机器学习神经网络课程
https://www.coursera.org/course/neuralnets
这门课程深入探讨了深度学习的某些领域,难度较高。Hinton是深度学习领域的泰斗之一,课程中包含许多有价值的洞见,但我个人感觉内容有些零散,不太喜欢。也就是说,它并不适合作为一条清晰的线性学习路径,而是需要学习者具备一定的机器学习、符号人工智能和深度学习的基础知识。如果你先通过其他课程(如上面提到的视频)掌握了这些基础知识,再回过头来学习这门课程,就能获得很多启发。否则直接开始学习,很可能会感到迷茫。
Coursera上的计算神经科学课程,由Rajesh Rao和Adrienne Fairhall主讲
https://www.coursera.org/course/compneuro
这门课程与深度学习并无直接关联,但依然非常引人入胜。课程一开始比较轻松有趣,但后半部分逐渐变得非常艰深,尤其是Adrienne负责的部分。Rajesh讲解节奏较慢,会反复强调重点,而Adrienne似乎更习惯于面对计算神经科学方向的研究生,讲课速度很快。你可能会发现自己每看到一张幻灯片都要暂停一下,努力消化其中的内容。学习这门课程需要对常规的数学工具(如线性代数、微积分、概率论和统计分析,包括主成分分析等)有较好的理解。
我尚未完成,但已开始或略读过
Rebecca Fiebrink 在 Kadenze 上开设的“面向音乐家与艺术家的机器学习”课程
https://www.kadenze.com/courses/machine-learning-for-musicians-and-artists/info
面向艺术家和音乐家。我还没看过这门课,但了解 Rebecca 及其工作,想必会非常出色。
乔治亚理工学院(Charles Isbell 和 Michael Littman)在 Udacity 上开设的机器学习课程
https://www.udacity.com/course/machine-learning-supervised-learning--ud675
https://www.udacity.com/course/machine-learning-unsupervised-learning--ud741
https://www.udacity.com/course/machine-learning-reinforcement-learning--ud820
看起来是对主要主题的基础性介绍。内容不算太难。可能需要一些基础的线性代数等知识,但不会过于复杂。Charles Isbell 和 Michael Littman 都是非常优秀的讲师。
Michael Littman、Chris Pryby 和 Charles Isbell 在 Udacity 上开设的强化学习课程
https://www.udacity.com/course/reinforcement-learning--ud600
我大概学了一半,后来就被其他事情分心了。与上述课程类似,但更专注于 MDP 和强化学习,内容相当深入。我很想把它学完,不过目前还有其他更重要的事情。
David Silver 于 2015 年在 UCL 开设的强化学习课程
http://www0.cs.ucl.ac.uk/staff/d.silver/web/Teaching.html
https://www.youtube.com/playlist?list=PL5X3mDkKaJrL42i_jhE4N-p6E2Ol62Ofa
介绍 MDP 和强化学习。相比前面的课程,内容显得更轻松简短。但对于大多数强化学习的入门探索来说,可能已经足够了。David Silver 是 DeepMind 的 AlphaGo 团队中的超级明星,而 AlphaGo 正是基于深度强化学习开发的。
斯坦福大学 Daphne Koller 在 Coursera 上开设的概率图模型课程
https://www.coursera.org/course/pgm
虽然与深度学习没有直接关系,但涉及概率方法、贝叶斯网络等内容(即与 Josh Tenenbaum 的演讲主题相关)。我曾经开始学习这门课,但后来因为忙于其他事情而中断了。课程开头很有趣,但越往后就越艰深。整体内容非常全面,甚至有些过于庞杂,似乎涵盖了从过去到现在的各种相关主题。我也很想把它学完,只是现在有更优先的事情要处理。
教程 / 文章 / 博客
如今关于机器学习和深度学习的文章与教程多不胜数,尤其是针对特定主题的教程更是层出不穷,无法一一列举。因此,下面列出几篇涵盖广泛主题、以基础知识为主的优质资源。这些资源大多需要一定的机器学习、深度学习以及线性代数、微积分等方面的基础知识。
博客与非结构化教程
这些网站提供了关于各种不同主题的非结构化教程。
http://colah.github.io
Chris Olah 的博客。其中包含大量关于复杂主题和概念的深刻见解。
http://karpathy.github.io
Andrei Karpathy 的博客。与前者类似。
http://blog.otoro.net/
@hardmaru 的博客。对概念有很好的解释,并且还提供了示例代码。
http://fastml.com/
有许多实用的示例。
http://blog.keras.io
关于使用 Keras 实现的深度学习教程。Keras 是一个基于 Python 的深度学习框架,构建在 TensorFlow 和 Theano 之上。
线性教程
这些是按照从头到尾顺序排列的教程。
https://www.tensorflow.org/versions/master/tutorials/index.html
关于使用 Google 的 Python 深度学习框架 TensorFlow 实现的深度学习教程。需要理解机器学习基础、线性代数、微积分等知识。
http://deeplearning.net/tutorial/contents.html
关于使用 Python 深度学习框架 Theano 实现的深度学习教程。同样需要具备机器学习基础、线性代数、微积分等知识。
书籍
Ian Goodfellow、Yoshua Bengio 和 Aaron Courville 合著的《深度学习》
http://www.deeplearningbook.org
免费在线书籍。内容非常新近,也简要介绍了所需的数学知识。
David Mackay 著的《信息论、推断与学习算法》
http://www.inference.phy.cam.ac.uk/itprnn/book.html
免费在线书籍。出版时间较早(初版 1997 年,现行版 2005 年),但属于经典教材。内容偏重统计与理论,较为艰深,需要较好的多元微积分和线性代数基础。
Chris Bishop 葳的《模式识别与机器学习》
http://research.microsoft.com/en-us/um/people/cmbishop/prml
与上一本类似(不过并非在线或免费)。这是一本经典的理论教材,内容非常抽象。
Richard S. Sutton 和 Andrew G. Barto 合著的《强化学习:导论》
https://webdocs.cs.ualberta.ca/~sutton/book/the-book.html
一本关于强化学习的在线书籍。
Claude E. Shannon 于 1948/1949 年撰写的《通信的数学理论》
http://ieeexplore.ieee.org/xpl/articleDetails.jsp?reload=true&arnumber=6773024
http://www.amazon.com/Mathematical-Theory-Communication-Claude-Shannon/dp/0252725484
这是一部开创现代信息论的经典著作。我意识到推荐这本书可能会引发一系列连锁反应——既然提到了这篇论文,那接下来是不是还要推荐其他相关的文献呢?然而,我发现这本书作为理解机器学习和信息科学概念的基础和补充视角,具有极高的价值,因此还是忍不住要推荐它。我特别推荐它的书籍版本,因为它附带了 Warren Weaver 的一篇额外文章,用通俗易懂的语言解释了相关概念,然后再由 Shannon 用数学语言进行阐述。书中的数学并不算特别复杂,主要需要掌握基本的概率论和贝叶斯法则。
其他推荐
以下是一些我尚未阅读或观看,但被他人高度推荐的资源。
Gilbert Strang 和 MIT 提供的线性代数视频讲座
http://ocw.mit.edu/courses/mathematics/18-06-linear-algebra-spring-2010/video-lectures/
Kevin Patrick Murphy 著的《机器学习:概率视角》
https://www.cs.ubc.ca/~murphyk/MLbook
Terry Taewoong Um 整理的“被引用最多的深度学习论文”列表
https://github.com/terryum/awesome-deep-learning-papers
“这是一份精心挑选的、自 2010 年以来被引用次数最多的深度学习论文清单。我认为,有一些经典的深度学习论文无论其具体应用如何,都值得阅读。与其提供海量的论文,不如精选出那些在某些领域堪称必读的经典深度学习论文。”
Tarleton Gillespie 和 Nick Seaver 编写的“批判性算法研究阅读清单”
https://socialmediacollective.org/reading-lists/critical-algorithm-studies
虽然与数学或算法本身没有直接关系,但仍然非常重要。
“这份清单旨在收集并分类日益增长的关于算法的社会性议题的批判性文献。所收录的作品涵盖了社会学、人类学、科学技术研究、地理学、传播学、媒体研究以及法律研究等多个领域。”
编程社区精选的人工智能学习资源
https://hackr.io/tutorials/learn-artificial-intelligence-ai
“通过编程社区提交并投票选出的最佳在线人工智能课程和教程,学习人工智能。”
注释
这是一份我个人观看或阅读过的资源列表,并附上了我的简短感想。不过,对我来说,接受拉取请求并不太合理(除非是拼写错误)。但是……请大家通过议题等方式向我推荐其他资源。我还添加了一个“其他推荐”章节,里面收录了由他人高度推荐的资源。
相似工具推荐
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
funNLP
funNLP 是一个专为中文自然语言处理(NLP)打造的超级资源库,被誉为"NLP 民工的乐园”。它并非单一的软件工具,而是一个汇集了海量开源项目、数据集、预训练模型和实用代码的综合性平台。 面对中文 NLP 领域资源分散、入门门槛高以及特定场景数据匮乏的痛点,funNLP 提供了“一站式”解决方案。这里不仅涵盖了分词、命名实体识别、情感分析、文本摘要等基础任务的标准工具,还独特地收录了丰富的垂直领域资源,如法律、医疗、金融行业的专用词库与数据集,甚至包含古诗词生成、歌词创作等趣味应用。其核心亮点在于极高的全面性与实用性,从基础的字典词典到前沿的 BERT、GPT-2 模型代码,再到高质量的标注数据和竞赛方案,应有尽有。 无论是刚刚踏入 NLP 领域的学生、需要快速验证想法的算法工程师,还是从事人工智能研究的学者,都能在这里找到急需的“武器弹药”。对于开发者而言,它能大幅减少寻找数据和复现模型的时间;对于研究者,它提供了丰富的基准测试资源和前沿技术参考。funNLP 以开放共享的精神,极大地降低了中文自然语言处理的开发与研究成本,是中文 AI 社区不可或缺的宝藏仓库。
cs-video-courses
cs-video-courses 是一个精心整理的计算机科学视频课程清单,旨在为自学者提供系统化的学习路径。它汇集了全球知名高校(如加州大学伯克利分校、新南威尔士大学等)的完整课程录像,涵盖从编程基础、数据结构与算法,到操作系统、分布式系统、数据库等核心领域,并深入延伸至人工智能、机器学习、量子计算及区块链等前沿方向。 面对网络上零散且质量参差不齐的教学资源,cs-video-courses 解决了学习者难以找到成体系、高难度大学级别课程的痛点。该项目严格筛选内容,仅收录真正的大学层级课程,排除了碎片化的简短教程或商业广告,确保用户能接触到严谨的学术内容。 这份清单特别适合希望夯实计算机基础的开发者、需要补充特定领域知识的研究人员,以及渴望像在校生一样系统学习计算机科学的自学者。其独特的技术亮点在于分类极其详尽,不仅包含传统的软件工程与网络安全,还细分了生成式 AI、大语言模型、计算生物学等新兴学科,并直接链接至官方视频播放列表,让用户能一站式获取高质量的教育资源,免费享受世界顶尖大学的课堂体验。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。
PaddleOCR
PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来,转换成计算机可读取的结构化数据,让机器真正“看懂”图文内容。 面对海量纸质或电子文档,PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域,它扮演着连接图像与大型语言模型(LLM)的桥梁角色,能将视觉信息直接转化为文本输入,助力智能问答、文档分析等应用场景落地。 PaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显:不仅支持全球 100 多种语言的识别,还能在 Windows、Linux、macOS 等多个系统上运行,并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目,PaddleOCR 既能满足快速集成的需求,也能支撑前沿的视觉语言研究,是处理文字识别任务的理想选择。
awesome-machine-learning
awesome-machine-learning 是一份精心整理的机器学习资源清单,汇集了全球优秀的机器学习框架、库和软件工具。面对机器学习领域技术迭代快、资源分散且难以甄选的痛点,这份清单按编程语言(如 Python、C++、Go 等)和应用场景(如计算机视觉、自然语言处理、深度学习等)进行了系统化分类,帮助使用者快速定位高质量项目。 它特别适合开发者、数据科学家及研究人员使用。无论是初学者寻找入门库,还是资深工程师对比不同语言的技术选型,都能从中获得极具价值的参考。此外,清单还延伸提供了免费书籍、在线课程、行业会议、技术博客及线下聚会等丰富资源,构建了从学习到实践的全链路支持体系。 其独特亮点在于严格的维护标准:明确标记已停止维护或长期未更新的项目,确保推荐内容的时效性与可靠性。作为机器学习领域的“导航图”,awesome-machine-learning 以开源协作的方式持续更新,旨在降低技术探索门槛,让每一位从业者都能高效地站在巨人的肩膀上创新。