Redes Neuronales

0. Contexto

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

1. Instalar paquetes y llamar librerías

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

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.03046913
## [2,] -0.02513390
## [3,] -0.02513425
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
##      [,1]
## [1,]    1
## [2,]    0
## [3,]    0

Conclusión

La redes neuronales permiten que los programas reconozcan patrones y resuelvan problemas comunes en inteligencia artificial y aprendizaje automático.

LS0tDQp0aXRsZTogIlJlZGVzIE5ldXJvbmFsZXMiDQphdXRob3I6ICJOYWlsYSBTYWxpbmFzIC0gQTAwODMyNzAyIg0KZGF0ZTogIjIwMjQtMDgtMTUiDQpvdXRwdXQ6DQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2Zsb2F0OiBUUlVFDQogICAgY29kZV9kb3dubG9hZDogVFJVRQ0KICAgIHRoZW1lOiAic3BhY2VsYWIiDQogICAgaGlnaGxpZ2h0OiAia2F0ZSINCi0tLQ0KDQohW10oQzpcXFVzZXJzXFxuYWlsYVxcT25lRHJpdmVcXERvY3VtZW50b3NcXDEgVEVDXFw3TU8gU0VNRVNUUkVcXE0yXFxyZWRlcy5naWYpDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+UmVkZXMgTmV1cm9uYWxlczwvc3Bhbj4NCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij4wLiBDb250ZXh0bzwvc3Bhbj4NClVuYSBSZWQgTmV1cm9uYWwgQXJ0aWZpY2lhbCAoQU5OKSBtb2RlbGEgbGEgcmVsYWNpw7NuIGVudHJlIHVuIGNvbmp1bnRvIGRlIGVudHJhZGFzIHkgdW5hIHNhbGlkYSwgcmVzb2x2aWVuZG8gdW4gcHJvYmxlbWEgZGUgYXByZW5kaXphamUuDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+MS4gSW5zdGFsYXIgcGFxdWV0ZXMgeSBsbGFtYXIgbGlicmVyw61hczwvc3Bhbj4NCmBgYHtyIHdhcm5pbmc9RkFMU0V9DQojaW5zdGFsbC5wYWNrYWdlcygibmV1cmFsbmV0IikNCmxpYnJhcnkobmV1cmFsbmV0KQ0KYGBgDQoNCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBibHVlOyI+Mi4gQWxpbWVudGFyIGNvbiBlamVtcGxvczwvc3Bhbj4NCmBgYHtyfQ0KZXhhbWVuIDwtIGMoMjAsMTAsMzAsMjAsODAsMzApDQpwcm95ZWN0byA8LSBjKDkwLDIwLDQwLDUwLDUwLDgwKQ0KZXN0YXR1cyA8LSBjKDEsMCwwLDAsMCwxKQ0KZGYgPC0gZGF0YS5mcmFtZShleGFtZW4sIHByb3llY3RvLGVzdGF0dXMpDQpgYGANCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij4zLiBHZW5lcmFyIGxhIFJlZCBOZXVyb25hbDwvc3Bhbj4NCmBgYHtyfQ0KcmVkX25ldXJvbmFsIDwtIG5ldXJhbG5ldChlc3RhdHVzfi4sIGRhdGE9ZGYpDQpwbG90KHJlZF9uZXVyb25hbCwgcmVwPSAiYmVzdCIpDQpgYGANCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij40LiBQcmVkZWNpciBjb24gbGEgUmVkIE5ldXJvbmFsPC9zcGFuPg0KYGBge3J9DQpwcnVlYmFfZXhhbWVuIDwtIGMoMzAsNDAsODUpDQpwcnVlYmFfcHJveWVjdG8gPC0gYyg4NSw1MCw0MCkNCnBydWViYSA8LSBkYXRhLmZyYW1lKHBydWViYV9leGFtZW4scHJ1ZWJhX3Byb3llY3RvKQ0KcHJlZGljY2lvbiA8LSBjb21wdXRlKHJlZF9uZXVyb25hbCwgcHJ1ZWJhKQ0KcHJlZGljY2lvbiRuZXQucmVzdWx0DQpwcm9iYWJpbGlkYWQgPC0gcHJlZGljY2lvbiRuZXQucmVzdWx0DQpyZXN1bHRhZG8gPC0gaWZlbHNlKHByb2JhYmlsaWRhZD4wLjUsMSwwKQ0KcmVzdWx0YWRvDQpgYGANCg0KIyA8c3BhbiBzdHlsZT0iY29sb3I6IGJsdWU7Ij5Db25jbHVzacOzbjwvc3Bhbj4NCg0KTGEgcmVkZXMgbmV1cm9uYWxlcyBwZXJtaXRlbiBxdWUgbG9zIHByb2dyYW1hcyByZWNvbm96Y2FuIHBhdHJvbmVzIHkgcmVzdWVsdmFuIHByb2JsZW1hcyBjb211bmVzIGVuIGludGVsaWdlbmNpYSBhcnRpZmljaWFsIHkgYXByZW5kaXphamUgYXV0b23DoXRpY28uDQoNCg0KDQoNCg==