TensorFlow vs Theano vs Torch vs Keras: Deep Learning Library

Kunstig intelligens er growing i popularitet siden 2016 med 20 % af de store virksomheder, der bruger kunstig intelligens i deres virksomheder (McKinsey indberette, 2018). Ifølge den samme rapport kan AI skabe betydelig værdi på tværs af brancher. I bankvæsenet vurderes potentialet for kunstig intelligens f.eks $300 billion, i detailhandlen er antallet skudt i vejret til $600 billion.

For at låse op for den potentielle værdi af AI skal virksomheder vælge den rigtige deep learning-ramme. I denne tutorial lærer du om de forskellige biblioteker, der er tilgængelige til at udføre dybe læringsopgaver. Nogle biblioteker har eksisteret i årevis, mens nyt bibliotek som TensorFlow er kommet frem i lyset i de senere år.

8 Bedste Deep learning-biblioteker/Framework

På denne liste vil vi sammenligne de bedste Deep learning-rammer. Alle af dem er open source og populære i data scientist community. Vi vil også sammenligne populære ML som tjenesteudbydere

Torch

Torch er et gammelt open source maskinlæringsbibliotek. Den blev udgivet første gang for 15 år siden. Det primære programmeringssprog er LUA, men har en implementering i C. Sammenligner PyTorch vs TensorFlow, understøtter det et stort bibliotek til maskinlæring algorithms, herunder dyb læring. Det understøtter CUDA-implementering til parallel beregning.

Torch deep learning-værktøj bruges af de fleste af de førende laboratorier såsom Facebook, Google, Twitter, Nvidia og så videre. Torch har et bibliotek i Python-navne Pytorch.

Infer.net

Infer.net er udviklet og vedligeholdt af Microsoft. Infer.net er et bibliotek med primært fokus på Bayesiansk statistik. Infer.net er et visualiseringsværktøj til Deep Learning designet til at tilbyde praktikere state-of-the-art algorithms til probabilistisk modellering. Biblioteket indeholder analytiske værktøjer såsom Bayesiansk analyse, skjult Markov-kæde, clusterIng.

Keras

Keras er en Python-ramme til dyb læring. Det er et praktisk bibliotek til at konstruere enhver dyb læringsalgoritme. Fordelen ved Keras er, at den bruger den samme Python-kode til at køre på CPU eller GPU. Desuden er kodningsmiljøet rent og giver mulighed for at træne state-of-the-art algoritme til computersyn, tekstgenkendelse blandt andet.

Keras er udviklet af François Chollet, en forsker hos Google. Keras bruges i fremtrædende organisationer som CERN, Yelp, Square eller Google, Netflix, og Uber.

Keras

Theano

Theano er et dybt læringsbibliotek udviklet af Université de Montréal i 2007. Sammenligner Theano vs TensorFlow, tilbyder det hurtig beregning og kan køres på både CPU og GPU. Theano er udviklet til at træne dybe neurale netværk algorithms.

Microsoft Cognitive Toolkit (CNTK)

Microsoft toolkit, tidligere kendt som CNTK, er et deep learning-bibliotek udviklet af Microsoft. Ifølge Microsoft, er biblioteket blandt de hurtigste på markedet. Microsoft toolkit er dog et open source-bibliotek Microsoft bruger det flittigt til sit produkt som Skype, Cortana, Bing og Xbox. Værktøjssættet er tilgængeligt både i Python og C++.

MX Net

MXnet er et nyligt deep learning-bibliotek. Den er tilgængelig med flere programmeringssprog, herunder C++, Julia, Python og R. MXNet kan konfigureres til at fungere på både CPU og GPU. MXNet inkluderer state-of-the-art dyb læring architecture såsom Convolutional Neural Network og Long Short-Term Memory. MXNet er bygget til at arbejde i harmony med dynamisk cloud-infrastruktur. Hovedbrugeren af ​​MXNet er Amazon

Caffe

Caffe er et bibliotek bygget af Yangqing Jia, da han var ph.d.-studerende i Berkeley. Ved at sammenligne Caffe vs TensorFlow er Caffe skrevet i C++ og kan udføre beregninger på både CPU og GPU. De primære anvendelser af Caffe er Convolutional Neural Network. Selvom Facebook i 2017 udvidede Caffe med mere dyb læring architecture, herunder Recurrent Neural Network. Caffe bruges af akademikere og startups, men også af nogle store virksomheder som Yahoo!.

TensorFlow

TensorFlow er Googles open source-projekt. TensorFlow er det mest berømte deep learning-bibliotek i disse dage. Den blev udgivet til offentligheden i slutningen af ​​2015

TensorFlow

TensorFlow er udviklet i C++ og har praktisk Python API, selvom C++ API'er også er tilgængelige. Fremtrædende virksomheder som Airbus, Google, IBM og så videre bruger TensorFlow til at producere dyb læring algorithms.

TensorFlow Vs Theano Vs Torch Vs Keras Vs infer.net Vs CNTK Vs MXNet Vs Caffe: Nøgleforskelle

Bibliotek perron Skrevet i Cuda støtte Parallel udførelse Har trænede modeller RNN CNN
Torch Linux, macOS, Windows Lua Ja Ja Ja Ja Ja
Infer.Net Linux, macOS, Windows Visual Studio Ingen Ingen Ingen Ingen Ingen
Keras Linux, macOS, Windows Python Ja Ja Ja Ja Ja
Theano På tværs af platforme Python Ja Ja Ja Ja Ja
TensorFlow Linux, macOS, Windows, Android C++, Python, CUDA Ja Ja Ja Ja Ja
MICROSOFT KOGNITIV VÆRKTØJSKÆT Linux, Windows, Mac med Docker C + + Ja Ja Ja Ja Ja
Caffe Linux, macOS, Windows C + + Ja Ja Ja Ja Ja
MX Net Linux, Windows, macOS, Android, iOS, Javascript C + + Ja Ja Ja Ja Ja

