Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Datatyper | Tensores
Introduksjon til TensorFlow

bookDatatyper

Datatyper

I denne delen vil du utforske konseptet datatyper i TensorFlow. På samme måte som programmeringsspråk kategoriserer tall og tekst i typer som heltall, flyttall eller strenger, har også tensorer i TensorFlow spesifikke typer.

Tilgjengelige datatyper i TensorFlow

TensorFlow støtter et bredt utvalg av datatyper for å håndtere ulike typer data og operasjoner. Noen av de mest brukte typene er:

  • tf.float16, tf.float32, tf.float64: dette er flyttall der sifrene etter desimaltegnet er viktige. Tallet i navnet (som 16 i tf.float16) angir antall biter som brukes. tf.float32 er ofte brukt fordi det gir en god balanse mellom presisjon og beregningshastighet;

  • tf.int8, tf.int16, tf.int32, tf.int64: dette er heltallstyper, tall uten desimalpunktum. De kan være både positive og negative;

  • tf.uint8, tf.uint16, tf.uint32, tf.uint64: 'u' står her for 'unsigned', noe som betyr at disse heltallene alltid er ikke-negative;

  • tf.bool: representerer boolske verdier (True eller False);

  • tf.string: for tekstdata.

Note
Merk

For heltallstyper betyr et høyere tall i navnet kun et større verdiområde som kan lagres. For flyttallstyper indikerer et høyere tall i navnet også større beregningsnøyaktighet.

Det finnes flere datatyper tilgjengelig i TensorFlow, men for nybegynnere er det viktig å bli kjent med disse grunnleggende typene først. For en fullstendig liste over datatyper som støttes av TensorFlow, se denne spesifikke siden i TensorFlow-dokumentasjonen.

Angi datatype ved opprettelse av tensor

Når en tensor initialiseres, kan typen spesifiseres ved å bruke argumentet dtype:

123456789101112
import tensorflow as tf # Creating a tensor of type `float16` tensor_float = tf.constant([1.2, 2.3, 3.4], dtype=tf.float16) # Creating a tensor of type `int64` tensor_int = tf.constant([1, 2, 3], dtype=tf.int64) # Display tensors print(tensor_float) print('-' * 50) print(tensor_int)
copy
Note
Merk

Mange funksjoner for opprettelse av tensorer benytter denne tilnærmingen. Dette gjelder metoder som tf.Variable(), tf.zeros(), tf.ones(), tf.random.normal(), tf.random.uniform(), og til og med tf.convert_to_tensor().

Konvertering mellom datatyper

Hva om funksjonen du bruker ikke tillater direkte spesifisering av datatype? Eller kanskje du allerede har en tensor av en bestemt type og må endre den. I slike tilfeller må du transformere tensorer fra én datatype til en annen. Dette er spesielt relevant siden enkelte operasjoner eller lag i nevrale nettverk ofte krever input av en bestemt type, hovedsakelig flyttall.

Du kan bruke tf.cast() for å oppnå dette:

123456789101112
import tensorflow as tf # Create a tensor tensor_float = tf.constant([-1.2, 2.3, 3.8]) # Convert our `tensor_float` from `float32` to `int32` tensor_int_converted = tf.cast(tensor_float, dtype=tf.int32) # Display a tensor print(tensor_float) print('-' * 50) print(tensor_int_converted)
copy

Husk at når du konverterer fra en flyttallstype til en heltallstype, vil TensorFlow utføre en gulvoperasjon, som i praksis fjerner desimaldelen. Dermed blir 3.8 til 3, og -1.2 til -1.

Note
Merk

Vær oppmerksom når du endrer datatyper, spesielt når du går over til en type med lavere presisjon. Du kan miste informasjon i prosessen.

Oppgave

Swipe to start coding

Din oppgave er å opprette en tensor med en spesifikk datatypen og deretter konvertere den til en annen datatype.

  1. Opprett en tensor kalt initial_tensor med form (3, 3) med normalfordelte verdier. Sørg for at denne tensoren har datatypen 64-bits flyttall.
  2. Konverter initial_tensor til en tensor kalt converted_tensor med datatypen 16-bits flyttall.

Løsning

Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 7
single

single

Spør AI

expand

Spør AI

ChatGPT

Spør om hva du vil, eller prøv ett av de foreslåtte spørsmålene for å starte chatten vår

Suggested prompts:

What are some practical examples of when I would need to change a tensor's data type?

Can you explain the difference between signed and unsigned integer types in TensorFlow?

