Redes Neuronales

-Concepto Una Red Neural Artificial (ANN) modela la relación entre un conjunto de entradas y una salida, resolviendo un problema de aprendizaje.

Ejemplos de aplicación de Redes Neuronales son: 1. La recomendación de contenido de Netflix. 2. El feed de Instagram o TikTok. 3. Determinar el número o letra escrito a mano.

  1. Instalar paquetes y llamar librerias
# install.packages("neuralnet")
library(neuralnet)
## Warning: package 'neuralnet' was built under R version 4.1.3
  1. Alimentar con ejemplos
examen <- c(20,10,30,20,80,30)
proyecto <- c(90,20,40,50,50,80)
estatus <- c(1,0,0,0,0,1)
clase <- data.frame(examen,proyecto,estatus)
  1. Generar la red neuronal
red_neuronal <- neuralnet(estatus~., data=clase)
plot(red_neuronal, rep = "best")

  1. Predecir con la Red Neuronal
prueba_examen <- c(30,40,85)
prueba_proyecto <- c(85,50,40)
prueba <- data.frame(prueba_examen,prueba_proyecto)
prediccion <- compute(red_neuronal, prueba)
prediccion$net.result
##             [,1]
## [1,]  1.03960993
## [2,] -0.02223209
## [3,] -0.02223209
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
##      [,1]
## [1,]    1
## [2,]    0
## [3,]    0

###Cáncer de mama

  1. Limpieza de la base de datos
clase2 <- read.csv("C:/Users/maxwi/Desktop/cancer_de_mama.csv")
clase2$ï..diagnosis <- ifelse(clase2$ï..diagnosis == "M",1,0)
  1. Alimentar con ejemplos
red_neuronal <- neuralnet(ï..diagnosis~., data = clase2)
plot(red_neuronal, rep = "best")

  1. Generar la red neuronal
test <- clase2[c(19,20,21,22,23),]
prediccion <- compute(red_neuronal,test)
prediccion$net.result
##         [,1]
## 19 0.3725953
## 20 0.3725953
## 21 0.3725953
## 22 0.3725953
## 23 0.3725953
  1. Predecir con la red neuronal
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
##    [,1]
## 19    0
## 20    0
## 21    0
## 22    0
## 23    0