TensorFlow vs Theano vs Torch vs Keras: Syväoppimiskirjasto

Sisällysluettelo:

Anonim

Tekoälyn suosio on kasvanut vuodesta 2016, ja 20% suurista yrityksistä käyttää tekoälyä liiketoiminnassaan (McKinsey-raportti, 2018). Saman raportin mukaan tekoäly voi luoda merkittävää arvoa kaikilla toimialoilla. Pankkitoiminnassa esimerkiksi potentiaalia AI arviolta $ 300 miljardia vähittäiskaupan määrän huimasti on $ 600 miljardia euroa.

Tekoälyn potentiaalisen arvon avaamiseksi yritysten on valittava oikea syvällisen oppimisen kehys. Tässä opetusohjelmassa opit erilaisista kirjastoista, jotka ovat käytettävissä syvällisten oppimistehtävien suorittamiseen. Jotkut kirjastot ovat olleet olemassa jo vuosia, kun taas uusi kirjasto, kuten TensorFlow, on tullut esiin viime vuosina.

8 parasta syvällisen oppimisen kirjastoa / kehystä

Tässä luettelossa verrataan parhaita Deep-oppimiskehyksiä. Kaikki ne ovat avoimen lähdekoodin ja suosittuja datatieteilijöiden yhteisössä. Vertaamme myös suosittua ML: tä palveluntarjoajina

Soihtu

Torch on vanha avoimen lähdekoodin koneoppimiskirjasto. Se julkaistiin ensimmäisen kerran 15 vuotta sitten. Se on ensisijainen ohjelmointikieli, joka on LUA, mutta se on toteutettu C: ssä. Vertaamalla PyTorchia ja TensorFlow'ta, se tukee laajaa kirjastoa koneoppimisalgoritmeille, mukaan lukien syvällinen oppiminen. Se tukee CUDA-toteutusta rinnakkaislaskennassa.

Torch-syväoppimistyökalua käyttävät useimmat johtavat laboratoriot, kuten Facebook, Google, Twitter, Nvidia ja niin edelleen. Torchilla on kirjasto Python-nimillä Pytorch.

Infer.net

Infer.net on Microsoftin kehittämä ja ylläpitämä. Infer.net on kirjasto, joka keskittyy ensisijaisesti Bayesin tilastoihin. Infer.net on syvällisen oppimisen visualisointityökalu, joka on suunniteltu tarjoamaan ammattilaisille huipputekniikan algoritmeja todennäköisyysmallinnukseen. Kirjasto sisältää analyyttisiä työkaluja, kuten Bayesin analyysi, piilotettu Markov-ketju, klusterointi.

Keras

Keras on Python-kehys syvälliseen oppimiseen. Se on kätevä kirjasto minkä tahansa syvällisen oppimisalgoritmin rakentamiseen. Kerasin etuna on, että se käyttää samaa Python-koodia suoritettaessa suorittimella tai GPU: lla. Koodausympäristö on lisäksi puhdas ja mahdollistaa muun muassa huippunopean algoritmin kouluttamisen tietokoneen näkemiselle, tekstintunnistukselle.

Kerasin on kehittänyt Googlen tutkija François Chollet. Kerasia käytetään merkittävissä organisaatioissa, kuten CERN, Yelp, Square tai Google, Netflix ja Uber.

Theano

Theano on Montréalin yliopiston vuonna 2007 kehittämä syvällisen oppimisen kirjasto. Vertaamalla Theanoa ja TensorFlow'ta, se tarjoaa nopean laskennan ja sitä voidaan käyttää sekä suorittimella että näytönohjaimella. Theano on kehitetty kouluttamaan syvän hermoverkon algoritmeja.

Microsoftin kognitiivinen työkalupakki (CNTK)

Microsoft toolkit, joka tunnettiin aiemmin nimellä CNTK, on ​​Microsoftin kehittämä syvällisen oppimisen kirjasto. Microsoftin mukaan kirjasto on markkinoiden nopeimpia. Microsoftin työkalupakki on avoimen lähdekoodin kirjasto, vaikka Microsoft käyttää sitä laajasti tuotteisiinsa, kuten Skype, Cortana, Bing ja Xbox. Työkalupakki on saatavana sekä Pythonissa että C ++: ssa.

MXNet

MXnet on äskettäin syväoppimiskirjasto. Se on käytettävissä useilla ohjelmointikielillä, mukaan lukien C ++, Julia, Python ja R. MXNet voidaan määrittää toimimaan sekä prosessorilla että näytönohjaimella. MXNet sisältää huippuluokan syvällisen oppimisen arkkitehtuurin, kuten konvoluutiohermoverkon ja pitkän lyhytaikaisen muistin. MXNet on rakennettu toimimaan sopusoinnussa dynaamisen pilvi-infrastruktuurin kanssa. MXNetin pääkäyttäjä on Amazon

