TensorFlow vs. Theano vs. Torch vs Keras: Deep Learning Library
Kunstig intelligens er vokset i popularitet siden 2016, og 20 % af de store virksomheder 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 milliarder, i detailhandlen er tallet skudt i vejret til $600 mia.
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 er open source og populรฆre i dataforskersamfundet. Vi vil ogsรฅ sammenligne populรฆre ML som tjenesteudbydere
Torch
Torch er et gammelt open source-bibliotek for maskinlรฆring. Det blev udgivet for 15 รฅr siden. Dets primรฆre programmeringssprog er LUA, men har en implementering i C. Sammenligning af PyTorch vs TensorFlow, understรธtter det et stort bibliotek til maskinlรฆringsalgoritmer, herunder deep learning. Det understรธtter CUDA-implementering til parallel beregning.
Torch deep learning-vรฆrktรธjet bruges af de fleste af de fรธrende laboratorier sรฅsom Facebook, Google, Twitter, Nvidia og sรฅ videre. Torch har et bibliotek i Python navngiver 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 avancerede algoritmer til probabilistisk modellering. Biblioteket indeholder analytiske vรฆrktรธjer sรฅsom Bayesiansk analyse, skjult Markov-kรฆde, clustering.
Keras
Keras er en Python rammer for dyb lรฆring. Det er et praktisk bibliotek til at konstruere enhver dyb lรฆringsalgoritme. Fordelen ved Keras er, at den bruger det 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 blev udviklet af Franรงois Chollet, en forsker ved GoogleKeras bruges i fremtrรฆdende organisationer som CERN, Yelp, Square eller Google, Netflix, og Uber.
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รฆrksalgoritmer.
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. Det er tilgรฆngeligt 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 deep learning-arkitektur 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 ind 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รฆringsarkitektur, inklusive Recurrent Neural Network. Caffe bruges af akademikere og startups, men ogsรฅ af nogle store virksomheder som Yahoo!.
TensorFlow
TensorFlow er Google open source-projekt. TensorFlow er det mest berรธmte deep learning-bibliotek i disse dage. Det blev udgivet til offentligheden i slutningen af โโ2015
TensorFlow er udviklet i C++ og har praktisk Python API dog C++ API'er er ogsรฅ tilgรฆngelige. Fremtrรฆdende virksomheder som Airbus, Google, IBM og sรฅ videre bruger TensorFlow til at producere deep learning algoritmer.
TensorFlow vs. Theano vs. Torch vs. Keras vs. infer.net vs. CNTK vs. MXNet vs. Caffe: Vigtigste forskelle
| 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 COGNITIVE TOOLKIT | 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 at bygge i skala deep learning-arkitektur 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 fejlfinde programmet. Endelig er Tensorflow bygget til at blive implementeret i stor skala. Den kรธrer pรฅ CPU og GPU.
Tensorflow vedtrachar den stรธrste popularitet pรฅ GitHub sammenlignet med de andre deep learning-biblioteker.
Sammenligning af Machine Learning as a Service
Fรธlgende er 4 populรฆre DL som tjenesteudbydere
Google Cloud ML
Google sรธrger for en prรฆ-trรฆnet model for udviklere, der er tilgรฆngelig i Cloud AutoML. Denne lรธsning findes for en udvikler uden en stรฆrk baggrund i machine learningUdviklere kan bruge den nyeste teknologi Google's prรฆtrรฆnede model pรฅ deres data. Det giver alle udviklere mulighed for at trรฆne og evaluere enhver model pรฅ blot et par minutter.
Google tilbyder i รธjeblikket en REST API til computer vision, talegenkendelse, oversรฆttelse og NLP.
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 ved at bruge Google Cloud computing er den enkle mรฅde at implementere maskinlรฆring i produktion. Der er ikke behov for at sรฆtte en Docker-container op. Derudover tager skyen sig af infrastrukturen. Den ved, hvordan ressourcer skal allokeres til CPU'er, GPU'er og TPU'er. Det gรธr trรฆningen hurtigere med parallel beregning.
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.
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, chatbots til samtale 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: Fรธj chatbot til en app
Azure Machine Learning Studio
Sandsynligvis er en af โโde hyggeligste tilgange til maskinlรฆring 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 implementeres som webtjenester og bruges i flere apps som Excel.
Azure Maskinlรฆringsgrรฆnsefladen er interaktiv, hvilket giver brugeren mulighed for at bygge en model blot ved at trรฆkke og slippeping elementer hurtigt.
Nรฅr modellen er klar, kan udvikleren gemme den og skubbe den til Azure Galleri or Azure Marketplace.
Azure Machine learning kan integreres i R eller Python deres tilpassede indbyggede pakke.
IBM Watson ML
Watson Studio kan forenkle dataprojekter med en strรธmlinet proces, der muliggรธr f.eks.tracskabe vรฆrdi og indsigt fra dataene for at hjรฆlpe virksomheden med at blive smartere og hurtigere. Watson Studio leverer et brugervenligt, samarbejdsorienteret datavidenskabs- og maskinlรฆringsmiljรธ til opbygning og trรฆning af modeller, forberedelse og analyse af data og deling af indsigt, alt sammen pรฅ รฉt sted. Watson Studio er nem at bruge med trรฆk-og-slip-kode.
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
Fra vores synspunkt, Google Cloud-lรธsningen er den mest anbefalede. Google Cloud-lรธsningen giver mindst 30 % lavere priser end AWS for datalagring og maskinlรฆringslรธsninger. Google gรธr et fremragende stykke arbejde med at demokratisere AI. Det har udviklet et open source-sprog, TensorFlow, der er optimeret datalager forbindelse, leverer fantastiske vรฆrktรธjer fra datavisualisering og dataanalyse til maskinlรฆring. Derudover, Google Konsollen er ergonomisk og meget mere omfattende end AWS eller Windows.






