Pytorch - Cumprod

Pytorch - Cumprod
Pytorch er et open source-ramme for Python-programmeringsspråket.

En tensor er et flerdimensjonalt utvalg som brukes til å lagre data. Så for å bruke en tensor, må vi importere fakkelmodulen.

For å lage en tensor er metoden som brukes tensor ().

Syntaks:

lommelykt.Tensor (data)

Hvor data er en flerdimensjonal matrise.

lommelykt.cumprod ()

lommelykt.Cumprod () returnerer det kumulative produktet av elementer i en todimensjonal tensor på tvers av rader eller på tvers av kolonner.

Syntaks:

lommelykt.cumprod (tensor_object, dim)

Parametere:

  1. Det tar Tensor_Object som den første parameteren. Det må være todimensjonalt.
  2. DIM = 0 spesifiserer kolonnemessig beregning og DIM = 1 spesifiserer radmessig beregning.

Eksempel 1:

I dette eksemplet vil vi lage en tensor som har fire rader og fire kolonner og returnere det kumulative produktet av hvert element over raden.

produkt av hvert element over raden.
#import fakkelmodul
Importer fakkel
#Create Tensor
data1 = fakkel.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])
#vise
trykk ("Faktisk tensor:")
Print (Data1)
Print ("Kumulativt produkt over rad:")
#Return kumulativt produkt
trykk (fakkel.Cumprod (data1,1)))

Produksjon:

Faktisk tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Kumulativt produkt på tvers av rad:
Tensor ([[2, 6, 24, 120],
[1, 3, 15, 45],
[2, 6, 12, 12],
[2, 6, 24, 48]])

Arbeider:

Rad-1: 2,2*3,2*3*4,2*3*4*5 = [2, 6, 24, 120]

ROW-2: 1,1*3,1*3*5,1*3*5*3 = [1, 3, 15, 45]

ROW-3: 2,2*3,2*3*2,2*3*2*1 = [2, 6, 12, 12]

ROW-4: 2,2*3,2*3*4,2*3*4*2 = [2, 6, 24, 48]

Eksempel 2:

I dette eksemplet vil vi lage en tensor som har fire rader og fire kolonner og returnere det kumulative produktet til hvert element over kolonnen.

#import fakkelmodul
Importer fakkel
#Create Tensor
data1 = fakkel.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]])
#vise
trykk ("Faktisk tensor:")
Print (Data1)
Print ("Kumulativt produkt på tvers av kolonnen:")
#Return kumulativt produkt
trykk (fakkel.Cumprod (data1,0)))

Produksjon:

Faktisk tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Kumulativt produkt på tvers av kolonne:
Tensor ([[2, 3, 4, 5],
[2, 9, 20, 15],
[4, 27, 40, 15],
[8, 81, 160, 30]])

Arbeider:

Kolonne-1: 2,2*1,2*1*2,2*1*2*2 = [2, 2,4,8]

Kolonne-2: 3,3*3,3*3*3,3*3*3*3 = [3,9,27,81]

Kolonne-3: 4,4*5,4*5*2,4*5*2*4 = [4,20,40,160]

Kolonne-4: 5,5*3,5*3*1,5*3*1*2 = [5,15,15,30]

Arbeid med CPU

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

På dette tidspunktet, når vi lager en tensor, kan vi bruke CPU () -funksjonen.

Syntaks:

lommelykt.Tensor (data).prosessor()

Eksempel 1:

I dette eksemplet vil vi lage en tensor som har fire rader og fire kolonner og returnere det kumulative produktet av hvert element over raden.

#import fakkelmodul
Importer fakkel
#Create Tensor
data1 = fakkel.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]).prosessor()
#vise
trykk ("Faktisk tensor:")
Print (Data1)
Print ("Kumulativt produkt over rad:")
#Return kumulativt produkt
trykk (fakkel.Cumprod (data1,1)))

Produksjon:

Faktisk tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Kumulativt produkt på tvers av rad:
Tensor ([[2, 6, 24, 120],
[1, 3, 15, 45],
[2, 6, 12, 12],
[2, 6, 24, 48]])

Arbeider:

Rad-1: 2,2*3,2*3*4,2*3*4*5 = [2, 6, 24, 120]

ROW-2: 1,1*3,1*3*5,1*3*5*3 = [1, 3, 15, 45]

ROW-3: 2,2*3,2*3*2,2*3*2*1 = [2, 6, 12, 12]

ROW-4: 2,2*3,2*3*4,2*3*4*2 = [2, 6, 24, 48]

Eksempel 2:

I dette eksemplet vil vi lage en tensor som har fire rader og fire kolonner og returnere det kumulative produktet til hvert element over kolonnen.

#import fakkelmodul
Importer fakkel
#Create Tensor
data1 = fakkel.Tensor ([[2,3,4,5], [1,3,5,3], [2,3,2,1], [2,3,4,2]]).prosessor()
#vise
trykk ("Faktisk tensor:")
Print (Data1)
Print ("Kumulativt produkt på tvers av kolonnen:")
#Return kumulativt produkt
trykk (fakkel.Cumprod (data1,0)))

Produksjon:

Faktisk tensor:
Tensor ([[2, 3, 4, 5],
[1, 3, 5, 3],
[2, 3, 2, 1],
[2, 3, 4, 2]])
Kumulativt produkt på tvers av kolonne:
Tensor ([[2, 3, 4, 5],
[2, 9, 20, 15],
[4, 27, 40, 15],
[8, 81, 160, 30]])

Arbeider:
Kolonne-1: 2,2*1,2*1*2,2*1*2*2 = [2, 2,4,8]

Kolonne-2: 3,3*3,3*3*3,3*3*3*3 = [3,9,27,81]

Kolonne-3: 4,4*5,4*5*2,4*5*2*4 = [4,20,40,160]

Kolonne-4: 5,5*3,5*3*1,5*3*1*2 = [5,15,15,30]

Konklusjon

I denne pytorch -opplæringen så vi hvordan vi skulle utføre en kumulativ produktoperasjon på en tensor ved hjelp av fakkelen.Cumprod () -funksjonen. Det returnerer det kumulative produktet av elementer i en todimensjonal tensor over rader eller på tvers av kolonner. Vi implementerte også denne funksjonen på CPU ved hjelp av CPU () -funksjonen.