自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一份不可多得的數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)Python庫(kù)

原創(chuàng)
人工智能 機(jī)器學(xué)習(xí) 大數(shù)據(jù)
本文全面地介紹了當(dāng)前市場(chǎng)上適合于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的優(yōu)秀 Python 庫(kù)。

【51CTO.com原創(chuàng)稿件】本文全面地介紹了當(dāng)前市場(chǎng)上適合于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的優(yōu)秀 Python 庫(kù)。

[[281799]]

 

圖片來(lái)自 Pexels

根據(jù)當(dāng)前技術(shù)界的廣泛需求,本文將以如下順序重點(diǎn)介紹,市場(chǎng)上適合于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)實(shí)現(xiàn)的優(yōu)秀 Python 軟件:

  • 數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)的介紹
  • 為什么要使用 Python 進(jìn)行數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)?
  • 用于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的 Python 庫(kù)

[[281800]]

 

數(shù)據(jù)科學(xué)與機(jī)器學(xué)習(xí)的介紹

眾所周知,我們正處在一個(gè)大數(shù)據(jù)的時(shí)代,數(shù)據(jù)是驅(qū)動(dòng)機(jī)器模型發(fā)展的“燃料”。

實(shí)際上,數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)都屬于技能范疇,而不僅僅是兩項(xiàng)孤立的技術(shù)。

它們需要開發(fā)人員在技能上具備:從數(shù)據(jù)中獲得實(shí)用的見解,通過(guò)建立預(yù)測(cè)模型,進(jìn)而解決問(wèn)題的能力。

就字面定義而言:

  • 數(shù)據(jù)科學(xué),是從數(shù)據(jù)中提取有用信息,以解決實(shí)際問(wèn)題的過(guò)程。
  • 機(jī)器學(xué)習(xí),是如何通過(guò)所提供的大量數(shù)據(jù),來(lái)解決問(wèn)題的過(guò)程。

那么兩者之間的關(guān)系可以被描述為:機(jī)器學(xué)習(xí)是數(shù)據(jù)科學(xué)的一部分,它利用機(jī)器學(xué)習(xí)算法和其他統(tǒng)計(jì)學(xué)技術(shù),來(lái)獲悉數(shù)據(jù)是如何影響并發(fā)展業(yè)務(wù)的。

為什么要使用 Python 進(jìn)行數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)?

Python 在那些用于實(shí)現(xiàn)機(jī)器學(xué)習(xí)和數(shù)據(jù)科學(xué)的流行編程語(yǔ)言中排名第一。這是為什么呢?

 

①易于學(xué)習(xí):Python 使用的是非常簡(jiǎn)單的語(yǔ)法,可被用于實(shí)現(xiàn)簡(jiǎn)單的計(jì)算。

例如:將兩個(gè)字符串添加到復(fù)雜的計(jì)算過(guò)程中,以構(gòu)建出復(fù)雜的機(jī)器學(xué)習(xí)模型。

②更少的代碼:雖然為了實(shí)現(xiàn)數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)會(huì)涉及到許多種的算法,但是得益于 Python 對(duì)于預(yù)定義包的支持,我們不必從零開始編寫算法。

同時(shí),為了簡(jiǎn)單化,Python 也提供了一種“在編碼時(shí)就進(jìn)行檢查(check as you code)”的方法,進(jìn)而有效地減輕了測(cè)試代碼的工作量。

③預(yù)建庫(kù):Python 有著 100 多種預(yù)建庫(kù),可用于實(shí)現(xiàn)各種機(jī)器學(xué)習(xí)和深度學(xué)習(xí)的算法。

因此,用戶每次在數(shù)據(jù)集上運(yùn)行算法時(shí),只需通過(guò)單個(gè)命令去安裝和加載必要的程序包即可。

其中,比較流行的預(yù)構(gòu)建庫(kù)包括:NumPy、Keras、Tensorflow、以及 Pytorch 等。

④與平臺(tái)無(wú)關(guān):Python 可以運(yùn)行在包括:Windows、macOS、Linux、以及 Unix 等多種平臺(tái)上。

在將代碼從一個(gè)平臺(tái)轉(zhuǎn)移到另一個(gè)平臺(tái)時(shí),您可以使用諸如 PyInstaller 之類的軟件包,來(lái)解決所有依賴性的問(wèn)題。

