Magna Concursos

Um cientista de dados deseja analisar um conjunto de dados tabular, pré processá-lo e treinar um modelo de rede neural para prever valores contínuos. Ele utiliza Pandas para manipulação dos dados, Scikit-learn para normalização e TensorFlow/Keras para construir o modelo.

Considere o seguinte código em Python:

import pandas as pd
import numpy as np
from sklearn.preprocessing import MinMaxScaler
import tensorflow as tf
from tensorflow import keras
# 1. Carregar os dados
df = pd.DataFrame({
    "feature1": [10, 20, 30, 40, 50],
    "feature2": [5, 15, 25, 35, 45],
    "target": [100, 200, 300, 400, 500]
})
# 2. Selecionar apenas as colunas de entrada (features)
X = df[["feature1", "feature2"]]
y = df["target"]
# 3. Normalizar os dados de entrada
scaler = MinMaxScaler()
X_scaled = scaler.fit_transform(X)
# 4. Criar um modelo de rede neural para regressão
modelo = keras.Sequential([
    keras.Input(shape=(X_scaled.shape[1],)), # Definir a camada de entrada explicitamente
    tf.keras.layers.Dense(16, activation='relu'),
    tf.keras.layers.Dense(8, activation='relu'),
    tf.keras.layers.Dense(1, activation='linear') # Saída contínua
])
# 5. Compilar e treinar o modelo
modelo.compile(optimizer='adam', loss='mse')
modelo.fit(X_scaled, y, epochs=10, batch_size=2, verbose=0)

Com base no código apresentado, assinale a alternativa correta sobre a execução e o comportamento desse modelo.

 

Provas

Questão presente nas seguintes provas