TensorFlow vs Theano vs Torch vs Keras: Biblioteca de învățare profundă

Inteligența artificială este în creștere în popularitate din 2016, 20% dintre marile companii care folosesc inteligența artificială în afacerile lor (McKinsey raportează, 2018). Conform aceluiași raport, AI poate crea valoare substanțială în toate industriile. În domeniul bancar, de exemplu, potențialul AI este estimat la $300 de miliarde, în comerțul cu amănuntul numărul crește vertiginos la $600 miliarde.

Pentru a debloca valoarea potențială a inteligenței artificiale, companiile trebuie să aleagă cadrul potrivit de învățare profundă. În acest tutorial, veți afla despre diferitele biblioteci disponibile pentru a efectua sarcini de deep learning. Unele biblioteci există de ani de zile, în timp ce noi biblioteci precum TensorFlow au apărut în ultimii ani.

8 cele mai bune biblioteci/cadru de învățare profundă

În această listă, vom compara cele mai bune cadre de învățare profundă. Toate sunt open source și populare în comunitatea de date. Vom compara, de asemenea, ML populari ca furnizori de servicii

Lanternă

Torch este o veche bibliotecă open source de învățare automată. A fost lansat pentru prima dată acum 15 ani. Limbajul principal de programare este LUA, dar are o implementare în C. Comparând PyTorch cu TensorFlow, acesta acceptă o bibliotecă vastă pentru algoritmi de învățare automată, inclusiv învățarea profundă. Suportă implementarea CUDA pentru calcul paralel.

Instrumentul Torch de deep learning este folosit de majoritatea laboratoarelor de top, cum ar fi Facebook, Google, Twitter, Nvidia și așa mai departe. Torch are o bibliotecă înăuntru Python numește Pytorch.

Infer.net

Infer.net este dezvoltat și întreținut de Microsoft. Infer.net este o bibliotecă cu un accent principal pe statistica bayesiană. Infer.net este un instrument de vizualizare pentru Deep Learning conceput pentru a oferi practicienilor algoritmi de ultimă generație pentru modelarea probabilistică. Biblioteca contine instrumente analitice precum analiza bayesiană, lanțul Markov ascuns, gruparea.

Keras

Keras este un Python cadru pentru învățarea profundă. Este o bibliotecă convenabilă pentru a construi orice algoritm de învățare profundă. Avantajul Keras este că folosește același lucru Python cod pentru a rula pe CPU sau GPU. În plus, mediul de codificare este pur și permite antrenamentul algoritmului de ultimă generație pentru viziune computerizată, recunoașterea textului, printre altele.

Keras a fost dezvoltat de François Chollet, cercetător la Google. Keras este folosit în organizații importante precum CERN, Yelp, Square sau Google, Netflixși Uber.

Keras

Theano

Theano este o bibliotecă de învățare profundă dezvoltată de Universitatea din Montréal în 2007. Comparând Theano cu TensorFlow, oferă calcul rapid și poate fi rulat atât pe CPU, cât și pe GPU. Theano a fost dezvoltat pentru a antrena algoritmi de rețele neuronale profunde.

Microsoft Setul de instrumente cognitive (CNTK)

Microsoft trusa de instrumente, cunoscută anterior ca CNTK, este o bibliotecă de învățare profundă dezvoltată de Microsoft. Conform Microsoft, biblioteca este printre cele mai rapide de pe piață. Microsoft toolkit este o bibliotecă open-source, deși Microsoft îl folosește pe scară largă pentru produsul său, cum ar fi Skype, Cortana, Bing și Xbox. Setul de instrumente este disponibil atât în Python si C++.

MX Net

MXnet este o bibliotecă recentă de deep learning. Este accesibil cu mai multe limbaje de programare, inclusiv C++, Julia, Python și R. MXNet poate fi configurat să funcționeze atât pe CPU, cât și pe GPU. MXNet include o arhitectură de învățare profundă de ultimă generație, cum ar fi rețeaua neuronală convoluțională și memoria pe termen scurt. MXNet este construit pentru a funcționa harmony cu infrastructură cloud dinamică. Utilizatorul principal al MXNet este Amazon

