這可能是最簡單易懂的機器學習入門(小白必讀)

2021-03-06 專知

【導讀】本文用淺顯易懂的語言精準概括了機器學習的相關知識,內容全面,總結到位,剖析了機器學習的what,who,when, where, how,以及why等相關問題。從機器學習的概念,到機器學習的發展史,再到機器學習的各類算法,最後到機器學習的最新應用,十分詳盡。適合小白快速了解機器學習。

作者 | Lizzie Turner

編譯 | 專知

翻譯 | Xiaowen

Machine Learning: A Primer

a quick introduction intended for non-technical readers

你是否使用像Siri或Alexa這樣的個人助理客戶端?你是否依賴垃圾郵件過濾器來保持電子郵件收件箱的乾淨?你是否訂閱了Netflix,並依賴它驚人的準確推薦來發現新的電影可看?如果你對這些問題說「是」,恭喜你!你已經很好地利用了機器學習!

 

雖然這聽起來很複雜,需要大量的技術背景,但機器學習實際上是一個相當簡單的概念。為了更好地理解它,讓我們研究一下關於機器學習的what,who,when, where, how,以及why。

什麼是機器學習?

One day ladies will take their computers for walks in the park and tell each other, 「My little computer said such a funny thing this morning」.

—Alan Turing

機器學習的核心是「使用算法解析數據,從中學習,然後對世界上的某件事情做出決定或預測」。這意味著,與其顯式地編寫程序來執行某些任務,不如教計算機如何開發一個算法來完成任務。有三種主要類型的機器學習:監督學習、非監督學習和強化學習,所有這些都有其特定的優點和缺點。

監督學習涉及一組標記數據。計算機可以使用特定的模式來識別每種標記類型的新樣本。監督學習的兩種主要類型是分類和回歸。在分類中,機器被訓練成將一個組劃分為特定的類。分類的一個簡單例子是電子郵件帳戶上的垃圾郵件過濾器。過濾器分析你以前標記為垃圾郵件的電子郵件,並將它們與新郵件進行比較。如果它們匹配一定的百分比,這些新郵件將被標記為垃圾郵件並發送到適當的文件夾。那些比較不相似的電子郵件被歸類為正常郵件並發送到你的郵箱。

第二種監督學習是回歸。在回歸中,機器使用先前的(標記的)數據來預測未來。天氣應用是回歸的好例子。使用氣象事件的歷史數據(即平均氣溫、溼度和降水量),你的手機天氣應用程式可以查看當前天氣,並在未來的時間內對天氣進行預測。

 

在無監督學習中,數據是無標籤的。由於大多數真實世界的數據都沒有標籤,這些算法特別有用。無監督學習分為聚類和降維。聚類用於根據屬性和行為對象進行分組。這與分類不同,因為這些組不是你提供的。聚類的一個例子是將一個組劃分成不同的子組(例如,基於年齡和婚姻狀況),然後應用到有針對性的營銷方案中。降維通過找到共同點來減少數據集的變量。大多數大數據可視化使用降維來識別趨勢和規則。

 

最後,強化學習使用機器的個人歷史和經驗來做出決定。強化學習的經典應用是玩遊戲。與監督和非監督學習不同,強化學習不涉及提供「正確的」答案或輸出。相反,它只關注性能。這反映了人類是如何根據積極和消極的結果學習的。很快就學會了不要重複這一動作。同樣的道理,一臺下棋的電腦可以學會不把它的國王移到對手的棋子可以進入的空間。然後,西洋棋的這一基本教訓就可以被擴展和推斷出來,直到機器能夠打(並最終擊敗)人類頂級玩家為止。

但是,等等,你可能會說。我們是在說人工智慧嗎?機器學習是人工智慧的一個分支。人工智慧致力於創造出比人類更能完成複雜任務的機器。這些任務通常涉及判斷、策略和認知推理,這些技能最初被認為是機器的「禁區」。雖然這聽起來很簡單,但這些技能的範圍非常大——語言處理、圖像識別、規劃等等。

機器學習使用特定的算法和編程方法來實現人工智慧。沒有機器學習,我們前面提到的西洋棋程序將需要數百萬行代碼,包括所有的邊緣情況,並包含來自對手的所有可能的移動。有了機器學習,我們可以將代碼量縮小到以前的一小部分。很棒對吧?

 

