目錄
NumPy
NumPy 函數
為什麼 Numpy 如此受歡迎?
Pandas
一些Pandas功能
pd.read_csv, pd.read_excel
TensorFlow 与 PyTorch
Keras
Keras 函数
Theano
Theano 函数
结论
首頁 科技週邊 人工智慧 流行的 Python 機器學習庫的趨勢和比較

流行的 Python 機器學習庫的趨勢和比較

Apr 12, 2023 pm 11:52 PM
python 機器學習 程式設計語言

Python 是全球最受歡迎的程式語言之一,擁有越來越多的程式庫和框架。看看最新的。

流行的 Python 機器學習庫的趨勢和比較

Python 是全球最受歡迎的程式語言之一,擁有越來越多的程式庫和框架來促進 AI 和ML 開發。 Python 中有超過 250 個函式庫,要知道哪個函式庫最適合您的專案並跟上所有這些函式庫帶來的技術變化和趨勢,可能會有點令人困惑。

以下是我使用過的流行的 Python 機器學習庫。我盡我所能根據哪些場景使用它們來對它們進行分類。除了這些之外,還有很多庫,但我無法談論我沒有使用過的庫,我認為這些是使用最多的庫。

NumPy

NumPy 是一個眾所周知 的通用陣列處理包,與其他機器學習包不同。對於 n 維數組(向量、矩陣和高階矩陣),NumPy 提供了高效能(本機編譯)支援和對各種操作的支援。它支援向量化操作,特別是,將 Python 表達式轉換為低階程式碼調度,隱式循環跨資料的不同子集。

NumPy 函數

numpy.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None, axis=0)

函數的start 和stop 參數都是必要的,它們傳回的值均勻分佈在預定的時間間隔內。

  • numpy.repeat

使用 numpy.repeat(a, repeats, axis=None) 方法重複陣列的元素。第二個輸入重複指定重複次數。

  • numpy.random.randint

函數numpy.random.randint(low, high=None, size=None, dtype='l') 從[low, high] 傳回隨機整數。如果高參數不存在(無),則從範圍 [0, low] 中選擇隨機數。

為什麼 Numpy 如此受歡迎?

簡而言之,NumPy 最佳化和預編譯的 C 程式碼可以處理所有繁重的工作,使其比標準Python 陣列更快。

NumPy 使科學計算中經常使用的許多數學程式變得快速且易於使用。

Pandas

Pandas 正迅速成為使用最廣泛的 Python 資料分析函式庫,因為它支援處理「關係」和「標記」資料的快速、適應性和表達性資料結構。存在需要 Pandas 的實際和現實世界的 Python 資料分析問題。 Pandas 提供徹底優化和高度可靠的效能。只有 C 或 Python 用於純粹編寫後端程式碼。

一些Pandas功能

pd.read_csv, pd.read_excel

要提到的第一個函數是 read_csv 或 read_excel。這些功能已經提供了清晰的解釋。我利用它們將 CSV 或 Excel 檔案中的資料讀取為 pandas DataFrame 格式。

df = pd.read_csv("PlayerStat.csv")
登入後複製

.read csv() 函數也可以使用以下語法讀取.txt 檔案:

data = pd.read_csv(file.txt, sep=" ")
登入後複製
  • df.query()
##布林表達式可以過濾或查詢資料。我可以使用查詢函數作為字串套用篩選條件。與許多其他程式相比,它提供了更多的自由。

df.query("A > 4")
登入後複製

只傳回 A 大於 4 的行。

    df.iloc()
我將行和列索引作為參數傳遞給該函數,該函數傳回 DataFrame 的適當子集。

    df[‘’].dtypes
另一個非常基本且受歡迎的功能。在開始任何分析、視覺化或預測建模之前,必須知道變數的資料類型。使用這種技術,您可以獲得每一列的資料類型。

    df.dtypes
Pandas vs Vaex

Vaex Python 是Pandas 函式庫的替代品,它使用Out of Core Dataframe 更快地計算大量數據。為了查看和研究大型表格資料集,Vaex 是一個高效能 Python 模組,用於惰性核心外資料幀(類似於 Pandas)。每秒可以使用簡單的統計數據計算超過 10 億行。它支援各種可視化,允許大量互動式數據探索。

TensorFlow

TensorFlow 是由 Google建立和發布的用於快速數值計算的 Python 庫 。 Tensorflow 使用與 Theano 有所不同的語言和函數名稱,這可能會使從 Theano 的切換變得比它必須的更複雜。然而,Tensorflow 中的整個計算圖的運作方式與 Theano 中的類似,具有相同的優點和缺點。即使計算圖的修改對效能有重大影響,Tensorflow 的 eval 函數也只是讓觀察中間狀態變得稍微容易一些。與幾年前的 Theano 和 Caffe 相比,Tensorflow 是首選的深度學習技術。

TensorFlow 內建函數

    tf.zeros_like
該函數的輸出是一個與輸入張量具有相同類型和形狀但值為零的張量。

tensor = tf.constant( I[1, 2, 3], [4, 5, 6]])
tf.zeros_like( tensor) # [ [0, 0, 0], [0, 0,0]
登入後複製

從輸入影像建立黑色影像時,此功能可能會有所幫助。如果您希望直接定義表單,請使用 tf.zeros。如果您喜歡初始化 1 而不是 0,請使用 tf.ones_like。

    tfpad
