Especificar un modelo

Ahora podrás trabajar con tu primer modelo en Keras, e inmediatamente serás capaz de ejecutar modelos de redes neuronales más complejos en conjuntos de datos más grandes en comparación con los dos primeros capítulos.

Para empezar, tomarás el esqueleto de una red neuronal y le añadirás una capa oculta y una capa de salida. A continuación, ajustarás ese modelo y verás cómo Keras realiza la optimización para que tu modelo mejore continuamente.

Para empezar, predecirás los salarios de los trabajadores basándote en características como su sector, formación y nivel de experiencia. Puedes encontrar el conjunto de datos en un DataFrame de pandas llamado df. Por comodidad, todo lo que hay en df excepto el objetivo se ha convertido en una matriz NumPy llamada predictors. El objetivo, wage_per_hour, está disponible como una matriz NumPy llamada target.

Para todos los ejercicios de este capítulo, hemos importado el constructor del modelo Sequential, el constructor de la capa Dense y pandas.

Este ejercicio forma parte del curso

Introducción al Aprendizaje Profundo en Python

Ver curso

Instrucciones de ejercicio

  • Guarda el número de columnas de los datos de predictors en n_cols. Esto se ha hecho por ti.
  • Empieza creando un modelo Sequential llamado model.
  • Utiliza el método .add() en model para añadir una capa Dense.
    • Añade 50 unidades, especifica activation='relu', y que el parámetro input_shape sea la tupla (n_cols,) lo que significa que tiene n_cols elementos en cada fila de datos, y cualquier número de filas de datos son aceptables como entradas.
  • Añade otra capa de Dense. Debería tener 32 unidades y una activación 'relu'.
  • Por último, añade una capa de salida, que es una capa Dense con un solo nodo. No utilices aquí ninguna función de activación.

Ejercicio interactivo práctico

Pruebe este ejercicio completando este código de muestra.

# Import necessary modules
from tensorflow.keras.layers import Dense
from tensorflow.keras.models import Sequential

# Save the number of columns in predictors: n_cols
n_cols = predictors.shape[1]

# Set up the model: model
model = ____

# Add the first layer
____.____(____(____, ____=____, ____=(____)))

# Add the second layer
____

# Add the output layer
____