0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
电子发烧友
开通电子发烧友VIP会员 尊享10大特权
海量资料免费下载
精品直播免费看
优质内容免费畅学
课程9折专享价
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

探索一下機器學(xué)習(xí)領(lǐng)域中最受歡迎的十大框架或工具庫

DPVg_AI_era ? 來源:未知 ? 作者:李倩 ? 2018-10-04 09:21 ? 次閱讀

Python 超越許多其他編程語言,成為機器學(xué)習(xí)領(lǐng)域中最熱門最常用的編程語言之一。Python 在眾多開發(fā)者中如此受追捧的原因之一便是其擁有大量的與機器學(xué)習(xí)相關(guān)的開源框架以及工具庫,本文介紹了其中最受歡迎的10大Python庫。

隨著人工智能技術(shù)的發(fā)展與普及,Python 超越了許多其他編程語言,成為了機器學(xué)習(xí)領(lǐng)域中最熱門最常用的編程語言之一。有許多原因致使 Python 在眾多開發(fā)者中如此受追捧,其中之一便是其擁有大量的與機器學(xué)習(xí)相關(guān)的開源框架以及工具庫。根據(jù) builtwith.com 的數(shù)據(jù)顯示,45% 的科技公司都傾向于使用 Python 作為人工智能與機器學(xué)習(xí)領(lǐng)域的編程語言。

使 Python 如此受歡迎主要由于:

Python 從設(shè)計之初就是為效率而生,以使項目從開發(fā)到部署再在運維都能保持較高的生產(chǎn)力;

坊間有大量的基于 Python 的開源框架及工具庫;

Python 易于上手,可以說是編程小白的福音;

相比起 C、JavaC++ 來講,Python 的語法更簡單,更高級,只需要更少行數(shù)的代碼便能實現(xiàn)其他編程語言同樣的功能;

Python 的跨平臺能力;

正是由于 Python 簡單易用以及高開發(fā)效率,吸引了大量的開發(fā)者為其創(chuàng)建更多新的機器學(xué)習(xí)工具庫;而又因為大量的機器學(xué)習(xí)工具庫的出現(xiàn),使得 Python 在機器學(xué)習(xí)領(lǐng)域變得如此流行。

下面我們就來探索一下機器學(xué)習(xí)領(lǐng)域中最受歡迎的十大框架或工具庫:

Tensorflow

如果你正在使用 Python 來從事機器學(xué)習(xí)項目,那么你一定聽說過其中一個著名的框架——Tensorflow。Tensorflow 框架主要由 Google 大腦團隊開發(fā),主要用于深度學(xué)習(xí)計算。幾乎所有的 Google 機器學(xué)習(xí)應(yīng)用都使用了它。比如在使用 Google 語音搜索或者 Google 相冊時,你其實都是在間接地在使用 Tensorflow 所構(gòu)建的模型。

Tensorflow 把神經(jīng)網(wǎng)絡(luò)運算抽象成運算圖(Graph),一個運算圖中包含了大量的張量(Tensor)運算。而張量實際上就是 N 維數(shù)據(jù)的集合。神經(jīng)網(wǎng)絡(luò)運算的本質(zhì)是通過張量運算來擬合輸入張量與輸出張量之間的映射關(guān)系。

并行運算是 Tensorflow 的主要優(yōu)勢之一。也就是說你可以通過代碼設(shè)置來分配你的 CPU、GPU 計算資源來實現(xiàn)并行化的圖運算。

Tensorflow 框架中所有的工具庫都是用 C 或者 C++ 來編寫,但它提供了用 Python 來編寫的接口封裝。事實上,你用 Python 編寫的神經(jīng)網(wǎng)絡(luò)模型最終會調(diào)用基于 C 和 C++ 編寫的 Tensorflow 內(nèi)核來執(zhí)行運算。

Tensorflow 使用了類似 XLA(Accelerated Linear Algebra / 加速線性代數(shù))等技術(shù)對運算過程進行過優(yōu)化,以保證其能夠靈活地調(diào)用計算資源的同時保持高效的運算速度。

Keras

