Pytorch - Count_nonzero

Pytorch - Count_nonzero
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 er tensor ().

Syntaks:

lommelykt.Tensor (data)

Hvor data er en flerdimensjonal matrise.

lommelykt.count_nonzero ()

lommelykt.count_nonzero () brukes til å returnere det totale antallet ikke-null elementer som er til stede i tensoren. Det tar to parametere.

Syntaks:
lommelykt.count_nonzero (tensor_object, dim)

Parametere:

  1. Tensoren er inngangstensoren.
  2. Dim er å redusere dimensjonen. DIM = 0 spesifiserer kolonnesammenligning, som vil få den totale summen av ikke-null langs en kolonne, og DIM = 1 spesifiserer radsammenligning, som vil få den totale summen av ikke-null langs raden.

Eksempel 1:

I dette eksemplet vil vi lage en tensor med to dimensjoner som har to rader og to kolonner og bruke count_nonzero () på radene.

#La oss importere fakkelmodulen
Importer fakkel
#Create en tensor med 2 dimensjoner (3 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Tensor ([[0,0], [1,0]])
#vise
Print (data)
skrive ut()
#get telling av ikke -nuller langs rader
Skriv ut ("Totalt antall ikke -nuller på tvers av rader:")
trykk (fakkel.count_nonzero (data, dim = 1))

Produksjon:

Tensor ([[0, 0],
[1, 0]])
Totalt antall ikke -nuller på tvers av rader:
Tensor ([0, 1])

Vi kan se at det totale antallet ikke -null i den første raden er 0 og i den andre raden er 1.

Eksempel 2:

I dette eksemplet vil vi lage en tensor med to dimensjoner som har to rader og to kolonner og bruke count_nonzero () på kolonnene.

#La oss importere fakkelmodulen
Importer fakkel
#Create en tensor med 2 dimensjoner (3 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Tensor ([[0,0], [1,0]])
#vise
Print (data)
skrive ut()
#get telling av ikke -nuller langs søyler
Skriv ut ("Totalt antall ikke -nuller på tvers av kolonner:")
trykk (fakkel.count_nonzero (data, dim = 0))

Produksjon:

Tensor ([[0, 0],
[1, 0]])
Totalt antall ikke -nuller på tvers av kolonner:
tensor ([1, 0])

Vi kan se at det totale antallet ikke -null i den første kolonnen er 1 og i den andre kolonnen er 0.

Arbeid med CPU

Hvis du vil kjøre count_nonzero () -funksjonen 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 med to dimensjoner på CPU -en som har to rader og to kolonner og bruke count_nonzero () på rader.

#La oss importere fakkelmodulen
Importer fakkel
#Create en tensor med 2 dimensjoner (3 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Tensor ([[0,0], [1,0]]).prosessor()
#vise
Print (data)
skrive ut()
#get telling av ikke -nuller langs rader
Print ("Totalt antall ikke -nuller på tvers av rader:")
trykk (fakkel.count_nonzero (data, dim = 1))

Produksjon:

Tensor ([[0, 0],
[1, 0]])
Totalt antall ikke -nuller på tvers av rader:
Tensor ([0, 1])

Vi kan se at det totale antallet ikke -null i den første raden er 0 og i den andre raden er 1.

Eksempel 2:

I dette eksemplet vil vi lage en tensor med to dimensjoner på CPU som har to rader og to kolonner og bruke count_nonzero () på kolonnene.

#La oss importere fakkelmodulen
Importer fakkel
#Create en tensor med 2 dimensjoner (3 * 5)
#med tilfeldige elementer ved bruk av randn () -funksjon
data = fakkel.Tensor ([[0,0], [1,0]]).prosessor()
#vise
Print (data)
skrive ut()
#get telling av ikke -nuller langs søyler
Print ("Totalt antall ikke -nuller på tvers av kolonner:")
trykk (fakkel.count_nonzero (data, dim = 0))

Produksjon:

Tensor ([[0, 0],
[1, 0]])
Totalt antall ikke -nuller på tvers av kolonner:
tensor ([1, 0])

Vi kan se at det totale antallet ikke -null i den første kolonnen er 1 og i den andre kolonnen er 0.

Konklusjon

I denne Pytorch -leksjonen diskuterte vi count_nonzero () -funksjonen. Det returnerer det totale antallet ikke-null elementer som er til stede i tensoren. Vi så forskjellige eksempler og arbeidet disse eksemplene på en CPU -maskin.