Pytorch - var

Pytorch - var
Vi vil se hvordan du kan returnere variansen til en tensor ved hjelp av var () i denne Pytorch -opplæringen.

Pytorch er et open source-ramme tilgjengelig med et Python-programmeringsspråk. Tensor er et flerdimensjonalt utvalg som brukes til å lagre dataene. For å bruke en tensor, må vi importere fakkelmodulen. For å lage en tensor er metoden som brukes tensor ().

Syntaks:

lommelykt.Tensor (data)

Der dataene er en flerdimensjonal matrise.

Var ()

Var () i Pytorch brukes til å returnere variansen til elementene som er til stede i inngangs -tensorobjektet.

Syntaks:

lommelykt.var (tensor, dim)

Hvor:

1. Tensoren er inngangstensoren.

2. Dim er å redusere dimensjonen. DIM = 0 Angir kolonnesammenligningen som får variansen langs en kolonne og DIM = 1 spesifiserer radens sammenligning som får variansen langs raden.

Eksempel 1:

I dette eksemplet vil vi lage en tensor med to dimensjoner som har 3 rader og 5 kolonner og bruke var () -funksjonen på rader og kolonner.

#import fakkelmodul
Importer fakkel
#Create en tensor med 2 dimensjoner (3 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Randn (3,5)
#vise
Print (data)
skrive ut()
#Fet varians langs kolonner
trykk ("Varians på tvers av kolonner:")
trykk (fakkel.var (data, dim = 0))
skrive ut()
#Fet varians langs rader
trykk ("Varians på tvers av rader:")
trykk (fakkel.var (data, dim = 1))

Produksjon:

tensor ([[0.8844, -0.6416, -0.5520, 0.3798, -0.0587],
[0.0633, 1.9403, -1.3161, -0.5293, 0.4061],
[ 1.3974, 0.9784, -0.1111, -1.7721, -0.5881]])
Varians på tvers av kolonner:
tensor ([0.4529, 1.7027, 0.3717, 1.1669, 0.2475])
Varians på tvers av rader:
tensor ([0.4115, 1.4706, 1.6017])

Vi kan se at variansen returneres over kolonnene og radene.

Eksempel 2:

Lag en tensor med 5 * 5 -matrise og returner variansen over radene og kolonnene.

#import fakkelmodul
Importer fakkel
#Create en tensor med 2 dimensjoner (5 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Randn (5,5)
#vise
Print (data)
skrive ut()
#Fet varians langs kolonner
trykk ("Varians på tvers av kolonner:")
trykk (fakkel.var (data, dim = 0))
skrive ut()
#Fet varians langs rader
trykk ("Varians på tvers av rader:")
trykk (fakkel.var (data, dim = 1))

Produksjon:

tensor ([[0.1260, 1.1681, 0.2191, -0.3685, -2.0660],
[0.5840, 0.2955, 0.2362, -1.2847, 1.3656],
[0.2925, 1.3555, -1.2881, 0.9167, 0.1882],
[-0.7466, 0.2770, 1.1448, -1.2779, -0.2764],
[-1.1316, -0.6998, 2.5051, -0.6687, -0.1624]])
Varians på tvers av kolonner:
tensor ([0.5318, 0.6768, 1.9404, 0.8168, 1.5226])
Varians på tvers av rader:
tensor ([1.4157, 0.9283, 1.0072, 0.8749, 2.1285])

Vi kan se at variansen over radene og kolonnene ble returnert.

Uten den svake parameteren

Hvis vi ikke spesifiserer DIM -parameteren, returnerer den variansen fra hele tensoren.

Eksempel 1:

Lag en 2D -tensor med 5*5 -matrise og returner variansen.

#import fakkelmodul
Importer fakkel
#Create en tensor med 2 dimensjoner (5 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Randn (5,5)
#vise
Print (data)
skrive ut()
#Get varians
Print ("Varians:")
trykk (fakkel.var (data))

Produksjon:

tensor ([[-0.0151, -0.7915, -0.9665, -1.4131, 0.9591],
[-0.6647, 0.6698, -1.3399, -0.0513, -0.0519],
[ 1.0328, -0.3692, 1.0579, 0.5857, 0.3899],
[-0.5928, 1.2447, -0.5782, 1.4461, -0.4847],
[-1.3246, -0.7092, 0.1471, 0.5752, 3.1142]])
Forskjell :
Tensor (1.1131)

Eksempel 2:

Lag en 1D -tensor med 5 verdier og returner variansen.

#import fakkelmodul
Importer fakkel
#skap en tensor med 5 numeriske verdier
data = fakkel.Tensor ([10.6,20.7,30.6,40.4,50.0])
#vise
Print (data)
skrive ut()
#Get varians
Print ("Varians:")
trykk (fakkel.var (data))

Produksjon:

Tensor ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Forskjell :
Tensor (242.5780)

Arbeid med CPU

Hvis du vil kjøre en var () -funksjon på CPU, må vi lage en tensor med en CPU () -funksjon. Dette kjøres på en CPU -maskin.

Når vi lager en tensor, kan vi bruke CPU () -funksjonen denne gangen.

Syntaks:

lommelykt.Tensor (data).prosessor()

Eksempel 1:

I dette eksemplet vil vi lage en tensor med to dimensjoner som har 3 rader og 5 kolonner med CPU () -funksjonen og bruke VAR () -funksjonen på rader og kolonner.

#import fakkelmodul
Importer fakkel
#Create en tensor med 2 dimensjoner (3 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Randn (3,5).prosessor()
#vise
Print (data)
skrive ut()
#Fet varians langs kolonner
trykk ("Varians på tvers av kolonner:")
trykk (fakkel.var (data, dim = 0))
skrive ut()
#Fet varians langs rader
trykk ("Varians på tvers av rader:")
trykk (fakkel.var (data, dim = 1))

Produksjon:

tensor ([[0.1278, 1.3140, 0.5116, -0.1922, 0.9349],
[-1.1720, 1.4805, -0.2628, 0.5970, -0.6479],
[-1.7930, 0.2337, -1.3810, -0.9092, -0.0778]])
Varians på tvers av kolonner:
tensor ([0.9607, 0.4582, 0.9053, 0.5676, 0.6427])
Varians på tvers av rader:
tensor ([0.3655, 1.1027, 0.7312])

Vi kan se at variansen returneres over kolonnene og radene.

Eksempel 2:

Lag en tensor med 5 * 5 -matrise med CPU () -funksjonen og returner variansen over radene og kolonnene.

#import fakkelmodul
Importer fakkel
#Create en tensor med 2 dimensjoner (5 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Randn (5,5).prosessor()
#vise
Print (data)
skrive ut()
#Fet varians langs kolonner
trykk ("Varians på tvers av kolonner:")
trykk (fakkel.var (data, dim = 0))
skrive ut()
#Fet varians langs rader
trykk ("Varians på tvers av rader:")
trykk (fakkel.var (data, dim = 1))

Produksjon:

tensor ([[-0.3587, 1.2200, -0.8744, -0.8184, -1.1658],
[0.1428, -0.6122, -0.9894, 1.8219, -0.0248],
[-1.9626, -0.3423, 1.3046, 0.9737, 1.1691],
[-0.1054, -0.3935, -0.3632, -0.7317, -0.1751],
[0.9651, -0.6595, 0.3152, 0.6908, -0.0370]])
Varians på tvers av kolonner:
tensor ([1.1489, 0.6115, 0.9007, 1.2999, 0.6869])
Varians på tvers av rader:
tensor ([0.9032, 1.1678, 1.9312, 0.0595, 0.4048])

Vi kan se at variansen over radene og kolonnene ble returnert.

Konklusjon

I denne Pytorch -leksjonen diskuterte vi om var () -funksjonen og hvordan du bruker den på en tensor for å returnere variansen over kolonnene og radene.

Vi opprettet også en tensor med CPU () -funksjonen og returnerte variansen. Hvis DIM ikke er spesifisert i to eller flerdimensjonal tensor, returnerer den variansen til hele tensoren.