In questi ultimi anni il linguaggio di programmazione Python è diventato molto popolare tra i developer indipendenti. Questo perché risulta essere davvero versatile. Esso deve la sua diffusione anche all'evoluzione delle intelligenze artificiali e del machine learning. Ecco perché oggi vogliamo parlavi del progetto PyTorch. Si tratta di una libreria dedicata alle applicazioni di machine learning e più in generale nel training dei modelli di AI.
Vedremo nel dettaglio come installare e configurare PyTorch su di una distribuzione Linux, in modo da ottenere una sessione Desktop ottimizzata per lo sviluppo con PyTorch e, ovviamente, anche con Python.
Questa guida può essere sfruttata non solo dai developer esperti ma anche dai neofiti che hanno da poco intrapreso il proprio percorso di formazione in questo ambiente professionale. Il settore è infatti in piena espansione e anno dopo anno la richiesta di developer Python si conferma in forte crescita.
Per il tutorial abbiamo scelto di utilizzare Debian come distribuzione di riferimento, tuttavia sono compatibili anche altri sistemi Linux come Fedora, Ubuntu, openSUSE e Arch Linux.
Installazione delle librerie Python e di Pip3 su Debian
Iniziamo con il preparare Debian tramite l'installazione delle librerie Python attraverso il package manager APT. Dunque apriamo bash e scriviamo:
sudo apt update && sudo apt upgrade
sudo apt install python3 pip3
Con la prima serie di comandi concatenati ci siamo assicurati che il sistema operativo sia aggiornato con gli ultimi pacchetti software disponibili nei repository. Successivamente, tramite il gestore di pacchetti APT, abbiamo installato le librerie di Python 3, l'attuale edizione stabile del linguaggio di programmazione, e pip3. Quest'ultimo è il package manager di Python e permette di reperire tutta una serie di tool e moduli dedicati allo sviluppo e all'esecuzione di software in Python.
Pip3 va a prelevare i pacchetti direttamente dal PyPI (Python Package Index), il repository in cui sono contenuti gli applicativi e le utility della community di developer Python. Installare pip3 è quindi essenziale per uno sviluppatore e grazie ad esso possiamo ottenere facilmente PyTorch.
Se desideriamo conoscere l'edizione di Python 3 installata nel sistema possiamo interpellare bash in questo modo:
python3 --version
e lo stesso vale per pip3:
pip3 --version
Installazione di PyTorch
Siamo quindi pronti ad installare PyTorch. Torniamo in bash e digitiamo:
sudo pip3 install torch torchvision torchaudio numpy
A questo punto abbiamo completato l'installazione di PyTorch.
Come avrete notato si tratta di una procedura molto semplice e alla portata di tutti, anche di chi è appena approdato nel mondo delle distribuzioni Linux. Ora andiamo a testate il funzionamento di PyTorch, tramite l'interprete Python, sfruttando questi comandi da scrivere in shell:
python3
import torch
torch.__version__
Se l'importazione di PyTorch è stata eseguita con successo riceveremo come output il numero della release installata nel sistema, ecco un esempio:
'2.Y.X'
usciamo dunque dalla sessione dell'interprete scrivendo:
quit()
La scelta dell'IDE per PyTorch
Ovviamente per realizzare qualcosa di più complesso con PyTorch dobbiamo affidarsi ad un IDE. La selezione di un ambiente di sviluppo integrato per PyTorch sui sistemi Linux non è difficile. Infatti ne esiste uno di riferimento chiamato TorchStudio. Si tratta di un progetto open source nato per rendere più semplice l'esecuzione, il building e la comparazione dei diversi training model.
Al contrario di IDE più generalisti, TorchStudio viene distribuito con una serie di strumenti ed utility dedicate all'ottimizzazione dei processi di sviluppo dei training model. Proprio tale elemento rende TorchStudio molto appetibile non solo ai programmatori indipendenti ma anche alle aziende interessate a realizzare progetti complessi con PyTorch.
TorchStudio è definibile come un GUI-based IDE, dispone infatti di un'interfaccia utente molto completa che aiuta nello sviluppo con PyTorch e semplifica il workflow del developer. Per modificare o migliorare un modello è possibile operare direttamente dalla GUI, senza dover necessariamente mettere mano al codice.
Questa feature rende più efficiente il processo di creazione e comparazione dei diversi machine learning model che è possibile creare con PyTorch. I programmatori di TorchStudio offrono di base dei pacchetti precompilati in formato .deb
, per Debian e derivate, e .rpm
, compatibili con Fedora o altre distribuzioni della famiglia Red Hat Enterprise Linux.
Dopo aver eseguito il download del pacchetto, reperibile su Github, basta cliccarci sopra e l'installer fa tutto da solo. In alternativa possiamo agire tramite la shell:
sudo dpkg -i TorchStudio_Z.Y.XX-Linux_Installer.deb
Ovviamente se lo si preferisce si può adottare un IDE diverso. Un altro software ideale per lavorare con PyTorch è sicuramente Visual Studio Code.
Questo IDE open source gode di una vastissima community di utilizzatori e contributor indipendenti. Gli utenti di Visual Studio Code hanno accesso ad una pletora di add-on e plugin di terze parti che estendono e potenziano le sue funzionalità. Ecco perché chi decide di adottare Visual Studio Code per sviluppare con PyTorch troverà sicuramente un valido alleato.
Visual Studio Code include al suo interno diverse feature dedicate a PyTorch, come ad esempio un pratico Data Viewer, per mostrare e confrontare i dati presenti nei modelli di machine learning, il PyTorch Profiler e la data science companion dashboard chiamata TensorBoard, Senza contare che su questo IDE ci si può affidare a Pylance, un'estensione che migliora il supporto a Python e a PyTorch, agevolando i processi di sviluppo.