在下面的教程中你可能看到一些其他的庫(kù),比如說(shuō) Seaborn,一個(gè)基于Matplotlib的數(shù)據(jù)可視化庫(kù).上述包是廣泛Python機(jī)器學(xué)習(xí)任務(wù)的核心,然而,讓你在下面引用時(shí),理解這些適應(yīng)更多相關(guān)的包而不會(huì)懵.
第四步 開始Python機(jī)器學(xué)習(xí)
Python. √
Machine learning fundamentals. √
Numpy. √
Pandas. √
Matplotlib. √
吉時(shí)已到,我們開始使用python標(biāo)準(zhǔn)機(jī)器學(xué)習(xí)庫(kù)–scikit-learn實(shí)現(xiàn)機(jī)器學(xué)習(xí)算法吧.
下面大多數(shù)教程和聯(lián)系都在IPython(Jupyter)Notebook中實(shí)現(xiàn).它是Python執(zhí)行的一個(gè)交互式環(huán)境.這些IPython NOtebook可以選擇在線預(yù)覽或下載,并且在你電腦本地交互.
iPython Notebook Overview?from Stanford
另外請(qǐng)注意,下面教程來(lái)源于許多在線資源.所有Notebooks 都?xì)w功于作業(yè),你發(fā)現(xiàn)沒有正確工作,請(qǐng)讓我知道,這種情況會(huì)盡快糾正.我非常想向Jake VanderPlas, Randal Olson, Donne Martin, Kevin Markham, and Colin Raffel等人致敬.因?yàn)樗麄兩衿婷赓M(fèi)可用的資源(50字好評(píng)已給,請(qǐng)返現(xiàn)).
第一個(gè)教程從scikit-learn開始,在開始下面步驟之前,我建議先做這些.
scikit-learn庫(kù)的一般介紹,Python中最常用的機(jī)器學(xué)習(xí)庫(kù),涵蓋了KNN算法:
An Introduction to scikit-learn?by Jake VanderPlas
更深入的介紹,包括知名數(shù)據(jù)集開始到項(xiàng)目完成:
Example Machine Learning Notebook?by Randal Olson
重點(diǎn)放在scikit-learn中不同模型的評(píng)估策略,涵蓋了訓(xùn)練集/測(cè)試集拆分(后面這句話的點(diǎn)沒get到呢):
Model Evaluation?by Kevin Markham
第五步 python機(jī)器學(xué)習(xí)主題
有了 scikit-learn基礎(chǔ)后,我們可以對(duì)常見,實(shí)用的算法做進(jìn)一步深入了解.我們從K-means聚類開始,一個(gè)廣為人知的機(jī)器學(xué)習(xí)算法.解決無(wú)監(jiān)督學(xué)習(xí)問題一個(gè)簡(jiǎn)單有效的方法:
k-means Clustering?by Jake VanderPlas
接下來(lái),我們看看分類問題.了解歷史上最流行分類算法之一:
Decision Trees?via The Grimm Scientist
讓我們看看連續(xù)數(shù)值預(yù)測(cè):
Linear Regression?by Jake VanderPlas
我們可以從過Logistic回歸解決分類問題:
Logistic Regression?by Kevin Markham
第六步 深入python機(jī)器學(xué)習(xí)主題
我們已經(jīng)開始scikit-learn,現(xiàn)在讓我們將注意轉(zhuǎn)向高級(jí)主題.首先SVM(支持向量機(jī)).一個(gè)將復(fù)雜數(shù)據(jù)映射到高維空間的not-necessarily-linear分類
Support Vector Machines?by Jake VanderPlas
接下來(lái),隨機(jī)森林,一個(gè)組合分類,通過考察Kaggle Titanic競(jìng)賽逐步引導(dǎo):
Kaggle Titanic Competition (with Random Forests)?by Donne Martin
降維是減少正在考慮問題中變量數(shù)目的方法.PCA(Principal Component Analysis,主成分分析)是一種非監(jiān)督的降維方法:
Dimensionality Reduction?by Jake VanderPlas
在進(jìn)入到最后一步之前,我們可以花時(shí)間考慮下,我們已經(jīng)在相對(duì)較短的時(shí)間內(nèi)走了很長(zhǎng)一段路.
使用Python和它的機(jī)器學(xué)習(xí)庫(kù),我們已經(jīng)介紹一些最常見和總所周知的機(jī)器學(xué)習(xí)算法(K-means,支持向量機(jī),KNN),考察了強(qiáng)大的組合技術(shù)(隨機(jī)森林),研究了支持任務(wù)的額外機(jī)器學(xué)習(xí)算法(降維,模型驗(yàn)證技術(shù)).隨著這些基礎(chǔ)的機(jī)器學(xué)習(xí)技巧的學(xué)習(xí),我們已經(jīng)擁有了一些使用的技能.
第七步 python深度學(xué)習(xí)
深度學(xué)習(xí)無(wú)處不在.深度學(xué)習(xí)構(gòu)建與神經(jīng)網(wǎng)絡(luò)研究可以追溯到十幾年前,但是追溯到過去幾年的最新進(jìn)展顯著增加.如果你不熟悉深度學(xué)習(xí),KDnuggets有很多文教詳細(xì)介紹了眾多最新創(chuàng)新,成就和令人贊譽(yù)的技術(shù).
最后一步并不對(duì)深度學(xué)習(xí)軟件分類,介紹2個(gè)引領(lǐng)當(dāng)代Python深度學(xué)習(xí)庫(kù)的幾個(gè)簡(jiǎn)單的網(wǎng)絡(luò)實(shí)現(xiàn).對(duì)于有興趣挖掘更深的深度學(xué)習(xí)者,我建議你先從一下免費(fèi)書開始:
*?Neural Networks and Deep Learning?by Michael Nielsen
Theano?
Theano是第一個(gè)Python深度學(xué)習(xí)庫(kù),按作者的話來(lái)說(shuō):
Theano是一個(gè)python的庫(kù),可以讓你高效地定義,優(yōu)化,評(píng)估包含多維數(shù)據(jù)的數(shù)學(xué)表達(dá)式,下面Theano的機(jī)器學(xué)習(xí)入門教程是非常長(zhǎng)的,但相當(dāng)?shù)陌?十分生動(dòng):?
*?Theano Deep Learning Tutorial?by Colin Raffel
Caffe?
另一個(gè)測(cè)試執(zhí)行的庫(kù),caffe.同樣的:
Caffe是一個(gè)帶有表達(dá)式,速度和模塊化的深度學(xué)習(xí)庫(kù).由 Berkeley Vision and Learning Center (BVLC) 和社區(qū)貢獻(xiàn)者開發(fā).
我們已經(jīng)介紹了很多有趣的例子,這里再給出一個(gè), 用Caffe實(shí)現(xiàn)Google’s #DeepDream.了解了這么多,自己動(dòng)手放飛夢(mèng)想吧(另外,關(guān)于深度學(xué)習(xí)的開源軟件非常多,更多的可以看的翻譯的GitHub深度學(xué)習(xí)庫(kù),你了解多少?)。
Dreaming Deep with Caffe?via?Google’s GitHub
我沒不能保證這個(gè)過程會(huì)很快或很容易,但如果你把時(shí)間按照上面的7個(gè)步驟做,沒有任何理由,你不能達(dá)到合理水平,理解一些機(jī)器學(xué)習(xí)算法并利用Python流行的庫(kù)實(shí)現(xiàn)它,包括一些目前的深度學(xué)習(xí)研究前沿。
電子發(fā)燒友App










評(píng)論