有一個缺失的部分:深度學習和神經網絡。我們稍後會更詳細地討論它們,請注意,深度學習是機器學習的一個子集,專注於模仿人類大腦的生物學和過程。

誰發展了機器學習?何時何地?

A breakthrough in machine learning would be worth ten Microsofts.—Bill Gates

在我看來,機器學習最早的發展是Thomas Bayes 在1783年發表的同名理論,貝斯定理發現了給定有關類似事件的歷史數據的事件的可能性。這是機器學習的貝葉斯分支的基礎,它尋求根據以前的信息尋找最可能發生的事件。換句話說,Bayes定理只是一個從經驗中學習的數學方法,是機器學習的基本思想。

幾個世紀後,1950年,計算機科學家 Alan Turing發明了所謂的圖靈測試,計算機必須通過文字對話一個人,讓人以為她在和另一個人說話。圖靈認為,只有通過這個測試,機器才能被認為是「智能的」。1952年,Arthur Samuel創建了第一個真正的機器學習程序——一個簡單的棋盤遊戲,計算機能夠從以前的遊戲中學習策略,並提高未來的性能。接著是Donald Michie 在1963年推出的強化學習的tic-tac-toe程序。在接下來的幾十年裡,機器學習的進步遵循了同樣的模式--一項技術突破導致了更新的、更複雜的計算機,通常是通過與專業的人類玩家玩戰略遊戲來測試的。

它在1997年達到巔峰,當時IBM西洋棋電腦深藍(Deep Blue)在一場西洋棋比賽中擊敗了世界冠軍加裡·卡斯帕羅夫(Garry Kasparov)。最近,谷歌開發了專注於古代中國棋類遊戲圍棋(Go)的AlphaGo,該遊戲被普遍認為是世界上最難的遊戲。儘管圍棋被認為過於複雜,以至於一臺電腦無法掌握,但在2016年,AlphaGo終於獲得了勝利,在一場五局比賽中擊敗了Lee Sedol。

 

機器學習最大的突破是2006年的深度學習。深度學習是一類機器學習,目的是模仿人腦的思維過程,經常用於圖像和語音識別。深度學習的出現導致了我們今天使用的(可能是理所當然的)許多技術。你有沒有把一張照片上傳到你的Facebook帳戶,只是為了暗示給照片中的人貼上標籤?Facebook正在使用神經網絡來識別照片中的面孔。或者Siri呢?當你問你的iPhone關於今天的棒球成績時,你的話語會用一種複雜的語音解析算法進行分析。如果沒有深度學習,這一切都是不可能的。

 

要獲得更全面的機器學習時間表,請務必查看這篇由Google雲團隊撰寫的偉大文章!【1】

機器學習是如何工作的?

注意所有對數學恐懼的讀者:我很遺憾地告訴你,要完全理解大多數機器學習算法,就需要對一些關鍵的數學概念有一個基本的理解。但不要害怕!所需的概念很簡單,並且借鑑了你可能已經上過的課程。機器學習使用線性代數、微積分、概率和統計。

Top 3線性代數概念:

1.矩陣運算;

2.特徵值/特徵向量;

3.向量空間和範數

 

Top 3微積分概念:

1.偏導數;

2.向量-值函數;

3.方向梯度

 

Top 3統計概念:

1.Bayes定理;

2.組合學;

3.抽樣方法

 

對於特定的數學資源,我強烈推薦這篇來自MetaDesignIdeas的文章。【2】

 

一旦你對數學有了基本的理解,就該開始思考整個機器學習過程了。有五個主要步驟:

上面的圖表以比較清楚的方式解釋了步驟,所以在我們關注最關鍵的部分:為數據和情況選擇正確的算法之前,花一分鐘的時間來研究它。

 

We don’t have better algorithms, we just have more data.—Peter Norvig

讓我們回顧一下算法的一些常見分組:

 

回歸算法

這可能是最流行的機器學習算法,線性回歸算法是基於連續變量預測特定結果的監督學習算法。另一方面,Logistic回歸專門用來預測離散值。這兩種(以及所有其他回歸算法)都以它們的速度而聞名,它們一直是最快速的機器學習算法之一。

