学习资源推荐
主要整理了博主在自学过程中发现的优秀课程资源。
整体路线
具体的课程选择可以参考 UC Berkeley提供的课程路线
数学
Introduction to Probability, Statistics and Random Process,一个在线学习的概率论和数理统计的网站
Linear Algebra,MIT线性代数课程
all of statistics,CMU为机器学习专门打造的教程,涵盖了机器学习所需要的概率论和统计学知识
计算机科学
基础学习
Linux C编程一站式学习,介绍了c语言,汇编,linux系统,配合C语言程序设计:现代方法一起食用,效果更佳
CS61A: Structure and Interpretation of Computer Programs,经典课程SICP的python版本,可以作为python的入门课
The Architecture of Open Source Applications,共有4本书籍,代码全部开源,其中 500 Lines or Less 展示如何用500行代码实现有趣的功能
CSE341: Programming Languages,华盛顿大学函数式编程课程,可以学习SML,RACKET,Ruby
算法
6.006: Introduction to Algorithms,6.046j: Design and Analysis of Algorithms,6.851: Advanced Data Structures,MIT经典算法课程,教材选用的是算法导论,建议使用课程提供的lecture notes同步学习,老师讲的很好,最初就是靠这三门课入门的算法
Problem Solving with Algorithms and Data Structures using Python,用python实现各种数据结构和算法,网站提供完整的源代码
CS61B: Data Structures,UC Berkeley的算法课程,可以顺便学一下JAVA
计算机系统
15-213: Computer Systems: A Programmer’s Perspective,CMU经典计算机系统课程
ICS2018,南京大学计算机系统基础 课程实验,使用c语言写一个简单的操作系统,其中用到docker,tmux,git,vim
CS162: Operating Systems and Systems Programming,UC Berkeley 的操作系统课程,教材为Operating Systems: Principles and Practice,同时推荐Operating Systems: Three Easy Pieces
分布式系统
6.824: Distributed Systems,MIT分布式系统课程,配合中文资料一起学习
15-440: Distributed Systems,CMU分布式系统的入门课程
CS262a: Advanced Topics in Computer Systems UC Berkeley 分布式系统课程。
Distributed Programming in Java,Parallel, Concurrent, and Distributed Programming in Java,Coursera上Rice大学分布式的课程
机器学习
传统机器学习
An Introduction to Statistical Learning,机器学习入门教材,通俗易懂,同时能够学习使用R语言
机器学习基石,机器学习技法,台湾大学林轩田的机器学习课程,优秀的华语机器学习教程,理论扎实,可以配合李航的统计学习方法同步学习
Pattern Recognition and Machine Learning,The Elements of Statistical Learning,介绍机器学习理论的两本神书,对于数学基础要求较高
Speech and Language Processing,NLP的经典书籍,第三版正在撰写中
深度学习
Neural Networks and Deep Learning,讲神经网络和深度学习的在线书籍
李宏毅机器学习,李宏毅深度学习,台湾大学李宏毅的机器学习和深度学习课程,注重实际应用,使用Keras作为深度学习框架,可配合花书一起学习
深度学习论文合集,近年来高质量的深度学习论文合集