×
1 Scegli i certificati EITC/EITCA
2 Impara e sostieni gli esami online
3 Ottieni la certificazione delle tue competenze IT

Conferma le tue capacità e competenze IT nell'ambito del quadro di certificazione IT europeo da qualsiasi parte del mondo completamente online.

Accademia EITCA

Standard di attestazione delle competenze digitali da parte dell'Istituto europeo di certificazione informatica volto a sostenere lo sviluppo della società digitale

ACCEDI AL TUO ACCOUNT

CREA UN ACCOUNT HAI DIMENTICATO LA PASSWORD?

HAI DIMENTICATO LA PASSWORD?

AAH, aspetta, ora ricordo!

CREA UN ACCOUNT

HAI GIÀ UN ACCOUNT?
EUROPEE ACCADEMIA DI CERTIFICAZIONE DELLE TECNOLOGIE INFORMATICHE - ATTESTARE LE TUE COMPETENZE DIGITALI
  • ISCRIVITI
  • ACCEDI
  • INFO

Accademia EITCA

Accademia EITCA

L'Istituto europeo di certificazione delle tecnologie dell'informazione - EITCI ASBL

Fornitore di certificazione

Istituto EITCI ASBL

Bruxelles, Unione Europea

Quadro normativo europeo di certificazione IT (EITC) a supporto della professionalità IT e della società digitale

  • CERTIFICATI
    • ACCADEMIE EITCA
      • CATALOGO ACCADEMIE EITCA<
      • GRAFICA INFORMATICA EITCA/CG
      • EITCA/IS SICUREZZA DELLE INFORMAZIONI
      • INFORMAZIONI AZIENDALI EITCA/BI
      • COMPETENZE CHIAVE EITCA/KC
      • EITCA/EG E-GOVERNMENT
      • SVILUPPO WEB EITCA/WD
      • EITCA/AI ARTIFICIAL INTELLIGENCE
    • CERTIFICATI EITC
      • CATALOGO DEI CERTIFICATI EITC<
      • CERTIFICATI DI GRAFICA INFORMATICA
      • CERTIFICATI DI WEB DESIGN
      • CERTIFICATI DI PROGETTAZIONE 3D
      • CERTIFICATI IT PER L'UFFICIO
      • CERTIFICATO BLOCKCHAIN ​​DI BITCOIN
      • CERTIFICATO WORDPRESS
      • CERTIFICATO PIATTAFORMA CLOUDNUOVA
    • CERTIFICATI EITC
      • CERTIFICATI INTERNET
      • CERTIFICATI DI CRIPTOGRAFIA
      • CERTIFICATI IT COMMERCIALI
      • CERTIFICATI TELEWORK
      • CERTIFICATI DI PROGRAMMAZIONE
      • CERTIFICATO DIGITALE DI RITRATTO
      • CERTIFICATI DI SVILUPPO WEB
      • CERTIFICATI DI APPRENDIMENTO PROFONDONUOVA
    • CERTIFICATI PER
      • AMMINISTRAZIONE PUBBLICA DELL'UE
      • INSEGNANTI ED EDUCATORI
      • PROFESSIONISTI DELLA SICUREZZA IT
      • DESIGNER E ARTISTI GRAFICI
      • Uomini d'affari e dirigenti
      • SVILUPPI DELLA BLOCKCHAIN
      • SVILUPPATORI WEB
      • ESPERTI DI CLOUD AINUOVA
  • FEATURED
  • SUSSIDIO
  • COME FUNZIONA
  •   IT ID
  • CHI SIAMO
  • CONTATTI
  • IL MIO ORDINE
    Il tuo ordine attuale è vuoto.
EITCIINSTITUTE
CERTIFIED

Cos'è PyTorch?

by Codrut Ion / Domenica, Dicembre 28 2025 / Pubblicato in Intelligenza Artificiale, EITC/AI/GCML Google Cloud Machine Learning, Competenza in Machine Learning, PyTorch su GCP

PyTorch è un framework di deep learning open source sviluppato principalmente dall'AI Research Lab (FAIR) di Facebook. Fornisce un'architettura di grafi computazionali flessibile e dinamica, che lo rende particolarmente adatto alla ricerca e alla produzione nel campo del machine learning, in particolare per applicazioni di intelligenza artificiale (IA). PyTorch ha ottenuto un'ampia adozione tra ricercatori accademici e professionisti del settore grazie alla sua interfaccia intuitiva, al design Pythonic e al solido supporto per architetture di reti neurali complesse.

