Teoría

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

Algunos ejemplos de aplicación de ANN son:

  • La recomendación de contenido de Netflix.
  • El feed de Instagram.
  • Determinar el número escrito a mano.

Ejercicio 1. ¿Pasé la Materia?

1. Instalar paquetes y librerias

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

2. Obtener datos

examen<- c(20,10,30,20,80,30)
proyecto<- c(90,20,40,50,50,80)
estatus<- c(1,0,0,0,0,1)
df1 <- data.frame(examen, proyecto, estatus)
df1
##   examen proyecto estatus
## 1     20       90       1
## 2     10       20       0
## 3     30       40       0
## 4     20       50       0
## 5     80       50       0
## 6     30       80       1

3. Generar la Red Neuronal

set.seed(123)
rn1<- neuralnet(estatus ~., data=df1   ) 
plot(rn1, rep="best")

4. Predecir resultados

prueba_examen <- c(30,40,85)
prueba_proyecto<- c(85,50,40)
prueba1 <- data.frame(prueba_examen, prueba_proyecto)
prediccion<- compute(rn1, prueba1)
prediccion$net.result
##             [,1]
## [1,]  1.04011743
## [2,] -0.02359178
## [3,] -0.02359178
probabilidad<- prediccion$net.result
resultado<- ifelse(probabilidad>0.5,1,0)
resultado
##      [,1]
## [1,]    1
## [2,]    0
## [3,]    0
LS0tCnRpdGxlOiAiUmVkZXMgTmV1cm9uYWxlcyIKYXV0aG9yOiAiSmF6bWluIENvcnRleiIKZGF0ZTogIjIwMjQtMDItMjIiCm91dHB1dDogCiAgaHRtbF9kb2N1bWVudDoKICAgdG9jOiB0cnVlCiAgIHRvY19mbG9hdDogdHJ1ZQogICBjb2RlX2Rvd25sb2FkOiB0cnVlCiAgIHRoZW1lOiAic3BhY2VsYWIiCiAgIGhpZ2hsaWdodDogImthdGUiCi0tLQoKIVtdKC9Vc2Vycy9qYXptaW5jb3J0ZXovRGVza3RvcC9Db25jZW50cmFjaW/MgW4gSUEvTTIgVGFyZWFzL3JlZGVzLmdpZikKIAojIDxzcGFuIHN0eWxlPSJjb2xvcjpwdXJwbGU7Ij5UZW9yw61hPC9zcGFuPgoKVW5hIFJlZCBOZXVyb25hbCBBcnRpZmljaWFsIChBTk4pIG1vZGVsYSBsYSByZWxhY2nDs24gZW50cmUgdW4gY29uanVudG8gZGUgZW50cmFkYXMgeSB1bmEgc2FsaWRhLCByZXNvbHZpZW5kbyB1biBwcm9ibGVtYSBkZSBhcHJlbmRpemFqZS4KCkFsZ3Vub3MgZWplbXBsb3MgZGUgYXBsaWNhY2nDs24gZGUgQU5OIHNvbjoKCiogTGEgcmVjb21lbmRhY2nDs24gZGUgY29udGVuaWRvIGRlIE5ldGZsaXguCiogRWwgZmVlZCBkZSBJbnN0YWdyYW0uCiogRGV0ZXJtaW5hciBlbCBuw7ptZXJvIGVzY3JpdG8gYSBtYW5vLgoKIyA8c3BhbiBzdHlsZT0iY29sb3I6cHVycGxlIDsiPiBFamVyY2ljaW8gMS4gwr9QYXPDqSBsYSBNYXRlcmlhPyA8L3NwYW4+CgojIyA8c3BhbiBzdHlsZT0iY29sb3I6cHVycGxlIDsiPiAxLiBJbnN0YWxhciBwYXF1ZXRlcyB5IGxpYnJlcmlhcyA8L3NwYW4+CmBgYHtyfQojaW5zdGFsbC5wYWNrYWdlcygibmV1cmFsbmV0IikKbGlicmFyeShuZXVyYWxuZXQpCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOnB1cnBsZTsiID4gMi4gT2J0ZW5lciBkYXRvcyA8L3NwYW4+CmBgYHtyfQpleGFtZW48LSBjKDIwLDEwLDMwLDIwLDgwLDMwKQpwcm95ZWN0bzwtIGMoOTAsMjAsNDAsNTAsNTAsODApCmVzdGF0dXM8LSBjKDEsMCwwLDAsMCwxKQpkZjEgPC0gZGF0YS5mcmFtZShleGFtZW4sIHByb3llY3RvLCBlc3RhdHVzKQpkZjEKYGBgCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjpwdXJwbGU7IiA+IDMuIEdlbmVyYXIgbGEgUmVkIE5ldXJvbmFsIDwvc3Bhbj4KCmBgYHtyfQpzZXQuc2VlZCgxMjMpCnJuMTwtIG5ldXJhbG5ldChlc3RhdHVzIH4uLCBkYXRhPWRmMSAgICkgCnBsb3Qocm4xLCByZXA9ImJlc3QiKQpgYGAKCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjpwdXJwbGU7IiA+IDQuIFByZWRlY2lyIHJlc3VsdGFkb3MgPC9zcGFuPgpgYGB7cn0KcHJ1ZWJhX2V4YW1lbiA8LSBjKDMwLDQwLDg1KQpwcnVlYmFfcHJveWVjdG88LSBjKDg1LDUwLDQwKQpwcnVlYmExIDwtIGRhdGEuZnJhbWUocHJ1ZWJhX2V4YW1lbiwgcHJ1ZWJhX3Byb3llY3RvKQpwcmVkaWNjaW9uPC0gY29tcHV0ZShybjEsIHBydWViYTEpCnByZWRpY2Npb24kbmV0LnJlc3VsdApwcm9iYWJpbGlkYWQ8LSBwcmVkaWNjaW9uJG5ldC5yZXN1bHQKcmVzdWx0YWRvPC0gaWZlbHNlKHByb2JhYmlsaWRhZD4wLjUsMSwwKQpyZXN1bHRhZG8KYGBgCgo=