Keras 被認為是最酷的 Python 深度學(xué)習(xí)庫之一。如果你是深度學(xué)習(xí)開發(fā)方面的新手,那么非常建議你使用它。它提供了非常簡明的機制來表達神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)。它也提供了許多非常棒的工具用于神經(jīng)網(wǎng)絡(luò)模型的編譯、數(shù)據(jù)的處理、以及網(wǎng)絡(luò)結(jié)構(gòu)的可視化等等。

Keras 本質(zhì)上是對 Tensorflow、Theano 等基礎(chǔ)框架作進一步的封裝,以提供統(tǒng)一的 API 來簡化神經(jīng)網(wǎng)絡(luò)的構(gòu)建與訓(xùn)練。如果你打算以 Tensorflow 作為后端基礎(chǔ)框架,則必須遵循以下架構(gòu)圖:

再有,Keras 提供了許多預(yù)處理的數(shù)據(jù)集,比如 MNIST,和預(yù)訓(xùn)練的模型,比如 VGG、Inception、 ResNet 等等。

Theano

Theano 是一個用于多維數(shù)組計算的 Python 運算框架。Theano 的工作原理與 Tensorflow 相似,但要比 Tensorflow 低效。因此它不適用于生產(chǎn)環(huán)境。

此外,Theano 還可以用于與 Tensorflow 類似的分布式或并行環(huán)境。

PyTorch

PyTorch 是最大的深度學(xué)習(xí)庫,允許開發(fā)人員通過加速 GPU執(zhí)行張量計算,創(chuàng)建動態(tài)計算圖,并自動計算梯度。 除此之外,PyTorch 還提供豐富的 API,用于解決與神經(jīng)網(wǎng)絡(luò)相關(guān)的應(yīng)用問題。

這個深度學(xué)習(xí)庫基于Torch,這是一個用 C 語言實現(xiàn)的開源機器庫,以 Lua 語言作了封裝。與 Tensorflow 的區(qū)別在于 Tensorflow 用的是 “靜態(tài)計算圖” 的概念,而 PyTorch 用的是 “動態(tài)計算圖” 的概念。最直觀的感受是,用 PyTorch 來編寫的神經(jīng)網(wǎng)絡(luò)模型代碼更像常見的 Python 代碼。PyTorch 是在 2017 年推出的,自成立以來,該庫越來越受歡迎并吸引了越來越多的機器學(xué)習(xí)開發(fā)人員。

LightGBM

Gradient Boosting 是最好和最受歡迎的機器學(xué)習(xí)庫之一,它通過使用重新定義的基本模型和決策樹來幫助開發(fā)人員構(gòu)建新算法。 因此,有專門的庫被設(shè)計用于快速有效地實現(xiàn)該方法。這些庫包括 LightGBM, XGBoost, 和 CatBoost。這些庫互為競爭對手,同樣使用了幾乎相同的思路來解決一個共同問題。這些庫都提供了高度可擴展,優(yōu)化和快速的梯度增強實現(xiàn),使其在機器學(xué)習(xí)開發(fā)人員中很受歡迎。 因為大多數(shù)機器學(xué)習(xí)開發(fā)人員通過使用這些算法贏得了機器學(xué)習(xí)競賽。

Numpy

Numpy 是公認的最受歡迎的 Python 機器學(xué)習(xí)庫之一。Tensorflow 以及其他的一些框架內(nèi)部都使用了 Numpy 來對張量進行多種操作。數(shù)組接口是 Numpy 最佳及最重要的功能。這個接口可以用于把圖像、音頻、以及其他二進制流數(shù)據(jù)表示為多維實數(shù)數(shù)組。為了把這個庫應(yīng)用到機器學(xué)習(xí)中,掌握 Numpy 的操作對于開發(fā)者而言意義重大。

Pandas

Pandas 是一個 Python 機器學(xué)習(xí)庫,它提供了各種高級的工具用于進行數(shù)據(jù)分析。其中一項了不起的功能便是它可以用一兩行代碼就能實現(xiàn)復(fù)雜的數(shù)據(jù)操作。Pandas 有許多內(nèi)置的方法用于分組統(tǒng)計、合并數(shù)據(jù)、數(shù)據(jù)篩選、以及時間序列操作。所有的這些操作都有出色的性能表現(xiàn)。因此,使用 Pandas 通常用于數(shù)據(jù)挖掘任務(wù)。

SciPy

