Deep Learning Academy · Lektion

Elementvisa operationer och reduktioner

Beräkna summa, medelvärde och maximum över valda axlar

Lektion 2 av 413 steg

Elementvisa operationer och reduktioner är en gratis lektion i Deep Learning Academy på CoddyKit. Detta är lektion 2 av 4. Ni kan läsa hela lektionen gratis nedan och sedan öva praktiskt i webbläsaren med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt. Den ingår i lärvägen för Deep Learning Academy, och Era framsteg synkroniseras mellan webben och CoddyKit-appen. Kursen i Deep Learning Academy innehåller totalt 4 lektioner.

Två typer av operationer

Tensorberäkningar delas upp i två familjer: elementvisa operationer som behåller formen och reduktioner som komprimerar den till färre tal.

Elementvisa operationer behåller formen

En elementvis operation utför samma åtgärd på varje element oberoende av de andra. Samma form in och ut, utan att positionerna blandas.

b = a * 2 + 1
# same shape as a, every element transformed

Parvis elementvis matematik

Med två tensorer av samma form arbetar elementvisa operationer position för position. Addition matchar index med index, och multiplikation gör likadant.

c = a + b
d = a * b

Matematiska funktioner är också elementvisa

Funktioner som torch.relu, exp och sqrt körs elementvis. Varje tal omvandlas för sig, och tensorn behåller sin ursprungliga form.

r = torch.relu(x)
e = torch.exp(x)

Reduktioner komprimerar tal

En reduktion kombinerar många värden till färre. Summa, medelvärde och maximum reducerar en hel tensor, som standard till en enda skalär.

total = x.sum()
avg = x.mean()

Argumentet dim väljer en axel

Ange dim för att reducera längs endast en axel. Den valda axeln försvinner medan de andra finns kvar, så en 2D-tensor blir 1D.

col_sums = x.sum(dim=0)
row_means = x.mean(dim=1)

keepdim bevarar formen

Ange keepdim=True för att behålla den reducerade axeln med storleken 1. Den bevarade formen gör att senare broadcasting passar ihop på ett tydligt sätt.

m = x.max(dim=1, keepdim=True).values

mean kräver flyttal

mean dividerar och förväntar sig därför flyttalsdata. Anropar du den på en heltalstensor kommer PyTorch att klaga tills du först castar till float.

avg = x.float().mean()

argmax hittar vinnaren

Ibland vill du ha positionen, inte värdet. argmax returnerar indexet för det största elementet, vilket är så en klassificerare väljer sin förutsagda klass.

pred = logits.argmax(dim=1)

Kedja ihop dem

Riktig kod kombinerar båda typerna: en elementvis transformering matar en reduktion. Kvadrera felen och ta sedan medelvärdet, så får du medelkvadratfelet.

mse = ((pred - target) ** 2).mean()

Välj mellan att behålla och minska formen

En bra tumregel är att använda elementvis när varje värde ska ändras på sin plats och en reduktion när du behöver en sammanfattning, till exempel en totalsumma eller ett medelvärde.

Snabb kontroll

Kan du avgöra vilken operation som ändrar en tensors form?

Sammanfattning: Transformera kontra sammanfatta

Elementvisa operationer behåller formen och arbetar värde för värde. Reduktioner som sum och mean komprimerar den, medan dim och keepdim styr exakt hur. 🎯

Gratis att börja

Lär dig Python med en AI-lärare – gratis

Skriv och kör riktig kod i webbläsaren, få omedelbar hjälp av en AI-lärare dygnet runt och fortsätt där du slutade – på webben eller i appen.

Kurser
30
Lektioner
120

Vanliga frågor

Är lektionen ”Elementvisa operationer och reduktioner” gratis?

Ja – hela texten till ”Elementvisa operationer och reduktioner” kan läsas gratis här på webben. Om Ni vill öva interaktivt med en inbyggd kodredigerare och en AI-handledare som är tillgänglig dygnet runt och låsa upp resten av kursen i Deep Learning Academy, kan Ni uppgradera till CoddyKit PRO. Kursen i Deep Learning Academy innehåller totalt 4 lektioner.

Vad lär jag mig i ”Elementvisa operationer och reduktioner”?

Beräkna summa, medelvärde och maximum över valda axlar Ni övar på Deep Learning Academy med praktisk kod som körs direkt i webbläsaren, medan en AI-handledare som är tillgänglig dygnet runt svarar på Era frågor under lektionen.

Behöver jag någon erfarenhet för att börja lära mig Deep Learning Academy?

Du behöver inga förkunskaper. Utbildningen i Deep Learning Academy på CoddyKit är upplagd för allt från nybörjare till avancerade elever, så att du kan börja här eller från början och gå fram i din egen takt. Detta är lektion 2 av 4.

Hur lång tid tar lektionen ”Elementvisa operationer och reduktioner”?

De flesta CoddyKit-lektioner tar cirka 5–10 minuter. Varje lektion är kort och interaktiv, så att du gör stadiga framsteg och kan fortsätta precis där du slutade – på webben eller i appen.

Kan jag skriva och köra kod i den här Deep Learning Academy-lektionen?

Ja. Varje Deep Learning Academy-lektion innehåller en inbyggd kodredigerare, så att du kan skriva och köra riktig kod direkt i webbläsaren och få omedelbar AI-feedback – utan lokal installation.

Alla lektioner i den här kursen

  1. Varför loopar är långsamma för matematik
  2. Elementvisa operationer och reduktioner
  3. Multiplicera matriser med matmul och @
  4. Skalärprodukter driver varje lager
← Tillbaka till Deep Learning Academy