PyTorch

Nga Wikipedia, enciklopedia e lirë
PyTorch
Autor
  • Adam Paszke
  • Sam Gross
  • Soumith Chintala
  • Gregory Chanan
ZhvilluesMeta AI
Versioni i parështator 2016; 7 vite më parë (2016-09)[1]
Versioni i fundit2.1.1[2] Edit this on Wikidata / 15 nëntor 2023; Error: first parameter cannot be parsed as a date or time. (15 nëntor 2023)
Gjuhet e programimit
Sistemi operativ
PlatformaIA-32, x86-64, ARM64
Gjuhët e mundshmeAnglisht
Përdoret përLibrari për mësimin makinerik dhe mësimin e thellë
LicencaBSD-3[3]
Faqja zyrtarepytorch.org

PyTorch është një framework i mësimit të makinës bazuar në librarinë Torch, [4] [5] [6] e përdorur për aplikacione të tilla si vizioni kompjuterik dhe përpunimi i gjuhës natyrore, [7] i zhvilluar fillimisht nga Meta AI dhe tani pjesë e ombrellës së Fondacionit Linux . [8] [9] [10] [11] Është softuer falas dhe me burim të hapur i lëshuar nën licencën e modifikuar BSD . Megjithëse ndërfaqja Python është më e lëmuar dhe fokusi kryesor i zhvillimit, PyTorch ka gjithashtu një ndërfaqe C++ . [12]

Një numër i pjesëve të softuerit të të mësuarit të thellë janë ndërtuar mbi bazën PyTorch, duke përfshirë Tesla Autopilot, [13] Pyro nga Uber , [14] Transformers nga Hugging Face, [15] PyTorch Lightning, [16] [17] dhe Catalyst. [18] [19]

PyTorch ofron dy veçori të nivelit të lartë: [20]

Tensoret PyTorch[Redakto | Redakto nëpërmjet kodit]

PyTorch përcakton një klasë të quajtur Tensor ( torch. Tensor ) për të ruajtur dhe për të vepruar në vargje drejtkëndorë homogjenë shumëdimensionalë të numrave. Tensorët PyTorch janë të ngjashëm me Arrays në NumPy, por gjithashtu mund të menaxhohen në një GPU NVIDIA të aftë për CUDA . PyTorch gjithashtu ka zhvilluar mbështetje për platforma të tjera GPU, për shembull, ROCm të AMD dhe Metal Framework të Apple. [21]

PyTorch mbështet nën-lloje të ndryshme të tensorëve. [22]

Modulet[Redakto | Redakto nëpërmjet kodit]

Moduli Autograd[Redakto | Redakto nëpërmjet kodit]

PyTorch përdor një metodë të quajtur diferencim automatik . Një regjistrues regjistron se çfarë veprimesh janë kryer dhe më pas e riprodhon atë prapa për të llogaritur gradientët. Kjo metodë është veçanërisht e fuqishme kur ndërtohen rrjeta nervore për të kursyer kohë në një epokë ,duke llogaritur diferencimin e parametrave në kalimin përpara. [23]

Moduli Optim[Redakto | Redakto nëpërmjet kodit]

torch.optim është një modul që zbaton algoritme të ndryshme optimizimi të përdorura për ndërtimin e rrjetave nervore. Shumica e metodave të përdorura zakonisht gjenden tashmë në këtë modul, kështu që nuk ka nevojë t'i ndërtoni ato nga e para. [24]

nn modul[Redakto | Redakto nëpërmjet kodit]

PyTorch autograd e bën të lehtë përcaktimin e grafeve llogaritës dhe marrjen e gradientëve, por autogradi i papërpunuar mund të jetë paksa i nivelit të ulët për përcaktimin e rrjetave të ndërlikuara nervore. Këtu mund të ndihmojë moduli nn . Moduli nn ofron shtresa dhe mjete për të krijuar lehtësisht një rrjetë nervore duke përcaktuar vetëm shtresat e rrjetit. [25]