SciPy 是一個應(yīng)用開發(fā)者與工程師們使用的機器學(xué)習(xí)庫。然而,你需要知道的是 SciPy 庫與 SciPy-Stack 的區(qū)別。SciPy 庫是 SciPy-Stack 的一個子集。SciPy 庫包含了優(yōu)化器、線性代數(shù)、積分、插值、快速傅立葉變換、信號和圖像處理、統(tǒng)計等子模塊。所有子模塊中的函數(shù)都有完整的文檔說明,使用方便。

SciPy 庫的主要功能是基于 Numpy 來實現(xiàn)的,它的數(shù)組操作就是使用了 Numpy 的數(shù)組操作。

Scikits_Learn

Scikits-learn,又稱為 sk-learn,是一個基于 Numpy 與 SciPy 的 Python 庫。Sk-learn 被認為是用于處理復(fù)雜數(shù)據(jù)的最優(yōu)秀的機器學(xué)習(xí)庫之一。它包含了大量用于實現(xiàn)傳統(tǒng)機器學(xué)習(xí)和數(shù)據(jù)挖掘任務(wù)的算法,比如數(shù)據(jù)降維、分類、回歸、聚類、以及模型選擇等。

隨著時間的發(fā)展,sk-learn 不斷演進。其中包括它加入了交叉驗證功能,提供了使用多個衡量指標(biāo)的能力。許多的訓(xùn)練方法都得到了一定的改進,如邏輯回歸、近鄰算法(KNN)等。

Eli5

通常,在機器學(xué)習(xí)任務(wù)中遇到的難題是模型的預(yù)測結(jié)果不準(zhǔn)確。而用 Python 構(gòu)建的 Eli5 機器學(xué)習(xí)庫可以幫助攻克這個難題。它為現(xiàn)有的機器學(xué)習(xí)框架提供了若干內(nèi)置的支持,比如模型數(shù)據(jù)可視化、模型調(diào)試、算法跟蹤等,使得機器學(xué)習(xí)模型對于開發(fā)者而言不再是一個黑盒子。

Eli5 支持 sk-learn、XGBoost、LightGBM、lightning、sklearn-crfsuite 等機器學(xué)習(xí)框架或機器學(xué)習(xí)庫。

這些框架與庫都能夠?qū)崿F(xiàn)以上提到的可視化、模型調(diào)試、算法跟蹤等任務(wù)。

結(jié)語:

以上便是機器學(xué)習(xí)專家們與數(shù)據(jù)科學(xué)家們普遍認可的十大機器學(xué)習(xí)框架或工具庫。所有的這些框架與庫都值得看一看、試一試。

當(dāng)然,除了以上提到的框架與工具庫外,還有很多其他的機器學(xué)習(xí)庫也同樣值得關(guān)注。比如 Scikit-image 就是同屬于 Scikit 系列的另一個側(cè)重于圖像領(lǐng)域的工具庫。

希望本文能夠幫助你為你的項目選擇到合適的機器學(xué)習(xí)框架或工具庫吧。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 神經(jīng)網(wǎng)絡(luò)

    關(guān)注

    42

    文章

    4785

    瀏覽量

    101284
  • 機器學(xué)習(xí)
    +關(guān)注

    關(guān)注

    66

    文章

    8455

    瀏覽量

    133182
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4811

    瀏覽量

    85119

原文標(biāo)題:Python 機器學(xué)習(xí)庫 Top 10,你值得擁有!

