YouTube 上有哪些計算機方面的值得推薦的公開課?
如題
看到這個問題我必須拿出我收藏多年,不到關鍵時刻不示人的計算機之神:Ravindrababu Ravula,數據結構和演算法、編譯原理、操作系統、計算機網路全都懂,懂還就算了,講課還非常棒!
https://www.youtube.com/channel/UCJjC1hn78yZqTf0vdTC6wAQ
很久之前因為工作原因需要一點編譯原理的知識,但是本科上課的知識已經忘光了(其實上課的時候也沒怎麼認真聽懂)。然後就上 Youtube 搜了一下,找到這位帥氣的印度小哥。懷著試一下的心態看了幾分鐘,然後發現:根本停不下來!就一口氣把 Parser 相關的知識全聽完了,隔天消化一下,後續就寫出了人生第一個 Parser,並且應用到了前端的模版引擎當中。雖然我不知道他的名字怎麼念,但是我知道他講課是在太棒了。
給你講解 Parser 的分類:
Top-down Parsing 的工作原理:
通過大量的白板演算實例教你怎麼算 First 和 Follow 集,直到教到你懂為止:
一步步教你 Parsing Table:
通過實際白板代碼推演遞歸下降的 LL(1) Parser,告訴你每一步代碼做了什麼,每一步的程序狀態是怎麼樣的,教到你懂為止:
我這裡當然省略了 Ravula 老師講課的很多細節。這位名字我不會念的老師講課細緻、邏輯清晰,有條不紊,難的地方通過大量實例一步步講解,不含糊,讓人如痴如醉欲罷不能,以至於我現在寫簡單的 Parser 都是直接懟 EBNF 直接開擼。然後我回憶了一下本科給我們講編譯原理的那位老先生,原來當年聽不懂課除了跟我智商低有關係以外,還跟講課的人有很大的關係啊!
不輕易間點看了 Ravula 老師的主頁,發現他不僅僅懂編譯原理,而且懂幾乎所有計算機學科相關的基礎課程,包括數據結構和演算法、編譯原理、操作系統、計算機網路:
這些個好東西這麼多年來我都是偷偷看的,我發現國內很少人知道他。可能是跟你得學會怎麼聽印度口音的英文才能聽他講課有關係[捂臉](不過不用怕,Youtube 的字幕就好了,但是也是英文字幕)。
當然小哥也不是萬能的,有些地方還是需要有一點知識儲備才能聽懂,所以最好是能夠結合一些資料來配合著看最佳。
UPDATE:評論區好多朋友都說看過小哥的 KMP、後綴樹等,看來我對小哥還是知之甚少。
UPDATE:很多朋友問有沒有中文字幕,講道理應該是沒有的。最猴還是能習慣一下聽英文,配合著 Youtube 的英文字幕其實還可以,畢竟來來去去就那幾個詞。習慣聽英文,新世界的大門會向你敞開。
UPDATE:有朋友說怎麼開字幕,這裡有個 CC 啊,點他啊
PS:小哥能不能給我點廣告費。
UPDATE: 有些朋友說聽不懂...那我也很絕望啊,我還能怎麼辦
看到標籤里提了Coursera,所以應該不限於Youtube吧,Youtube比較零散,也沒有互動啊作業啊什麼的,還是推薦免費mooc啦。我搬運一下剛在自己專欄寫的一篇資源。
- 以下搬運自己 -
語言名稱後面的數字是課程數量,比如網上教Python的公開課有81個之多……
Python 81
Javascript 42
Java 40
R 17
Swift 12
C# 11
C++ 9
Ruby 8
Scala 7
C 6
Matlab 3
Haskell 3
Objective C 2
F# 1
這是什麼網站?
今天我同事在slack里分享的一個叫Class Central的網站,我看了下,相當於mooc界的大眾點評。我覺得一站式搜索所有課程很實用,用來管理自己的課程也不錯。
怎麼用?以Python為例,點進去會看到一個列表,81個課程都在。點一個你感興趣的課程鏈接,會看到Class Central上的課程詳情,右側有個綠色的大按鈕,就能到提供課程的原網站學習啦。Class Central本身不用註冊,但如果你沒有原網站的賬號,得註冊一下才行。
裡面絕大部分是英文,但中文課程也是有一些的,列表在這裡:https://www.class-central.com/language/chinese 126個,應該是國際mooc網站中幾乎所有中文課程的集合了。
國內的中文網課哪裡看?這個我不是特別了解,我知道的只有網易公開課(http://open.163.com/)和騰訊大學(http://daxue.qq.com/),請在評論里安利我更多!(已經有不少了,感謝分享!記得點開評論~)
- 戳原文看評論 http://zhuanlan.zhihu.com/p/21876242 -
看到題主在標籤里加了機器學習,所以下面的視頻都是機器學習相關的。不定期更新,權當整理用了。下面視頻大部分答主自己也沒有看過,主要是道聽途說的。
1. CS231n: Convolutional Neural Networks for Visual Recognition,斯坦福大學視覺實驗室開的。https://www.youtube.com/playlist?list=PLlJy-eBtNFt6EuMxFYRiNRS07MCWN5UIA
- 8.21更新:基本學完了。在技術上介紹了各種activation functions、back propagation、batch normalization、各種update rules、CNN和RNN基礎、auto encoder、soft attention等;在應用上主要介紹了深度學習在視覺方面的各種應用(如圖像檢測、圖像分類、圖像定位、視頻分類、圖像字幕、neural style等等),在NLP方面講到了字跡生成、論文生成等等;另外還介紹了一些學科前沿,比較了各種框架。整節課涉及的課程、論文、代碼、書超過兩百項,感覺要把這些都消化掉還是要很長時間,可以先選自己感興趣的和比較重要的。
2. CS229(謝謝 @phisiart 的提醒): Machine Learning, Andrew Ng教的,算是Coursera上Machine Learning的超級強化版。youtube.com 的頁面
3. Machine Learning Foundations,國立台灣大學林軒田教授上的,少數用中文上的課,主要講理論:youtube.com 的頁面
4. Machine Learning Techniques,描述同上,主要講實戰:youtube.com 的頁面
5. 深度學習三神之一的Lecun在Collège de France in Paris上的8節關於deep learning的課,前兩天他在Quora上推薦的,沒上過不知道怎麼樣:Lamp;#x27;apprentissage profond
6. 2012 IAPM Summer School關於Deep Learning的課,來源同上Graduate Summer School: Deep Learning, Feature Learning (Schedule)
7. 在Pittsburgh舉辦的Machine Learning Summer School 2014 https://www.youtube.com/watch?v=4myTpLua0EMamp;amp;list=PLZSO_6-bSqHQCIYxE3ycGLXHMjK3XV7Iz
8. CS224d: Deep Learning for Natural Language Processing, Richard Socher開設,youtube.com 的頁面。斯坦福現在還有一門CS224N: Natural Language Processing, 課程官網上宣稱在某種程度上是CS224d和CS224N的融合,不知道後續會不會放出視頻。
9. Deep Learning Summer School 2016 https://www.youtube.com/playlist?list=PL5bqIc6XopCbb-FvnHmD1neVlQKwGzQyR 今年的也快開了,今年除了DL Summer School外還有RL Summer School。不知道視頻會不會放出來,可以期待一下。
如果光說深度學習的話,深度學習如何入門? - 機器學習 這個問題下面有很多這方面的資料了。
先放這點,如果後面看到好的再更。
作為一個經常在用youtube代替學校老師的人,我覺得可以分享幾個:
- sentdex https://www.youtube.com/channel/UCfzlCWGWYyIQ0aLC5w48gBQ 這傢伙主要是在講python,從入門到數據分析,可視化,機器學習,NLP,網頁開發,資料庫都有涉及(全部是python)。他有個自己的網站(Python Programming Tutorials)蠻不錯的,基本就是他youtube上的內容的整理和code
2. Stanford NLP Open Course https://www.youtube.com/playlist?list=PL4LJlvG_SDpxQAwZYtwfXcQr7kGnl9W93 這是NLP的課程,由業界大神Dan Jurafsky和Chris Manning主講。我個人感覺講得挺好的(難易度,clarity等等),推薦對NLP想要入門的同學。
3. Techtud https://www.youtube.com/user/techtud/featured 這個也是個什麼都有的channel,我主要是看了他講的network的那一系列。
4. Datebase PSU https://www.youtube.com/channel/UCjkGzGfgvX_Zd8kxs4ldhFw 這是Penn State U的一門Database Management的課程,算是入門課吧。老師講得很清楚,而且重點是老師很漂亮。。。
(小姐姐,就是你啦)
5. 雖然這個youtube channel和計算機的關係沒有那麼大,但是真的想推薦給大家。Michael van Biezen https://www.youtube.com/user/ilectureonline 真正的勞模,教書育人用心負責。他幾乎每天都會上傳教學視頻,涵蓋了高數,物理化學,electrical engineering等等。最近就在聽的視頻學Kalman Filter,雖然是計算機,基本的數學啊什麼的還是要學學好的不是嗎?
樓主既然只提到youtube,那coursera,udacity這些我就不提了。作為一個天天泡在youtube上瞎看的人,還是發現了不少好東西。
需要提一下的是,youtube是很適合去了解一些知識,真要掌握的話,還是需要練習才行。
以下的課都親測過,感覺很不錯。
1. learn in one video
https://www.youtube.com/user/derekbanas/featured這個網站不同的地方就在於,每一個視頻如同填鴨一般的把一門programming語言一次性講完。每次我要快速了解(不是掌握)一門語言時,就會把對應的視頻看一兩遍。比如他的learn in one video就長這樣,
2. MIT的演算法課-入門級的6.006
https://www.youtube.com/watch?v=HtSuA80QTyoamp;amp;amp;amp;list=PLUl4u3cNGP61Oq3tWYp6V_F-5jb5L2iHb
如果能去把相應的習題做了就更好。
3. MIT的演算法課-6.046J
https://www.youtube.com/watch?v=2P-yW7LQr08amp;amp;amp;amp;list=PLUl4u3cNGP6317WaSNfmCvGym2ucw3oGp
4. UCBerkeley的OS System-Machine Structure
https://www.youtube.com/playlist?list=PL-XXv-cvA_iCl2-D-FS5mk0jFF6cYSJs_
他們官網有配套的練習,建議去做一下。
5. UCBerkeley的Intro to Database System
https://www.youtube.com/playlist?list=PL-XXv-cvA_iBVK2QzAV-R7NMA1ZkaiR2y
還是建議去官網做練習。
對了,如果你有你們學校的email賬戶,其實你是可以去這個網站看他們更新的習題和進度的。
CS61C Course Info
(注意這個網站是edX edge,不是平時你去的那個edX。)
6. UCBerkeley的Artificial Intelligence
https://www.youtube.com/watch?v=Xa8twbs8SI4amp;amp;amp;amp;list=PL-XXv-cvA_iA4YSaTMfF_K_wvrKAY2H8u
我很喜歡這門課,最後的project做了個遊戲,挺有意思。
如果你想要這門課所有的資源,可以去edX,
CS188x_1 Course Info
7. Princeton的Bitcoin and Cryptocurrency Technologies
https://www.youtube.com/channel/UCNcSSleedtfyDuhBvOQzFzQ如果你對blockchain感興趣的話。
3/27/2017,更新一下。
最近在學習最底層的知識,之前上過UCBerkely的CS 61C,後來還是覺得MIT的Computation Structures好一些。對於想要了解計算機是如何從簡單的電壓變化演變到現在的操作系統的,可以看看這門課,這個教授自己的channel,
https://www.youtube.com/user/Cjtatmitdotedu/feed
他們在edx上也有,分成三門課來教,有作業,有project,不過聽不到老頭講冷笑話了。。。
6.004.1x Course Info | edX6.004.2x Course Info | edX6.004.3x Course Info | edX5/3/2017, 更新一下。
最近在學網路的知識,發現了stanford這門課很好,各種layers都覆蓋到,還請一些業界大牛做採訪。這個是playlist,注意,有些視頻沒有對外公開,只有這個playlist里才能看到。
https://www.youtube.com/watch?v=_BC5ALTJDXoindex=1list=PLb9DZOrm6ibgwCLh3ghsw0Pke13JA3znj
這個也非常適合在youtube上看,因為沒有作業。
等上了其它課,再來分享。
是不是好課你要去看能不能找到這門課的作業。不然再好的課也是白搭。
伯克利的OS。Stanford 的編譯原理:
https://www.youtube.com/watch?v=sm0QQO-WZlMlist=PLFB9EC7B8FE963EB8
Udacity真的不錯,裡面很多課程,發音很好! 比如
如何使用Git/Github
技術面試練習
Java編程入門(Java8)
以上是一些基礎課程,我聽課程的目的是為了有一天能聽懂英文視頻,英文講座,這樣才能真正追趕技術潮流。
另外,強烈推薦學習IT的人都使用流利說!
------------互惠互利的廣告,這部分不是重點,可忽略~----------
1.優達學城優惠碼 我分享了300元學費紅包給你,快來學Google、亞馬遜、Facebook官方的機器學習、數據分析、前端開發課程。在這領取: 優達學城 (Udacity) - 邀請好友賺學費
2.英語流利說優惠鏈接
我打算用這個回答記錄一下我喜歡的educational youtube channel:
- [3Blue1Brown](https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw)
理由:我在看他的Essence of Linear Algebra. 我只能說: Mind blowing. 美國教育的Linear Algebra教會的是computation(如果你像我一樣沒take過honor class的話)。但是,很多高級應用和延伸:抽象代數,ML, Statistics更多要求的是在腦海里對Linear Algebra的幾何理解。如果你也有類似的感覺,這個video簡直就是上帝的福音。
- [Derek Banas](https://www.youtube.com/user/derekbanas/videos)
理由:其實這個不能算作公開課。但是他的C++ programming in one video, Haskell programming in one video,Assembly language with raspberry pi都是非常值得看的。我曾經無數次想真正學C++(一直把C++當作C在用),但是打開C++ Primer頭就暈了。但是這個1個小時10分鐘的視頻就把整個C++框架搭了起來。其實我們初學的時候真不需要特別多的細節。
This is cs50 !
https://github.com/prakhar1989/awesome-courses
Github上的awesome系列之課程篇,
雖然不盡然都是油管的
如果使用tensorflow處理我們自己的數據?
比如一堆圖片存放在本地硬碟上,
怎麼讀取數據,生成batch,train?
怎麼保存訓練好的模型結構和參數?
怎麼恢復訓練好的結構和參數,並使用新的數據測試?
怎麼測試單張圖片?
我使用的是Kaggle貓狗大戰的數據,25000張圖片。
https://www.youtube.com/channel/UCVCSn4qQXTDAtGWpWAe4Plw
Mit的Introduction to Algorithm
演算法導論
Analysis and design of Algorithm
演算法設計與分析
Advanced data structure
高級數據結構
搭配?演算法導論?食用更佳
搜 math monk
莫煩 Python 講機器學習的入門課程 非常棒
我只是想回到下這個問題,瀏覽器崩潰了三次,擺明和我過不去啊。
MIT課程:Electrical Engineering and Computer Science
都能直接在youtube上看,從入門到放棄,你想要的課程都都在這裡
PowerCert Animated Videos
跟樓上各位的演算法導論、機器學習相比,這個內容算是太太太初級了。
博主的一系列視頻非常直觀的用極其細緻的 3D 動效,展示了計算機軟硬體及基礎原理(硬體居多)。內容類似晶元組組成原理、CPU 緩存之類的。由於動圖展示足夠細緻,所述內容也並不太深,所以反而對英文聽讀要求沒那麼高。
當然比較重要的是,這套視頻事先是寫了台本的,並非自由發揮,且非印度口音。
前段時間博主還放了個大招,原來這些精細的 3D 動效,早期都是用 PPT 做的...牛逼。https://www.youtube.com/watch?v=oSg-vDKGNDQ
歪一個。
中科大的編譯原理和技術http://www.bilibili.com/video/av4151812
講的很好,最近在看,就是不全。
coursera大法好
本渣只知道
mit open course ware
code training
或者任意丟個你知道的概念能搜到的課程。。。
edX, Coursera, Stanford, MIT, iTunesU
推薦閱讀: