選自towardsdatascience 作者:Daniel Bourke 機器之心編譯 參與:韓放、一鳴
「我想學習機器學習和人工智能,該從哪開始呢?」 從這里開始。 兩年前,我開始在網(wǎng)上自學機器學習,并且通過 YouTube 和博客分享了我的學習過程。我并不知道我在做什么,在決定開始學習機器學習之前我從沒寫過代碼。 當人們發(fā)現(xiàn)我的作品,他們通常會私信并提問。我不一定知道所有的答案,但我會盡量回復。人們最常問的問題是:「該從哪開始?」,其次是:「我需要多少數(shù)學基礎?」今天早上我就回答了一堆這樣的問題。 有人告訴我他已經(jīng)開始學習 Python 并打算學習機器學習了,但不知道下一步該做什么。 「我已經(jīng)學習了 Python,下一步該做什么?」 我回復了一系列學習的步驟,并且復制到了這里。如果你想成為一個機器學習從業(yè)者,卻不知道怎么寫代碼的話,可以把本文當作一個大綱。我的學習風格是代碼優(yōu)先:先把代碼運行起來,再根據(jù)需要學習理論、數(shù)學、統(tǒng)計以及概率等方面的東西,而不是一開始就學理論。 記住,開始學習機器學習你會面臨很多阻礙。別急,慢慢來。把這篇文章添加到收藏夾,以便隨時參考。 我傾向于使用 Python,因為我是從 Python 開始的,并且一直在持續(xù)使用它。你也可以用其他語言,但本文的所有步驟都是基于 Python 的。 學習 Python、數(shù)據(jù)科學工具和機器學習概念 問我問題的那些郵件作者們說他們已經(jīng)學了一些 Python。但這一步也同樣適用于新手?;◣讉€月的時間學習 Python 編程和不同的機器學習概念。這兩部分知識你都會需要。 在學習 Python 編程的同時,練習使用 Jupyter 和 Anaconda 等數(shù)據(jù)科學工具?;◣讉€小時來研究一下,它們是用來做什么的以及為什么要使用它們。 學習資源
學習通過 Pandas、Numpy 和 Matplotlib 進行數(shù)據(jù)分析、操作和可視化 一旦你已經(jīng)掌握了一些 Python 技巧,就會開始想要學習如何處理和操作數(shù)據(jù),為了實現(xiàn)這一目的,你需要熟悉 Pandas、Numpy 和 Matplotlib。
學習資源
借助 scikit-learn 學習機器學習 現(xiàn)在你已經(jīng)掌握了操作和可視化數(shù)據(jù)的技能,是時候?qū)W習在數(shù)據(jù)中尋找模式了。scikit-learn 是一個 Python 庫,它內(nèi)置了許多有用的機器學習算法供你使用,它還提供了許多其他有用的函數(shù)來探究學習算法的學習效果。 重點在于學習都有什么樣的機器學習問題,比如分類和回歸,什么樣的算法最適合解決這些問題?,F(xiàn)在還不需要從頭開始理解每個算法,先學習如何應用它們。 學習資源
學習深度學習神經(jīng)網(wǎng)絡 深度學習和神經(jīng)網(wǎng)絡在沒有太多結(jié)構(gòu)的數(shù)據(jù)上最有效。二維數(shù)據(jù)雖然有結(jié)構(gòu),圖像、視頻、音頻文件和自然語言文本也有,但不會太多。 小貼士:在大多數(shù)情況下,你會想對結(jié)構(gòu)化數(shù)據(jù)使用一組決策樹(隨機森林或 XGBoost 之類的算法),而對于非結(jié)構(gòu)化數(shù)據(jù),你會想使用深度學習或遷移學習(使用預先訓練的神經(jīng)網(wǎng)絡并將其用于你的問題)。 你可以開始把這樣的小貼士用一張便條記錄,然后邊學習邊收集這些信息。 學習資源
其他課程和書籍 在學習過程中,最理想的情況是你可以用自己的小項目來練習所學的東西。這不必是復雜的,需要改變世界的事情,但你可以說「我用 X 做了這個」。然后通過 github 或博客分享你的工作。github 用于展示你的代碼,博客文章用于展示你如何表達自己所做的工作。你應該為每個項目都發(fā)布一下這些內(nèi)容。申請一份工作的最好方法是你已經(jīng)做完了工作要求做的事情。分享你的工作是向未來的潛在雇主展示你能力的好方法。 在你熟悉了如何使用不同的機器學習和深度學習框架之后,你可以嘗試通過從頭開始構(gòu)建它們來鞏固你的知識。你不必總是在生產(chǎn)或從事機器學習時這樣做,但是從內(nèi)部了解事情是如何工作的將有助于你建立自己的工作。 學習資源
答疑 每一步需要多長時間? 你可能會花 6 個月或更長的時間。別著急,學習新事物需要時間。作為一名數(shù)據(jù)科學家或機器學習工程師,你正在培養(yǎng)的主要技能是如何針對數(shù)據(jù)提出好的問題,然后使用你的工具來嘗試尋找答案。 有時候你會覺得自己什么都沒學到。甚至倒退。忽略它。不要以天為單位來衡量,看看你一年后有什么樣的進步。 我在哪里可以學到這些技能? 我在上面列出了一些資源,它們都是在線的,而且大部分都是免費的,類似的資源還有很多。 DataCamp (http:///datacampmrdbourke) 是一個很好學習網(wǎng)站。另外,我的 Machine Learning and Artificial Intelligence resources database (https:///AIMLresources) 整理了免費和付費的學習資料。 記住,作為數(shù)據(jù)科學家或機器學習工程師,很大一部分工作是要解決問題。通過你的第一個作業(yè)探索這里的每一個步驟,并創(chuàng)建你自己的課程來幫助學習。 如果你想知道一個自我引導的機器學習課程的例子是什么樣子的,看看我的 Self-Created AI Masters Degree (https:///aimastersdegree)。這是我在過去 9 個月內(nèi)從零編碼變成機器學習工程師的過程。它不是完美的,但是我的真實經(jīng)歷,因此你可以試試。 統(tǒng)計怎么辦?數(shù)學怎么辦?概率呢? 實踐過程中你會學到這些東西的。先從代碼開始。把代碼運行起來。在運行代碼之前,嘗試學習所有的統(tǒng)計、數(shù)學、概率知識,就像是在試圖煮沸大海。它會讓你退縮。如果代碼不運行,統(tǒng)計、數(shù)學和概率都不重要。先運行起來,然后用你的研究技巧來驗證它是否正確。 證書? 證書很好,但你不是為了證書而學習,而是為了提高技能。不要和我犯同樣的錯誤,不要認為證書越多代表技能越多,并不是這樣的。通過上述課程和資源建立知識基礎,然后通過自己的項目完善專業(yè)知識(這些是課程無法傳授的知識)。 參考鏈接:https:///5-beginner-friendly-steps-to-learn-machine-learning-and-data-science-with-python-bf69e211ade5 |
|
來自: 星光閃亮圖書館 > 《機器學習與人工智能》