Vi vil se hvordan du kan returnere medianen til en tensor ved hjelp av median () 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.
Median ()
Median () i Pytorch brukes til å returnere medianen til elementene som er til stede i inngangs -tensorobjektet.
Syntaks:
lommelykt.median (tensor, dim)
Hvor:
1. Tensoren er inngangstensoren.
2. Dim er å redusere dimensjonen. DIM = 0 Angir kolonnesammenligningen som får medianen langs en kolonne og DIM = 1 spesifiserer radens sammenligning som får medianen langs raden.
Komme tilbake:
Den returnerer medianen sammen med indeksposisjonen der den er til stede i tensoren.
Eksempel 1:
I dette eksemplet vil vi lage en tensor med to dimensjoner som har 3 rader og 5 kolonner og bruke median () -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()
#get median langs kolonner
trykk ("Median på tvers av kolonner:")
trykk (fakkel.median (data, dim = 0))
skrive ut()
#get median langs rader
trykk ("Median over rader:")
trykk (fakkel.median (data, dim = 1))
Produksjon:
tensor ([[0.9562, 0.4517, 2.1758, -0.7846, -0.7103],
[-0.4080, 1.9359, 1.0324, 0.0120, -0.4021],
[0.6448, -0.6840, 1.5963, 0.4659, 0.5414]])
Median over kolonner:
lommelykt.return_types.median (
verdier = tensor ([0.6448, 0.4517, 1.5963, 0.0120, -0.4021]),
indekser = tensor ([2, 0, 2, 1, 1]))
Median over rader:
lommelykt.return_types.median (
verdier = tensor ([0.4517, 0.0120, 0.5414]),
indekser = tensor ([1, 3, 4]))
Vi kan se at medianen blir returnert over kolonnene og radene sammen med indeksposisjonene (indekser).
Eksempel 2:
Lag en tensor med 5 * 5 -matrise og returner medianen 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()
#get median langs kolonner
trykk ("Median på tvers av kolonner:")
trykk (fakkel.median (data, dim = 0))
skrive ut()
#get median langs rader
trykk ("Median over rader:")
trykk (fakkel.median (data, dim = 1))
Produksjon:
Tensor ([[-1.0895, 1.2629, 0.5036, -0.8317, 0.9415],
[-0.1067, 0.5748, 0.1773, 0.1904, 0.1359],
[-0.7851, -0.1791, -0.1605, 1.8524, 0.3375],
[-0.6451, 0.5093, -2.0334, -0.6462, -0.5074],
[-0.7813, -1.5316, 0.3567, 1.5330, 0.6483]])
Median over kolonner:
lommelykt.return_types.median (
verdier = tensor ([-0.7813, 0.5093, 0.1773, 0.1904, 0.3375]),
indekser = tensor ([4, 3, 1, 1, 2]))
Median over rader:
lommelykt.return_types.median (
verdier = tensor ([0.5036, 0.1773, -0.1605, -0.6451, 0.3567]),
indekser = tensor ([2, 2, 2, 0, 2]))
Vi kan se at medianen over radene og søylene ble returnert sammen med indeksene.
Uten den svake parameteren
Hvis vi ikke spesifiserer DIM -parameteren, returnerer den hele medianen.
Eksempel 1:
Lag en 2D -tensor med 5*5 -matrise og returner medianen.
#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 median
trykk ("Median:")
trykk (fakkel.median (data)))
Produksjon:
tensor ([[0.7692, 1.9155, 1.0876, 0.6794, 0.5791],
[-0.2212, -1.4801, 0.5487, -0.5765, -0.4750],
[-0.0681, 0.5216, 1.1400, -0.1743, 0.0344],
[-0.4639, -1.2341, -1.0520, 0.1718, -0.1909],
[0.6911, -1.4869, 2.7762, -0.3645, -0.4775]])
Median:
Tensor (-0.0681)
Eksempel 2:
Lag en 1D -tensor med 5 verdier og returner medianen.
#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 median
trykk ("Median:")
trykk (fakkel.median (data)))
Produksjon:
Tensor ([10.6000, 20.7000, 30.6000, 40.4000, 50.0000])
Median:
Tensor (30.6000)
Arbeid med CPU
Hvis du vil kjøre en median () -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 median () 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()
#get median langs kolonner
trykk ("Median på tvers av kolonner:")
trykk (fakkel.median (data, dim = 0))
skrive ut()
#get median langs rader
trykk ("Median over rader:")
trykk (fakkel.median (data, dim = 1))
Produksjon:
tensor ([[0.9872, 0.1258, -0.0952, 0.3269, -1.6033],
[-0.2432, -1.0049, -0.9058, 0.9438, 0.3060],
[-2.8293, 1.4515, -0.9482, 0.9876, 0.2767]])
Median over kolonner:
lommelykt.return_types.median (
verdier = tensor ([-0.2432, 0.1258, -0.9058, 0.9438, 0.2767]),
indekser = tensor ([1, 0, 1, 1, 2]))
Median over rader:
lommelykt.return_types.median (
verdier = tensor ([0.1258, -0.2432, 0.2767]),
indekser = tensor ([1, 0, 4]))
Vi kan se at medianen blir returnert over kolonnene og radene med indekser.
Eksempel 2:
Lag en tensor med 5 * 5 -matrise med CPU () -funksjonen og returner medianen 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()
#get median langs kolonner
trykk ("Median på tvers av kolonner:")
trykk (fakkel.median (data, dim = 0))
skrive ut()
#get median langs rader
trykk ("Median over rader:")
trykk (fakkel.median (data, dim = 1))
Produksjon:
tensor ([[-0.3739, -1.2500, -1.9125, -0.4597, 0.2058],
[-0.1885, -0.4993, -1.0801, -0.1367, -0.5683],
[-0.1242, 0.1221, -0.2267, -0.7851, 0.6797],
[2.2487, 0.0141, 0.1632, -0.4924, -0.9134],
[-1.6101, 0.5051, -0.2004, -0.4901, -0.3358]])
Median over kolonner:
lommelykt.return_types.median (
verdier = tensor ([-0.1885, 0.0141, -0.2267, -0.4901, -0.3358]),
indekser = tensor ([1, 3, 2, 4, 4]))
Median over rader:
lommelykt.return_types.median (
verdier = tensor ([-0.4597, -0.4993, -0.1242, 0.0141, -0.3358]),
indekser = tensor ([3, 1, 0, 1, 4]))
Vi kan se at medianen over radene og søylene ble returnert.
Konklusjon
I denne Pytorch -leksjonen lærte vi om median () -funksjonen og hvordan vi kan bruke den på en tensor for å returnere en median over kolonnene og radene.
Vi opprettet også en tensor med CPU () -funksjonen og returnerte medianen. Hvis DIM ikke er spesifisert i to eller flerdimensjonal tensor, returnerer den hele medianen.