caffe

Caffe este o bibliotecă construită de Yangqing Jia când era doctorand la Berkeley. Comparând Caffe cu TensorFlow, Caffe este scris în C++ și poate efectua calcule atât pe CPU, cât și pe GPU. Principalele utilizări ale Caffe este rețeaua neuronală convoluțională. Deși, în 2017, Facebook a extins Caffe cu o arhitectură de învățare mai profundă, inclusiv Recurrent Neural Network. Caffe este folosit de academicieni și startup-uri, dar și de unele companii mari precum Yahoo!.

TensorFlow

TensorFlow este un proiect Google open source. TensorFlow este cea mai faimoasă bibliotecă de deep learning în aceste zile. A fost lansată publicului la sfârșitul anului 2015

TensorFlow

TensorFlow este dezvoltat în C++ și are convenabil Python API, deși C++ Sunt disponibile și API-uri. Companii proeminente precum Airbus, Google, IBM și așa mai departe folosesc TensorFlow pentru a produce algoritmi de învățare profundă.

TensorFlow Vs Theano Vs Torch Vs Keras Vs infer.net Vs CNTK Vs MXNet Vs Caffe: diferențe cheie

Bibliotecă Platformă Scris in Cuda suport Execuție paralelă Are modele antrenate RNN CNN
Lanternă Linux, macOS, Windows Lua Da Da Da Da Da
Infer.Net Linux, macOS, Windows Visual Studio Nu Nu Nu Nu Nu
Keras Linux, macOS, Windows Python Da Da Da Da Da
Theano Cross-platform Python Da Da Da Da Da
TensorFlow Linux, macOS, Windows, Android C++, Python, CUDA Da Da Da Da Da
KIT DE INSTRUMENTE COGNITIVE MICROSOFT Linux, Windows, Mac cu Docker C++ Da Da Da Da Da
caffe Linux, macOS, Windows C++ Da Da Da Da Da
MX Net Linux, Windows, macOS, Android, IOS, Javascript C++ Da Da Da Da Da

Verdict

TensorFlow este cea mai bună bibliotecă dintre toate, deoarece este construită pentru a fi accesibilă pentru toată lumea. Biblioteca Tensorflow încorporează diferite API-uri pentru a construi la scară o arhitectură de învățare profundă, cum ar fi CNN sau RNN. TensorFlow se bazează pe calculul grafic, acesta permite dezvoltatorului să vizualizeze construcția rețelei neuronale cu Tensorboad. Acest instrument este util pentru depanarea programului. În cele din urmă, Tensorflow este construit pentru a fi implementat la scară. Funcționează pe CPU și GPU.

Tensorflow atrage cea mai mare popularitate pe GitHub în comparație cu celelalte biblioteci de deep learning.

Compararea Machine Learning ca serviciu

Următoarele sunt 4 DL populare ca furnizori de servicii

Google Cloud ML

Google oferă pentru dezvoltatori un model pre-instruit disponibil în Cloud AutoML. Această soluție există pentru un dezvoltator fără un background puternic în masina de învățare. Dezvoltatorii pot folosi modelul de ultimă generație de la Google pentru datele lor. Permite oricăror dezvoltatori să antreneze și să evalueze orice model în doar câteva minute.

În prezent, Google oferă un API REST pentru viziune computerizată, recunoaștere a vorbirii, traducere și NLP.

Google Cloud ML

Utilizarea Google Cloud, puteți antrena un cadru de învățare automată bazat pe TensorFlow, Scikit-learn, XGBoost sau Keras. Google Cloud Învățarea automată va antrena modelele în cloud.