Progettazione e architettura di base

PyTorch si basa essenzialmente sul concetto di tensori, array multidimensionali analoghi agli array NumPy, ma con la possibilità di utilizzare acceleratori hardware come le GPU. I tensori in PyTorch rappresentano la struttura dati fondamentale, consentendo il calcolo e la manipolazione efficienti dei dati numerici. Le operazioni tensoriali di PyTorch sono altamente ottimizzate e possono essere eseguite senza problemi sia su CPU che su GPU, facilitando la prototipazione rapida e lo sviluppo iterativo.

PyTorch utilizza un grafo computazionale dinamico, noto anche come define-by-run. A differenza dei framework basati su grafi computazionali statici, in cui l'intero grafo deve essere definito prima di eseguire i calcoli, PyTorch costruisce il grafo dinamicamente durante l'esecuzione delle operazioni. Questa caratteristica consente una maggiore flessibilità nella creazione di modelli complessi e adattivi, come quelli richiesti nell'elaborazione del linguaggio naturale (NLP), nell'apprendimento per rinforzo e in altri domini di intelligenza artificiale avanzata in cui prevalgono sequenze di lunghezza variabile o operazioni condizionali.

Componenti chiave

1. Tensori
I tensori sono la struttura dati principale in PyTorch e supportano un'ampia gamma di operazioni matematiche. I tensori di PyTorch possono essere creati in vari modi, ad esempio da liste Python, array NumPy o utilizzando funzioni integrate come `torch.zeros()`, `torch.ones()` e `torch.rand()`. Possono risiedere su dispositivi diversi, con API semplici per lo spostamento tra CPU e GPU.

Esempio:

python
   import torch
   a = torch.tensor([[1.0, 2.0], [3.0, 4.0]], device='cuda')
   b = torch.ones(2, 2, device='cuda')
   c = a + b
   

2. Modulo Autograd
PyTorch include una potente libreria di differenziazione automatica chiamata Autograd. Questo sistema registra tutte le operazioni eseguite sui tensori con il flag `requires_grad=True` e calcola automaticamente i gradienti durante il backward pass. Questa funzionalità è fondamentale per l'addestramento delle reti neurali, in cui i gradienti guidano il processo di ottimizzazione.

Esempio:

python
   x = torch.ones(2, 2, requires_grad=True)
   y = x + 2
   z = y * y * 3
   out = z.mean()
   out.backward()
   print(x.grad)  # Prints the gradient of out with respect to x
   

3. Modulo Rete Neurale (nn)
Il modulo `torch.nn` fornisce un'astrazione di alto livello per la creazione di reti neurali. Include livelli predefiniti (come `nn.Linear`, `nn.Conv2d`, ecc.), funzioni di perdita e altre utilità. Le reti neurali in PyTorch sono in genere definite sottoclassando `nn.Module` e implementando il metodo `forward`.

Esempio:

python
   import torch.nn as nn

   class SimpleNet(nn.Module):
       def __init__(self):
           super(SimpleNet, self).__init__()
           self.fc = nn.Linear(10, 1)
       def forward(self, x):
           return self.fc(x)
   

4. Ottimizzazione (torch.optim)
PyTorch include una suite di algoritmi di ottimizzazione come SGD, Adam, RMSprop, tra gli altri, all'interno del pacchetto `torch.optim`. Questi ottimizzatori aggiornano i parametri del modello in base ai gradienti calcolati da Autograd.

5. Caricamento ed elaborazione dei dati (torch.utils.data)
La gestione efficiente dei dati è supportata dalle astrazioni `DataLoader` e `Dataset`, che facilitano il batching, lo shuffling e il caricamento parallelo di dati da diverse fonti. Questa progettazione consente pipeline di training scalabili ed efficienti.

Esempio:

python
   from torch.utils.data import Dataset, DataLoader

   class MyDataset(Dataset):
       def __init__(self, data, targets):
           self.data = data
           self.targets = targets
       def __len__(self):
           return len(self.data)
       def __getitem__(self, idx):
           return self.data[idx], self.targets[idx]

   train_loader = DataLoader(MyDataset(data, targets), batch_size=32, shuffle=True)
   

PyTorch su Google Cloud Platform (GCP)

L'implementazione e l'addestramento di modelli PyTorch su Google Cloud Platform sfruttano l'infrastruttura scalabile e i servizi gestiti di GCP. GCP offre diversi meccanismi per l'esecuzione di carichi di lavoro PyTorch, ognuno adatto a diverse fasi del ciclo di vita del machine learning:

- Formazione sulla piattaforma AI: La piattaforma di intelligenza artificiale di GCP supporta processi di training personalizzati utilizzando PyTorch, consentendo agli utenti di eseguire training distribuiti su istanze GPU o TPU gestite. Questo servizio astrae la gestione dell'infrastruttura, consentendo ai professionisti di concentrarsi sullo sviluppo e sulla sperimentazione dei modelli.

- Immagini VM con deep learning: GCP offre immagini di macchine virtuali preconfigurate con PyTorch e altre librerie ML diffuse installate. Queste immagini sono ottimizzate per le GPU NVIDIA e forniscono un ambiente pronto all'uso per la ricerca, la prototipazione e l'implementazione in produzione.

- Vertice AI Workbench: Per i flussi di lavoro ML end-to-end, Vertex AI Workbench fornisce notebook Jupyter gestiti con supporto PyTorch, facilitando lo sviluppo collaborativo, il monitoraggio degli esperimenti e l'integrazione con altri servizi GCP come BigQuery e Cloud Storage.

- Contenitori personalizzati e Kubernetes: Per gli utenti avanzati, i modelli PyTorch possono essere containerizzati e distribuiti su cluster Kubernetes (GKE), consentendo un'inferenza scalabile e gestendo carichi di lavoro di produzione ad alto rendimento.

Flusso di lavoro per lo sviluppo del modello

Un tipico flusso di lavoro di sviluppo di modelli basato su PyTorch su GCP comprende diverse fasi:

1. Preparazione dei dati: I dati vengono acquisiti da soluzioni di archiviazione GCP come Cloud Storage o BigQuery, elaborati utilizzando le utility dati di PyTorch e caricati in batch per l'addestramento.

2. Definizione del modello: L'architettura della rete neurale è definita utilizzando `torch.nn.Module`, sfruttando i componenti modulari e riutilizzabili di PyTorch.

3. Formazione: Il modello viene addestrato sulle risorse di calcolo gestite da GCP, sfruttando l'accelerazione GPU. Il design flessibile del ciclo di training di PyTorch supporta logica di training personalizzata, tracciamento delle metriche e checkpoint del modello.

4. Valutazione: Dopo l'addestramento, i modelli vengono valutati su set di dati di convalida o di prova, utilizzando parametri standard per valutare le prestazioni.

5. Distribuzione: I modelli addestrati possono essere esportati (spesso come `state_dict` o TorchScript) e distribuiti per l'inferenza utilizzando vari servizi GCP, garantendo bassa latenza e alta scalabilità.

Vantaggi di PyTorch per i carichi di lavoro di intelligenza artificiale

La progettazione del grafico di calcolo dinamico di PyTorch offre diversi vantaggi per i carichi di lavoro dell'intelligenza artificiale:

