Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Tipos de Dados | Seção
Deep Learning com TensorFlow
Seção 1. Capítulo 7
single

single

bookTipos de Dados

Deslize para mostrar o menu

Tipos de Dados Disponíveis no TensorFlow

O TensorFlow oferece uma variedade de tipos de dados para atender diferentes tipos de dados e operações. Alguns dos tipos mais utilizados são:

  • tf.float16, tf.float32, tf.float64: números de ponto flutuante, onde os números após o ponto são relevantes. O número no nome (como 16 em tf.float16) indica a quantidade de bits utilizada. O tf.float32 é frequentemente utilizado por oferecer um bom equilíbrio entre precisão e velocidade de computação;

  • tf.int8, tf.int16, tf.int32, tf.int64: tipos inteiros, números sem ponto decimal. Podem ser positivos ou negativos;

  • tf.uint8, tf.uint16, tf.uint32, tf.uint64: o 'u' significa 'unsigned' (sem sinal), ou seja, esses inteiros são sempre não negativos;

  • tf.bool: representa valores booleanos (True ou False);

  • tf.string: para dados de texto.

Note
Nota

Para tipos inteiros, um número maior no nome apenas indica um intervalo mais amplo de valores que pode armazenar. Mas para tipos de ponto flutuante, um número maior no nome também indica maior precisão computacional.

Existem outros tipos de dados disponíveis no TensorFlow, mas para iniciantes, é fundamental se familiarizar primeiro com esses tipos principais. Para uma lista completa dos tipos de dados suportados pelo TensorFlow, consulte esta página específica na documentação do TensorFlow.

Definindo o Tipo de Dado ao Criar um Tensor

Ao inicializar um tensor, é possível especificar seu tipo utilizando o argumento 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
Nota

Muitas funções de criação de tensores adotam essa abordagem. Ela é aplicável em métodos como tf.Variable(), tf.zeros(), tf.ones(), tf.random.normal(), tf.random.uniform() e até mesmo em tf.convert_to_tensor().

Convertendo Entre Tipos de Dados

Mas e se a função que você está utilizando não permitir a especificação direta do tipo de dado? Ou talvez você já possua um tensor de determinado tipo e precise alterá-lo. Nesses casos, é necessário transformar tensores de um tipo de dado para outro. Isso é especialmente relevante, pois certas operações ou camadas de redes neurais frequentemente exigem entradas de um tipo específico, predominantemente números de ponto flutuante.

Você pode utilizar tf.cast() para realizar essa conversão:

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

Lembre-se: ao converter de um tipo de ponto flutuante para um tipo inteiro, o TensorFlow realiza a operação de piso, descartando a parte decimal. Assim, 3.8 se torna 3 e -1.2 se torna -1.

Note
Nota

Tenha cautela ao alterar tipos de dados, especialmente ao migrar para um tipo com menor precisão. Você pode perder informações nesse processo.

Tarefa

Swipe to start coding

Sua tarefa é criar um tensor de um tipo de dado específico e, em seguida, convertê-lo para outro tipo de dado.

  1. Criar um tensor chamado initial_tensor com formato (3, 3) contendo valores distribuídos normalmente. Certifique-se de que este tensor possua o tipo de dado de valores de ponto flutuante de 64 bits.
  2. Transformar o initial_tensor em um tensor chamado converted_tensor com tipo de dado de valores de ponto flutuante de 16 bits.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 7
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

some-alt