Bedømmelse

TensorFlow er det bedste bibliotek af alle, fordi det er bygget til at være tilgængeligt for alle. Tensorflow-biblioteket inkorporerer forskellige API'er til opbygget dyb læring i skala architecture som CNN eller RNN. TensorFlow er baseret på grafberegning, det giver udvikleren mulighed for at visualisere konstruktionen af ​​det neurale netværk med Tensorboad. Dette værktøj er nyttigt til at fejlsøge programmet. Endelig er Tensorflow bygget til at være deployed i skala. Den kører på CPU og GPU.

Tensorflow tiltrækker den største popularitet på GitHub sammenlignet med de andre deep learning-biblioteker.

Sammenligning af Machine Learning as a Service

Following er 4 populære DL som tjenesteudbydere

Google Cloud ML

Google sørger for en foruddannet udviklermodel tilgængelig i Cloud AutoML. Denne løsning findes for en udvikler uden astrong baggrund i machine learning. Udviklere kan bruge avanceret Googles forudtrænede model på deres data. Det giver alle udviklere mulighed for at træne og evaluere enhver model på blot et par minutter.

Google leverer i øjeblikket en REST API til computersyn, talegenkendelse, oversættelse og NLP.

Google Cloud ML

Ved brug af Google Cloud, kan du træne en maskinlæringsramme bygget på TensorFlow, Scikit-learn, XGBoost eller Keras. Google Cloud maskinlæring træner modellerne på tværs af sin sky.

Fordelen at bruge Google cloud computing er enkelheden til at implementere maskinlæring i produktionen. Der er ingen grund til at konfigurere Docker-container. Derudover tager skyen sig af infrastrukturen. Det ved, hvordan man allokerer ressourcer med CPU'er, GPU'er og TPU'er. Det gør træningen hurtigere med parallelle beregninger.

AWS SageMaker

En stor konkurrent til Google Cloud is Amazon Sky, AWS. Amazon har udviklet Amazon SageMaker giver datavidenskabsfolk og udviklere mulighed for at bygge, træne og bringe alle maskinlæringsmodeller i produktion.
SageMaker fås i en Jupyter Notebook og inkluderer det mest brugte maskinlæringsbibliotek, TensorFlow, MXNet, Scikit-learn blandt andre. Programmer skrevet med SageMaker køres automatisk i Docker-beholderne. Amazon varetager ressourceallokeringen for at optimere træningen og udbredelsen.

AWS SageMaker

Amazon leverer API til udviklerne for at tilføje intelligens til deres applikationer. I nogle tilfælde er der ingen grund til at genopfinde hjulet ved at bygge nye modeller fra bunden, mens der er kraftfulde præ-trænede modeller i skyen. Amazon leverer API-tjenester til computervision, samtale chatbots og sprogtjenester:

De tre vigtigste tilgængelige API'er er:

  • Amazon Anerkendelse: giver billed- og videogenkendelse til en app
  • Amazon Forstå: Udfør tekstmining og neural sprogbehandling for for eksempel at automatisere processen med at kontrollere lovligheden af ​​et finansielt dokument
  • Amazon Lex: Tilføj chatbot til en app

Azure Machine Learning Studio

Sandsynligvis en af ​​de hyggeligste tilgange til maskinlæring er Azure Machine Learning Studio. Den væsentlige fordel ved denne løsning er, at der ikke kræves nogen forudgående programmeringskendskab.

Microsoft Azure Machine Learning Studio er et træk-og-slip-samarbejdsværktøj til at skabe, træne, evaluere og implementere en maskinlæringsløsning. Modellen kan effektivt implementeresyed som webtjenester og bruges i flere apps som Excel.

Azure Machine learning-grænsefladen er interaktiv, allowing brugeren til at bygge en model blot ved at trække og slippe elementer hurtigt.

Azure Machine Learning Studio

Når modellen er klar, kan udvikleren gemme den og skubbe den til Azure Galleri eller Azure Marketplace.

Azure Machine learning kan integreres i R eller Python deres tilpassede indbyggede pakke.

IBM Watson ML

Watson studio kan forenkle dataprojekterne med en strømlinet proces, der gør det muligt at udtrække værdi og indsigt fra dataene for at hjælpe virksomheden med at blive smartere og hurtigere. Watson studio leverer et brugervenligt samarbejdsbaseret datavidenskab og maskinlæringsmiljø til opbygning og træning af modeller, forberedelse og analyse af data og deling af indsigt på ét sted. Watson Studio er nem at bruge med en træk-og-slip-kode.

IBM Watson ML

Watson studio understøtter nogle af de mest populære rammer som Tensorflow, Keras, Pytorch, Caffe og kan implementere en dyb læringsalgoritme på de nyeste GPU'er fra Nvidia for at hjælpe med at accelerere modelleringen.

Bedømmelse

Efter vores synspunkt, Google cloud løsningen er den, der er den mest anbefalede. Google cloud løsning giver lavere priser på AWS med mindst 30 % for datalagring og maskinlæringsløsning. Google gør et fremragende stykke arbejde for at demokratisere kunstig intelligens. Det har udviklet et open source-sprog, TensorFlow, optimeret datalager forbindelse, giver enorme værktøjer fra datavisualisering, dataanalyse til maskinlæring. Desuden er Google Console ergonomisk og meget mere omfattende end AWS eller Windows.