Deep Learning Academy · Lezione

Normalizzare e standardizzare gli input

Ridimensioni le feature per favorire la convergenza dell'addestramento

Lezione 4 di 413 passaggi

Normalizzare e standardizzare gli input è una lezione Deep Learning Academy gratuita su CoddyKit. Questa è la lezione 4 di 4. Puoi leggere la lezione completa qui gratuitamente — poi esercitati direttamente nel browser con un editor di codice integrato e un tutor IA disponibile 24/7. Fa parte del percorso di apprendimento Deep Learning Academy, e i tuoi progressi si sincronizzano tra il web e l'app CoddyKit. Il corso Deep Learning Academy include 4 lezioni in totale.

I numeri grezzi rallentano l'apprendimento

Caratteristiche con scale molto diverse, come età e stipendio, confondono una rete. Ridimensionarle prima è il motivo per cui la normalizzazione rende più rapida la convergenza dell'addestramento. ⚖️

Due procedure comuni

Incontrerà due principali metodi di scaling: la standardizzazione porta i dati a media zero e varianza unitaria, mentre il ridimensionamento min-max li comprime in un intervallo fisso, ad esempio da 0 a 1.

Standardizzare con media e deviazione standard

La standardizzazione sottrae la media e divide per la deviazione standard. Il risultato è centrato su zero con una dispersione pari a uno, il valore predefinito nel deep learning.

x = (x - x.mean()) / x.std()

Ridimensionamento min-max

Il ridimensionamento min-max associa il valore minimo a 0 e quello massimo a 1. È utile quando è importante avere un intervallo di input limitato, come nel caso delle intensità dei pixel.

x = (x - x.min()) / (x.max() - x.min())

Eseguire il fit solo sul training

Calcoli media e deviazione standard solo dal set di training. Riutilizzare i dati di test per determinare queste statistiche causa una fuga di informazioni e gonfia i punteggi.

Riutilizzare le stesse statistiche

Applichi ai dati di validazione e test le identiche statistiche calcolate sul training. Entrambe le suddivisioni devono essere trasformate allo stesso modo, altrimenti il modello riceve input non coerenti.

x_val = (x_val - train_mean) / train_std

Un canale alla volta per le immagini

Per le immagini, normalizzi ogni canale di colore usando la propria media e deviazione standard. PyTorch include transforms.Normalize per eseguire esattamente questa operazione in una pipeline.

transforms.Normalize(mean=[0.5], std=[0.5])

Usare le statistiche note di ImageNet

Quando usa modelli di visione pretrained, normalizzi i dati con le medie e le deviazioni standard di ImageNet, sui quali sono stati addestrati. Usare gli stessi valori mantiene gli input nell'intervallo previsto.

Eseguire l'operazione in __getitem__

Il punto più ordinato in cui applicare lo scaling è __getitem__ del dataset o una trasformazione. In questo modo ogni campione arriva già normalizzato, senza codice aggiuntivo nel ciclo di addestramento.

Attenzione alla divisione per zero

Se una caratteristica è costante, la sua deviazione standard è zero e la divisione produce valori enormi. Aggiunga un piccolo epsilon al denominatore per mantenere i calcoli sicuri e stabili.

x = (x - mean) / (std + 1e-8)

Un piccolo passaggio, un grande vantaggio

Normalizzare gli input è una semplice abitudine di preprocessing, ma spesso permette un addestramento più veloce e stabile. Se la salta, anche un buon modello potrebbe procedere a fatica.

Controllo rapido

Da quale suddivisione dovrebbe calcolare le statistiche di normalizzazione?

Riepilogo

La normalizzazione ridimensiona le caratteristiche per favorire la convergenza dell'addestramento, usando statistiche calcolate sul set di training e riutilizzate ovunque, spesso all'interno di una trasformazione. 🎉

Gratis per iniziare

Impara Python con un tutor IA — gratis

Scrivi ed esegui vero codice nel tuo browser, ricevi aiuto istantaneo da un tutor IA disponibile 24/7, e riprendi da dove hai lasciato sul web o nell'app.

Corsi
30
Lezioni
120

Domande Frequenti

La lezione «Normalizzare e standardizzare gli input» è gratuita?

Sì — il testo completo di «Normalizzare e standardizzare gli input» è gratuito qui sul web. Per esercitarvi in modo interattivo (un editor di codice integrato e un tutor IA 24/7) e sbloccare il resto del corso Deep Learning Academy, passa a CoddyKit PRO. Il corso Deep Learning Academy include 4 lezioni in totale.

Cosa imparerò in «Normalizzare e standardizzare gli input»?

Ridimensioni le feature per favorire la convergenza dell'addestramento Eserciti Deep Learning Academy con codice pratico che esegui direttamente nel browser, e un tutor IA 24/7 risponde alle tue domande mentre lavori sulla lezione.

Ho bisogno di esperienza per iniziare Deep Learning Academy?

Non è richiesta alcuna esperienza precedente. Deep Learning Academy su CoddyKit è strutturato per principianti e studenti avanzati, quindi puoi iniziare da qui o dall'inizio e procedere al tuo ritmo. Questa è la lezione 4 di 4.

Quanto tempo richiede la lezione «Normalizzare e standardizzare gli input»?

La maggior parte delle lezioni CoddyKit richiede circa 5–10 minuti. Ogni lezione è breve e interattiva, quindi fai progressi costanti e riprendi esattamente da dove hai lasciato su web e app.

Posso scrivere ed eseguire codice in questa lezione Deep Learning Academy?

Sì. Ogni lezione Deep Learning Academy include un editor di codice integrato, quindi scrivi ed esegui codice reale direttamente nel tuo browser e ricevi feedback istantaneo dall'IA — nessuna configurazione locale necessaria.

Tutte le lezioni di questo corso

  1. Scriva una classe Dataset personalizzata
  2. Batching, shuffle e num_workers
  3. collate_fn per input di lunghezza variabile
  4. Normalizzare e standardizzare gli input
← Torna a Deep Learning Academy