Kahvila

Caffe on kirjasto, jonka rakensi Yangqing Jia, kun hän oli tohtorikoulutettava Berkeleyssä. Vertaamalla Caffe vs TensorFlow, Caffe on kirjoitettu C ++: lla ja voi suorittaa laskennan sekä suorittimella että näytönohjaimella. Caffen ensisijainen käyttö on konvoluutio-hermoverkko. Vaikka vuonna 2017 Facebook laajensi Caffea syvemmällä oppimisarkkitehtuurilla, mukaan lukien Recurrent Neural Network. Caffea käyttävät tutkijat ja startupit, mutta myös jotkut suuret yritykset, kuten Yahoo !.

TensorFlow

TensorFlow on Googlen avoimen lähdekoodin projekti. TensorFlow on nykyisin tunnetuin syvällisen oppimisen kirjasto. Se julkaistiin yleisölle vuoden 2015 lopulla

TensorFlow on kehitetty C ++: ssa ja sillä on kätevä Python-sovellusliittymä, vaikka myös C ++ -sovellusliittymiä on saatavana. Tunnetut yritykset, kuten Airbus, Google, IBM ja niin edelleen, käyttävät TensorFlow'ta syvien oppimisalgoritmien tuottamiseen.

TensorFlow Vs Theano vs Taskulamppu Vs Keras Vs infer.net Vs CNTK Vs MXNet Vs Caffe: Tärkeimmät erot

Kirjasto Alusta Kirjoitettu Cudan tuki Rinnakkainen toteutus Hänellä on koulutettuja malleja RNN CNN
Soihtu Linux, MacOS, Windows Lua Joo Joo Joo Joo Joo
Infer.Net Linux, MacOS, Windows Visual Studio Ei Ei Ei Ei Ei
Keras Linux, MacOS, Windows Python Joo Joo Joo Joo Joo
Theano Monitasoinen Python Joo Joo Joo Joo Joo
TensorFlow Linux, MacOS, Windows, Android C ++, Python, CUDA Joo Joo Joo Joo Joo
MICROSOFT Kognitiivinen työkalu Linux, Windows, Mac ja Docker C ++ Joo Joo Joo Joo Joo
Kahvila Linux, MacOS, Windows C ++ Joo Joo Joo Joo Joo
MXNet Linux, Windows, MacOs, Android, iOS, Javascript C ++ Joo Joo Joo Joo Joo

Tuomio:

TensorFlow on kaikkien paras kirjasto, koska se on rakennettu kaikkien saataville. Tensorflow-kirjasto sisältää erilaisen sovellusliittymän, joka on rakennettu mittakaavassa syvään oppimiseen, kuten CNN tai RNN. TensorFlow perustuu graafin laskentaan, sen avulla kehittäjä voi visualisoida hermoverkon rakenteen Tensorboadilla. Tämä työkalu on hyödyllinen ohjelman virheenkorjauksessa. Lopuksi Tensorflow on rakennettu käytettäväksi mittakaavassa. Se toimii CPU: lla ja GPU: lla.

Tensorflow saa suurimman suosion GitHubissa verrattuna muihin syvällisen oppimisen kirjastoihin.

Koneoppimisen vertailu palveluna

Seuraavassa on 4 suosittua DL-palveluntarjoajaa

Google Cloud ML

Google tarjoaa kehittäjille valmiiksi koulutetun mallin, joka on saatavana Cloud AutoML -palvelussa. Tämä ratkaisu on kehittäjälle, jolla ei ole vahvaa taustaa koneoppimisessa. Kehittäjät voivat käyttää tietonsa huippuluokan Googlen ennalta koulutettua mallia. Sen avulla kaikki kehittäjät voivat kouluttaa ja arvioida mitä tahansa mallia muutamassa minuutissa.

Google tarjoaa tällä hetkellä REST-sovellusliittymän tietokoneiden näkemiseen, puheen tunnistamiseen, kääntämiseen ja NLP: hen.

Google Cloudin avulla voit kouluttaa koneoppimisen puitteita, jotka perustuvat TensorFlow-, Scikit-learn-, XGBoost- tai Keras-sovelluksiin. Google Cloud -koneoppiminen kouluttaa mallit pilvipalveluunsa.

