天天看点

机器学习以及计算机公开课汇总帖

系统自学计算机课程:

https://www.jianshu.com/p/8f2646a825e8

机器学习资料:

https://www.jianshu.com/p/dc9020fd03b1

计算机

计算机基础

  • 哈佛大学 CS50

    https://www.edx.org/course/cs50s-introduction-computer-science-harvardx-cs50x

    如果0基础想要学习计算机知识,非常推荐这门课,课程生动有趣。这门课面非常广,介绍了C语言,SQL,HTML,Python以及Javascript,如果时间有限,可以着重学习C语言部分。

  • Nand to Tetris

    https://www.coursera.org/learn/build-a-computer

    https://www.coursera.org/learn/nand2tetris2

    https://www.nand2tetris.org/

    非常非常好的课程,课程的内容是从与非门开始设计一个计算机,从底层开始介绍计算机的构成,覆盖了CPU,汇编,编译器,操作系统等内容,第一部分0基础即可,第二部分需要学习一门面向对象的语言基础。

    个人整理的资料(待完善):

    https://doraemonzzz.com/tags/From-Nand-to-Tetris/

语言类

C语言

  • 浙大程序设计入门——C语言

    https://www.icourse163.org/course/ZJU-199001

    课程比较简单,但是老师讲的非常好。

  • 浙大C语言程序设计进阶

    https://www.icourse163.org/course/ZJU-200001

    讲了一些进阶的内容,老师也讲的非常好,看完C语言应该算真正入门了。

C++

  • 北大程序设计与算法(一)C语言程序设计CAP

    https://www.icourse163.org/course/PKU-1001553023

    这门课更准确地说应该是C语言加STL,老师讲的很精炼,作业挺多的。

  • 北大程序设计与算法(三)C++面向对象程序设计

    https://www.icourse163.org/course/PKU-1002029030

    这门课主要讲C++面向对象编程,挺不错的。

  • 北大C++程序设计

    https://www.coursera.org/learn/cpp-chengxu-sheji?specialization=biancheng-suanfa

    和上一门课程基本一致,也是讲讲C++面向对象编程,但是作业难度要大很多。

Java

  • 浙大程序设计入门—Java语言

    http://mooc.study.163.com/course/1000002014#/info

    课不难,老师讲的很好,适合入门。

  • 浙大Java语言程序设计进阶

    http://mooc.study.163.com/course/1000004001#/info

    讲了一些面向对象的内容,值得学习。

  • 斯坦福CS106A

    http://open.163.com/special/sp/programming.html

    https://see.stanford.edu/Course/CS106A

    应该算比较著名的课了,完全的零基础入门,老师非常有意思,上课的内容难度不大,但是作业非常有挑战性,有的作业还是设计一个小游戏。这部分内容博客中有记录了习题,后续应该会把对应书籍再复习一遍。

Python

  • MIT6.001 Introduction to Computer Science and Programming Using Python

    https://www.edx.org/course/introduction-computer-science-mitx-6-00-1x-11

    这门课一开始上的是学堂在线上的,后来发现edx上的作业系统更加完善,就把edx上的列出。这门课讲一些python以及计算机基础知识,课程作业挺花时间的,不过收获很大。

  • 北理Python网络爬虫与信息提取

    https://www.icourse163.org/course/BIT-1001870001

    如果想要入门爬虫,我觉得没有比这门课更好的资料了,之前也参考过别的爬虫资料,更多的是像说明书,不适合新手入门,这门课在博客里也做了一些笔记。

    个人笔记及课件:

    https://github.com/Doraemonzzz/python-web-scraping

  • UCB CS61A

    课程主页:https://inst.eecs.berkeley.edu/~cs61a/sp18/

    B站视频:https://www.bilibili.com/video/av20538548?from=search&seid=13214797917749675498

    非常棒的Python课程,作业量很多,用Python讲解计算机运行原理,并且介绍了scheme。

Matlab

  • MATLAB 程序设计入门

    课程主页:https://www.coursera.org/learn/matlab

    matlab入门课程,涵盖了常用内容,老师人很有趣。

数据结构与算法

  • 浙大数据结构

    https://www.icourse163.org/course/ZJU-93001

    这门课强调的是数据结构和一些算法的实践,老师也讲的很好,但对零基础来说还是挺难的,作业每周要花很久,虽然没有语言要求,但是最好学过C,这部分在博客里做了一些简单的笔记。

  • Coursera斯坦福算法课

    https://www.coursera.org/specializations/algorithms

    这门课也是相当有难度,但和浙大的课程不同之处在于强调算法分析,每个算法给了一些简单的伪代码,算是和浙大这门课互补了,后续应该会把这门课的笔记补充一下。

  • 北大程序设计与算法(二)算法基础

    https://www.icourse163.org/course/PKU-1001894005

    挺不错的,讲解算法基础,不涉及数据结构,内容算是和浙大数据结构互补。

数据科学和机器学习

其实这部分一直有在学,不过还没有全部完成,所以只列已经完成的部分。

