大放送~2020十大最強Python函式庫就在這!(最終回)
本系列文章為【2020年度十大Python函式庫-人工智慧 · 機器學習必備 】的最後一篇。上一篇介紹了 PyTorch 版的 Keras「PyTorch Lightening」讓你告別沒完沒了的 Debug!另外還有微軟出的 Hummingbird 讓你不用重新設計新模型;另外還有可以將高維度資料視覺化的「HiPlot」,請點此看上一篇閱讀了解!
Python函式庫壓軸到底是哪個函式?讓我們繼續看下去~
HiPlot
幾乎每個數據工程師都處理過高維度資料(High Dimensional)。可惜人類的腦容量有限,無法直觀地處理此類資料,因此必須求助於科技來解決。
2020 年早些時候,Facebook 發布了 HiPlot函式庫,可使用平行座標和其他圖形方式來表示信息,從而協助找出高維度資料中的關聯性和模式。他們在官網中說明了其概念,基本上,HiPlot 是一種將高維度資料視覺化以及過濾的便利方法。
Scalene
隨著 Python 的函式庫生態系統變得越來越複雜,我們也寫出越來越多 C 語言延伸的代碼以及多執行緒代碼。但是,CPython 內置的效能分析器(profiler)無法完整地處理多執行緒和本機代碼。
此時你需要 Scalene:Scalene 是用於 Python 腳本的 CPU 和記憶體的效能分析器(profiler),能完整地處理多執行緒代碼並區分運行 Python 和本機代碼所花費的時間。此時你無需修改代碼,只需要在命令行中使用 Scalene 運行腳本,腳本就會自動生成報告的文字檔或 HTML,顯示代碼中每一行的 CPU 和記憶體使用情況。
▲ Scalene 是用於 Python 腳本的 CPU 和記憶體的效能分析器,能處理多執行緒代碼並區分運行 Python 和本機代碼所花費的時間
同場加映:Norfair
選出去年十大 Python 函式庫的機器學習顧問公司 Tyrolabs 自家也開發了「影像內容分析 (Video content analysis)」的 Python 函式庫「Norfair」。
Norfair 是一個輕量的且可被客製化的 Python 函式庫,用於即時物件追蹤(real-time object tracking):它可以在不同的影格當中,替每個被偵測到的物件賦予獨一無二的 ID,如此一來,你就能辨識出這些物件——縱使它們都在移動。
▲ Norfair 可以在不同的影格當中,替每個被偵測到的物件(如圖中左側)
賦予獨一無二的 ID (如圖中右側)
藉由 Norfair,工程師只需輸入幾行代碼就能賦予任何偵測器追蹤的功能——無論追蹤的物體是具有有四個參數的 bounding box(邊界框)、只有單一點的幾何中心(centroid)、還有人體姿態辨識系統的輸出(經常有多個關鍵點是大於特定閥值的)等任何物體。
此功能常被用作計算兩個追蹤物體之間的距離,用戶可依序需要定義檢測標準以及追縱的對象。
Norfair 是非常模塊化的 Python 函式庫,使用起來很靈巧:工程師僅需使用幾行代碼,即可在現有的檢測代碼庫上添加追蹤的功能。
延伸閱讀:
Nature:語言天才比數學高手更適合學 Python!別在嘴文科生、女性不能寫程式了