Examen Parcial 2

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 4

Examen Parcial N°2

Aprendizaje de Maquina y Profundo


Victor Criollo – Carlos Guerrero
Ingeniería Electrónica
Departamento de Electrónica
Universidad de Nariño

Parte 1
Definir una arquitectura de Red Neuronal -
Perceptrón multicapa (Multilayer Perceptron,
MLP) para realizar la clasificación del conjunto de
datos de cáncer de seno Breast cancer wisconsin
(diagnostic) dataset, según sean sus atributos o
características

Para empezar, se puede entender a un perceptrón


Figura 2
como una red neuronal básica, separando los datos
que se le asignen en forma lineal, siendo muy Si se puede observar en la figura 2 los datos no se
eficiente en ciertas aplicaciones, sin embargo, encuentran normalizados, lo que podría dificultar la
cuando los datos a clasificar cuentan con velocidad y eficacia con la que la red neuronal
características que no pueden ser discriminadas pudiese trabajar, teniendo en cuenta esto con la
bajo un hiperplano entre unos y otros, se hace ayuda de la librería MinMaxScaler se puede dar un
necesario de un conjunto de perceptrones. A esta nivel proporcional a cada conjunto de datos
red neuronal se le llama perceptrón multicapa. teniendo entonces como resultado la figura 3 donde
se presentan los datos ya normalizados
Las cuales están compuestas por tres capas
principales, (entrada, oculta, salida) y cada capa
está compuesta por neuronas que desarrollan una
tarea sencilla como se muestra en la figura 1.

Figura 3
Figura 1
Con los datos ya normalizados se procede a realizar
Luego de definir el tipo de red neurológica que se la configuración de la red neuronal que se va a
va a utilizar se tendrá entonces la gráfica de los utilizar, además del tipo de función de activación,
datos a separar para establecer la función que pueda que en este caso se escogió de la forma llamada
separarlos. RELU que trabaja de una forma no lineal en donde
si el valor de entrada es igual o menor a cero, el
En la figura 2 se muestra como están distribuidos valor de salida será igual a cero, por el contrario, si
los datos en un plano. es superior el output de la neurona tomara el nivel
que tenga la entrada. Para tener una idea más clara reduzca en gran manera entonces se continuaría
de su trabajo, está representada por la figura 4 con los siguientes pasos:

 Iniciar la red con valores aleatorios de los


pesos y bias.

 Para cada observación de entrenamiento


(XX, yy), calcular el error que comete la
red al hacer sus predicciones. Promediar
los errores de todas las observaciones.
Figura 4
 Identificar la responsabilidad que ha
Además, se utilizó la función de activación softmax tenido cada peso y bias en el error de la
que de forma breve trabaja según la ecuación 1 predicción.

 Modificar ligeramente los pesos y bias de


la red (de forma proporcional a su
responsabilidad en el error) en la
dirección correcta para que se reduzca el
Ecuación 1 error.

Normalmente esta función es usada en la capa final  Repetir los pasos 2, 3, 4 y 5 hasta que la
de la red neuronal, básicamente se le entrega una red sea suficientemente buena.
lista de datos y dichos datos son transformados en
Después del proceso de entrenamiento se hace el
una distribución de probabilidad, la suma de todas
test para verificar la eficacia de la red neuronal
las probabilidades tiene que dar uno y aquella clase
usando un conjunto de datos completamente
con mayor probabilidad será la escogida por la red
nuevos, donde como resultado se tiene el nivel de
neuronal.
accuracy (precisión) y la matriz de confusión que
Ahora se procede a definir el número de capas y las se muestran en la figura 4 y 5
neuronas que se han de utilizar, en este caso
consiste en una capa de entrada (RELU), dos
ocultas (RELU) y una de salida (SOFTMAX) cada
capa cuenta con 30 neuronas a excepción de la
última que cuenta con 2 neuronas al necesitarse dos Figura 4
salidas.

Para el proceso de optimización herramientas que


actualizan los parámetros de peso para minimizar
la función de pérdida. La función de pérdida actúa
como guía para el terreno, indicando al optimizador
si se está moviendo en la dirección correcta para
llegar al fondo del valle, el mínimo global.

Para esto se utilizó al optimizador ADAM El


