Redes Neuronales

Una Red Neuronal Artificial (ANN) modela la relación entre un conjunto de entradas y yna 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 TikTok o de Instagram

1. Instalar paquetes y llamar librerias

# install.packages("neuralnet")
library(neuralnet)

2. Aprendizajes

examen <- c(20, 10, 30, 20, 80, 30)
proyecto <- c(90, 20, 40, 50, 50, 80)
estatus <- c(1, 0, 0, 0, 1, 1)
df <- data.frame(examen, proyecto, estatus)

3. Generar Red Neuronal

red_neuronal <- neuralnet(estatus ~ ., data = df)
plot(red_neuronal, rep = "best")

4. Predecir con la Red Neuronal

prueba_examen <- c(30,40,85)
prueba_proyecto <- c(80,50,40)
prueba <- data.frame(prueba_examen,prueba_proyecto)

prediccion <- compute(red_neuronal,prueba)
prediccion$net.result
##           [,1]
## [1,] 0.9202086
## [2,] 0.2847110
## [3,] 0.7764822
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
##      [,1]
## [1,]    1
## [2,]    0
## [3,]    1

Cancer de Mama

1. Aprendizajes

cancer <- read.csv("/Users/estefanyvillalobos/Desktop/RPortfolio/cancer_de_mama.csv")

cancer$diagnosis <- ifelse(cancer$diagnosis == 'M',1,0)

2. Generar Red Neuronal

redneuronal <- neuralnet(diagnosis ~ ., data = cancer)
plot(redneuronal, rep = "best")

3. Predecir con la Red Neuronal

filas <- c(462,237,102,540,152,539,83,24)
prueba <- cancer[filas, ]
prueba <- data.frame(prueba)

prediccion <- compute(redneuronal,prueba)
prediccion$net.result
##          [,1]
## 462 0.3725945
## 237 0.3725945
## 102 0.3725945
## 540 0.3725945
## 152 0.3725945
## 539 0.3725945
## 83  0.3725945
## 24  0.3725945
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
##     [,1]
## 462    0
## 237    0
## 102    0
## 540    0
## 152    0
## 539    0
## 83     0
## 24     0