如果你希望做數(shù)據(jù)科學(xué)家或者機(jī)器學(xué)習(xí)工程師,希望能找到用于數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)、數(shù)據(jù)分析和深度學(xué)習(xí)的最佳 Python 庫(kù),這篇文章將會(huì)對(duì)你有很大的幫助。
數(shù)據(jù)科學(xué)家需要一種能夠?qū)?shù)據(jù)進(jìn)行清理、轉(zhuǎn)換、分析和可視化的工具,本文提到的這 10 款工具可以幫助你成為更優(yōu)秀的數(shù)據(jù)科學(xué)家。
對(duì)于剛開始從事數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的人來(lái)說(shuō),我首先要恭喜你們,因?yàn)槟銈円呀?jīng)做出了正確的決定并且學(xué)習(xí)了有用的技術(shù)。但是學(xué)習(xí)這些技術(shù)并不容易,有很多選擇要做,每個(gè)選擇都有自己的結(jié)果。
當(dāng)我開始我的機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)之旅時(shí),我不得不從 R 和 Python 這兩種編程語(yǔ)言中選擇合適的,因?yàn)檫@兩種語(yǔ)言都做得很好。
我最后還是選擇了 Python,原因是 Python 的社區(qū)規(guī)模更大,通用性更高,并且之前也有過(guò)編寫 Python 代碼的經(jīng)歷。不過(guò),我之所以選擇 Python 作為數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的原因,那就是 Python 有很多非常棒的庫(kù)。
今天,我將向你介紹其中一些很棒的庫(kù),如 TensorFlow、NumPy、Pandas、SciPy、Scikit-learn、Seaborn、Keras 和 Matplotlib。我知道還有很多庫(kù),但以我有限的經(jīng)驗(yàn)和接觸,到目前為止我只聽說(shuō)過(guò)本文提到的這些主要庫(kù)。
當(dāng)我遇到新的庫(kù)時(shí),我肯定會(huì)在這個(gè)列表中添加新的庫(kù),但在此之前,了解這些庫(kù)會(huì)對(duì)你有很大幫助,特別是如果你也在使用 Python 學(xué)習(xí)數(shù)據(jù)科學(xué)、人工智能和機(jī)器學(xué)習(xí)。
不管你是新手,還是對(duì)數(shù)據(jù)科學(xué)有一定的研究,學(xué)習(xí)這些庫(kù)能讓你更有效率,也能提升你的形象。另外,如果你是個(gè)新手,我推薦你從實(shí)踐課程開始,從頭學(xué)習(xí) Python 和數(shù)據(jù)科學(xué)。
不多說(shuō)了,下面是對(duì)一些最流行的數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的 Python 庫(kù)的基本介紹。為使說(shuō)明簡(jiǎn)潔,我盡量說(shuō)明簡(jiǎn)短,并給出它的資源,以了解更多信息。
由于我也在學(xué)習(xí) Python 和機(jī)器學(xué)習(xí),那么將來(lái)我會(huì)對(duì)這些庫(kù)進(jìn)行詳細(xì)的闡述,因?yàn)槟阒辽傩枰黄恼聛?lái)詳細(xì)說(shuō)明它們。
這是最流行的機(jī)器學(xué)習(xí)庫(kù)之一,你很有可能已經(jīng)聽說(shuō)過(guò)它了。你可能知道 TensorFlow 來(lái)自谷歌,是由他們的谷歌大腦團(tuán)隊(duì)發(fā)明的,并用于 RankBrain 算法,該算法為谷歌搜索引擎上的數(shù)百萬(wàn)個(gè)搜索問題提供動(dòng)力。
一般來(lái)說(shuō),它是一個(gè)符號(hào)數(shù)學(xué)庫(kù),也被用于機(jī)器學(xué)習(xí)應(yīng)用,如神經(jīng)網(wǎng)絡(luò)。TensorFlow 有很多應(yīng)用,你可以在網(wǎng)上找到很多故事,比如一個(gè)日本農(nóng)民如何使用 TensorFlow 來(lái)分揀黃瓜。
項(xiàng)目地址:
https://github.com/tensorflow/tensorflow
創(chuàng)建機(jī)器學(xué)習(xí)和基于深度學(xué)習(xí)的解決方案的主要問題之一是,實(shí)現(xiàn)它們可能很繁瑣,需要編寫許多行復(fù)雜的代碼。Keras 是一個(gè)庫(kù),使你更容易創(chuàng)建這些深度學(xué)習(xí)解決方案。
只需幾行代碼,你就可以創(chuàng)建一個(gè)可能需要數(shù)百行傳統(tǒng)代碼的模型。
項(xiàng)目地址:
https://github.com/keras-team/keras
這是另一個(gè)流行的機(jī)器學(xué)習(xí)的 Python 庫(kù)。事實(shí)上,Scikit-learn 是機(jī)器學(xué)習(xí)的主要庫(kù)。它有用于預(yù)處理、交叉驗(yàn)證和其他類似目的的算法和模塊。
其中一些算法涉及回歸、決策樹、集合建模和非監(jiān)督學(xué)習(xí)算法,如聚類。
項(xiàng)目地址:
https://github.com/scikit-learn/scikit-learn
NumPy 是另一個(gè)用于機(jī)器學(xué)習(xí)和重度計(jì)算的精彩 Python 庫(kù)。NumPy 促進(jìn)了簡(jiǎn)單而有效的數(shù)字計(jì)算。它有許多其他的庫(kù)建立在它的基礎(chǔ)上,如 Pandas。
你至少應(yīng)該確保學(xué)習(xí) NumPy 數(shù)組,它是基本的,在機(jī)器學(xué)習(xí)、數(shù)據(jù)科學(xué)和基于人工智能的程序中有很多應(yīng)用。
項(xiàng)目地址:
https://github.com/numpy/numpy
這是一個(gè)用于科學(xué)和技術(shù)計(jì)算的 Python 庫(kù)。它將為你提供科學(xué)和技術(shù)計(jì)算所需的所有工具。
它有優(yōu)化、線性代數(shù)、積分、插值、特殊函數(shù)、快速傅立葉變換、信號(hào)和圖像處理、獨(dú)依賴估計(jì)求解器和其他任務(wù)等模塊。
有一個(gè)很好的免費(fèi)課程來(lái)學(xué)習(xí) SciPy 與 Python:《深度學(xué)習(xí)的先決條件:Python 中的 Numpy ?!罚?em>Deep Learning Prerequisites: The Numpy Stack in Python)。這是我的最愛,有超過(guò) 10 萬(wàn)名其他開發(fā)者也報(bào)名參加了這個(gè)課程。你可以在它轉(zhuǎn)換為付費(fèi)課程之前看看這個(gè)。
項(xiàng)目地址:
https://github.com/scipy/scipy
如果你需要繪圖,那么 Matlotlib 是一個(gè)選擇。它提供了一個(gè)靈活的繪圖和可視化庫(kù),Matplotlib 很強(qiáng)大。但是,它很麻煩,所以,你可以選擇 Seaborn 來(lái)代替。
項(xiàng)目地址:
https://github.com/matplotlib/matplotlib
這是一個(gè)建立在 NumPy 之上的 Python 庫(kù)。它在數(shù)據(jù)結(jié)構(gòu)和探索性分析方面很方便。它提供的另一個(gè)重要功能是 DataFrame,一個(gè)具有潛在不同類型的列的二維數(shù)據(jù)結(jié)構(gòu)。
Pandas 將是你一直需要的最重要的庫(kù)之一,這就是為什么學(xué)好 Pandas 非常重要。
項(xiàng)目地址:
https://github.com/pandas-dev/pandas
和 Matplotlib 一樣,它也是一個(gè)很好的繪圖庫(kù),但有了 Seaborn,繪制普通的數(shù)據(jù)可視化就比以前更容易了。
它建立在 Matplotlib 的基礎(chǔ)上,提供了一個(gè)更令人愉快的高級(jí)包裝器。你應(yīng)該學(xué)習(xí)有效的數(shù)據(jù)可視化。
項(xiàng)目地址:
https://github.com/seaborn
這是 Python 開發(fā)人員在計(jì)算機(jī)視覺方面的另一個(gè)重要庫(kù)。如果你不知道,計(jì)算機(jī)視覺是機(jī)器學(xué)習(xí)和人工智能中最令人興奮的領(lǐng)域之一。
它在許多行業(yè)都有應(yīng)用,如自動(dòng)駕駛汽車、機(jī)器人、增強(qiáng)現(xiàn)實(shí)等,而 OpenCV 是最好的計(jì)算機(jī)視覺庫(kù)。
盡管你可以用許多編程語(yǔ)言如 C++ 來(lái)使用 OpenCV,但它的 Python 版本對(duì)初學(xué)者友好,易于使用,這使它成為一個(gè)偉大的庫(kù),被列入這個(gè)列表。
如果你想學(xué)習(xí) Python 和 OpenCV 進(jìn)行基本的圖像處理,并進(jìn)行圖像分類和物體檢測(cè),并且需要一個(gè)課程,那么我強(qiáng)烈建議你參加一個(gè)實(shí)踐課程,該課程將通過(guò)幾個(gè)實(shí)驗(yàn)和練習(xí)教你一個(gè) OpenCV。
項(xiàng)目地址:
https://github.com/opencv/opencv
這是另一個(gè)用于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的令人興奮和強(qiáng)大的 Python 庫(kù),是每個(gè)數(shù)據(jù)科學(xué)家都應(yīng)該學(xué)習(xí)的東西。
如果你不知道,PyTorch 是 Facebook 開發(fā)的最好的深度學(xué)習(xí)庫(kù)之一,可用于深度學(xué)習(xí)應(yīng)用,如人臉識(shí)別自動(dòng)駕駛汽車等。
你也可以使用 PyTorch 來(lái)構(gòu)建機(jī)器學(xué)習(xí)模型,如 NLP 和計(jì)算機(jī)視覺,僅舉幾例。你也可以使用 PyTorch 來(lái)創(chuàng)建深度神經(jīng)網(wǎng)絡(luò)。
項(xiàng)目地址:
https://github.com/pytorch/pytorch
這就是關(guān)于數(shù)據(jù)科學(xué)、機(jī)器學(xué)習(xí)和人工智能的一些最佳 Python 庫(kù)的全部?jī)?nèi)容。根據(jù)你在機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)方面的具體工作,你可以選擇這些庫(kù)來(lái)幫助你。
如果你重新開始,我建議你學(xué)習(xí) TensorFlow 或 Scikit-learn,在我看來(lái),這是兩個(gè)最受歡迎的機(jī)器學(xué)習(xí)的主要庫(kù)。
原文鏈接:
https://dzone.com/articles/10-best-data-science-data-analysis-and-machine-lea
聯(lián)系客服