用常數值在其周圍添加指定的填充以增加張量的維度。

  • tf.enable_eager_execution

这可以在您运行 TensorFlow 应用程序时帮助您。使用 Eager Execution 时,您不需要在会话中构建和运行图。这是有关急切执行的更多信息。

“Eager execution”必须是导入 TensorFlow 后的第一条语句。

TensorFlow 与 PyTorch

Torch 的 Python 实现 Pytorch 得到 Facebook 的支持。它通过提供即时图形编译与上述技术竞争,通过不将图形视为不同和不透明的对象,使 Pytorch 代码与周围的 Python 更加兼容。相反,有许多灵活的技术可以即时构建张量计算。此外,它表现良好。它具有强大的多 GPU 能力,很像 Tensorflow;然而,Tensorflow 仍然适用于更大规模的分布式系统。虽然 Pytorch 的 API 文档齐全,但 Tensorflow 或 Keras 的 API 更加完善。然而,Pytorch 在不影响性能的情况下在灵活性和可用性方面取得了胜利,这无疑迫使 Tensorflow 重新思考和调整。Tensorflow 最近受到 Pytorch 的严重挑战,

Keras

Keras 是一个开源软件库,为人工神经网络提供 Python 接口。由于 Keras 名义上是独立于引擎的,所以理论上 Keras 代码可以被重用,即使引擎需要因性能或其他因素而改变。它的缺点是,当您希望创建非常新颖或专业的架构时,通常需要在 Keras 层下使用 Tensorflow 或 Theano。这主要发生在您需要使用复杂的 NumPy 索引时,这对应于 Tensorflow 中的聚集/分散和 Theano 中的 set/inc 子张量。

Keras 函数

  • 评估与预测

在 Keras 中,evaluate() 和 predict() 都可用。这些技术可以利用 NumPy 数据集。当数据经过测试后,我完成了对结果的评估。我使用这些技术来评估我们的模型。

  • Keras 中的图层

每个 Keras 层都包含许多技术。这些层有助于构建、配置和训练数据。密集层有助于操作实现。我使用 flat 展平了输入。Dropout 启用输入丢失。我可以使用重塑工具重塑输出。我使用输入启动了一个 Keras 张量。

您可以获得中间层的输出。

一个相当简单的库是 Keras。它使得从层的中间层获取输出成为可能。您可以轻松地向现有层添加一个新层,以帮助您在中间获得输出。

Theano

Theano 是一个 Python 库和优化编译器,用于操作和评估数学表达式,尤其是矩阵值表达式。作为最古老和最成熟的,为 Theano 提供了优势和劣势。大多数用户请求的功能都已添加,因为它是旧版本。但是,其中一些实现有点过于复杂且难以使用,因为没有先例可循。该文档是可以通过但模棱两可的。由于没有简单的方法来检查中间计算,因此在 Theano 中让复杂的项目正常运行可能非常具有挑战性。他们通常使用调试器或通过查看计算图来进行调试。

Theano 函数

  • 声明变量

我用 dscalar 方法声明了一个十进制标量变量。当下面的语句运行时,它会在您的程序代码中添加一个名为 C 的变量。

C = tensor.dscalar()
登入後複製
  • 定义 Theano 函数

该函数接受两个参数,第一个是输入,第二个是函数的输出。根据下面的声明,第一个参数是一个包含 C 和 D 两项的数组。结果是一个标量单位,指定为 E。

f = theano.function([C,D], E)
登入後複製

结论

我见过一个高技能的 Python 程序员迅速掌握新库的精妙之处并了解如何使用它。但是,无论是初学者、中级还是专家,选择一种编程语言还是在这种情况下选择一个库而不是另一个库,很大程度上取决于您项目的目标和需求。

以上是流行的 Python 機器學習庫的趨勢和比較的詳細內容。更多資訊請關注PHP中文網其他相關文章!

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

為什麼要使用PHP?解釋的優點和好處 為什麼要使用PHP?解釋的優點和好處 Apr 16, 2025 am 12:16 AM

PHP的核心優勢包括易於學習、強大的web開發支持、豐富的庫和框架、高性能和可擴展性、跨平台兼容性以及成本效益高。 1)易於學習和使用,適合初學者;2)與web服務器集成好,支持多種數據庫;3)擁有如Laravel等強大框架;4)通過優化可實現高性能;5)支持多種操作系統;6)開源,降低開發成本。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

PHP:服務器端腳本語言的簡介 PHP:服務器端腳本語言的簡介 Apr 16, 2025 am 12:18 AM

PHP是一種服務器端腳本語言,用於動態網頁開發和服務器端應用程序。 1.PHP是一種解釋型語言,無需編譯,適合快速開發。 2.PHP代碼嵌入HTML中,易於網頁開發。 3.PHP處理服務器端邏輯,生成HTML輸出,支持用戶交互和數據處理。 4.PHP可與數據庫交互,處理表單提交,執行服務器端任務。

visual studio code 可以用於 python 嗎 visual studio code 可以用於 python 嗎 Apr 15, 2025 pm 08:18 PM

VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。

notepad 怎麼運行python notepad 怎麼運行python Apr 16, 2025 pm 07:33 PM

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。

See all articles