
Redes Neuronales
0. 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
librerías
# install.packages("neuralnet")
library(neuralnet)
## Warning: package 'neuralnet' was built under R version 4.3.1
2. 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)
df <- data.frame(examen,proyecto,estatus)
3. Generar la 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(85,50,40)
prueba <-data.frame(prueba_examen,prueba_proyecto)
prediccion <- compute(red_neuronal, prueba)
prediccion$net.result
## [,1]
## [1,] 1.03368919
## [2,] -0.01676195
## [3,] -0.01676195
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
## [,1]
## [1,] 1
## [2,] 0
## [3,] 0
Cáncer de Mama
1. Instalar paquetes y llamar
librerías
# install.packages("neuralnet")
library(neuralnet)
2. Alimentar con ejemplos
# file.choose()
df <- read.csv("C:\\Users\\raulc\\OneDrive\\Escritorio\\cancer_de_mama.csv")
df$diagnosis <- ifelse(df$diagnosis == "M",1,0)
3. Generar la Red Neuronal
red_neuronal <- neuralnet(diagnosis~., data=df)
plot(red_neuronal, rep = "best")
## 4. Predecir con la Red Neuronal
prueba <- df[c(19,20,21,22,23), ]
prediccion <- compute(red_neuronal,prueba)
prediccion$net.result
## [,1]
## 19 0.97220495
## 20 0.09742025
## 21 0.09742025
## 22 0.09742025
## 23 0.97220495
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
## [,1]
## 19 1
## 20 0
## 21 0
## 22 0
## 23 1
LS0tDQp0aXRsZTogIlJlZGVzIE5ldXJvbmFsZXMiDQphdXRob3I6ICJSYcO6bCBDYW50w7ogLSBBMDEwODc2ODMiDQpkYXRlOiAiMjAyMy0xMC0wMiINCm91dHB1dDogDQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2Zsb2F0OiBUUlVFDQogICAgY29kZV9kb3dubG9hZDogVFJVRQ0KICAgIHRoZW1lOiAic3BhY2VsYWIiDQogICAgaGlnaGxpZ2h0OiAia2F0ZSINCi0tLQ0KDQohW10oQzpcXFVzZXJzXFxyYXVsY1xcT25lRHJpdmVcXEVzY3JpdG9yaW9cXHJlZGVzLmdpZikNCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5SZWRlcyBOZXVyb25hbGVzPC9zcGFuPg0KDQojIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij4wLiBDb25jZXB0bzwvc3Bhbj4NClVuYSBSZWQgTmV1cmFsIEFydGlmaWNpYWwgKEFOTikgbW9kZWxhIGxhIHJlbGFjacOzbiBlbnRyZSB1biBjb25qdW50byBkZSBlbnRyYWRhcyB5IHVuYSBzYWxpZGEsIHJlc29sdmllbmRvIHVuIHByb2JsZW1hIGRlIGFwcmVuZGl6YWplLiAgDQoNCkVqZW1wbG9zIGRlIGFwbGljYWNpw7NuIGRlIFJlZGVzIE5ldXJvbmFsZXMgc29uOiAgDQoxLiBMYSByZWNvbWVuZGFjacOzbiBkZSBjb250ZW5pZG8gZGUgTmV0ZmxpeC4gIA0KMi4gRWwgZmVlZCBkZSBJbnN0YWdyYW0gbyBUaWtUb2suICANCjMuIERldGVybWluYXIgZWwgbsO6bWVybyBvIGxldHJhIGVzY3JpdG8gYSBtYW5vLiAgDQoNCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogYmx1ZTsiPjEuIEluc3RhbGFyIHBhcXVldGVzIHkgbGxhbWFyIGxpYnJlcsOtYXM8L3NwYW4+DQpgYGB7cn0NCiMgaW5zdGFsbC5wYWNrYWdlcygibmV1cmFsbmV0IikNCmxpYnJhcnkobmV1cmFsbmV0KQ0KYGBgDQoNCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogYmx1ZTsiPjIuIEFsaW1lbnRhciBjb24gZWplbXBsb3M8L3NwYW4+DQpgYGB7cn0NCmV4YW1lbiA8LSBjKDIwLDEwLDMwLDIwLDgwLDMwKQ0KcHJveWVjdG8gPC0gYyg5MCwyMCw0MCw1MCw1MCw4MCkNCmVzdGF0dXMgPC0gYygxLDAsMCwwLDAsMSkNCmRmIDwtIGRhdGEuZnJhbWUoZXhhbWVuLHByb3llY3RvLGVzdGF0dXMpDQpgYGANCg0KIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+My4gR2VuZXJhciBsYSBSZWQgTmV1cm9uYWw8L3NwYW4+DQpgYGB7cn0NCnJlZF9uZXVyb25hbCA8LSBuZXVyYWxuZXQoZXN0YXR1c34uLCBkYXRhPWRmKQ0KcGxvdChyZWRfbmV1cm9uYWwsIHJlcCA9ICJiZXN0IikNCmBgYA0KIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+NC4gUHJlZGVjaXIgY29uIGxhIFJlZCBOZXVyb25hbDwvc3Bhbj4NCmBgYHtyfQ0KcHJ1ZWJhX2V4YW1lbiA8LSBjKDMwLDQwLDg1KQ0KcHJ1ZWJhX3Byb3llY3RvIDwtIGMoODUsNTAsNDApDQpwcnVlYmEgPC1kYXRhLmZyYW1lKHBydWViYV9leGFtZW4scHJ1ZWJhX3Byb3llY3RvKQ0KcHJlZGljY2lvbiA8LSBjb21wdXRlKHJlZF9uZXVyb25hbCwgcHJ1ZWJhKQ0KcHJlZGljY2lvbiRuZXQucmVzdWx0DQpwcm9iYWJpbGlkYWQgPC0gcHJlZGljY2lvbiRuZXQucmVzdWx0DQpyZXN1bHRhZG8gPC0gaWZlbHNlKHByb2JhYmlsaWRhZD4wLjUsMSwwKQ0KcmVzdWx0YWRvDQpgYGANCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IHBpbms7Ij5Dw6FuY2VyIGRlIE1hbWE8L3NwYW4+DQoNCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogcGluazsiPjEuIEluc3RhbGFyIHBhcXVldGVzIHkgbGxhbWFyIGxpYnJlcsOtYXM8L3NwYW4+DQpgYGB7cn0NCiMgaW5zdGFsbC5wYWNrYWdlcygibmV1cmFsbmV0IikNCmxpYnJhcnkobmV1cmFsbmV0KQ0KYGBgDQoNCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogcGluazsiPjIuIEFsaW1lbnRhciBjb24gZWplbXBsb3M8L3NwYW4+DQpgYGB7cn0NCiMgZmlsZS5jaG9vc2UoKQ0KZGYgPC0gcmVhZC5jc3YoIkM6XFxVc2Vyc1xccmF1bGNcXE9uZURyaXZlXFxFc2NyaXRvcmlvXFxjYW5jZXJfZGVfbWFtYS5jc3YiKQ0KZGYkZGlhZ25vc2lzIDwtIGlmZWxzZShkZiRkaWFnbm9zaXMgPT0gIk0iLDEsMCkNCmBgYA0KDQojIyA8c3BhbiBzdHlsZT0iY29sb3I6IHBpbms7Ij4zLiBHZW5lcmFyIGxhIFJlZCBOZXVyb25hbDwvc3Bhbj4NCmBgYHtyfQ0KcmVkX25ldXJvbmFsIDwtIG5ldXJhbG5ldChkaWFnbm9zaXN+LiwgZGF0YT1kZikNCnBsb3QocmVkX25ldXJvbmFsLCByZXAgPSAiYmVzdCIpDQpgYGANCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogcGluazsiPjQuIFByZWRlY2lyIGNvbiBsYSBSZWQgTmV1cm9uYWw8L3NwYW4+DQpgYGB7cn0NCnBydWViYSA8LSBkZltjKDE5LDIwLDIxLDIyLDIzKSwgXQ0KcHJlZGljY2lvbiA8LSBjb21wdXRlKHJlZF9uZXVyb25hbCxwcnVlYmEpDQpwcmVkaWNjaW9uJG5ldC5yZXN1bHQNCnByb2JhYmlsaWRhZCA8LSBwcmVkaWNjaW9uJG5ldC5yZXN1bHQNCnJlc3VsdGFkbyA8LSBpZmVsc2UocHJvYmFiaWxpZGFkPjAuNSwxLDApDQpyZXN1bHRhZG8NCmBgYA0K