ONNX

Versiunea actuală a paginii nu a fost încă examinată de colaboratori experimentați și poate diferi semnificativ de versiunea revizuită la 19 august 2022; verificările necesită 5 modificări .
Schimb de rețele neuronale deschise (ONNX)
Tip de Pentru construirea de rețele neuronale
Dezvoltatori Facebook , Microsoft
Scris in C++ , Python
Sistem de operare Windows , Linux
Prima editie septembrie 2017  ( 2017-09 )
Platformă hardware multiplatformă
ultima versiune 1.7.0 [1] . (28 mai 2020 ) ( 28.05.2020 )
Stat Activ
Licență MIT
Site-ul web onnx.ai
 Fișiere media la Wikimedia Commons

ONNX ( Open Neural Network Exchange ) este o bibliotecă de software open source pentru construirea de rețele neuronale de învățare profundă . Cu ONNX, dezvoltatorii AI pot face schimb de modele între diferite instrumente și pot alege cea mai bună combinație a acestor instrumente. ONNX este dezvoltat și întreținut în comun de Microsoft , Facebook , Amazon și alți parteneri ca un proiect open source [2] [3] .

ONNX permite modelelor să fie antrenate într-un mediu și apoi transferate într-un alt mediu pentru recunoașterea feței, recunoașterea gesturilor, recunoașterea obiectelor și multe altele. Acest lucru le permite dezvoltatorilor să folosească combinația potrivită de instrumente. Modelele ONNX sunt acceptate în prezent în Caffe2 , Microsoft Cognitive Toolkit , MXNet , PyTorch și OpenCV și există interfețe pentru multe alte cadre și biblioteci populare.

ONNX Model Zoo este o colecție de modele de deep learning pre-antrenate disponibile în format ONNX. Fiecare model vine cu un shell interactiv IPython pentru a antrena modelul și a genera modelul corespunzător. Caietele sunt scrise în Python și conțin link-uri către setul de date de antrenament, precum și link-uri către cartea albă originală care descrie arhitectura modelului.

Istorie

ONNX a fost inițial numit Toffee [4] și a fost dezvoltat de echipa PyTorch de la Facebook [5] . În septembrie 2017, a fost redenumit ONNX și anunțat de Facebook și Microsoft. [6] IBM, Huawei, Intel, AMD, Arm și Qualcomm au anunțat ulterior sprijinul pentru inițiativă [7] .

ONNX.js

ONNX.js este o bibliotecă JavaScript pentru rularea modelului ONNX în browsere și pe Node.js. Cu ONNX.js, dezvoltatorii web pot integra și testa modele ONNX pre-instruite direct într-un browser web. Acest lucru are următoarele avantaje: interacțiune redusă server-client, protecție a datelor utilizatorului, învățare automată multiplatformă fără instalarea de software pe client.

ONNX.js poate fi rulat atât pe CPU , cât și pe GPU . Pentru a rula pe procesor, se folosește WebAssembly . Acest lucru va permite modelului să funcționeze aproape la viteza nativă. De asemenea, ONNX.js folosește Web workerpentru a oferi un mediu de calcul paralel „multi-threaded”. Evaluarea empirică arată îmbunătățiri foarte promițătoare ale performanței CPU, profitând din plin de WebAssembly și Web Workers. Pentru a rula pe GPU, WebGL este standardul pentru accesarea funcțiilor GPU [8] [9] [10] .

Vezi și

Note

  1. Versiunea 1.7.0  ( 28 mai 2020). Preluat la 3 iunie 2020. Arhivat din original la 19 august 2021.
  2. Braddock Gaskill. ONNX: formatul de schimb al rețelei neuronale deschise  . Linux Journal (25 aprilie 2018). Preluat la 17 ianuarie 2019. Arhivat din original la 19 ianuarie 2019.
  3. heise online. Microsoft și Facebook machen gemeinsame KI-Sache  (germană) . Preluat la 17 ianuarie 2019. Arhivat din original la 19 ianuarie 2019.
  4. Codemod Toffee -> ONNX, toffee -> onnx. Schimbați numele fișierelor pentru a se potrivi cu pytorch/pytorch@  6d8d5ba . GitHub . Data accesului: 12 octombrie 2021.
  5. Un exportator de modele pentru PyTorch de către ezyang Pull Request #2565 pytorch/  pytorch . GitHub . Data accesului: 12 octombrie 2021.
  6. Microsoft și Facebook creează un ecosistem deschis pentru interoperabilitatea modelelor AI - Microsoft Cognitive Toolkit  , Microsoft Cognitive Toolkit (  7 septembrie 2017). Preluat la 11 octombrie 2017.
  7. Ecosistemul deschis AI al Microsoft și Facebook câștigă mai mult  sprijin , Engadget . Preluat la 11 octombrie 2017.
  8. Microsoft ONNX.js: rulați modele ONNX folosind JavaScript.  (engleză) (7 martie 2019). Preluat la 7 martie 2019. Arhivat la 30 aprilie 2019 la Wayback Machine
  9. Will Badr ONNX.js: Universal Deep Learning Models in The Browser  ( 8 ianuarie 2019). Preluat la 7 martie 2019. Arhivat la 3 februarie 2022 la Wayback Machine
  10. ONNX.js - Rulați modele ONNX în browser (Demo  ) . Microsoft . Preluat la 7 martie 2019. Arhivat la 8 martie 2019 la Wayback Machine

Link