---
title: "Creación y Evaluación de una Red Neuronal"
author: "Vicente Nevarez"
date: "2024-05-09"
output: html_document
---
# Introducción
En este informe, se explora la creación de una red neuronal básica utilizando el paquete `neuralnet`. Se construye una red neuronal con múltiples capas ocultas para predecir el valor de la variable `D` a partir de las variables `A`, `B`, y `C`. Posteriormente, se evalúa el rendimiento de la red y se obtienen predicciones.
# Datos de Entrenamiento
```r
# Librería para redes neuronales
library(neuralnet)
## Warning: package 'neuralnet' was built under R version 4.1.3
# Datos de entrada para la red neuronal
datos_ent <- data.frame(
A = c(1, 1, 0, 0),
B = c(1, 0, 1, 0),
C = c(1, 0, 0, 1),
D = c(1, 0, 0, 0)
)
# Visualización de los datos
print(datos_ent)
## A B C D
## 1 1 1 1 1
## 2 1 0 0 0
## 3 0 1 0 0
## 4 0 0 1 0
En este bloque, creamos un pequeño conjunto de datos de entrenamiento
que contiene cuatro observaciones y cuatro variables (A,
B, C, D). La variable
D será el objetivo a predecir, mientras que A,
B, y C son las variables predictoras.
# Creación de una red neuronal con dos capas ocultas y múltiples neuronas
red <- neuralnet(
formula = D ~ A + B, # Fórmula para la red neuronal
hidden = c(3, 7, 4, 2), # Capas ocultas con 3, 7, 4, y 2 neuronas respectivamente
linear.output = FALSE, # Salida no lineal
act.fct = "logistic", # Función de activación logística
data = datos_ent # Datos de entrenamiento
)
# Visualización de la estructura de la red
plot(red)
Aquí construimos una red neuronal con cuatro capas ocultas. La
fórmula indica que estamos usando las variables A y
B para predecir D. Las capas ocultas tienen
diferentes números de neuronas, y la función de activación utilizada es
la función logística, típica en problemas de clasificación. Se muestra
el diagrama de la red para entender su estructura.
# Obtener predicciones de la red neuronal
predicciones <- unlist(red$net.result) # Convierte el resultado de la red en un formato legible
# Mostrar predicciones
predicciones
## [1] 0.2466953 0.2465757 0.2465524 0.2463574
En este bloque, extraemos las predicciones de la red neuronal y las
mostramos. Las predicciones nos dicen qué valores la red neuronal cree
que tendrá la variable D basándose en las variables
A y B.
En este informe, hemos creado y visualizado una red neuronal simple
con dos capas ocultas utilizando el paquete neuralnet.
También obtuvimos las predicciones de la red para evaluar su
rendimiento. Estos resultados pueden ser útiles para el desarrollo de
modelos de aprendizaje automático más complejos o para tareas de
clasificación en conjuntos de datos más grandes. ```