⑤大量的社區(qū)支持:除了擁有大量的支持者,Python 還擁有多個(gè)社區(qū)與論壇,各類程序員可以在其中發(fā)布他們自己的錯(cuò)誤,并互相提供幫助。

用于數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的 Python 庫(kù)

Python 在人工智能(AI)和機(jī)器學(xué)習(xí)領(lǐng)域得到廣泛使用,其中一項(xiàng)重要的原因是:Python 提供了數(shù)千種內(nèi)置庫(kù)。

通過(guò)各種內(nèi)置的功能和方法,這些庫(kù)能夠輕松地進(jìn)行數(shù)據(jù)分析、處理、整理、以及建模等任務(wù)。

下面我們將重點(diǎn)討論如下類型的任務(wù)庫(kù):

  • 統(tǒng)計(jì)分析
  • 數(shù)據(jù)可視化
  • 數(shù)據(jù)建模與機(jī)器學(xué)習(xí)
  • 深度學(xué)習(xí)
  • 自然語(yǔ)言處理(NLP)

統(tǒng)計(jì)分析

統(tǒng)計(jì)是數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的一項(xiàng)基礎(chǔ)。所有的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)(DL)算法、及相關(guān)技術(shù)均基于統(tǒng)計(jì)學(xué)的基本原理和概念。而 Python 則專為統(tǒng)計(jì)分析提供了大量的軟件庫(kù)。

在此,我們將重點(diǎn)介紹那些能夠執(zhí)行復(fù)雜統(tǒng)計(jì)計(jì)算極具推薦價(jià)值的軟件包與內(nèi)置函數(shù)。

它們分別是:

  • NumPy
  • SciPy
  • Pandas
  • StatsModels

①NumPy

 

NumPy、或稱 Numerical Python 是最常用的 Python 庫(kù)之一。該庫(kù)的主要功能是:支持用于數(shù)學(xué)和邏輯運(yùn)算的多維數(shù)組。

用戶可以將 NumPy 用于索引、分類、整形、傳輸圖像、以及聲波類型的多維實(shí)數(shù)數(shù)組。

下面是 NumPy 的具體功能列表:

執(zhí)行從簡(jiǎn)單到復(fù)雜的數(shù)學(xué)和科學(xué)計(jì)算。

對(duì)多維數(shù)組對(duì)象提供的強(qiáng)大支持,用于處理數(shù)組元素的函數(shù)和方法集合。

提供傅里葉變換和數(shù)據(jù)處理例程。

執(zhí)行線性代數(shù)計(jì)算,這對(duì)于包括:線性回歸、邏輯回歸、樸素貝葉斯等機(jī)器學(xué)習(xí)算法,是十分必需的。

②SciPy

 

建立在 NumPy 之上的 SciPy 庫(kù),是一組子軟件包集合。它能夠協(xié)助解決與統(tǒng)計(jì)分析有關(guān)的各種基本問(wèn)題。

由于適用于處理使用了 NumPy 庫(kù)定義的數(shù)組元素,因此 SciPy 庫(kù)通常可被用于計(jì)算那些使用 NumPy,仍無(wú)法完成的數(shù)學(xué)方程式。

下面是 SciPy 的具體功能列表:

  • 通過(guò)與 NumPy 數(shù)組一起使用,它提供了一個(gè)數(shù)值積分和優(yōu)化方法的平臺(tái)。
  • 它帶有可用于矢量量化、傅立葉變換、積分、插值等子軟件包的集合。
  • 提供了完整的線性代數(shù)函數(shù)堆棧。這些函數(shù)可使用諸如 k-means 算法,來(lái)進(jìn)行聚類等高級(jí)計(jì)算。
  • 提供了對(duì)于信號(hào)處理、數(shù)據(jù)結(jié)構(gòu)、數(shù)值算法、以及創(chuàng)建稀疏矩陣等方面的支持。

③Pandas

 

作為另一個(gè)重要的統(tǒng)計(jì)庫(kù),Pandas 主要被用于統(tǒng)計(jì)、金融、經(jīng)濟(jì)學(xué)、數(shù)據(jù)分析等廣泛的領(lǐng)域。

該軟件庫(kù)主要依賴 NumPy 數(shù)組,來(lái)處理 Pandas 的數(shù)據(jù)對(duì)象。畢竟,NumPy、Pandas 和 SciPy 在執(zhí)行科學(xué)計(jì)算、以及數(shù)據(jù)處理等方面,有著深度的彼此依賴性。