Google-pilvipalvelujen käytön etuna on yksinkertaisuus koneoppimisen käyttöönotossa tuotantoon. Docker-säiliötä ei tarvitse asettaa. Lisäksi pilvi huolehtii infrastruktuurista. Se osaa jakaa resursseja suorittimien, grafiikkasuoritinten ja TPU: iden kanssa. Se tekee harjoittelusta nopeampaa rinnakkaisen laskennan avulla.

AWS SageMaker

Suurin kilpailija Google Cloudille on Amazon cloud, AWS. Amazon on kehittänyt Amazon SageMakerin, jonka avulla datatieteilijät ja kehittäjät voivat rakentaa, kouluttaa ja tuoda tuotantoon koneoppimismalleja.

SageMaker on saatavana Jupyter Notebookissa, ja se sisältää muun muassa eniten käytetyt koneoppimiskirjastot, TensorFlow, MXNet, Scikit-learn. SageMakerilla kirjoitetut ohjelmat ajetaan automaattisesti Docker-säilöissä. Amazon hoitaa resurssien kohdentamisen koulutuksen ja käyttöönoton optimoimiseksi.

Amazon tarjoaa kehittäjille API: n älykkyyden lisäämiseksi heidän sovelluksiinsa. Joissakin tapauksissa pyörää ei tarvitse keksiä uudestaan ​​rakentamalla tyhjästä uusia malleja, kun taas pilvessä on tehokkaita ennalta koulutettuja malleja. Amazon tarjoaa sovellusliittymän palveluja tietokoneiden visioille, keskusteluproboteille ja kielipalveluille:

Kolme suurinta käytettävissä olevaa sovellusliittymää ovat:

  • Amazon Rekognition: tarjoaa sovellukselle kuvan ja videotunnistuksen
  • Amazon Comprehend: Suorita tekstin louhinta ja hermokielen käsittely esimerkiksi automatisoidaksesi rahoitusasiakirjojen laillisuuden
  • Amazon Lex: Lisää chatbot sovellukseen

Azure Machine Learning Studio

Todennäköisesti yksi ystävällisimmistä lähestymistavoista koneoppimiseen on Azure Machine Learning Studio. Tämän ratkaisun merkittävä etu on, että aikaisempaa ohjelmointitietoa ei tarvita.

Microsoft Azure Machine Learning Studio on vedä ja pudota -työkalu koneoppimisratkaisun luomiseen, kouluttamiseen, arviointiin ja käyttöönottoon. Malli voidaan ottaa tehokkaasti käyttöön verkkopalveluina ja käyttää useissa sovelluksissa, kuten Excel.

Azure Machine -käyttöliittymä on interaktiivinen, jonka avulla käyttäjä voi rakentaa mallin vain vetämällä ja pudottamalla elementtejä nopeasti.

Kun malli on valmis, kehittäjä voi tallentaa sen ja siirtää sen Azure-galleriaan tai Azure Marketplace -palveluun.

Azure Machine -oppiminen voidaan integroida R- tai Python-mukautettuun sisäänrakennettuun pakettiin.

IBM Watson ML

Watson studio voi yksinkertaistaa dataprojekteja virtaviivaistetulla prosessilla, jonka avulla arvosta ja oivalluksista saadaan tietoa, mikä auttaa yritystä älykkäämmin ja nopeammin. Watson studio tarjoaa helppokäyttöisen datatieteen ja koneoppimisen yhteistyöympäristön mallien rakentamiseen ja kouluttamiseen, tietojen valmisteluun ja analysointiin sekä oivallusten jakamiseen yhdessä paikassa. Watson Studiota on helppo käyttää vedä ja pudota -koodilla.

Watson-studio tukee joitain suosituimpia kehyksiä, kuten Tensorflow, Keras, Pytorch, Caffe, ja voi ottaa käyttöön syvällisen oppimisalgoritmin Nvidian uusimpiin grafiikkasuorittimiin mallintamisen nopeuttamiseksi.

Tuomio:

Meidän mielestämme Google-pilviratkaisu on suositeltavin ratkaisu. Googlen pilviratkaisu tarjoaa AWS: n hinnat alhaisemmaksi vähintään 30% tietojen tallennus- ja koneoppimisratkaisuille. Google tekee erinomaista työtä tekoälyn demokratisoimiseksi. Se on kehittänyt avoimen lähdekielen TensorFlow-kielen, joka on optimoitu tietovarastoyhteys, tarjoaa valtavia työkaluja tietojen visualisoinnista, tietojen analysoinnista koneoppimiseen. Lisäksi Google Console on ergonominen ja paljon kattavampi kuin AWS tai Windows.