基於實例的算法

基於實例的分析使用提供數據的特定實例來預測結果。最著名的基於實例的算法是k-最近鄰算法,也稱為KNN。KNN用於分類,比較數據點的距離,並將每個點分配給它最接近的組。

決策樹算法

決策樹算法將一組「弱」學習器集合在一起,形成一種強算法,這些學習器組織在樹狀結構中,相互分支。一種流行的決策樹算法是隨機森林算法。在該算法中,弱學習器是隨機選擇的,這往往可以獲得一個強預測器。在下面的例子中,我們可以發現許多共同的特徵(就像眼睛是藍的或者不是藍色的),它們都不足以單獨識別動物。然而,當我們把所有這些觀察結合在一起時,我們就能形成一個更完整的畫面,並做出更準確的預測。

貝葉斯算法

 

絲毫不奇怪,這些算法都是基於Bayes理論的,最流行的算法是樸素Bayes,它經常用於文本分析。例如,大多數垃圾郵件過濾器使用貝葉斯算法,它們使用用戶輸入的類標記數據來比較新數據並對其進行適當分類。

聚類算法

聚類算法的重點是發現元素之間的共性並對它們進行相應的分組,常用的聚類算法是k-means聚類算法。在k-means中,分析人員選擇簇數(以變量k表示),並根據物理距離將元素分組為適當的聚類。

 

深度學習和神經網絡算法

人工神經網絡算法基於生物神經網絡的結構,深度學習採用神經網絡模型並對其進行更新。它們是大、且極其複雜的神經網絡,使用少量的標記數據和更多的未標記數據。神經網絡和深度學習有許多輸入,它們經過幾個隱藏層後才產生一個或多個輸出。這些連接形成一個特定的循環,模仿人腦處理信息和建立邏輯連接的方式。此外,隨著算法的運行,隱藏層往往變得更小、更細微。

其他算法

下面的圖表是我發現的最好的圖表,它展示了主要的機器學習算法、它們的分類以及它們之間的關係。

The numbers have no way of speaking for themselves. We speak for them. We imbue them with meaning….Before we demand more of our data, we need to demand more of ourselves.—Nate Silver

 

一旦你選擇並運行了你的算法,還有一個非常重要的步驟:可視化和交流結果。雖然與算法編程的細節相比,這看起來既愚蠢又膚淺,但是良好的可視化是優秀數據科學家和偉大科學家的關鍵隔膜。如果沒有人能夠理解,那麼驚人的洞察力又有什麼用呢?

 

為什麼機器學習很重要?

Just as electricity transformed almost everything 100 years ago, today I actually have a hard time thinking of an industry that I don’t think AI will transform in the next several years.— Andrew Ng

現在應該清楚的是,機器學習有巨大的潛力來改變和改善世界。通過像谷歌大腦和斯坦福機器學習小組這樣的研究團隊,我們正朝著真正的人工智慧邁進一大步。但是,確切地說,什麼是機器學習能產生影響的下一個主要領域?

物聯網(Internet of Things),或者說IOT,是指你家裡和辦公室裡聯網的物理設備。流行的物聯網設備是智能燈泡,其銷售額在過去幾年裡猛增。隨著機器學習的進步,物聯網設備比以往任何時候都更聰明、更複雜。機器學習有兩個主要的與物聯網相關的應用:使你的設備變得更好和收集你的數據。讓設備變得更好是非常簡單的:使用機器學習來個性化您的環境,比如,用面部識別軟體來感知哪個是房間,並相應地調整溫度和AC。收集數據更加簡單,通過在你的家中保持網絡連接的設備(如亞馬遜回聲)的通電和監聽,像Amazon這樣的公司收集關鍵的人口統計信息,將其傳遞給廣告商,比如電視顯示你正在觀看的節目、你什麼時候醒來或睡覺、有多少人住在你家。

 

在過去的幾年裡,我們看到了聊天機器人的激增,成熟的語言處理算法每天都在改進它們。聊天機器人被公司用在他們自己的行動應用程式和第三方應用上,比如Slack,以提供比傳統的(人類)代表更快、更高效的虛擬客戶服務。

 