下面是 Pandas 的具體功能列表:

  • 使用預(yù)定義和自定義的索引,來(lái)快速創(chuàng)建有效的 DataFrame 對(duì)象。
  • 可被用于處理大型數(shù)據(jù)集,并執(zhí)行子集、數(shù)據(jù)切片、以及索引等操作。
  • 提供用于創(chuàng)建 Excel 圖表,和執(zhí)行復(fù)雜數(shù)據(jù)分析任務(wù)的內(nèi)置功能,例如:描述性的統(tǒng)計(jì)分析,數(shù)據(jù)整理、轉(zhuǎn)換、操作、以及可視化等。
  • 提供對(duì)于處理時(shí)序數(shù)據(jù)的支持。

我個(gè)人認(rèn)為:Pandas 是處理大量數(shù)據(jù)方面的優(yōu)秀軟件庫(kù);NumPy 對(duì)于多維數(shù)組具有出色的支持;而 Scipy 則提供了一組針對(duì)執(zhí)行大多數(shù)據(jù)統(tǒng)計(jì)分析任務(wù)的子軟件包。

④StatsModels

建立在 NumPy 和 SciPy 之上的 StatsModels Python 軟件包,是創(chuàng)建統(tǒng)計(jì)模型、數(shù)據(jù)處理和模型評(píng)估的最佳選擇。

除了使用到 SciPy 庫(kù)中的 NumPy 數(shù)組和科學(xué)模型之外,它還能夠與 Pandas 相集成,以實(shí)現(xiàn)有效的數(shù)據(jù)處理。StatsModels 比較擅長(zhǎng)于統(tǒng)計(jì)計(jì)算、統(tǒng)計(jì)測(cè)試和數(shù)據(jù)探索。

下面是 StatsModels 的具體功能列表:

  • 彌補(bǔ)了 NumPy 和 SciPy 庫(kù)的缺陷,能夠執(zhí)行統(tǒng)計(jì)檢驗(yàn)和假設(shè)檢驗(yàn)。
  • 提供了 R-style 公式的實(shí)現(xiàn),以便更好地進(jìn)行統(tǒng)計(jì)分析。統(tǒng)計(jì)人員可以沿用 R 語(yǔ)言。
  • 由于它能夠廣泛地支持統(tǒng)計(jì)計(jì)算,因此通??捎糜趯?shí)現(xiàn)廣義線性模型(GLM,Generalised Linear Models)和普通最小二階線性回歸(OLM,Ordinaryleast-square Linear Regression)模型。
  • 支持包括假設(shè)檢驗(yàn)(零理論,Null Theory)在內(nèi)的統(tǒng)計(jì)檢驗(yàn)。

數(shù)據(jù)可視化

數(shù)據(jù)可視化就是通過(guò)圖形,來(lái)有效地表達(dá)來(lái)自數(shù)據(jù)的各種關(guān)鍵洞見。它包括:圖形、圖表、思維導(dǎo)圖、熱圖、直方圖、密度圖等形式,進(jìn)而研究各種數(shù)據(jù)變量之間的相關(guān)性。

 

在此,我們將重點(diǎn)介紹那些可以通過(guò)內(nèi)置函數(shù),來(lái)研究各種數(shù)據(jù)之間依賴關(guān)系的 Python 數(shù)據(jù)可視化包。

它們分別是:

  • Matplotlib
  • Seaborn
  • Plotly
  • Bokeh

①M(fèi)atplotlib

Matplotlib 是 Python 中最基本的數(shù)據(jù)可視化軟件包。它支持諸如:直方圖、條形圖、功率譜、誤差圖等各類圖形。

通過(guò)該二維圖形庫(kù),用戶可以生成各種清晰明了的圖形,這對(duì)于探索性數(shù)據(jù)分析(EDA)是至關(guān)重要的。

下面是 Matplotlib 的具體功能列表:

  • 用戶可以針對(duì) Matplotlib 選擇合適的線條樣式、字體樣式、格式化軸等功能,以便輕松地繪制出各種圖形。
  • 作為一種推理定量信息的工具,它可通過(guò)創(chuàng)建圖形,來(lái)協(xié)助用戶了解趨勢(shì)、模式并進(jìn)行關(guān)聯(lián)。
  • 作為 Matplotlib 軟件包的最佳功能之一,其 Pyplot 模塊提供了與 MATLAB 非常相似的用戶界面。
  • 提供面向?qū)ο蟮?API 模塊,可通過(guò)諸如 Tkinter、wxPython、以及 Qt 等 GUI 工具,將圖形集成到應(yīng)用程序中。