algoritmo de Adam es diferente del descenso de
gradiente estocástico tradicional. El descenso de
gradiente estocástico mantiene una tasa de
aprendizaje única (es decir, alfa) para actualizar
todos los pesos, y la tasa de aprendizaje no cambia
durante el proceso de entrenamiento. Figura 5

Para entrenar la red neuronal se utiliza el valor de


los pesos para que el error en la predicción se
Para la matriz de confusión se tiene que existen 114
datos para el test de los cuales hay 73 datos con
cancer benignos y 41 con cancer malignos, que al
ser sometidos al modelo establecido se obtuvo que
todos los casos de cancer benignos fueron
etiquetados correctamente, y en el caso de los datos
con cancer maligno se equivocó en dos ocasiones
Figura 7
tratándolos como benignos.
Que son imagen de baja resolución al solo poseer
32 por 32 pixeles.

El siguiente paso es convertir las imágenes a escala


Figura 6 de grises para reducir la dimensión de las mismas y
al igual que en el caso de Pooling evitar una
De acuerdo con la figura 6 se puede ver el porcentaje de exigencia de recursos computacionales
error de acuerdo con el test. considerable.

Parte 2 Luego se normalizan los valores de las imágenes y


se establece la topología de la CNN. Donde al
Definir una arquitectura de Red Neuronal mismo tiempo en que actúan las capas de la red
Convolucional (Convolutional Neural Network), neuronal, los filtros hacen el barrido a cada imagen
CNN para la clasificación del conjunto de datos para obtener su información con diferentes
CIFAR-10 dataset. seccionadores, en total se utilizaron 12 capas de las
cuales solo en la capa de salida se empleó la
Las redes neuronales convolucionales consisten en activación SIGMOID, y las demás de entrada y
múltiples capas de filtros convolucionales de una o ocultas con RELU.
más dimensiones. Después de cada capa, por lo
general se añade una función para realizar un Para el entrenamiento se configuro el uso de 15
mapeo causal no-lineal, y según los detalles de cada iteraciones, con el fin de encontrar el modelo que
imagen el número de filtros aumentaría o obtuviese el menor porcentaje de error y a la vez
disminuiría según sea el caso con cada filtro se con una buena precisión. Con el fin de evitar el
obtiene una imagen diferente de la original así que sobreajuste en el sistema.
en el caso de que la imagen tenga muchas
características y se necesiten de muchos filtros Con el modelo obtenido se evalúa su precisión con
entonces el volumen de imágenes también será los datos de entrenamiento y se tiene como
mayor, para este tipo de situaciones, se emplean resultado las figuras 8 y 9
herramientas como el Pooling en que se reduce la
dimensionalidad de los datos (imágenes) para
evitar un coste alto en el uso de recursos
informáticos, además de un posible sobreajuste en
la red neuronal.

La parte convolucional tiene el trabajo de


segmentar cada característica de las imágenes, para
después dichos datos someterlos a una red neuronal
de perceptrón multicapa como en el anterior
ejercicio para que la red aprenda, y discrimine
según sea el caso.
Figura 8
Para iniciar con el procesamiento se imprime una
parte de las imágenes como lo muestra la figura 7
Figura 11

Figura 9
En la figura 11 se describe la precisión en cada
Entonces en la figura 8 se ve representada la etiqueta que se ha designado en el sistema, se puede
precisión de la red neuronal, mientras que en la destacar su fallo más grande en cuestión de
figura 9 su error. diferenciar los animales y vehículos.

Ya evaluado el sistema se hace el test, con la matriz


de confusión en la figura 10

Figura 12

En la figura 12 se observa una parte de los resultados del test, se


tienen cuatro errores entre animales y vehículos ya que las
características que logró recuperar la red neuronal era muy
similares al punto de determinar que eran iguales.

Sin embargo, el resultado obtenido es el más óptimo ya que se


hizo la variación de optimizadores y arquitectura de la red, ya
que los resultados reflejaban sobreajuste porque la precisión
aumentaba, pero el porcentaje de error aumentaba o se mantenía
alrededor del 80%.
Figura 10

Debido a que los datos que se están manejando son


imágenes y además que la red neuronal se
caracteriza por ser versátil, los resultados llegan a
ser óptimos mas no considerables a ser ideales, ya
que la resolución de las imágenes impide obtener
características específicas de cada uno.

También podría gustarte