我個人最喜歡的下一個大型機器學習項目是最遠離廣泛生產的項目之一。然而,目前有幾家大型公司正在開發無人駕駛汽車,如雪佛蘭、Uber和Tsla。這些汽車使用了通過機器學習實現導航、維護和安全程序的技術。一個例子是交通標誌傳感器,它使用監督學習算法來識別和解析交通標誌,並將它們與一組標有標記的標準標誌進行比較。這樣,汽車就能看到停車標誌,並認識到它實際上意味著停車,而不是轉彎,單向或人行橫道。

這就是我們進入機器學習世界的非常短暫的旅程。感謝觀看。

1.https://cloud.withgoogle.com/build/data-analytics/explore-history-machine-learning/

2.https://medium.com/meta-design-ideas/math-stats-and-nlp-for-machine-learning-as-fast-as-possible-915ef47ced5f

原文連結:

https://medium.com/@lizzie_turner/lets-talk-about-machine-learning-ddca914e9dd1

人工智慧領域主題知識資料查看與加入專知人工智慧知識星球服務群

【專知AI服務計劃】專知AI知識技術服務會員群加入與人工智慧領域26個主題知識資料全集獲取。歡迎微信掃一掃加入專知人工智慧知識星球群,獲取專業知識教程視頻資料和與專家交流諮詢

請PC登錄www.zhuanzhi.ai或者點擊閱讀原文,註冊登錄專知,獲取更多AI知識資料

請加專知小助手微信(掃一掃如下二維碼添加),加入專知主題群(請備註主題類型:AI、NLP、CV、 KG等)交流~

關注專知公眾號,獲取人工智慧的專業知識!

點擊「閱讀原文」,使用專知

