天天看點

隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

作者:中米AI
隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

T特别是資料科學領域,擁有大量的工具和庫,使我們能夠從資料中提取知識。然而,在常用的Python庫(如NumPy,Pandas,Matplotlib,Seaborn,scikit-learn等)的表面之下,存在一個鮮為人知\但功能強大的\庫的寶庫,它們可以為您的機器學習工作流程提供顯着的推動力。

有哪些常見的機器學習庫?

機器學習項目主要由NumPy,Pandas,Matplotlib,Seaborn和Scikit-Learn等庫支援。NumPy具有強大的數組操作能力,對于數值計算\是必不可少的。Pandas 通過其 DataFrame 結構\簡化了資料處理和分析。為了建立引人入勝的資料可視化表示\,Matplotlib和Seaborn是不可或缺的資源。Scikit-Learn為各種機器學習\任務(如聚類,回歸和分類)提供了一個全面的工具包。當共同利用這些資源時,資料科學家能夠有效地審查、評估和模組化資料。

隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

低調機器學習庫

➤ 熊貓分析

Python 熊貓分析子產品是自動進行探索性資料分析 (EDA) 的強大工具。它會生成一份廣泛的報告,其中包含有關資料集的有見地的資訊,包括要保留哪些變量以及要删除哪些變量。

from pandas_profiling import ProfileReport

profile = ProfileReport(df, title='Dataset Report', explorative=True)
profile.to_notebook_iframe()
           

使用時,該庫提供了對正在處理的資料的幾個重要見解。其中一些包括:

概述:*本節概述了資料集,包括變量和觀測值的數量以及不同類型的變量。*

相關性 —\ 本節使用熱圖來說明資料集中變量之間的關系。它允許在各種相關圖之間切換,包括皮爾遜的 r、肯德爾的 τ、斯皮爾曼的 ρ 和 Phik (φk)。

警告\ — 本節包含有關具有大量零、NaN 值和高度基數分類變量的變量的注意事項。

隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

➤ 缺失

這個用于可視化資料集中缺失資料的驚人工具是Python missingno包。它提供了許多功能來幫助分析師和資料科學家了解其資料中缺失值的分布和存在。它提供了一些驚人的可視化效果,例如:

矩陣圖 —\ 這描繪了資料集中 NULL/NAN/缺失值的整個存在的視覺圖檔。

pip install missingno
import missingno as msno

msno.matrix(df)
           

條形圖 —\ 這将建立每個要素列的值計數的條形圖,不包括每個要素列中的缺失值。

msno.bar(df, color="dodgerblue", sort="ascending", figsize=(8,6), fontsize=8)
           

熱圖 —\ 這可用于建立關聯熱圖,以識别和分析列之間的相關性。

msno.heatmap(df)
           

登多圖 —\ 這提供了不同特征之間的相關性和缺失資訊存在的分層表示。

msno.dendrogram(df)
           
隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

➤ 皮卡雷特

适用于 Python 的開源低代碼 PyCaret 機器學習子產品嘗試自動執行\評估和對比回歸和分類\的機器學習算法所涉及的關鍵過程。它旨在縮短從假設到見解所需的時間,是以經驗豐富的資料科學家和新手都可以從中受益。

許多機器學習項目階段,包括特征工程、模型訓練、評估和資料預處理\,都由 PyCaret 自動化。此外,它還提供了比較多個機器學習模型和微調超參數的功能。

您可以使用 pip 安裝 PyCaret:

pip install pycaret
           

要使用 PyCaret 進行分類,您可以通過以下方式執行此操作:

from pycaret.classification import *
clf = setup(data, target='target_column')
best = compare_models()
           

要使用 PyCaret 進行回歸,您可以通過以下方式執行此操作:

from pycaret.regression import *
clf = setup(data, target='target_column')
best = compare_models()
           
隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

➤ 鐘擺

在 Python 中管理日期和時間的一個非常有用的工具是鐘擺包。在處理日期和時間時,它提供了比 Python 内置的日期時間子產品\更可靠、對開發人員友好的 API。您可以使用 Pendulum 快速完成日期和時間的格式化、解析和算術運算等活動。它是管理應用程式中與時間相關的資料的有效工具,因為它還提供時區\和持續時間計算\等功能。

該庫的一些關鍵功能包括:

DateTime 執行個體 —\ 使用 now() 函數擷取目前日期和時間,或使用 datetime()\ 函數擷取 特定日期和時間,您可以建構 DateTime 對象。使用 local()\ 函數,您還可以建構具有特定時區的 DateTime 執行個體。

import pendulum
dt = pendulum.datetime(2020, 11, 27)
print(dt)
local = pendulum.local(2020, 11,27)
print(local)
print(local.timezone.name)
           

時區轉換 —\ 庫的 in_timezone() 和 convert()\ 函數使在多個時區之間切換變得簡單。

utc_time = pendulum.now('UTC')
kolkata_time = utc_time.in_timezone('Asia/Kolkata')
print('Current Date Time in Kolkata =', kolkata_time)
sydney_tz = pendulum.timezone('Australia/Sydney')
sydney_time = sydney_tz.convert(utc_time)
print('Current Date Time in Sydney =', sydney_time)
           

日期時間操作 —\ 可以使用 add() 和 subtract()\ 函數調整日期和時間 。每個方法都會生成一個新的 DateTime 執行個體。

dt = pendulum.parse('1997-11-21T22:00:00', tz = 'Asia/Calcutta')
print(dt)
dt = pendulum.from_format('2020/11/21', 'YYYY/MM/DD')
print(dt)
           

持續時間和周期計算 —\ 庫中的 duration()\ 函數允許您生成可在 DateTime 執行個體中添加或減去的持續時間。 period()\ 函數還可用于确定兩個 DateTime 執行個體之間的時間間隔。

time_delta = pendulum.duration(days = 2, hours = 10, years = 2)
print(time_delta)
print('future date =', pendulum.now() + time_delta)
start = pendulum.datetime(2021, 1, 1)
end = pendulum.datetime(2021, 1, 31)
period = pendulum.period(start, end)
print(period.days)
           
隐藏的寶藏:使用這些 Python 庫改變您的機器學習工作流程

結論

總之,用于機器學習的隐藏 Python 庫提供了有價值的工具,可以促進您的項目。從高效的時間管理到增強的資料可視化,這些資源擴充了您的能力。探索這些隐藏的寶石可以提高工作效率和工作的準确性\。随着 Python 的發展,嘗試鮮為人知的庫是保持領先地位的明智之舉。如果您嘗試過上述任何庫,請告訴我。我很想聽聽你最喜歡的低調Python ML庫\,如果它們不在這篇文章中,那就更多了!在評論中讓我知道!

繼續閱讀