Está en la página 1de 1

MINI-PROYECTO #1.

REDES NEURONALES ARTIFICIALES


PROFESOR: WILFREDO ALFONSO M

DISEÑO DE UN CLASIFICADOR CON REDES NEURONALES ARTIFICIALES EN


PYTHON1
OBJETIVOS:
1. Comprender el funcionamiento de las Redes Neuronales Artificiales en Python haciendo uso de la
librería Keras en el backend de TensorFlow.
2. Construir una Red Neuronal Artificial tipo feedforward para la clasificación de patrones.
3. Validar el funcionamiento de una Red Neuronal Artificial en un problema de clasificación de
patrones.
4. Comprender y poner en funcionamiento los diversos hiper-parámetros proporcionados por Keras
para el entrenamiento de una red neuronal tipo feedforward.

ENUNCIADO:
Seleccione una base de datos del repositorio de la Universidad de California:

http://archive.ics.uci.edu/ml/index.php

Como se trata de trabajar directamente en la parte de clasificación tenga en cuenta seleccionar aquel que
indique dentro del tipo de atributos que sea “categorical”.

1. Descargue la base de datos del repositorio.


2. Diseñe una red neuronal artificial feedforward. Para ello considere:
a. Generalmente para los sistemas categóricos, se hace uso de una capa de salida tipo
Softmax ó Sigmoide.
b. En la capa oculta dos tipos de funciones de activación comunes para darle características
no lineales son ReLU ó tanh.
c. Tenga en cuenta que el uso de dos funciones de activación lineal generará una salida
evidentemente lineal, evite hacer relaciones de este tipo si lo que quiere es proporcionar
características no lineales en la respuesta de la red neuronal.
3. La función de costo y le optimizador son algunos de los elementos más importantes para mejorar
la calidad de la solución de su sistema de clasificación. Por ello, se pide que entrene redes
neuronales usando diferentes dos funciones de costo y al menos tres optimizadores.
4. Dependiendo de la red seleccionada y la combinación inicial de las funciones de activación
seleccionadas, presente una nueva combinación de las funciones de activación llevando a cabo
las diferentes funciones de costo y optimizadores del numeral anterior.
5. Presente un notebook con los resultados obtenidos. Tenga en cuenta presentar las diferentes
gráficas de los procesos de aprendizaje, las diferentes topologías (use al menos 4 de ellas –
neuronas en la capa oculta). Sea ordenado y describa las observaciones de cada caso. Incluya
conclusiones. Para mejorar la comparación haga uso de una semilla común e inicialice los pesos
de las neuronas para cada combinación W = np.random.randn(shape)*0.01 y b = np.zeros(n1,1).

1
Fecha de Entrega: 28 de Julio de 2019