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.