②Seaborn

 

雖然以 Matplotlib 庫(kù)為基礎(chǔ),但是與 Matplotlib 相比,Seaborn 可用于創(chuàng)建更具吸引力和描述性的統(tǒng)計(jì)圖表。

除了對(duì)數(shù)據(jù)可視化提供廣泛的支持,Seaborn 還自帶有一種面向數(shù)據(jù)集的內(nèi)置 API,可用于研究多個(gè)變量之間的關(guān)系。

下面是 Seaborn 的具體功能列表:

  • 可分析和可視化單變量和雙變量的數(shù)據(jù)點(diǎn),提供了將當(dāng)前數(shù)據(jù)與其他數(shù)據(jù)子集進(jìn)行比較的選項(xiàng)。
  • 針對(duì)各種目標(biāo)變量的線性回歸模型,支持自動(dòng)化統(tǒng)計(jì)估計(jì)和圖形化表示。
  • 通過(guò)提供對(duì)于高級(jí)抽象功能的執(zhí)行,可構(gòu)建多圖網(wǎng)格(multi-plotgrids)的復(fù)雜可視化。
  • 通過(guò)各種內(nèi)置主題,可實(shí)現(xiàn)樣式設(shè)置,并創(chuàng)建 Matplotlib 圖。

③Plotly

 

作為知名的圖形 Python 庫(kù)之一,Ploty 通過(guò)交互式圖形,以方便用戶了解目標(biāo)變量和預(yù)測(cè)變量之間的依賴性。

它可以被用于分析與可視化統(tǒng)計(jì),針對(duì)財(cái)務(wù)、商業(yè)和科學(xué)數(shù)據(jù)領(lǐng)域,生成清晰明了的圖形、子圖、熱圖、以及 3D 圖表等。

下面是 Ploty 的具體功能列表:

  • 具有 30 多種圖表類型,包括:3D 圖表、科學(xué)和統(tǒng)計(jì)圖、SVG 地圖等,可實(shí)現(xiàn)清晰的可視化。
  • 通過(guò) Python API,您可以創(chuàng)建由圖表、圖形、文本和 Web 圖像組成的公共/私有的儀表板。
  • 可創(chuàng)建基于 JSON 格式序列化的可視化圖像,用戶可以在 R、MATLAB、Julia 等不同平臺(tái)上輕松地訪問(wèn)到它們。
  • 通過(guò)名為 Plotly Grid 的內(nèi)置 API,用戶可以直接將數(shù)據(jù)導(dǎo)入 Ploty 環(huán)境。

④Bokeh

 

Bokeh 是 Python 中交互性最強(qiáng)的庫(kù)之一,可用于為 Web 瀏覽器構(gòu)建描述性的圖形表示形式。

它可以輕松處理龐大的數(shù)據(jù)集,并構(gòu)建通用圖,進(jìn)而有助于執(zhí)行廣泛的 EDA。

通過(guò)定義完善的特征,Bokeh 能夠構(gòu)建交互式的圖表、儀表板和數(shù)據(jù)應(yīng)用程序。

下面是 Bokeh 的具體功能列表:

  • 可以通過(guò)簡(jiǎn)單的命令,幫助用戶快速地創(chuàng)建復(fù)雜的統(tǒng)計(jì)圖。
  • 支持 HTML、Notebook、以及服務(wù)器形式的輸出。它還支持多種語(yǔ)言的綁定,包括 R、Python、lua、以及 Julia 等。
  • 通過(guò)與 Flask 和 Django 的集成,您可以在應(yīng)用程序上表達(dá)特定的可視化效果。
  • 通過(guò)提供對(duì)于可視化文件的支持,用戶可以將其轉(zhuǎn)換為諸如 Matplotlib、Seaborn、以及 ggplot 等其他庫(kù)。

機(jī)器學(xué)習(xí)

創(chuàng)建可以準(zhǔn)確預(yù)測(cè)的結(jié)果、并解決特定問(wèn)題的機(jī)器學(xué)習(xí)模型,是任何數(shù)據(jù)科學(xué)項(xiàng)目中最重要的部分。

然而,實(shí)施機(jī)器學(xué)習(xí)與深度學(xué)習(xí)往往會(huì)涉及到數(shù)千行的代碼。而當(dāng)您需要通過(guò)神經(jīng)網(wǎng)絡(luò)解決復(fù)雜問(wèn)題時(shí),其對(duì)應(yīng)的模型則會(huì)變得更加麻煩。