文章出處:【微信號:AI_era,微信公眾號:新智元】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 0人收藏

    評論

    相關(guān)推薦

    最受歡迎十大照明品牌排行榜

    本篇文章中,為大家盤點最受消費者喜愛的十大照明品牌。
    發(fā)表于 03-10 10:44 ?9929次閱讀

    #機器學(xué)習(xí) 探索最受歡迎的產(chǎn)品

    人工智能機器學(xué)習(xí)
    電子技術(shù)那些事兒
    發(fā)布于 :2022年09月10日 20:37:34

    Python機器學(xué)習(xí)常用

    是同類API中最好的選擇之。以上是Python開發(fā)工程師必知十大機器學(xué)習(xí),除此之外,還有Ov
    發(fā)表于 03-26 16:29

    Python十大應(yīng)用領(lǐng)域和就業(yè)方向

    編寫1萬行以上的項目,而且能夠很好的把網(wǎng)游項目的規(guī)模控制在10萬行代碼以內(nèi)。10. 桌面軟件Python在圖形界面開發(fā)上很強大,可以用tkinter/PyQT框架開發(fā)各種桌面軟件!以上是Python十大應(yīng)用領(lǐng)域和就業(yè)方向,對于
    發(fā)表于 11-21 14:54

    十大Python工具介紹

    10大最受歡迎機器學(xué)習(xí)和數(shù)據(jù)科學(xué)Python
    發(fā)表于 08-21 10:14

    最受歡迎的編程語言、IDE和數(shù)據(jù)都是哪些

    PYPL 二月榜單發(fā)布:最受歡迎的編程語言、IDE 和數(shù)據(jù)都是哪些
    發(fā)表于 07-18 08:47

    2021年最受工程師歡迎的技能:Python第

    Python等相關(guān)編程技能。Python成為2020年最受歡迎技能之Udemy報告指出,Python、React(web)、Angular、機器學(xué)習(xí)和Docker將成為2020年
    發(fā)表于 06-30 10:13

    “2010十大最受歡迎新春祝福手機短信”揭曉

    “2010十大最受歡迎新春祝福手機短信”揭曉 由北京文藝廣播聯(lián)合北京廣播網(wǎng)、新浪網(wǎng)、搜狐網(wǎng)、網(wǎng)易網(wǎng)、千龍網(wǎng)等21家網(wǎng)站共同舉辦
    發(fā)表于 03-01 08:51 ?873次閱讀

    賽靈思獲“中國市場十大最受歡迎半導(dǎo)體品牌”

    賽靈思獲“中國市場十大最受歡迎半導(dǎo)體品牌”         在半導(dǎo)體行業(yè)眾所矚目的SEMICON China 2010(2010中國國際半導(dǎo)體設(shè)備及材料展)上,賽靈思公
    發(fā)表于 03-25 17:45 ?543次閱讀

    十大機器學(xué)習(xí)工具及數(shù)據(jù)科學(xué)工具

    ,因此是數(shù)學(xué)家經(jīng)濟學(xué)家等專業(yè)人士最容易理解和學(xué)習(xí)的語言。本文將羅列機器學(xué)習(xí)和數(shù)據(jù)科學(xué)應(yīng)用程序中最有用的
    發(fā)表于 05-29 13:57 ?3933次閱讀

    全球AI招聘增長放緩,這十大崗位最受歡迎

    全球AI招聘需求增長放緩,這十大崗位最受歡迎,在硅谷乃至世界各地,人工智能直是熱門職業(yè),機器學(xué)習(xí)
    發(fā)表于 07-04 09:19 ?593次閱讀

    十大機器學(xué)習(xí)算法中的線性判別分析的詳細介紹

    先前呢,我們在最受歡迎十大機器學(xué)習(xí)算法-part1和最受歡迎十大
    的頭像 發(fā)表于 02-03 07:28 ?7422次閱讀

    十大最受歡迎的Linux發(fā)行版

    今天列出些最常用、最受歡迎的Linux發(fā)行版來學(xué)習(xí)黑客和滲透測試!
    的頭像 發(fā)表于 09-07 10:34 ?5233次閱讀

    Netflix上最受歡迎的電視節(jié)目和電影將不再是公司的秘密

    該功能將作為新行啟動,將顯示Netflix上最受歡迎十大內(nèi)容。該公司在今天的公告中說:“除了總體排名前10位的列表之外,您還可以在單??擊電影和電視節(jié)目標(biāo)簽時看到前十大最受歡迎的系列
    的頭像 發(fā)表于 12-18 17:02 ?2393次閱讀

    來自科幻中最受歡迎的PCB靈感機器人之

    電子發(fā)燒友網(wǎng)站提供《來自科幻中最受歡迎的PCB靈感機器人之.zip》資料免費下載
    發(fā)表于 07-25 14:23 ?0次下載
    來自科幻<b class='flag-5'>中最受歡迎</b>的PCB靈感<b class='flag-5'>機器</b>人之<b class='flag-5'>一</b>

    電子發(fā)燒友

    中國電子工程師最喜歡的網(wǎng)站

    • 2931785位工程師會員交流學(xué)習(xí)
    • 獲取您個性化的科技前沿技術(shù)信息
    • 參加活動獲取豐厚的禮品