本人不是計算機專業(yè)的爪幻,更不是機器學(xué)習(xí)領(lǐng)域的。由于暑研去的實驗室剛好是弄 AI & Machine Learning 方向巨柒,本人在去之前惡補了很多機器學(xué)習(xí)和深度學(xué)習(xí)的東西肪获,算是勉強入了門∈ê基本上所有人入門機器學(xué)習(xí)都是從看吳恩達(Andrew Ng)在 Coursera 上的 Machine Learning 開始顽悼,在花了大概2周看完這個后,本人轉(zhuǎn)向看視覺方向的東西几迄,這領(lǐng)域的經(jīng)典視頻是 Stanford 老師李飛飛及其他人開的 CS231n ?Convolutional Neural Networks for Visual Recognition, 這個也大概要看兩周蔚龙。
本文主要是想為所有初學(xué)者入門提供一份大綱,講述語言為中文映胁,但專業(yè)術(shù)語依舊用英文府蛇。在密集看如此大量的視頻時,本人曾因機器學(xué)習(xí)的多種分類方式屿愚、多樣卻相似的公式汇跨、不同情況應(yīng)用的算法頭暈眼花,且視頻里的講述過程是循序漸進的妆距,有些前面記了的筆記會被后面推翻穷遂,如之前有些大篇幅使用的算法或公式會在后面打碎重來;同時娱据,有些前面只略講的東西后面會大量補充相關(guān)知識蚪黑。因此,為了使內(nèi)容清晰中剩,本人決定用一個個模塊講完重點內(nèi)容再跳轉(zhuǎn)到下一模塊忌穿,并略過現(xiàn)在不常用的使用公式,而非像視頻那樣一開始先全部介紹一遍结啼、再一個個打碎重組掠剑。
本文并非入門教程,略去了許多機器學(xué)習(xí)歷史上的有趣公式郊愧,因此只應(yīng)作看以上視頻課程昏頭轉(zhuǎn)向時參考使用朴译,莫想只看本文就直接入門>印!眠寿!另外躬翁,本文只講述理論和實踐tips,正常情況下不會放代碼盯拱。具體怎么寫代碼盒发、配環(huán)境、練手材料以后考慮開新文寫狡逢。
一宁舰、機器學(xué)習(xí)總覽
1. 機器學(xué)習(xí)是什么?
"A computer program is said to learn from experience E with respect to some task T and some performance measure P, if its performance on T, as measure by P, improves with experience E."
翻譯成中文即:一個計算機程序可以從經(jīng)驗E中學(xué)到如何處理任務(wù)T甚侣,并且處理結(jié)果的評分由P表示明吩。另外,它對任務(wù)T的處理結(jié)果評分P會隨著經(jīng)驗E的增加而變好殷费。
再舉例說明就是:你寫了一個程序幫你協(xié)助郵箱整理印荔,然后它檢索郵件、看你有沒有把郵件標為垃圾郵件详羡,來逐漸學(xué)會分類仍律。它看你處理的郵件數(shù)越多,它的過濾效果就越好实柠。在這個例子里水泉,經(jīng)驗E是它看你分類郵件,任務(wù)T是分類郵件窒盐,評分P是分類得準不準確草则。
2. 機器學(xué)習(xí)種類
機器學(xué)習(xí)主要有兩個大類,監(jiān)督學(xué)習(xí)(Supervised Learning)和無監(jiān)督學(xué)習(xí)(Unsupervised Learning)蟹漓。其中炕横,比較常見得應(yīng)該是監(jiān)督學(xué)習(xí),這里又分為兩種:Classification 和 Regression葡粒。前者為分類問題份殿,包括上面例子的郵件分類,還有很熱門的圖像識別也是這一類嗽交;后者為預(yù)測結(jié)果卿嘲,比如賣房子應(yīng)標價多少、下次考試可以拿多少分這種夫壁。
無監(jiān)督學(xué)習(xí)只有一種拾枣,即把數(shù)據(jù)分組(group the data),和上面的分類學(xué)習(xí)不同的地方在于它只把應(yīng)該在一組的數(shù)據(jù)圈在一起掌唾,但不用把這組數(shù)據(jù)貼個標簽放前。比較常用于語音處理忿磅,比如分離音樂中的人聲與伴奏糯彬、剝離噪音等凭语。
除了這兩大類,還有 Enforcement Learning(增強學(xué)習(xí))撩扒,Transfer Learning (遷移學(xué)習(xí))等似扔,屬于進階型,不在此入門篇多講搓谆。
本人目前是往視覺方向?qū)W習(xí)炒辉,對 Classification 大概會熟悉一點,其他的以后解除了再詳寫泉手。
3. 學(xué)習(xí)機器學(xué)習(xí)需要什么基礎(chǔ)黔寇?
(1)一定的英語水平(至少也CET4以上吧,畢竟視頻教程很多是國外大學(xué)錄的)
(2)較強的數(shù)學(xué)基礎(chǔ)斩萌。如果是理工科出身的缝裤,基本都學(xué)過微積分、線性代數(shù)颊郎,這些基本可以看入門視頻不懵逼了憋飞。然后如果還會最優(yōu)化、偏微分的話姆吭,就可以跟著視頻推導(dǎo)了榛做。當(dāng)然,如果以后真的想走這條路内狸,還要學(xué)不少的統(tǒng)計以及各種概率分布检眯,比如最基礎(chǔ)的正態(tài)分布、貝葉斯定理這種昆淡。
(3)一定的忍耐期及學(xué)習(xí)動力锰瘸。
4. 本文大綱
大綱會在更新時變動。大概率不涉及無監(jiān)督學(xué)習(xí)瘪撇。
(1)由 Regression 引出機器學(xué)習(xí)的 Loss Function, Cost Function, Optimizer 等获茬。
(2)Classification 講解。
(3)Classification 與 神經(jīng)網(wǎng)絡(luò)(大概率不從歷史出發(fā)講倔既,而是直接列知識點)恕曲。
(3)實踐tips:訓(xùn)練集和測試集的選擇,如何初始化渤涌,激活函數(shù)的選擇等佩谣。
二、Regression
【下次更新寫哈】