Avantajul utilizării cloud computing Google este simplitatea implementării învățării automate în producție. Nu este nevoie să configurați containerul Docker. În plus, cloud-ul are grijă de infrastructură. Știe cum să aloce resurse cu CPU-uri, GPU-uri și TPU-uri. Face antrenamentul mai rapid cu calcul paralel.

AWS SageMaker

Un concurent major pentru Google Cloud is Amazon nor, AWS. Amazon a dezvoltat Amazon SageMaker le permite oamenilor de știință de date și dezvoltatorilor să construiască, să antreneze și să introducă în producție orice model de învățare automată.
SageMaker este disponibil în format a Jupyter Notebook și include cea mai folosită bibliotecă de învățare automată, TensorFlow, MXNet, Scikit-learn, printre altele. Programele scrise cu SageMaker sunt rulate automat în containerele Docker. Amazon se ocupă de alocarea resurselor pentru a optimiza instruirea și implementarea.

AWS SageMaker

Amazon oferă API dezvoltatorilor pentru a adăuga inteligență aplicațiilor lor. În unele ocazii, nu este nevoie să reinventăm roata prin construirea de la zero modele noi, în timp ce există modele puternice pre-antrenate în cloud. Amazon oferă servicii API pentru viziune computerizată, chatbot conversaționali și servicii lingvistice:

Cele trei API-uri majore disponibile sunt:

  • Amazon Recunoaștere: oferă recunoaștere a imaginilor și a videoclipurilor unei aplicații
  • Amazon Înţelege: Efectuați extragerea textului și procesarea limbajului neuronal pentru, de exemplu, automatizarea procesului de verificare a legalității documentului financiar
  • Amazon Lex: Adăugați chatbot la o aplicație

Azure Studio de învățare automată

Probabil că una dintre cele mai prietenoase abordări ale învățării automate este Azure Studio de învățare automată. Avantajul semnificativ al acestei soluții este că nu sunt necesare cunoștințe anterioare de programare.

Microsoft Azure Machine Learning Studio este un instrument de colaborare cu drag-and-drop pentru a crea, antrena, evalua și implementa soluții de învățare automată. Modelul poate fi implementat eficient ca servicii web și utilizat în mai multe aplicații precum Excel.

Azure Interfața de învățare automată este interactivă, permițând utilizatorului să construiască un model doar prin glisarea și plasarea rapidă a elementelor.

Azure Studio de învățare automată

Când modelul este gata, dezvoltatorul îl poate salva și îl poate împinge Azure Galerie or Azure Piata de desfacere.

Azure Învățarea automată poate fi integrată în R sau Python pachetul lor personalizat încorporat.

IBM Watson ML

Studioul Watson poate simplifica proiectele de date printr-un proces simplificat care permite extragerea valorii și a informațiilor din date pentru a ajuta afacerea să devină mai inteligentă și mai rapidă. Studioul Watson oferă un mediu colaborativ de știință a datelor și de învățare automată ușor de utilizat pentru construirea și antrenamentul modelelor, pregătirea și analizarea datelor și partajarea informațiilor într-un singur loc. Watson Studio este ușor de utilizat cu un cod drag-and-drop.

IBM Watson ML

Studioul Watson acceptă unele dintre cele mai populare cadre precum Tensorflow, Keras, Pytorch, Caffe și poate implementa un algoritm de învățare profundă pe cele mai recente GPU-uri de la Nvidia pentru a ajuta la accelerarea modelării.

Verdict

Din punctul nostru de vedere, soluția cloud Google este cea mai recomandată. Soluția cloud Google oferă prețuri mai mici pentru AWS cu cel puțin 30% pentru soluția de stocare a datelor și de învățare automată. Google face o treabă excelentă pentru a democratiza AI. A dezvoltat un limbaj open source, TensorFlow, optimizat depozit de date conexiune, oferă instrumente extraordinare, de la vizualizarea datelor, analiza datelor până la învățarea automată. În plus, Google Console este ergonomică și mult mai cuprinzătoare decât AWS sau Windows.