不過(guò)值得慶幸的是,通過(guò) Python 自帶的多種軟件包,我們可以無(wú)需編寫任何算法,輕松地實(shí)現(xiàn)各種機(jī)器學(xué)習(xí)的技術(shù)應(yīng)用。

 

在此,我們將重點(diǎn)介紹那些可以通過(guò)內(nèi)置函數(shù),來(lái)實(shí)現(xiàn)各種機(jī)器學(xué)習(xí)算法極具推薦價(jià)值的機(jī)器學(xué)習(xí)軟件包。

它們分別是:

  • Scikit-learn
  • XGBoost
  • ELI5

①Scikit-learn

 

作為數(shù)據(jù)建模和模型評(píng)估的 Python 庫(kù)之一,Scikit-learn 自帶了各種監(jiān)督式和無(wú)監(jiān)督式機(jī)器學(xué)習(xí)算法。

同時(shí),它可以被用于集合式學(xué)習(xí)(Ensemble Learning)和促進(jìn)式機(jī)器學(xué)習(xí)(Boosting Machine Learning)的明確定義。

下面是 Scikit 的具體功能列表:

通過(guò)提供標(biāo)準(zhǔn)的數(shù)據(jù)集(如:Iris 和 Boston House Price),以協(xié)助用戶開展機(jī)器學(xué)習(xí)。

可用于執(zhí)行監(jiān)督式和無(wú)監(jiān)督式機(jī)器學(xué)習(xí)的內(nèi)置方法,包括解析、聚類、分類、回歸、以及對(duì)各種文件進(jìn)行異常檢測(cè)。

帶有用于特征提取和特征選擇的內(nèi)置功能,可協(xié)助識(shí)別數(shù)據(jù)中的重要屬性。

通過(guò)執(zhí)行交叉驗(yàn)證,它提供了評(píng)估模型性能的不同方法,可優(yōu)化模型的性能、并調(diào)整各項(xiàng)參數(shù)。

②XGBoost

 

XGBoost 即為“極端梯度增強(qiáng)(Extreme Gradient Boosting)”,它屬于 Boosting 機(jī)器學(xué)習(xí)類 Python 軟件包。通過(guò)梯度增強(qiáng),XGBoost 能夠提高機(jī)器學(xué)習(xí)模型的性能和準(zhǔn)確性。

下面是 XGBoost 的具體功能列表:

由于是用 C++ 編寫的,因此 XGBoost 被認(rèn)為是提高機(jī)器學(xué)習(xí)模型性能最快、且有效的軟件庫(kù)之一。

由于 XGBoost 的核心算法是可并行化的,因此它可以有效地利用多核計(jì)算機(jī)的性能。同時(shí),XGBoost 也可以處理大量數(shù)據(jù)集、并能夠跨多個(gè)數(shù)據(jù)集合開展網(wǎng)絡(luò)工作。

提供可用于執(zhí)行交叉驗(yàn)證,參數(shù)調(diào)整,正則化,以及處理缺失值的內(nèi)部參數(shù),還能夠提供與 Scikit-learn 相兼容的 API。

由于 XGBoost 經(jīng)常被用于頂級(jí)的數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)競(jìng)賽中,因此被普遍認(rèn)為優(yōu)于其他算法。

③ELI5

作為另一種 Python 庫(kù),ELI5 主要致力于改善機(jī)器學(xué)習(xí)模型的性能。由于相對(duì)較新,因此它通常會(huì)與 XGBoost、LightGBM、以及 CatBoost 等一起被使用,進(jìn)而提高機(jī)器學(xué)習(xí)模型的準(zhǔn)確性。

下面是 ELI5 的具體功能列表:

  • 提供與 Scikit-learn 軟件包的集成,以表征特征的重要性,并解釋決策樹和基于樹的集成性預(yù)測(cè)。
  • 能夠分析并解釋由 XGBClassifier、XGBRegressor、LGBMClassifier、LGBMRegressor、CatBoostClassifier、CatBoostRegressor 和 Catboost 所做出的預(yù)測(cè)。
  • 提供了對(duì)實(shí)現(xiàn)多種算法的支持,并能夠檢查黑盒模型。其 TextExplainer 模塊可以解釋由文本分類器所做出的預(yù)測(cè)。
  • 能夠協(xié)助分析那些由線性回歸器、和分類器給出的 Scikit 學(xué)習(xí)通用線性模型(GLM,General Linear Models)的權(quán)重和預(yù)測(cè)。