- Facilità di debug: Poiché il grafico viene creato in fase di esecuzione, è possibile utilizzare gli strumenti di debug standard di Python per ispezionare e modificare i calcoli, semplificando la diagnosi degli errori.
- Rapid Prototyping: I ricercatori possono iterare rapidamente sui progetti dei modelli, introducendo modifiche alle architetture o ai percorsi di calcolo senza dover ricompilare o definire staticamente il grafico.
- Integrazione nativa di Python: L'API di PyTorch è progettata per essere simile al Python nativo, garantendo l'interoperabilità con l'ampio ecosistema Python di librerie scientifiche e di analisi dei dati.
- Comunità ed ecosistema: PyTorch trae vantaggio da una vivace comunità open source, con un gran numero di modelli pre-addestrati, tutorial e librerie di terze parti (come torchvision per la visione artificiale e torchaudio per l'elaborazione audio).

Formazione distribuita e scalabilità

PyTorch offre un solido supporto per l'addestramento distribuito, un requisito fondamentale per l'addestramento di modelli di machine learning su larga scala. Il pacchetto `torch.distributed` consente il parallelismo dei dati e dei modelli su più GPU e nodi. Su GCP, questo è ulteriormente migliorato da strumenti come AI Platform Training e Kubernetes, che consentono agli utenti di scalare i carichi di lavoro su cluster di VM abilitate per GPU.

Esempio: addestramento parallelo di dati distribuiti

python
import torch
import torch.distributed as dist
import torch.nn as nn
import torch.optim as optim
from torch.nn.parallel import DistributedDataParallel as DDP

def train(rank, world_size):
    dist.init_process_group("nccl", rank=rank, world_size=world_size)
    model = nn.Linear(10, 1).to(rank)
    ddp_model = DDP(model, device_ids=[rank])
    loss_fn = nn.MSELoss()
    optimizer = optim.SGD(ddp_model.parameters(), lr=0.01)

    # Dummy input and target
    inputs = torch.randn(32, 10).to(rank)
    targets = torch.randn(32, 1).to(rank)

    outputs = ddp_model(inputs)
    loss = loss_fn(outputs, targets)
    loss.backward()
    optimizer.step()

Esportazione e distribuzione di modelli PyTorch

I modelli PyTorch possono essere esportati per l'inferenza utilizzando diversi metodi:

- stato_dict: I parametri del modello possono essere salvati su disco e caricati in definizioni di modelli compatibili per la distribuzione.
- Torcia: Tramite il tracciamento o lo scripting, i modelli possono essere convertiti in un formato serializzabile e ottimizzato, adatto all'implementazione in ambienti di produzione, compresi i runtime non Python.
- Esportazione ONNX: I modelli PyTorch possono essere esportati nel formato Open Neural Network Exchange (ONNX), consentendo l'interoperabilità con altri framework e strumenti di distribuzione.

Integrazione con i servizi GCP

PyTorch si integra perfettamente con la suite di servizi di GCP:

- Cloud Storage: Utilizzato per archiviare grandi set di dati, punti di controllo del modello e registri.
- BigQuery: Facilita l'analisi dei dati su larga scala e l'ingegneria delle funzionalità.
- Vertice AI: Fornisce servizi gestiti per il monitoraggio degli esperimenti, la messa a punto degli iperparametri e il monitoraggio dei modelli.
- Cloud Functions e Cloud Run: Abilita API di inferenza senza server per distribuzioni a bassa latenza.

Best Practice per l'utilizzo di PyTorch su GCP

- Gestione delle Risorse: La selezione dei tipi di VM e delle GPU più adatti per la formazione dei carichi di lavoro garantisce uno sviluppo di modelli efficiente e conveniente.
- Monitoraggio degli esperimenti: L'integrazione di strumenti di monitoraggio degli esperimenti (come TensorBoard o Vertex AI Experiments) facilita la riproducibilità e il monitoraggio delle prestazioni.
- Sicurezza e conformità: L'utilizzo di Identity and Access Management (IAM) di GCP, della crittografia dei dati e della registrazione degli audit garantisce una gestione sicura di dati e modelli sensibili.
- Automazione: Sfruttamento di strumenti di infrastruttura come codice (IaC), come Terraform, per il provisioning e il ridimensionamento automatizzati dell'infrastruttura ML su GCP.

Esempi di applicazioni realizzate con PyTorch

- Visione computerizzata: Classificazione delle immagini, rilevamento di oggetti, segmentazione delle immagini mediante architetture come ResNet, Faster R-CNN e U-Net.
- Elaborazione del linguaggio naturale: Classificazione del testo, traduzione, risposta alle domande e modellazione del linguaggio con modelli quali LSTM, GRU, Transformer e BERT.
- Insegnamento rafforzativo: Addestramento di agenti in ambienti simulati, come quelli visti negli ambienti OpenAI Gym o DeepMind.
- Modelli generativi: Implementazione di reti generative avversarie (GAN) e autoencoder variazionali (VAE).

Conclusione e valore didattico

La filosofia di progettazione di PyTorch privilegia usabilità, flessibilità e prestazioni, rendendolo una scelta leader sia per la ricerca accademica che per le applicazioni industriali nell'ambito dell'apprendimento automatico e dell'intelligenza artificiale. Il suo grafico di calcolo dinamico, l'integrazione nativa con Python e l'ecosistema completo consentono ai professionisti di creare, addestrare e distribuire modelli sofisticati in modo efficiente. In abbinamento all'infrastruttura scalabile e gestita di Google Cloud Platform, PyTorch consente a organizzazioni e ricercatori di affrontare complesse sfide di apprendimento automatico su larga scala, dalla preparazione dei dati fino all'implementazione e al monitoraggio.

Altre domande e risposte recenti riguardanti EITC/AI/GCML Google Cloud Machine Learning:

  • Gli iperparametri m e b sono quelli del video? O di altri?
  • Di quali dati ho bisogno per l'apprendimento automatico? Immagini, testo?
  • Risposta in slovacco alla domanda "Come posso sapere quale tipo di apprendimento è più adatto alla mia situazione?"
  • Devo installare TensorFlow?
  • Come posso sapere quale tipo di apprendimento è più adatto alla mia situazione?
  • In che cosa differiscono Vertex AI e AI Platform API?
  • Qual è il modo più efficace per creare dati di test per l'algoritmo di apprendimento automatico? Possiamo utilizzare dati sintetici?
  • In quale fase dell'apprendimento si può raggiungere il 100%?
  • Come posso sapere se il mio set di dati è sufficientemente rappresentativo per costruire un modello con informazioni vaste e senza distorsioni?
  • I livelli di simulazione basati su PINN e di knowledge graph dinamici possono essere utilizzati come struttura insieme a un livello di ottimizzazione in un modello di ambiente competitivo? È una soluzione adatta per set di dati reali ambigui e di piccole dimensioni?

Visualizza altre domande e risposte in EITC/AI/GCML Google Cloud Machine Learning

Altre domande e risposte:

  • Settore: Intelligenza Artificiale
  • programma: EITC/AI/GCML Google Cloud Machine Learning (vai al programma di certificazione)
  • Lezione: Competenza in Machine Learning (vai alla lezione correlata)
  • Argomento: PyTorch su GCP (vai all'argomento correlato)
Etichettato sotto: Intelligenza Artificiale, Cloud Computing, Deep Learning, Formazione distribuita, GCP, machine Learning, Reti neurali, PyTorch
Casa » Intelligenza Artificiale » EITC/AI/GCML Google Cloud Machine Learning » Competenza in Machine Learning » PyTorch su GCP » » Cos'è PyTorch?

Centro di certificazione

MENU UTENTE

  • Il Mio Account

CATEGORIA DI CERTIFICATI

  • Certificazione EITC (105)
  • Certificazione EITCA (9)

Che cosa stai cercando?

  • Introduzione
  • Come funziona?
  • Accademie EITCA
  • Sovvenzione EITCI DSJC
  • Catalogo completo dell'EITC
  • Il Suo ordine
  • In Evidenza
  •   IT ID
  • Recensioni EITCA (Publ. media)
  • Chi siamo
  • Contatti

EITCA Academy fa parte del framework europeo di certificazione IT

Il quadro europeo di certificazione IT è stato istituito nel 2008 come standard europeo e indipendente dai fornitori per la certificazione online ampiamente accessibile delle abilità e delle competenze digitali in molte aree delle specializzazioni digitali professionali. Il quadro EITC è disciplinato dal Istituto europeo di certificazione IT (EITCI), un'autorità di certificazione senza scopo di lucro che sostiene la crescita della società dell'informazione e colma il divario di competenze digitali nell'UE.

Idoneità per l'Accademia EITCA 90% Sovvenzione EITCI DSJC

90% delle tasse EITCA Academy sovvenzionato in iscrizione da

    Ufficio di segreteria dell'Accademia EITCA

    Istituto europeo di certificazione informatica ASBL
    Bruxelles, Belgio, Unione Europea

    Operatore del framework di certificazione EITC/EITCA
    Standard europeo di certificazione IT applicabile
    accesso a form di contatto oppure chiama +32 25887351

    Segui EITCI su X
    Visita EITCA Academy su Facebook
    Interagisci con EITCA Academy su LinkedIn
    Guarda i video EITCI e EITCA su YouTube

    Finanziato dall'Unione Europea

    Finanziato dalla Fondo europeo di sviluppo regionale (FESR) e Fondo sociale europeo (FSE) in una serie di progetti dal 2007, attualmente governati dal Istituto europeo di certificazione IT (EITCI) dal 2008

    Politica sulla sicurezza delle informazioni | Politica DSRRM e GDPR | Politica di protezione dei dati | Registro delle attività di trattamento | Politica HSE | Politica anticorruzione | Politica sulla schiavitù moderna

    Traduci automaticamente nella tua lingua

    Termini e condizioni | Politica sulla Privacy
    Accademia EITCA
    • Accademia EITCA sui social media
    Accademia EITCA


    © 2008-2026  Istituto Europeo di Certificazione IT
    Bruxelles, Belgio, Unione Europea

    TOP
    CHATTA CON IL SUPPORTO
    Hai qualche domanda?
    Ti risponderemo qui e via email. La tua conversazione verrà tracciata tramite un token di supporto.