Data Science

  • MIT6.002 Introduction to Computational Thinking and Data Science

    https://www.edx.org/course/introduction-computational-thinking-data-mitx-6-00-2x-6

    这门课是MIT6.001的后续内容,主要讲了如何用python解决Data Science问题,作业有挺有挑战性,应该说完成之后代码能力能上一个台阶,个人认为可以从这两门课开始Python和Data Science,先搭建一个轮廓,后续再深入学习。

  • 南大用Python玩转数据

    https://www.icourse163.org/course/NJU-1001571005

    主要讲了一些python数据分析中的常用库,大作业是一个数据分析的作业,老师亲自批改。总体来说老师认真负责,但是课程节奏有点快,需要多看几遍慢慢消化,适合之前有一定python经验的同学。

  • MIT The Analytics Edge

    https://www.edx.org/course/the-analytics-edge

    介绍利用R语言进行数据分析的课程,0基础也可以学,如果以后会用R比较多可以学一下,否则不是特别推荐。

机器学习

  • Stanford 机器学习

    https://www.coursera.org/learn/machine-learning

    Coursera上最热门的一门课,老师是 Andrew Ng ,如果新手想要入门机器学习,非常推荐这门课,这门课没有过多纠结数学推导,但是学完之后应该算机器学习入门了,后续可以学习更加深入的课程。

    附上大佬翻译的中文课件:

    https://github.com/fengdu78/Coursera-ML-AndrewNg-Notes

  • edx哥伦比亚大学机器学习课程

    https://www.edx.org/course/machine-learning-columbiax-csmm-102x-4

    edx上比较著名的课程,讲了常见的各类算法,完全吃透要投入很多时间,个人建议课件多复习几遍,附上我整理的资料。

    https://github.com/Doraemonzzz/MachineLearning_ColumbiaX

  • Neural Networks for Machine Learning

    https://www.coursera.org/learn/neural-networks

    讲授者是大牛Hinton,但是我非常不推荐新手学习这门课,感觉这门课的听众应该是对神经网络比较了解的同学,我后续也要再听一遍。

  • CS229

    http://open.163.com/special/opencourse/machinelearning.html

    Andrew Ng早期的课程,难度比较大,完整听了两三遍,已完成作业,并且对讲义中缺少的证明进行了补充,附上我整理的资料:

    https://github.com/Doraemonzzz/CS229

    https://doraemonzzz.com/tags/CS229/

  • 台大机器学习基石与技法

    https://www.csie.ntu.edu.tw/~htlin/course/ml15fall/

    个人认为是最好的中文机器学习课程之一,和CS229相比,更适合入门,内容和CS229互补,配套教材learning from data也非常好,附上我整理的资料:

    https://github.com/Doraemonzzz/ML-Foundation-and-ML-Techniques

    https://github.com/Doraemonzzz/Learning-from-data

深度学习

  • CS231

    http://cs231n.stanford.edu/2017/

    https://study.163.com/courses-search?keyword=CS231

    介绍了前馈神经网络(NN),卷积神经网络(CNN)以及循环神经网络(RNN),可以从这门课开始学习神经网络,课程作业比较有挑战性,内容为利用numpy实现CNN和RNN。

    个人整理的资料:

    https://github.com/Doraemonzzz/CS231n

    https://doraemonzzz.com/tags/CS231/

  • Coursera 深度学习 专项课程

    Andrew Ng在Coursera上的深度学习课程,内容深入浅出,包含深度学习的大部分内容,非常适合入门。

    大佬整理的中文笔记:

    https://github.com/fengdu78/deeplearning_ai_books

数学

离散数学

  • 18.062 Mathematics for Computer Science

    https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-042j-mathematics-for-computer-science-spring-2015/

    MIT的离散数学课程,练习量非常非常大,课程深入浅出。

    个人整理的资料:

    https://github.com/Doraemonzzz/Mathematics-for-Computer-Science

优化

  • CS205A Mathematical Methods for Robotics, Vision, and Graphics

    https://graphics.stanford.edu/courses/cs205a-13-fall/schedule.html

    斯坦福数值分析公开课,内容丰富,介绍了数值分析常见的内容,涵盖了机器学习中绝大多数优化方法,部分作业难度较大。

    个人整理的资料:

    https://github.com/Doraemonzzz/CS205A-Mathematical-Methods-for-Robotics--Vision--and-Graphics

    https://doraemonzzz.com/tags/CS205A/

线性代数相关

  • EE263 Introduction to Linear Dynamical Systems

    https://see.stanford.edu/Course/EE263

    斯坦福的线性动力系统课程,老师讲课非常有趣,课程内容也非常实用,介绍了线代的一些应用,一部分作业难度较大。

    个人整理的资料:

    https://github.com/Doraemonzzz/EE263-Introduction-to-Linear-Dynamical-Systems

    https://doraemonzzz.com/tags/EE263/

傅里叶分析

  • EE261 The Fourier Transform and its Applications

    https://see.stanford.edu/Course/EE261

    斯坦福的傅里叶分析课程,介绍了傅里叶分析的应用。

    个人整理的资料:

    https://github.com/Doraemonzzz/EE261-The-Fourier-Transform-and-its-Applications

    https://doraemonzzz.com/tags/EE261/