深度學(xué)習(xí)

機(jī)器學(xué)習(xí)和人工智能的進(jìn)化離不開深度學(xué)習(xí)。隨著深度學(xué)習(xí)的引入,我們可以構(gòu)建出復(fù)雜的模型,并處理龐大的數(shù)據(jù)集。

有了 Python 提供的各種深度學(xué)習(xí)軟件包,我們可以輕松地構(gòu)建出各種高效的神經(jīng)網(wǎng)絡(luò)。

 

在此,我們將重點(diǎn)介紹那些可以通過(guò)內(nèi)置函數(shù),來(lái)實(shí)現(xiàn)復(fù)雜神經(jīng)網(wǎng)絡(luò)極具推薦價(jià)值的深度學(xué)習(xí)軟件包。

它們分別是:

  • TensorFlow
  • Pytorch
  • Keras

①TensorFlow

 

作為深度學(xué)習(xí)的 Python 庫(kù)之一,TensorFlow 是一款可用于橫跨各項(xiàng)任務(wù)進(jìn)行數(shù)據(jù)流編程的開源庫(kù)。

TensorFlow 通過(guò)一個(gè)符號(hào)數(shù)學(xué)庫(kù),來(lái)構(gòu)建出強(qiáng)大而精確的神經(jīng)網(wǎng)絡(luò)。它提供了直觀的多平臺(tái)編程界面,可在不同的領(lǐng)域中實(shí)現(xiàn)高度擴(kuò)展性。

下面是 TensorFlow 的具體功能列表:

  • 面對(duì)大型項(xiàng)目和數(shù)據(jù)集合,它可以構(gòu)建和訓(xùn)練多個(gè)神經(jīng)網(wǎng)絡(luò)。
  • 除支持神經(jīng)網(wǎng)絡(luò),它還提供了各種執(zhí)行統(tǒng)計(jì)分析的功能與方法。例如:它自帶有可用于創(chuàng)建概率模型和貝葉斯網(wǎng)絡(luò)(包括:Bernoulli、Chi2、Uniform、Gamma 等)的內(nèi)置功能。
  • TensorFlow 提供了分層的組件,這些組件可以對(duì)權(quán)重和偏差執(zhí)行分層的操作,并且可以通過(guò)實(shí)施正則化技術(shù)(例如:batch normalization、Dropout 等)來(lái)提高模型的性能。
  • 它自帶有一個(gè)被稱為 TensorBoard 的可視化程序,該可視化程序能夠創(chuàng)建交互式和可視化的圖形,以獲悉數(shù)據(jù)特征的依賴性。

②Pytorch

 

Pytorch 是一個(gè)基于 Python 的開源科學(xué)計(jì)算軟件包,可用于在大型的數(shù)據(jù)集上實(shí)施深度學(xué)習(xí)技術(shù)和神經(jīng)網(wǎng)絡(luò)。

Facebook 使用此軟件庫(kù)來(lái)開發(fā)其神經(jīng)網(wǎng)絡(luò),進(jìn)而實(shí)現(xiàn)了面部識(shí)別和自動(dòng)化標(biāo)記等任務(wù)。

下面是 Pytorch 的具體功能列表:

  • 提供了易用的 API,能與其他數(shù)據(jù)科學(xué)和機(jī)器學(xué)習(xí)的框架相集成。
  • 類似于 NumPy,Pytorch 提供了被稱為 Tensors 的多維數(shù)組,并且可以被使用在 GPU 上。
  • 它不僅可以用于針對(duì)大型神經(jīng)網(wǎng)絡(luò)進(jìn)行建模,而且還提供了一個(gè)界面,支持多達(dá) 200 多種能被用于統(tǒng)計(jì)分析的數(shù)學(xué)運(yùn)算。
  • 其代碼可執(zhí)行在每個(gè)節(jié)點(diǎn)上,以創(chuàng)建動(dòng)態(tài)計(jì)算圖,進(jìn)而協(xié)助時(shí)序分析,并能夠?qū)崟r(shí)地預(yù)測(cè)銷售量。

③Keras

 