How do I check the data type of an existing tensor?

close

Awesome!

Completion rate improved to 5.56

bookDatatyper

Sveip for å vise menyen

Datatyper

I denne delen vil du utforske konseptet datatyper i TensorFlow. På samme måte som programmeringsspråk kategoriserer tall og tekst i typer som heltall, flyttall eller strenger, har også tensorer i TensorFlow spesifikke typer.

Tilgjengelige datatyper i TensorFlow

TensorFlow støtter et bredt utvalg av datatyper for å håndtere ulike typer data og operasjoner. Noen av de mest brukte typene er:

  • tf.float16, tf.float32, tf.float64: dette er flyttall der sifrene etter desimaltegnet er viktige. Tallet i navnet (som 16 i tf.float16) angir antall biter som brukes. tf.float32 er ofte brukt fordi det gir en god balanse mellom presisjon og beregningshastighet;

  • tf.int8, tf.int16, tf.int32, tf.int64: dette er heltallstyper, tall uten desimalpunktum. De kan være både positive og negative;

  • tf.uint8, tf.uint16, tf.uint32, tf.uint64: 'u' står her for 'unsigned', noe som betyr at disse heltallene alltid er ikke-negative;

  • tf.bool: representerer boolske verdier (True eller False);

  • tf.string: for tekstdata.

Note
Merk

For heltallstyper betyr et høyere tall i navnet kun et større verdiområde som kan lagres. For flyttallstyper indikerer et høyere tall i navnet også større beregningsnøyaktighet.

Det finnes flere datatyper tilgjengelig i TensorFlow, men for nybegynnere er det viktig å bli kjent med disse grunnleggende typene først. For en fullstendig liste over datatyper som støttes av TensorFlow, se denne spesifikke siden i TensorFlow-dokumentasjonen.

Angi datatype ved opprettelse av tensor

Når en tensor initialiseres, kan typen spesifiseres ved å bruke argumentet dtype:

123456789101112
import tensorflow as tf # Creating a tensor of type `float16` tensor_float = tf.constant([1.2, 2.3, 3.4], dtype=tf.float16) # Creating a tensor of type `int64` tensor_int = tf.constant([1, 2, 3], dtype=tf.int64) # Display tensors print(tensor_float) print('-' * 50) print(tensor_int)
copy
Note
Merk

Mange funksjoner for opprettelse av tensorer benytter denne tilnærmingen. Dette gjelder metoder som tf.Variable(), tf.zeros(), tf.ones(), tf.random.normal(), tf.random.uniform(), og til og med tf.convert_to_tensor().

Konvertering mellom datatyper

Hva om funksjonen du bruker ikke tillater direkte spesifisering av datatype? Eller kanskje du allerede har en tensor av en bestemt type og må endre den. I slike tilfeller må du transformere tensorer fra én datatype til en annen. Dette er spesielt relevant siden enkelte operasjoner eller lag i nevrale nettverk ofte krever input av en bestemt type, hovedsakelig flyttall.

Du kan bruke tf.cast() for å oppnå dette:

123456789101112
import tensorflow as tf # Create a tensor tensor_float = tf.constant([-1.2, 2.3, 3.8]) # Convert our `tensor_float` from `float32` to `int32` tensor_int_converted = tf.cast(tensor_float, dtype=tf.int32) # Display a tensor print(tensor_float) print('-' * 50) print(tensor_int_converted)
copy

Husk at når du konverterer fra en flyttallstype til en heltallstype, vil TensorFlow utføre en gulvoperasjon, som i praksis fjerner desimaldelen. Dermed blir 3.8 til 3, og -1.2 til -1.

Note
Merk

Vær oppmerksom når du endrer datatyper, spesielt når du går over til en type med lavere presisjon. Du kan miste informasjon i prosessen.

Oppgave

Swipe to start coding

Din oppgave er å opprette en tensor med en spesifikk datatypen og deretter konvertere den til en annen datatype.

  1. Opprett en tensor kalt initial_tensor med form (3, 3) med normalfordelte verdier. Sørg for at denne tensoren har datatypen 64-bits flyttall.
  2. Konverter initial_tensor til en tensor kalt converted_tensor med datatypen 16-bits flyttall.

Løsning

Switch to desktopBytt til skrivebordet for virkelighetspraksisFortsett der du er med et av alternativene nedenfor
Alt var klart?

Hvordan kan vi forbedre det?

Takk for tilbakemeldingene dine!

Seksjon 1. Kapittel 7
single

single

some-alt