Pular para o conteúdo principal

Questão de Programação — Frameworks em Programação — INSTITUTO AOCP 2025

ProgramaçãoFrameworks em Programação
Código
qg540694
Banca
INSTITUTO AOCP
Órgão
MPE-RS
Ano
2025
Nível
Superior
Cargo
Analista do Ministério Público - Informática
Um analista de tecnologia da informação está trabalhando com aprendizado de máquina utilizando a ferramenta TensorFlow. Com essa ferramenta, é possível operar matrizes ou tensores multidimensionais, tendo como um de seus atributos o Tensor.shape, o qual
  1. Ainforma o tipo de todos os elementos no tensor.
  2. Binforma o tamanho do tensor ao longo de cada um de seus eixos.
  3. Crealiza a diferenciação automática dentro de uma variável.
  4. Drealiza o cálculo do tipo de dados de um elemento no tensor de forma automática.
  5. Eutiliza o GPU para fazer o cálculo do aprendizado de máquina direto no console de execução.
Revelar gabarito e comentário

GabaritoB — informa o tamanho do tensor ao longo de cada um de seus eixos.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

TensorFlow: Tensor.shape

Gabarito: letra B. O atributo Tensor.shape do TensorFlow informa o tamanho do tensor ao longo de cada um de seus eixos, ou seja, retorna a forma (dimensões) do tensor. As demais alternativas descrevem funcionalidades de outros atributos ou métodos da ferramenta, como dtype (tipo de dados), GradientTape (diferenciação automática) e GPU (aceleração de hardware).

O TensorFlow é uma biblioteca de código aberto para aprendizado de máquina, amplamente utilizada para construir e treinar modelos de redes neurais. No coração do TensorFlow está o conceito de tensor, que é uma generalização de matrizes para dimensões superiores. Um tensor pode ser um escalar (0 dimensões), um vetor (1 dimensão), uma matriz (2 dimensões) ou ter mais dimensões (tensores multidimensionais).

A forma (shape) de um tensor descreve o número de elementos ao longo de cada eixo (dimensão). Por exemplo, um tensor com shape (3, 4) tem 3 linhas e 4 colunas; um tensor com shape (2, 3, 5) tem 2 matrizes de 3 linhas e 5 colunas cada. O atributo Tensor.shape retorna exatamente essa informação, permitindo ao programador conhecer a dimensionalidade dos dados que está manipulando.

É importante distinguir shape de outros atributos e métodos do TensorFlow:

Atributo/Método

Função

Tensor.shape

Retorna o tamanho do tensor ao longo de cada eixo (dimensões)

Tensor.dtype

Retorna o tipo de dados dos elementos (ex.: float32, int64)

tf.GradientTape

Realiza a diferenciação automática para calcular gradientes

tf.device('/GPU:0')

Define o dispositivo (GPU) para execução dos cálculos

A pegadinha da banca está em confundir shape com dtype (tipo de dados) ou com funcionalidades de diferenciação automática e aceleração por GPU. O candidato que não conhece a API do TensorFlow pode facilmente cair nessas armadilhas, pois todas as alternativas mencionam conceitos relacionados à ferramenta, mas apenas uma descreve corretamente o atributo Tensor.shape.

Guarde a distinção central: shape = dimensões do tensor; dtype = tipo dos elementos. É exatamente essa fronteira que separa a alternativa correta das demais.

Alternativa A — ❌ Incorreta

Afirma que Tensor.shape informa o tipo de todos os elementos no tensor. Isso é função do atributo Tensor.dtype, que retorna o tipo de dados (ex.: float32, int64). A alternativa troca o conceito de forma pelo de tipo de dados.

Alternativa B — ✅ Correta ⟵ GABARITO

O atributo Tensor.shape retorna um objeto TensorShape que descreve o tamanho do tensor ao longo de cada eixo. Por exemplo, para um tensor de shape (2, 3), significa que ele tem 2 linhas e 3 colunas. É exatamente isso que a alternativa afirma: "informa o tamanho do tensor ao longo de cada um de seus eixos".

Alternativa C — ❌ Incorreta

Afirma que Tensor.shape realiza a diferenciação automática dentro de uma variável. A diferenciação automática no TensorFlow é feita pela classe tf.GradientTape, que registra operações para calcular gradientes. O atributo shape não tem relação com cálculo de derivadas.

Alternativa D — ❌ Incorreta

Afirma que Tensor.shape realiza o cálculo do tipo de dados de um elemento no tensor de forma automática. Novamente, o tipo de dados é obtido pelo atributo Tensor.dtype, não por shape. A alternativa confunde os dois atributos.

Alternativa E — ❌ Incorreta

Afirma que Tensor.shape utiliza o GPU para fazer o cálculo do aprendizado de máquina direto no console de execução. O uso de GPU é configurado por meio de tf.device ou automaticamente pelo TensorFlow, mas não é função do atributo shape. A alternativa mistura conceitos de aceleração de hardware com a inspeção de dimensões.

NÃO CAIA NESSA!

A banca explora a confusão entre shape (dimensões) e dtype (tipo de dados). Nas alternativas A e D, o termo "tipo" é usado para induzir o candidato a associar shape ao tipo dos elementos. Lembre-se: shape responde "quantas dimensões e quantos elementos em cada uma"; dtype responde "que tipo de dado". Com esse par na cabeça, você elimina as duas alternativas de imediato.

PEGA ESSA DICA!

Para fixar, associe shape à palavra "forma" (dimensões) e dtype à palavra "tipo" (dados). Em questões sobre TensorFlow, sempre pergunte: "o que o atributo descreve?" Se for dimensão, é shape; se for tipo de dado, é dtype. Essa distinção cai com frequência em provas de programação.

Gabarito: letra B

Link permanente: /questoes/qg540694