Ikaskuntza sakonerako esparru bat interfaze, liburutegi eta tresnen konbinazio batek osatzen du Machine Learning ereduak azkar eta zehaztasunez definitzeko eta trebatzeko.
Ikaskuntza sakonak testu gabeko datu egituratu ugari erabiltzen dituenez, "geruzen" arteko elkarrekintza kontrolatzen duen eta ereduaren garapena azkar egiten duen marko bat behar duzu sarrerako datuetatik ikasiz eta erabaki autonomoak hartuz.
2021ean ikaskuntza sakona ezagutzeko interesa baduzu, kontuan hartu behean adierazitako esparruetako bat erabiltzea. Gogoratu zure helburuak eta ikuspegia lortzen lagunduko dizun bat aukeratzea.
1. TensorFlow
Ikaskuntza sakonaz hitz egitean, TensorFlow da askotan aipatzen den lehen esparrua. Oso ezaguna, esparru hau Googlek –bere sorreraren arduraduna den enpresak– erabiltzen ez ezik, Dropbox, eBay, Airbnb, Nvidia eta beste hainbat enpresek ere erabiltzen dute.
TensorFlow maila altuko eta baxuko APIak garatzeko erabil daiteke, aplikazioak ia edozein gailutan exekutatzeko. Python bere hizkuntza nagusia den arren, Tensoflow-en interfazea beste programazio-lengoaia batzuk erabiliz atzitu eta kontrola daiteke, hala nola C++, Java, Julia eta JavaScript.
Kode irekikoa izanik, TensorFlow-ek beste API batzuekin hainbat integrazio egiteko aukera ematen dizu eta komunitatearen laguntza eta eguneratze azkarrak lortzeko. Konputaziorako "grafiko estatikoetan" konfiantza izateak, berehalako kalkuluak egiteko edo eragiketak gordetzeko aukera ematen du beste momentu batean sartzeko. Arrazoi hauek, TensorBoard-en bidez zure sare neuronalaren garapena "ikusi" dezakezun aukerari gehituta, TensorFlow ikaskuntza sakonerako esparru ezagunena bihurtzen dute.
Key Ezaugarriak
- Irekiko
- Malgutasuna
- Arazketa azkarra
2. PyTorch
PyTorch Facebook-ek bere zerbitzuen funtzionamenduan laguntzeko garatutako esparru bat da. Kode irekia bihurtu zenetik, marko hau Facebook ez den beste enpresek erabili dute, hala nola Salesforce eta Udacity.
Esparru honek dinamikoki eguneratutako grafikoak funtzionatzen ditu, eta horri esker zure datu-multzoaren arkitekturan aldaketak egin ditzakezu prozesatzen dituzun bitartean. PyTorch-ekin errazagoa da sare neuronal bat garatzea eta entrenatzea, ikaskuntza sakonean esperientziarik izan gabe ere.
Kode irekikoa izanik eta Python-en oinarrituta, PyTorch-en integrazio errazak eta azkarrak egin ditzakezu. Ikasteko, erabiltzeko eta arazketarako marko sinple bat ere bada. Galderarik baduzu, bi komunitateen laguntza eta eguneratze bikainarekin izan dezakezu: Python komunitatea eta PyTorch komunitatea.
Key Ezaugarriak
- Errazak
- GPU eta CPU onartzen ditu
- Liburutegiak zabaltzeko API multzo aberatsa
3. Apache MX Net
Eskalagarritasun handia, errendimendu handia, arazoen konponketa azkarra eta GPU euskarria aurreratua direla eta, esparru hau Apache-k sortu zuen industria-proiektu handietan erabiltzeko.
MXNet-ek Gluon interfazea barne hartzen du, trebetasun-maila guztietako garatzaileei hasi ikaskuntza sakonarekin hodeian, ertzeko gailuetan eta mugikorreko aplikazioetan. Gluon kodearen lerro gutxitan, erregresio lineala, sare konboluzionalak eta LSTM errepikakorrak eraiki ditzakezu. objektuak hautematea, hizketa-ezagutza, gomendioa eta pertsonalizazioa.
MXNet hainbat gailutan erabil daiteke eta hainbatek onartzen dute programazio hizkuntzak hala nola, Java, R, JavaScript, Scala eta Go. Bere komunitateko erabiltzaile eta kide kopurua baxua den arren, MXNet-ek ondo idatzitako dokumentazioa eta hazteko potentzial handia du, batez ere orain Amazon-ek marko hau hautatu duelako AWS-en Machine Learningrako tresna nagusi gisa.
Key Ezaugarriak
- 8 hizkuntza-lotura
- Prestakuntza banatua, CPU anitzeko eta GPU anitzeko sistemak onartzen dituena
- Frontend hibridoa, modu inperatiboa eta sinbolikoa aldatzeko aukera ematen duena
4. Microsoft Cognitive Toolkit
Azuren (Microsoft hodeiko zerbitzuak) exekutatzen diren aplikazioak edo zerbitzuak garatzea pentsatzen ari bazara, Microsoft Cognitive Toolkit zure ikaskuntza sakoneko proiektuetarako hautatzeko markoa da. Hau kode irekikoa da, eta Python, C++, C#, Java bezalako programazio lengoaiek onartzen dute, besteak beste. Esparru hau "giza garuna bezala pentsatzeko" diseinatuta dago, beraz, egituratu gabeko datu kopuru handiak prozesatu ditzake, prestakuntza azkarra eta arkitektura intuitiboa eskainiz.
Esparru hau hautatuz, Skype, Xbox eta Cortanaren atzean dagoen bera, zure aplikazioen errendimendu ona, eskalagarritasuna eta Azure-rekin integrazio sinplea lortuko dituzu. Hala ere, TensorFlow edo PyTorch-ekin alderatuta, bere komunitateko kideen kopurua eta laguntza murrizten da.
Hurrengo bideoak sarrera osoa eta aplikazio adibideak eskaintzen ditu:
Key Ezaugarriak
- Dokumentazio argia
- Microsoft taldearen laguntza
- Zuzeneko grafikoen bistaratzea
5. Keras
PyTorch bezala, Keras Python-en oinarritutako liburutegia da datu intentsiboko proiektuetarako. Keras APIak maila altuan funtzionatzen du eta maila baxuko APIekin integratzeko aukera ematen du, hala nola TensorFlow, Theano eta Microsoft Cognitive Toolkit.
Kerak erabiltzearen abantaila batzuk ikasteko sinpletasuna dira - ikaskuntza sakonean hasiberrientzako gomendatutako esparrua izatea; bere hedapen-abiadura; python komunitatearen eta integratuta dagoen beste esparruetako komunitateen laguntza handia izatea.
Kerasek hainbat inplementazio ditu neurona-sareen eraikuntza-blokeak hala nola, geruzak, funtzio objektiboak, aktibazio funtzioak eta optimizatzaile matematikoak. Bere kodea GitHub-en dago eta foroak eta Slack laguntza kanala daude. Estandarra euskarriaz gain neural sareak, Kerasek Sare Neuronal Konboluzionaletarako eta Sare Neuronal Errekurrenteetarako laguntza eskaintzen du.
Kerasek aukera ematen du deep learning ereduak iOS zein Android-eko telefono adimendunetan sortzeko, Java Makina Birtual batean edo sarean. Gainera, ikaskuntza sakoneko ereduen trebakuntza banatua erabiltzeko aukera ematen du Graphics Processing Unit (GPU) eta Tensor Processing Unit (TPU) multzoetan.
Key Ezaugarriak
- Aurrez prestatutako ereduak
- Backend anitzeko euskarria
- Erabiltzaile atsegina eta komunitatearen laguntza zabala
6. Apple Core ML
Core ML Applek garatu zuen bere ekosistema laguntzeko: IOS, Mac OS eta iPad OS. Bere APIak maila baxuan funtzionatzen du, CPU eta GPUren baliabideak ondo aprobetxatuz, eta horri esker, sortutako eredu eta aplikazioek Internet konexiorik gabe ere martxan jarraitzea ahalbidetzen dute, eta horrek gailuaren “memoria-aztarna” eta energia-kontsumoa murrizten ditu.
Core ML-k hori lortzeko modua ez da iphone/ipadetan exekutatzeko optimizatuta dagoen ikaskuntza automatikoko beste liburutegi bat egitea. Horren ordez, Core ML beste ikasketa automatikoko software batzuekin adierazitako ereduaren zehaztapenak eta trebatutako parametroak hartzen dituen konpilatzaile baten antzekoa da eta iOS aplikazio baterako baliabide bihurtzen duen fitxategi batean bihurtzen du. Core ML eredurako bihurketa hau aplikazioaren garapenean gertatzen da, ez denbora errealean aplikazioa erabiltzen ari den heinean, eta coremltools python liburutegiak errazten du.
Core ML-k errendimendu azkarra eskaintzen du integrazio errazarekin makina ikaskuntza ereduak aplikazioetan. Ikaskuntza sakona onartzen du 30 geruza mota baino gehiagorekin, baita erabaki-zuhaitzak, euskarri-makina bektorialak eta erregresio lineal-metodoekin, guztiak maila baxuko teknologien gainean eraikita, hala nola Metala eta Acelerate.
Key Ezaugarriak
- Aplikazioetan integratzeko erraza
- Tokiko baliabideen erabilera optimoa, Interneterako sarbidea behar ez duena
- Pribatutasuna: datuek ez dute zertan gailutik irten
7. ONNX
Gure zerrendako azken markoa ONNX da. Esparru hau Microsoft eta Facebook-en arteko lankidetzatik sortu zen, esparru, tresna, exekuzio-denbora eta konpilatzaile ezberdinen artean ereduak transferitzeko eta eraikitzeko prozesua errazteko helburuarekin.
ONNX-ek hainbat plataformatan exekutatu daitekeen fitxategi-mota arrunt bat definitzen du, Microsoft Cognitive Toolkit, MXNet, Caffe eta (bihurgailuak erabiliz) Tensorflow eta Core ML bezalako maila baxuko APIen onurak erabiltzen dituen bitartean. ONNX-en atzean dagoen printzipioa eredu bat pila batean trebatzea eta beste inferentzia eta iragarpen batzuk erabiliz ezartzea da.
LF AI Foundation, Linux Fundazioaren azpi-erakundea, laguntzeko ekosistema bat eraikitzera dedikatzen den erakundea da. Kode irekiko berrikuntza adimen artifizialean (AI), ikaskuntza automatikoan (ML) eta ikaskuntza sakonean (DL). ONNX graduatu-mailako proiektu gisa gehitu zuen 14ko azaroaren 2019an. LF AI Fundazioaren aterkipean ONNX-en mugimendu hau mugarri garrantzitsu gisa ikusi zen ONNX saltzaileentzako formatu irekiko estandar neutral gisa ezartzeko.
ONNX Model Zoo Deep Learning-en aurrez prestatutako ereduen bilduma da ONNX formatuan eskuragarri. Eredu bakoitzerako daude Jupyter koadernoak ereduaren prestakuntzarako eta trebatutako ereduarekin inferentzia egiteko. Koadernoak Python-en idatzita daude eta estekak dituzte prestakuntza-datu multzoa eta ereduaren arkitektura deskribatzen duen jatorrizko dokumentu zientifikoari buruzko erreferentziak.
Key Ezaugarriak
- Esparruko elkarreragingarritasuna
- Hardwarearen optimizazioa
Ondorioa
Hau marko onenen laburpena da ikaskuntza sakona. Horretarako hainbat esparru daude, doakoak edo ordainpekoak. Zure proiekturako onena hautatzeko, lehenik eta behin, jakin zein plataformatarako garatuko duzun aplikazioa.
TensorFlow eta Keras bezalako esparru orokorrak dira hasteko aukerarik onenak. Baina OS edo gailuen abantaila espezifikoak erabili behar badituzu, Core ML eta Microsoft Cognitive Toolkit izan daitezke aukerarik onenak.
Zerrenda honetan aipatu ez diren Android gailuetara, beste makina batzuetara eta helburu zehatzetara zuzendutako beste esparru batzuk daude. Azken talde hau interesatzen bazaizu, Googlen edo ikaskuntza automatikoko beste gune batzuetan haien informazioa bilatzeko gomendatzen dizugu.
Utzi erantzun bat