相關焦點

  • 機器學習漫遊指南 最完整的入門書單(外文版)
    在雷鋒網所篩選的學習資源中,這堪稱是迄今為止最全面、最完整、權威性比較高的一份 ML 書單,涵蓋了最值得學習者、從業者、開發者認真研讀的精品書目。這份指南適合多樣背景的讀者:從想要了解機器學習的普通人,到入門新手,再到高階開發者和學術研究人員。因此,雷鋒網對其進行編譯整理,特來與大家分享。
  • 機器學習入門經典課程,臺大李宏毅教授機器學習課程 2019 版來啦
    雷鋒網 AI 科技評論按,提到臺灣大學李宏毅教授,想必很多同學馬上會想到他的機器學習課程。近日,李教授機器學習課程 2019 年版視頻&課程資料終於上線啦~那麼我們在哪裡可以學習這個課程呢?目前,他是國立臺灣大學電氣工程系助理教授,研究方向是機器學習、語音識別和語意理解。 在此前,他在 2017 年開設過《機器學習》的課程,受到很多同學的歡迎,好評如潮。讓我們看看知乎上的網友是怎麼評價李宏毅教授的課程的: 有人說,李教授的課幽默風趣、重點突出、基礎知識和最新技術一應俱全,PPT 也做得簡潔易懂,非常用心。
  • 開發 | 開發者入門必讀:最值得看的十大機器學習慕課教程
    截至目前,國內開設人工智慧(AI)專業的高校不多,相當多的開發者是跨界入門,需要自學大量知識並摸索。因而優質的學習資源至關重要。因此,編輯搜集了全世界範圍內最受歡迎的機器學習課程,整理成這份「機器學習十大入門公開課」盤點,集中呈現給各位。這份推薦榜頗費心血,綜合考慮了難易、側重點、時效性等諸多因素,希望能幫助大家找到最適合自己的學習資源。
  • 普通人投資理財,從入門到精通,必讀的28本書
    認知是建立在讀書之上,我個人對投資很熱愛,也有一些淺顯的理解,分享下我的投資理財書單:01 理財啟蒙1、《小狗錢錢》年輕人想要踏入投資理財,必讀的一本書,也有人說這是一本兒童讀物,也正是其淺顯易懂的文字
  • 關於機器學習,這可能是目前最全面最無痛的入門路徑和資源!
    但是,各位童鞋,不要慌也不要怕......李傑克有自信這應該是目前你在網上能夠讀到的最全面、最良心、最友好的關於機器學習入門路徑和資源分享的文章了。 那我這篇文章的目的就是幫你釐清入門機器學習需要的最最最基本的數學知識以及它們在機器學習中可能出現的地方,讓大家不要太糾結數學,可以儘快進入到機器學習的學習中。 需要強調的是,機器學習中數學遠遠不止這些,我也有意為大家過濾了很多在入門時不需要太關注的知識點,基本上,大家把我下面提到的知識點搞明白得差不多,入門機器學習也算夠了。
  • AI | 怎樣快速入門機器學習和深度學習?
    編者按:入門機器學習和深度學習並不是一件容易的事情。需要學習大量的知識,初學者常常會迷茫不知所措。現在我們給你帶來一篇純乾貨,幫助你入門機器學習和深度學習。機器學習算法書籍:《統計學習方法》:李航博士的經典教材。用最精煉的語言描述機器學習算法,轉行AI必讀書籍《機器學習》:周志華教授的西瓜書。統計學習方法涵蓋面太窄,配合西瓜書來擴展寬度。《python機器學習及實現》:適合入門,學習曲線平滑,理論書看累了,就跟著這本書打一遍代碼,對kaggle就會大致的了解。
  • 機器學習入門線路
    另外,我的線路不求全面和仔細,我只提出一種可靠性最高的線路給大家,大家可以根據自己的實際情況參考,開始之前記住一點:入門玩家有簡單模式,高手玩家有困難模式,簡單模式的收穫肯定沒有困難模式高,當然的,入門玩家為了得到更大的收益可以先在簡單模式練習然後再上困難模式,遊戲怎麼玩都是自己喜歡的策略,但是值得關注的是,只有遊戲通關了才會有收益。
  • 我的機器學習入門路線圖
    對應這一問題,紅色石頭碰巧也在知乎上看到有人提問,就把自己的入門學習經驗好好總結了一番,包括各種資源、課程筆記和建議,以及紅色石頭切身經歷的機器學習路線圖。希望對你有所幫助。沒錯,就是放棄海量資料!在我們想要入門機器學習的時候,往往會搜集很多資料,什麼 xx學院機器學習內部資源、機器學習從入門到進階百 G 資源、xx 人工智慧教程,等等。
  • 【書單推薦】機器學習入門書單
    這本書最大的優勢就是裡面沒有理論推導和複雜的數學公式,是很不錯的入門書。目前中文版已經脫銷,對於有志於這個領域的人來說,英文的pdf是個不錯的選擇,因為後面有很多經典書的翻譯都較差,只能看英文版,不如從這個入手。還有,這本書適合於快速看完,因為據評論,看完一些經典的帶有數學推導的書後會發現這本書什麼都沒講,只是舉了很多例子而已。
  • 機器學習入門必讀:6種簡單實用算法及學習曲線、思維導圖
    有的人說機器學習入門並不難,有的人會覺得機器學習難以理解。那麼該如何去學習機器學習這種技術與方法呢?在本文當中,我們將介紹掌握機器領域知識的學習曲線、技術棧以及常用框架。01 機器學習算法1.舉個簡單例子,我們可以通過計算得出在某些情況下伺服器接收請求數量與伺服器CPU、內存佔用壓力之間的關係。最簡單的回歸算法就是線性回歸,相信大家都對線性回歸有所了解。雖然線性回歸比較簡單,但是越簡單粗暴的算法在面對有些實際問題的時候就越實用。
  • 入門級攻略:機器學習 VS. 深度學習
    ,作者:Faizan Shaikh,譯者:李烽,審校:段志成-海棠摘要: 本文以淺顯易懂的語言介紹了機器學習和深度學習的定義及應用,以及在源數據要求,硬體支持,特徵工程、問題解決方式、執行時間及可解釋性等方面的區別,對於新手入門有很大啟示意義。楔子:機器學習和深度學習現在很火,你會發現突然間很多人都在談論它們。
  • 李宏毅《機器學習》完整筆記 —— 這可能是Github上最好的機器學習資源
    開源最前線(ID:OpenSourceTop) 猿妹綜合整理
  • Java入門失敗的3條忠告,小白必讀
    對零基礎的小白來說,花大量的時間去看書,看視頻,缺乏練習,缺乏項目實戰,缺乏人員指導答疑。沒有專業系統的學習方法,最終耗盡了自己的耐心,灰溜溜放棄。對於0基礎入門的小夥伴,如果你首先就選擇了看書,那麼你可以直接放棄了~一個零基礎的小學生,你讓他讀《四書五經》,字還沒認全,就去讀晦澀難懂的文言文,你是魔鬼嗎~如果有位大師先給你講了視頻課程,像易中天給你生動有趣的講三國,這樣通俗易懂的入門方式大家會比較接受的,世上又多了些攻城獅。
  • 機器學習入門
    機器學習理論主要是設計和分析一些讓計算機可以自動「學習」的算法。機器學習算法是一類從數據中自動分析獲得規律,並利用規律對未知數據進行預測的算法。因為學習算法中涉及了大量的統計學理論,機器學習與統計推斷學聯繫尤為密切,也被稱為統計學習理論。算法設計方面,機器學習理論關注可以實現的,行之有效的學習算法。
  • 這可能是全網最受推薦的25本Python書籍
    最近一位名為Pierre de Wulf 的網友為了找出那些在「最佳編程書籍」列表出現次數最多的書籍,用Python編寫了腳本,拉取了大量的相關數據,總結了最受推薦的編程書籍、Python書籍、Java書籍和JavaScript書籍,以下是Python書籍榜單:本書將複雜的編程概念分解成簡單的步驟,簡單易懂。作者通過多年的教學經驗精心挑選出了有特點的例子,手把手地實例教學。
  • 10本機器學習和數據科學的必讀書籍推薦
    雷鋒網按:Matthew Mayo 是知名數據科學網站 KDnuggets 的副主編,同時也是一位資深的數據科學家、深度學習技術愛好者,在機器學習和數據科學領域具有豐富的科研和從業經驗。近日,他在 KDnuggets 上推薦了一份機器學習和數據科學相關的免費必讀書單,雷鋒網特來與大家分享。
  • 開發者入門必讀:最值得看的十大機器學習公開課
    因此,雷鋒網搜集了全世界範圍內最受歡迎的機器學習課程,整理成這份「機器學習十大入門公開課」盤點,集中呈現給各位。這份推薦榜頗費心血,綜合考慮了難易、側重點、時效性等諸多因素,希望能幫助大家找到最適合自己的學習資源。這些課程全部免費開放,但有些需翻牆,有的缺少中文字幕。1.
  • 小白必看的機器學習入門知識
    人工智慧、深度學習以及機器學習之間的關係是怎樣的呢?一、為什麼最近幾年人工智慧再次火爆?二、人工智慧、機器學習以及深度學習是什麼樣的關係?圖1 機器學習在人工智慧中的地位從上面的圖中我們可以知道:人工智慧的領域範圍最廣,深度學習領域最窄。
  • 一周入門機器學習靠譜嗎?這有一份詳細的學習日程表
    」這篇文章來自於medium,一位作者親歷了一周入門機器學習後,分享他的「從下到上」的學習經驗給各位,希望給那些有興趣入門機器學習的讀者一個容易上手的詳細日程表。當你們順著再往下學習,你們會意識到獲取和清洗數據的時間會比實際機器學習操作的時間還要多很多。因此有能力寫出腳本從文件和網頁上抓取到數據是成為機器學習專家的必要技能。 之後我還反覆看了好幾遍這個視頻,在我被問題卡住的時候很有幫助,建議你們也多看幾遍。然而,如果你已經知道怎麼從網站上獲得數據,這個教程可能不是最合適的,大段大段的圍繞著數據的獲取。
  • 機器學習/深度學習入門資料匯總
    我自己在最開始的時候也有同樣的困惑,同樣在搜尋引擎和論壇裡翻找答案。但大多數答案並不怎麼讓人滿意:搜索結果要麼星稀零散,只見樹木不見森林;要麼過於詳盡,讓人無從下手(很多資料作者自己都沒看過)。在這篇文章裡,我把自己在學習過程中的參考資料進行了梳理。一方面,希望能給你一個相對系統的學習路線參考;另一方面,自己真實的實踐經歷,遇過坎,掉過坑,希望能給正準備入門的同學更多真實的借鑑。