同樣作為 Python 中優(yōu)秀的深度學(xué)習(xí)庫(kù)之一,Keras 能夠?yàn)闃?gòu)建、分析、評(píng)估和改進(jìn)神經(jīng)網(wǎng)絡(luò)提供全面支持。

Keras 是基于 Theano 和 TensorFlow Python 庫(kù)構(gòu)建的。它提供了用于構(gòu)建復(fù)雜的大規(guī)模深度學(xué)習(xí)模型所需的各種附加功能。

下面是 Keras 的具體功能列表:

  • 為構(gòu)建所有類型的神經(jīng)網(wǎng)絡(luò)提供支持,包括:完全連接、卷積、池化、循環(huán)、以及嵌入等。能夠針對(duì)大型數(shù)據(jù)集與問(wèn)題,通過(guò)將各種模型進(jìn)一步組合,以創(chuàng)建完整的神經(jīng)網(wǎng)絡(luò)。
  • 具有執(zhí)行神經(jīng)網(wǎng)絡(luò)計(jì)算的內(nèi)置功能,包括:定義層與目標(biāo),激活功能;能夠通過(guò)優(yōu)化器和大量的工具,來(lái)輕松地處理圖像和文本數(shù)據(jù)。
  • 自帶有一些預(yù)處理的數(shù)據(jù)集和經(jīng)過(guò)訓(xùn)練的模型,包括:MNIST、VGG、Inception、SqueezeNet、以及 ResNet 等。
  • 易于擴(kuò)展,能夠?qū)π略龉δ芎头椒ǖ饶K提供支持。

自然語(yǔ)言處理

Google 運(yùn)用 Alexa 來(lái)準(zhǔn)確地預(yù)測(cè)用戶搜索的內(nèi)容,而在 Siri 等其他聊天機(jī)器人的背后都會(huì)用到自然語(yǔ)言處理(NLP)技術(shù)。

NLP 在設(shè)計(jì) AI 的系統(tǒng)中,發(fā)揮了巨大的作用。該系統(tǒng)有助于描述出人類語(yǔ)言與計(jì)算機(jī)之間的交互關(guān)系。

 

在此,我們將重點(diǎn)介紹那些可以通過(guò)內(nèi)置函數(shù),來(lái)實(shí)現(xiàn)高級(jí) AI 系統(tǒng)極具推薦價(jià)值的自然語(yǔ)言處理包。

它們分別是:

  • NLTK
  • spaCy
  • Gensim

①NLTK(自然語(yǔ)言工具包,Natural Language ToolKit)

 

NLTK 被認(rèn)為是分析人類語(yǔ)言和行為的優(yōu)秀 Python 軟件包。作為大多數(shù)數(shù)據(jù)科學(xué)家的首選,NLTK 庫(kù)提供了易用的界面,其中包含 50 多種語(yǔ)料庫(kù)和詞匯資源,有助于描述人與人之間的互動(dòng),以及構(gòu)建出諸如推薦引擎之類的 AI 系統(tǒng)。

下面是 NLTK 的具體功能列表:

  • 提供了一整套數(shù)據(jù)和文本處理的方法,可用于針對(duì)文本分析的分類、標(biāo)記、詞干、解析和語(yǔ)義推理。
  • 包含了用于工業(yè)級(jí) NLP 庫(kù)的包裝器,通過(guò)構(gòu)建復(fù)雜的系統(tǒng),以協(xié)助進(jìn)行文本分類,并查找人類語(yǔ)音的行為趨勢(shì)和模式。
  • 它自帶有實(shí)現(xiàn)計(jì)算語(yǔ)言學(xué)(Computational Linguistics)的綜合指南、以及完整的 API 文檔指南,可幫助新手程序員上手使用 NLP。
  • 它擁有龐大的用戶和專業(yè)人員社區(qū),能夠提供全面的教程與快速指南,方便用戶學(xué)習(xí)如何使用 Python 進(jìn)行計(jì)算語(yǔ)言學(xué)。

②spaCy

 

作為一款免費(fèi)的 Python 開源庫(kù),spaCy 可被用于實(shí)現(xiàn)高級(jí)自然語(yǔ)言處理(NLP)的相關(guān)技術(shù)。

當(dāng)您在處理大量文本時(shí),可以通過(guò) spaCy 來(lái)輕松地獲悉文本的形態(tài)學(xué)意義,以及如何將其分類成為人類可理解的語(yǔ)言。

