Gitchat上的機器學習入門

Gitchat上的機器學習入門

來自專欄機器學習演算法與自然語言處理19 人贊了文章

本文其實是一個不成廣告的廣告,在一個學校分享群里看到 GitChat 平台上有個關於「機器學習」的入門課程,設計還算不錯。作者是來自微軟的高級工程師。

如果讀者們感興趣可以看看下面這個課程的開篇詞。

李燁 的達人課?

gitbook.cn圖標

一、課程背景

首先,我們來看一下當前機器學習領域招聘市場的行情。

上面表格中所有帶有「演算法」、「人工智慧」、「數據挖掘」、「視覺」字樣的職位,都需要懂機器學習。

在產品和服務中應用機器學習模型,已經逐步成為了互聯網行業的通行方法。甚至很多傳統軟體企業,也開始嘗試應用機器學習。說得更直接一點,人工智慧正處在炙手可熱的風口浪尖上,作為程序員不會機器學習都不好意思去找工作了。

很多技術開發者迫切希望快速進入人工智慧領域從事工程或者演算法等相關工作,這也是我推出這門課程的初衷。

二、課程大綱

本課程針對機器學習初學者,從機器學習、深度學習最基本的原理及學習意義入手,以模型為驅動,帶領大家吃透幾大最經典的機器學習模型——學習其原理、數學推導、訓練過程和優化方法。配合精心設計的極小數據量的「極簡版」實例,方便讀者從直觀上了解模型的運行原理,利用實例大家還可將自己變身為「人肉計算機」,通過口算/筆算每一步的推導,模擬演算法全過程,進而徹底理解每個模型的運作方式。結合自身實踐經驗,我總結了多個構建數據集、特徵選擇、調參、驗證模型的高效方法,並教授大家如何同步進行編程語言學習,助您快速擁有機器學習產品開發的基本能力。

本課程大綱分為六大部分,共計 34 篇:

第一部分:緒論

  • 授人以魚不如授人以漁。本部分從意義和作用出發,給出相應的學習方法和與理論配套的編程學習。

第二部分:基本原理

  • 深諳其理,才能靈活應變。本部分開始帶大家了解什麼是機器學習、機器如何自己學習、以及機器學習三要素:數據、模型、演算法之間的關係。
  • 模型是機器學習的核心,那麼模型是怎麼得到的呢?本部分也將講解模型的獲取(訓練)和評價(驗證/測試)過程,相應的數據集合的劃分以及具體的評價指標。
  • 這部分知識和後面講述的具體模型結合起來,就可以實踐了!

第三部分:有監督學習 I

  • 抓住關鍵,個個擊破。本部分重在詳細講解有監督學習中經典的線性回歸、樸素貝葉斯、邏輯回歸、決策樹模型。這幾個模型不僅基礎、經典、常用,而且數學工具特別簡單。

第四部分:有監督學習 II

  • 百尺竿頭,更上一層樓。本部分講述支持向量機、支持向量回歸、隱馬爾科夫和條件隨機場模型,從支持向量機開始,數學工具的需求較之前上了一個台階,難度明顯加大。

第五部分:無監督學習

  • 無須標註,方便運行。本部分重在講解無監督學習中的聚類、高斯混合及主成分分析等模型。這部分模型的特徵是所需訓練數據無須標註,方便在各種數據上隨時進行嘗試。在現實中,經常用來作為有監督的輔助手段使用。

第六部分:從機器學習到深度學習

  • 超越自我,實現蛻變。本部分重在講解深度學習基本原理、深度學習與機器學習的關聯與銜接、以及深度學習目前的應用領域,為讀者下一步學習「深度學習」奠定基礎。

整個課程以經典模型為驅動,講述每一個模型所解決的問題域,模型的原理和數學推導過程。作為課程的主體,第三部分和第四部分講解的每個模型,都附有實例和相應的 Python 代碼。每個例子的數據量都非常小——這樣設計就是為了讓讀者可以用人腦模擬計算機,根據剛剛學到的模型演算法對這些極小量數據進行「模擬訓練/預測」,以此來加深對模型的理解。

三、你將收穫什麼

AI 技術崗位求職知識儲備

如果大家真的有意投身到人工智慧領域做技術性工作,那麼經過技術筆試、面試是必要條件。在面試中被要求從頭解釋某一個機器學習模型的運行原理、推導過程和優化方法,是目前非常常見的一種測試方法。機器學習模型雖然很多,但是經典、常用的很有限。如果能把本課程中講解的經典模型都學會,用來挑戰面試題相信是足夠了。

觸類旁通各大模型與演算法

各種機器學習模型的具體形式和推導過程雖然有很大差別,但卻在更基礎的層面有許多共性。掌握共性之後,再去學新的模型、演算法,就會高效得多。雖然本課的第二部分集中描述了部分一般性共同點,但真要理解個中含義,卻還要以若干具體模型為載體,從問題發源,到解決方案,再到解決方案的數學抽象,以及後續數學模型求解的全過程,來了解體味。這也就是本課以模型為驅動的出發點。

極簡版實例體驗實際應用

運用到實踐中去,是我們學習一切知識的目的。機器學習本身更是一種實操性很強的技術,學習它,原本就是為了應用。反之,應用也能夠促進知識的深化理解和吸收。本課雖然以原理為核心,但也同樣介紹了:劃分數據集、從源數據中提取特徵、模型訓練過程、模型的測試和評估等方法和工具。

配套數據+代碼快速實操上手

本課程中各個實例的 Python 代碼及相應數據,大家可以下載、運行、改寫、參考。

四、課程寄語

我希望本課的讀者在知識和技巧的掌握之外,能夠將學習到的基本規律運用到日常生活中,更加理性地看待世界。

再遇到「人工智慧產品」,能夠根據自己的知識,去推導:How it works——

  • 它背後有沒有用到機器學習模型?
  • 如果有的話是有監督模型還是無監督模型?
  • 是分類模型還是回歸模型?
  • 選取的特徵是哪些?
  • 如果由你來解決這個問題,有沒有更好的方法?

我們自己用來判斷萬事萬物的「觀點」、「看法」、「洞察」,實際上都是我們頭腦中一個個「模型」對所聞所見(輸入數據)進行「預測」的結果。這些模型自身的質量,直接導致了預測結果的合理性。

借鑒機器學習認識客觀規律的過程,可以知道,模型是由數據和演算法決定的。對應到人腦,數據是我們經過見過的萬事萬物,而演算法則是我們的思辨能力。

我們作為人類不必被動等待一個外來的主宰者。完全可以主動訓練自己的思維模型,通過改進演算法和增大數據量及數據多樣性來提升模型質量——如果能在這方面給讀者朋友們帶來些許啟發,我實在不勝榮幸。

最後,預祝每一位訂閱課程的朋友,能夠通過學習找到心儀的工作,如果大家有任何疑問和建議,也歡迎通過讀者圈與我交流,我們共同學習,共同進步。

課程鏈接:

李燁 的達人課?

gitbook.cn圖標

安利一下, GitChat是個很不錯的技術分享平台,詳情可以點擊下方進行了解。

http://gitbook.cn/m/mazi/saleActivity?utm_source=ml002?

gitbook.cn


推薦閱讀:

動手實踐神經網路1: 單個神經元
相比於深度學習,傳統的機器學習演算法難道就此沒落了嗎,還有必要去學習嗎?
GAN、WGAN通俗基本原理
CVPR 2018 Paper漫談三
AlphaGo唯一的對手:深度神經網路

TAG:機器學習 | 數據挖掘 | 神經網路 |