Jekk qed taqra dan, bla dubju diġà bdejt il-vjaġġ tiegħek fit-tagħlim profond. Jekk int ġdid f'dan is-suġġett, it-tagħlim fil-fond huwa add-on li juża strutturi uniċi simili għall-moħħ imsejħa netwerks newrali artifiċjali biex jinbnew kompjuters bħall-bniedem li jindirizzaw kwistjonijiet tad-dinja reali.
Biex jgħinu fl-iżvilupp ta 'dawn id-disinji, behemoths teknoloġiċi bħal Google, Facebook, u Uber żviluppaw varjetà ta' oqfsa għall-ambjent ta 'tagħlim profond ta' Python, li jagħmilha aktar sempliċi biex tifhem, toħloq u tħarreġ netwerks newrali diversi.
Qafas ta’ tagħlim fil-fond huwa biċċa softwer li l-akkademiċi u x-xjentisti tad-dejta jużaw biex joħolqu u jħarrġu mudelli ta’ tagħlim profond.
L-għan ta 'dawn l-oqfsa huwa li jagħmilha possibbli għall-individwi li jħarrġu l-mudelli tagħhom mingħajr ma jkollhom jifhmu t-tekniki wara tagħlim fil-fond, netwerks newrali, u tagħlim tal-magni.
Permezz ta 'interface ta' programmazzjoni ta 'livell għoli, dawn l-oqfsa jipprovdu blokki ta' bini għall-bini, it-taħriġ u l-verifika ta 'mudelli.
Aħna ser inħarsu lejn TensorFlow, Keras, Apache MXNet, Microsoft CNTK, u DeepLearing4j bħala alternattivi għal PyTorch, li huwa użat ħafna qafas ta’ tagħlim profond.
X'inhu Pytorch?
PyTorch hija librerija ta' tagħlim tal-magni b'xejn u open source mibnija bil-librerija Torch Python.
Inħoloq mill-grupp ta' Riċerka AI ta' Facebook u ppubblikat bħala librerija b'xejn u b'sors miftuħ f'Jannar 2016 b'applikazzjonijiet fil-viżjoni tal-kompjuter, it-tagħlim profond u l-ipproċessar tal-lingwa naturali.
Għandha lingwa ta 'programmar imperattiva u Pythonic li tappoġġja l-kodiċi bħala mudell, tiffaċilita d-debugging, u hija kompatibbli ma' libreriji oħra tal-kompjuters xjentifiċi popolari, kollha filwaqt li tibqa 'effiċjenza u tippermetti aċċeleraturi tal-hardware bħall-GPUs.
PyTorch kiber fil-popolarità fost ir-riċerkaturi tat-tagħlim profond grazzi għall-enfasi tiegħu fuq l-użabilità u kunsiderazzjonijiet bir-reqqa tal-prestazzjoni.
Fiha struttura bażika tad-dejta, Tensor, li hija firxa multi-dimensjonali simili għal matriċi Numpy, li tippermetti lill-programmaturi biex jiddisinjaw faċilment newrali netwerk.
Qed isir aktar popolari fis-setturi attwali u fil-komunità akkademika minħabba l-flessibbiltà, il-veloċità u l-faċilità ta 'implimentazzjoni tiegħu, li jagħmilha waħda mill-aktar għodod popolari ta' tagħlim profond.
Pytorch Karatteristiċi Ewlenin
- PyTorch huwa ċċentrat fuq Python, jew "pythonic", fis-sens li huwa maħsub għal integrazzjoni profonda mal-ipprogrammar Python aktar milli jservi bħala interface għal librerija żviluppata f'lingwa oħra.
- Sempliċi biex titgħallem - PyTorch isegwi l-istess struttura bħall-ipprogrammar tradizzjonali u ġie dokumentat bir-reqqa, bil-komunità tal-iżviluppaturi dejjem tipprova ssaħħaħha. Għalhekk huwa sempliċi li titgħallem kemm għall-programmaturi kif ukoll għal dawk li mhumiex programmaturi.
- PyTorch jista' jaqsam ix-xogħol ta' komputazzjoni fuq diversi CPU jew GPU cores li jużaw il-kapaċità tal-paralleliżmu tad-data. Għalkemm paralleliżmu simili jista 'jsir ma' tekniki oħra ta 'tagħlim bil-magni, PyTorch jagħmilha ferm aktar faċli.
- Debugging: Waħda mill-bosta għodod ta 'debugging Python aċċessibbli b'mod wiesa' (pereżempju, l-għodod pdb u ipdb ta 'Python) tista' tintuża biex tiddibaggja PyTorch.
- PyTorch jappoġġja graffs komputazzjonali dinamiċi, li jimplika li l-imġieba tan-netwerk tista 'tiġi mibdula b'mod dinamiku waqt ir-runtime.
- PyTorch jiġi ma 'diversi moduli maħluqa apposta, bħal torchtext, torchvision, u torchaudio, li jistgħu jintużaw biex jittrattaw oqsma varji ta 'tagħlim profond, bħal NLP, viżjoni tal-kompjuter, u l-ipproċessar tal-vuċi.
Pytorch Limitazzjonijiet
- Interfaces ta' monitoraġġ u viżwalizzazzjoni limitati: Filwaqt li TensorFlow jinkludi għodda ta' viżwalizzazzjoni qawwija biex tiġġenera l-graff tal-mudell (TensorBoard), PyTorch bħalissa m'għandhiex din il-karatteristika. Bħala riżultat, l-iżviluppaturi jistgħu jgħaqqdu ma' TensorBoard esternament jew jutilizzaw wieħed mill-bosta Python eżistenti. għodod tal-viżwalizzazzjoni tad-dejta.
- PyTorch mhix tarf sa tarf tagħlim magna pjattaforma ta' żvilupp; tiskjera applikazzjonijiet għal servers, workstations, u apparat mobbli.
Għal dawn ir-raġunijiet kollha, li tfittex l-aħjar alternattivi għal Pytorch tkun deċiżjoni għaqlija.
L-aktar alternattivi popolari ta' Pytorch
Hawnhekk hawn il-lista tal-aħjar alternattivi għal Pytorch.
1. Tensorflow
TensorFlow huwa qafas ta' sors miftuħ iffukat fuq it-tagħlim profond maħluq minn Google. Jappoġġja wkoll standard tagħlim magna. TensorFlow kien iddisinjat b'kalkoli numeriċi kbar f'moħħu, aktar milli tagħlim fil-fond.
Barra minn hekk, wera li kien pjuttost siewi għall-iżvilupp tat-tagħlim fil-fond ukoll, għalhekk Google għamlitha disponibbli b'xejn. TensorFlow jieħu data fil-forma ta' arrays multi-dimensjonali b'dimensjonijiet akbar, magħrufa bħala tensors. Meta tkun qed tittratta volumi enormi ta 'dejta, l-arrays multi-dimensjonali jidħlu ta' għajnuna.
TensorFlow huwa bbażat fuq graffs tal-fluss tad-dejta fin-node edge. Minħabba li l-metodu ta 'eżekuzzjoni jieħu l-forma ta' graffs, huwa ħafna aktar faċli li tesegwixxi kodiċi TensorFlow fuq cluster ta 'kompjuters waqt li tuża GPUs.
C#, Haskell, Julia, R, Ruby, Rust, u Scala huma fost il-lingwi li l-komunità ta 'TensorFlow ħolqot appoġġ għalihom. TensorFlow joffri l-benefiċċju li jkollu numru kbir ta 'punti ta' aċċess.
Minbarra l-lingwi, TensorFlow għandu firxa kbira ta 'għodod li jgħaqqdu magħha jew huma mibnija fuqha.
vantaġġi
- Huwa faċli għall-utent. Jekk int familjari ma 'Python, tkun sempliċi biex tiġbor.
- Appoġġ mill-komunità. TensorFlow jitjieb prattikament kuljum minn Google u żviluppaturi esperti ta' organizzazzjonijiet oħra.
- TensorFlow Lite jista 'jintuża biex jesegwixxi mudelli TensorFlow fuq apparat mobbli.
- Tensorboard hija għodda għall-monitoraġġ u viżwalizzazzjoni tad-data. Jekk trid tara l-mudelli ta' tagħlim profond tiegħek fl-azzjoni, din hija għodda eċċellenti biex tużah.
- Tensorflow.js jippermettilek tuża JavaScript biex tħaddem mudelli ta' tagħlim profond f'ħin reali fil-browser.
Żvantaġġi
- TensorFlow għandu struttura unika, li tagħmilha aktar diffiċli biex tiskopri u tiddibaggja l-iżbalji.
- M'hemm l-ebda appoġġ OpenCL.
- TensorFlow ma jipprovdix ħafna kapaċitajiet għall-utenti tas-sistema operattiva Windows. Jiftaħ pletora ta 'kapaċitajiet għall-utenti tal-Linux. Madankollu, l-utenti tal-Windows xorta jistgħu jniżżlu TensorFlow billi jużaw il-pront anaconda jew il-pakkett pip.
- TensorFlow jaqa' lura f'termini li joffri loops simboliċi għal sekwenzi indefiniti. Għandu użu speċifiku għal sekwenzi partikolari, li jagħmilha sistema użabbli. Bħala riżultat, huwa msemmi bħala API ta 'livell baxx.
2. Keras
Keras hija librerija ta' tagħlim profond ibbażata fuq Python, li tiddistingwiha minn oqfsa oħra ta' tagħlim profond.
Hija lingwa ta' programmar ta' livell għoli li tiddefinixxi a newrali netwerk Definizzjoni API. Jista 'jintuża kemm bħala interface għall-utent kif ukoll biex ittejjeb il-kapaċitajiet tal-oqfsa ta' tagħlim profond li fuqhom taħdem.
Huwa qafas minimalista li huwa ħafif u faċli biex jintuża. Għal dawn ir-raġunijiet, Keras huwa parti mill-API ċentrali ta 'TensorFlow. Front end Keras jippermetti prototipi rapidi ta 'mudelli ta' netwerk newrali fir-riċerka.
L-API hija faċli biex tinftiehem u tużaha, bil-bonus miżjud li tippermetti li l-mudelli jiġu trasferiti faċilment bejn l-oqfsa.
vantaġġi
- L-API Keras hija sempliċi biex tużah. L-API hija mfassla tajjeb, orjentata lejn l-oġġetti, u adattabbli, li tirriżulta f'esperjenza tal-utent aktar pjaċevoli.
- L-appoġġ għal taħriġ distribwit u paralleliżmu multi-GPU huwa mibni.
- Keras huwa modulu nattiv ta 'Python li jipprovdi aċċess sempliċi għall-ambjent sħiħ tax-xjenza tad-dejta Python. Mudelli Keras, pereżempju, jistgħu jintużaw bl-użu tal-API Python scikit-learn.
- Keras jinkludi piżijiet imħarrġa minn qabel għal diversi mudelli ta 'tagħlim fil-fond. Nistgħu nużaw dawn il-mudelli direttament biex nagħmlu tbassir jew estratt karatteristiċi.
Żvantaġġi
- Jista 'jkun oerhört tedjanti li tikseb kwistjonijiet ta' backend ta 'livell baxx fuq bażi regolari. Dawn il-problemi jinqalgħu meta nippruvaw nagħmlu ħidmiet li Keras ma kienx maħsub li jwettaq.
- Meta mqabbel mal-backends tiegħu, jista 'jkun kajman fuq GPUs u jieħu aktar żmien biex jikkalkula. Bħala riżultat, jista 'jkollna nikkomprometti l-veloċità għall-faċilità għall-utent.
- Meta mqabbla ma 'pakketti oħra bħal sci-kit-learn, il-kapaċitajiet ta' proċessar minn qabel tad-dejta Keras mhumiex daqshekk attraenti.
3. Apache MX Net
Ieħor prominenti Qafas ta' Tagħlim Profond huwa MXNet. MXNet, li nħoloq mill-Apache Software Foundation, jappoġġja varjetà ta 'lingwi, inklużi JavaScript, Python, u C++.
Amazon Web Services jappoġġja wkoll MXNet fl-iżvilupp ta 'mudelli ta' tagħlim profond. Huwa estremament skalabbli, li jippermetti taħriġ ta 'mudell ta' malajr, u huwa kompatibbli ma 'varjetà ta' lingwi tal-kompjuter.
Biex tottimizza l-veloċità u l-produttività, MXNet jippermettilek li tħallat lingwi ta’ programmar simboliċi u imperattivi. Huwa bbażat fuq skedar tad-dipendenza dinamiku li jkopri attivitajiet simboliċi u imperattivi f'ħin reali.
Barra minn hekk, saff ta 'ottimizzazzjoni tal-graff jagħmel l-eżekuzzjoni simbolika mgħaġġla u l-memorja ekonomika. MXNet hija librerija portabbli u ħafifa.
Hija mħaddma minn GPUs NVIDIA PascalTM u skalabbli fuq diversi GPUs u nodi, li jippermettulek tħarreġ mudelli aktar malajr.
vantaġġi
- Jappoġġja GPUs u għandu modalità multi-GPU.
- Effiċjenti, skalabbli, u veloċi sajjetti.
- Il-pjattaformi ewlenin kollha huma abbord.
- Is-servizz tal-mudell huwa sempliċi, u l-API hija veloċi.
- Scala, R, Python, C++, u JavaScript huma fost il-lingwi ta 'programmar appoġġjati.
Żvantaġġi
- MXNet għandu iżgħar sors miftuħ komunità minn TensorFlow.
- Titjib, soluzzjoni ta' bugs, u titjib ieħor jieħu aktar żmien biex jiġu implimentati minħabba nuqqas ta' appoġġ sinifikanti mill-komunità.
- MxNet, għalkemm impjegat ħafna minn bosta ditti fl-industrija tal-IT, mhuwiex magħruf daqs Tensorflow.
4. Microsoft CNTK
Microsoft Konjittivi Toolkit (CNTK) huwa qafas open-source kummerċjalment vijabbli għal tagħlim profond distribwit. Huwa ġeneralment użat biex toħloq netwerks newrali, iżda tista 'tintuża wkoll għat-tagħlim tal-magni u l-kompjuters konjittivi.
Jappoġġja varjetà ta 'lingwi u huwa sempliċi biex jintuża fuq is-sħab. Minħabba dawn il-kwalitajiet, CNTK huwa adattat tajjeb għal varjetà ta 'applikazzjonijiet AI. Għalkemm nistgħu nużaw C++ biex invokaw il-funzjonijiet tiegħu, l-iktar għażla frekwenti hija li tuża programm Python.
Meta taħdem fuq diversi kompjuters, il-Microsoft Cognitive Toolkit huwa rikonoxxut li jagħti prestazzjoni u skalabbiltà aħjar minn settijiet ta' għodda bħal Theano jew TensorFlow.
Il-Microsoft Cognitive Toolkit jappoġġja mudelli newrali kemm RNN kif ukoll CNN, li jagħmilha adattata għall-kompiti ta 'immaġni, kalligrafija u rikonoxximent tad-diskors.
vantaġġi
- Sempliċi biex tintegra ma 'Apache Spark, magna analitika tad-dejta.
- L-iskalabbiltà tas-CNTK għamilha għażla popolari f'ħafna negozji. Hemm diversi komponenti ottimizzati.
- Joffri prestazzjoni stabbli u tajba.
- Jaħdem tajjeb ma 'Azure Cloud, li t-tnejn huma appoġġjati minn Microsoft.
- L-użu u l-ġestjoni tar-riżorsi huma effiċjenti.
Żvantaġġi
- Meta mqabbel ma 'Tensorflow, hemm inqas appoġġ tal-komunità.
- Kurva tat-tagħlim wieqaf.
- M'għandhiex bord ta' viżwalizzazzjoni kif ukoll appoġġ ARM.
5. DeepLearning4j
Jekk Java hija l-lingwa ta 'programmar primarja tiegħek, DeepLearning4j huwa qafas tajjeb għall-użu. Hija librerija mqassma ta' tagħlim profond li hija ta' grad kummerċjali u ta' sors miftuħ.
It-tipi ewlenin kollha ta 'disinji tan-netwerk newrali, bħal RNNs u CNNs, huma appoġġjati. Deeplearning4j hija librerija Java u Scala għal tagħlim profond.
Taħdem tajjeb ma' Hadoop u Apache Spark ukoll. Deeplearning4j hija alternattiva mill-isbaħ għal soluzzjonijiet ta' tagħlim profond ibbażati fuq Java għaliex jappoġġja wkoll GPUs.
Fir-rigward tal-qafas ta 'tagħlim profond Eclipse Deeplearning4j, xi wħud mill-karatteristiċi li jispikkaw jinkludu taħriġ parallel permezz ta' tnaqqis iterattiv, adattament ta 'arkitettura ta' mikro-servizz, u CPUs u GPUs distribwiti.
vantaġġi
- Għandu dokumentazzjoni eċċellenti u għajnuna mill-komunità.
- L-integrazzjoni Apache Spark hija sempliċi.
- Huwa skalabbli u kapaċi jimmaniġġa volumi enormi ta 'dejta.
Żvantaġġi
- Meta mqabbel ma 'Tensorflow u PyTorch, huwa inqas popolari.
- Java hija l-unika lingwa ta' programmar disponibbli.
konklużjoni
L-għażla tal-aħjar qafas ta' tagħlim profond hija impriża diffiċli. Aktar u aktar peress li hemm ħafna minnhom, il-lista qed tikber hekk kif id-domanda għalihom intelliġenza artifiċjali applikazzjonijiet ta 'riċerka u tagħlim tal-magni jikbru. Kull qafas għandu s-sett ta 'vantaġġi u żvantaġġi tiegħu stess.
Għandhom isiru bosta kunsiderazzjonijiet, inklużi s-sigurtà, l-iskalabbiltà u l-prestazzjoni. F'sistemi ta 'grad ta' intrapriża, l-affidabbiltà ssir saħansitra aktar importanti.
Jekk qed tibda, Tensorflow huwa post tajjeb biex tibda. Agħżel CNTK jekk qed tiżviluppa prodott kummerċjali bbażat fuq Windows. Jekk tippreferi Java, uża DL4J.
Ħalli Irrispondi