PyTorch gjithashtu përmban shumë nënmodule të tjera të dobishme, siç janë shërbimet e ngarkimit të të dhënave dhe funksionet e trajnimit të shpërndarë.

  1. ^ Chintala, Soumith (1 shtator 2016). "PyTorch Alpha-1 release". {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  2. ^ "Release 2.1.1". 15 nëntor 2023. Marrë më 19 nëntor 2023. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  3. ^ Claburn, Thomas (12 shtator 2022). "PyTorch gets lit under The Linux Foundation". The Register. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  4. ^ Yegulalp, Serdar (19 janar 2017). "Facebook brings GPU-powered machine learning to Python". InfoWorld. Marrë më 11 dhjetor 2017. {{cite news}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  5. ^ Lorica, Ben (3 gusht 2017). "Why AI and machine learning researchers are beginning to embrace PyTorch". O'Reilly Media. Marrë më 11 dhjetor 2017. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  6. ^ Ketkar, Nikhil (2017). "Introduction to PyTorch". Deep Learning with Python (në anglisht). Apress, Berkeley, CA. fq. 195–208. doi:10.1007/978-1-4842-2766-4_12. ISBN 9781484227657.
  7. ^ "Natural Language Processing (NLP) with PyTorch – NLP with PyTorch documentation". dl4nlp.info (në anglisht). Arkivuar nga origjinali më 21 qershor 2019. Marrë më 2017-12-18.
  8. ^ Patel, Mo (2017-12-07). "When two trends fuse: PyTorch and recommender systems". O'Reilly Media (në anglisht). Marrë më 2017-12-18.
  9. ^ Mannes, John. "Facebook and Microsoft collaborate to simplify conversions from PyTorch to Caffe2". TechCrunch (në anglisht). Marrë më 2017-12-18. FAIR is accustomed to working with PyTorch – a deep learning framework optimized for achieving state of the art results in research, regardless of resource constraints. Unfortunately in the real world, most of us are limited by the computational capabilities of our smartphones and computers.
  10. ^ Arakelyan, Sophia (2017-11-29). "Tech giants are using open source frameworks to dominate the AI community". VentureBeat (në anglishte amerikane). Marrë më 2017-12-18.
  11. ^ "PyTorch strengthens its governance by joining the Linux Foundation". pytorch.org (në anglisht). Marrë më 2022-09-13.
  12. ^ "The C++ Frontend". PyTorch Master Documentation. Marrë më 2019-07-29. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  13. ^ Karpathy, Andrej. "PyTorch at Tesla - Andrej Karpathy, Tesla". {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  14. ^ "Uber AI Labs Open Sources Pyro, a Deep Probabilistic Programming Language". Uber Engineering Blog (në anglishte amerikane). 2017-11-03. Marrë më 2017-12-18.
  15. ^ PYTORCH-TRANSFORMERS: PyTorch implementations of popular NLP Transformers, PyTorch Hub, 2019-12-01, marrë më 2019-12-01 {{citation}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  16. ^ PYTORCH-Lightning: The lightweight PyTorch wrapper for ML researchers. Scale your models. Write less boilerplate, Lightning-Team, 2020-06-18, marrë më 2020-06-18 {{citation}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  17. ^ "Ecosystem Tools". pytorch.org (në anglisht). Marrë më 2020-06-18.
  18. ^ GitHub - catalyst-team/catalyst: Accelerated DL & RL, Catalyst-Team, 2019-12-05, marrë më 2019-12-05 {{citation}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  19. ^ "Ecosystem Tools". pytorch.org (në anglisht). Marrë më 2020-04-04.
  20. ^ "PyTorch – About". pytorch.org. Arkivuar nga origjinali më 2018-06-15. Marrë më 2018-06-11. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  21. ^ "Introducing Accelerated PyTorch Training on Mac". pytorch.org (në anglisht). Marrë më 2022-06-04.
  22. ^ "An Introduction to PyTorch – A Simple yet Powerful Deep Learning Library". analyticsvidhya.com. 2018-02-22. Marrë më 2018-06-11. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  23. ^ "The Fundamentals of Autograd — PyTorch Tutorials 2.0.1+cu117 documentation". pytorch.org. Marrë më 16 maj 2023. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  24. ^ "torch.optim — PyTorch 2.0 documentation". pytorch.org. Marrë më 16 maj 2023. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)
  25. ^ "torch.nn — PyTorch 2.0 documentation". pytorch.org. Marrë më 16 maj 2023. {{cite web}}: Mungon ose është bosh parametri |language= (Ndihmë!)