下面是 spaCy 的具體功能列表:

  • 除了語(yǔ)言計(jì)算之外,spaCy 還提供了單獨(dú)的模塊,可用來(lái)構(gòu)建、訓(xùn)練和測(cè)試各種統(tǒng)計(jì)模型,進(jìn)而更好地協(xié)助用戶理解單詞的含義。
  • 它帶有各種內(nèi)置的語(yǔ)言注釋,可協(xié)助分析句子的語(yǔ)法結(jié)構(gòu)。這不僅有助于理解各種測(cè)試,還有助于查找出句子中不同單詞之間的關(guān)系。
  • 可被用于針對(duì)包含縮寫和多個(gè)標(biāo)點(diǎn)符號(hào)的復(fù)雜嵌套標(biāo)記(nestedtokens),以實(shí)現(xiàn)標(biāo)記化。
  • 除了本身的強(qiáng)大功能和效率,spaCy 還支持 51 種以上的語(yǔ)言。

③Gensim

 

Gensim 是另一種開源的 Python 軟件包,該建模旨在從大型文檔和文本中提取語(yǔ)義主題,以通過(guò)統(tǒng)計(jì)模型和語(yǔ)言計(jì)算來(lái)予以處理,進(jìn)而分析和預(yù)測(cè)人類行為。

無(wú)論是原始數(shù)據(jù)還是非結(jié)構(gòu)化的數(shù)據(jù),它都有能力處理和應(yīng)對(duì)龐大的數(shù)據(jù)集合。

下面是 Genism 的具體功能列表:

  • 通過(guò)理解每個(gè)單詞的統(tǒng)計(jì)語(yǔ)義,以構(gòu)建有效的分類文檔模型。
  • 它自帶有諸如 Word2Vec、FastText、潛在語(yǔ)義分析(Latent Semantic Analysis)之類的文本處理算法。
  • 這些算法能夠研究文檔中的統(tǒng)計(jì)共現(xiàn)模式,通過(guò)過(guò)濾掉那些不必要的單詞,進(jìn)而構(gòu)建出僅有重要特征的模型。
  • 提供可供導(dǎo)入、并支持多種數(shù)據(jù)格式的 I/O 包裝器與讀取器。
  • 其簡(jiǎn)單直觀的界面,可供初學(xué)者輕松地進(jìn)行試用。同時(shí),其 API 學(xué)習(xí)曲線比較平緩,因此備受各界開發(fā)人員的喜歡。

【51CTO原創(chuàng)稿件,合作站點(diǎn)轉(zhuǎn)載請(qǐng)注明原文作者和出處為51CTO.com】

 

責(zé)任編輯:武曉燕 來(lái)源: 51CTO技術(shù)棧
相關(guān)推薦

2022-02-21 16:11:16

TypeScript構(gòu)造函數(shù)

2017-10-30 09:53:05

深度學(xué)習(xí)技巧指南

2020-10-11 21:52:10

數(shù)據(jù)AI指南

2017-11-02 14:20:44

數(shù)據(jù)科學(xué)簡(jiǎn)歷數(shù)據(jù)科學(xué)家

2019-01-02 07:43:51

機(jī)器學(xué)習(xí)人工智能學(xué)歷

2020-01-02 14:13:01

機(jī)器學(xué)習(xí)模型部署預(yù)測(cè)

2018-05-22 09:07:54

數(shù)據(jù)科學(xué)語(yǔ)言職位

2018-08-15 13:49:06

數(shù)據(jù)分析學(xué)習(xí)Python

2018-08-09 22:20:05

數(shù)據(jù)科學(xué)Python工作

2021-02-22 10:59:43

人工智能機(jī)器學(xué)習(xí)深度學(xué)習(xí)

2019-05-28 06:00:35

華為開發(fā)者5G

2017-03-16 14:01:00

2023-05-16 08:31:04

2019-07-17 07:07:54

MySQL數(shù)據(jù)庫(kù)索引

2018-04-19 08:10:09

機(jī)器學(xué)習(xí)數(shù)據(jù)科學(xué)面試題

2018-05-03 06:49:51

2024-02-26 00:06:00

排序?qū)W習(xí)算法斯奇拉姆

2018-04-23 14:01:04

數(shù)據(jù)科學(xué)機(jī)器學(xué)習(xí)開發(fā)

2019-11-14 21:21:50

數(shù)據(jù)挖掘數(shù)據(jù)處理數(shù)據(jù)分析

2018-01-29 16:29:35

數(shù)據(jù)開發(fā)從業(yè)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)