
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?
Paso 1. Instalar paquetes y llamar
librerias
#install.packages("neuralnet")
library(neuralnet)
Paso 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)
Paso 3. Crear la red
neuronal
rn1 <- neuralnet(estatus ~., data=df1)
plot(rn1, rep= "best")

Paso 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,] 0.3332619
## [2,] 0.3332619
## [3,] 0.3332619
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
## [,1]
## [1,] 0
## [2,] 0
## [3,] 0
Ejercicio 2. Cancer de
mama
Paso 1. Instalar paquetes y llamar
librerias
#install.packages("neuralnet")
library(neuralnet)
Paso 2. Obtener datos
cancerdem <- read.csv("/Users/hectordelagarzatrevino/Library/CloudStorage/GoogleDrive-a01177960@tec.mx/Mi unidad/LIT/Sexto semestre/Inteligencia Artificial con Impacto Empresarial/Modulo 2/Sesion 4/cancer_de_mama.csv")
cancerdem$diagnosis <- ifelse(cancerdem$diagnosis == "M", 1, 0)
Paso 3. Crear la red
neuronal
rn2 <- neuralnet(diagnosis ~ ., data = cancerdem)
plot(rn2, rep = "best")

Paso 4. Predecir
resultados
prueba2 <- cancerdem[c(19,20,21,22,23), ]
prediccion2 <- compute(rn2,prueba2)
prediccion2$net.result
## [,1]
## 19 0.3723518
## 20 0.3723518
## 21 0.3723518
## 22 0.3723518
## 23 0.3723518
probabilidad2 <- prediccion2$net.result
resultados2 <- ifelse(probabilidad2>0.5,1,0)
resultados2
## [,1]
## 19 0
## 20 0
## 21 0
## 22 0
## 23 0
LS0tCnRpdGxlOiAiUmVkZXMgTmV1cm9uYWxlcyIKYXV0aG9yOiAiSMOpY3RvciBHdWFkYWx1cGUgZGUgbGEgR2FyemEgVHJldmnDsW8gLSBBMDExNzc5NjAiCmRhdGU6ICIyMDI0LTAyLTIyIgpvdXRwdXQ6IAogIGh0bWxfZG9jdW1lbnQ6CiAgICB0b2M6IFRSVUUKICAgIHRvY19mbG9hdDogVFJVRQogICAgY29kZV9kb3dubG9hZDogVFJVRQogICAgdGhlbWU6IGNlcnVsZWFuCiAgICBoaWdobGlnaHQ6IGthdGUKLS0tCgohW10oL1VzZXJzL2hlY3RvcmRlbGFnYXJ6YXRyZXZpbm8vTGlicmFyeS9DbG91ZFN0b3JhZ2UvR29vZ2xlRHJpdmUtYTAxMTc3OTYwQHRlYy5teC9NaSB1bmlkYWQvTElUL1NleHRvIHNlbWVzdHJlL0ludGVsaWdlbmNpYSBBcnRpZmljaWFsIGNvbiBJbXBhY3RvIEVtcHJlc2FyaWFsL01vZHVsbyAyL1Nlc2lvbiA0L3NodXR0ZXJzdG9ja181ODc3Njg1NjcucG5nKQoKCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPlRlb3LDrWE8L3NwYW4+ClVuYSAqKlJlZCBOZXVyb25hbCBBcnRpZmljaWFsIChBTk4pKiogbW9kZWxhIGxhIHJlbGFjacOzbiBlbnRyZSB1biBjb25qdW50byBkZSBlbnRyYWRhcyB5IHVuYSBzYWxpZGEsIHJlc29sdmllbmRvIHVuIHByb2JsZW1hIGRlIGFwcmVuZGl6YWplLgoKQWxndW5vcyBlamVtcGxvcyBkZSBhcGxpY2FjacOzbiBkZSBBTk4gc29uOgoKKiBMYSByZWNvbWVuZGFjacOzbiBkZSBjb250ZW5pZG8gZGUgTmV0ZmxpeC4gIAoqIEVsIGZlZWQgZGUgSW5zdGFncmFtLiAgCiogRGV0ZXJtaW5hciBlbCBuw7ptZXJvIGVzY3JpdG8gYSBtYW5vLiAgCgojICA8c3BhbiBzdHlsZT0iY29sb3I6IHNreSBibHVlOyI+RWplcmNpY2lvIDEuIMK/UGFzw6kgbGEgbWF0ZXJpYT88L3NwYW4+CgojIyA8c3BhbiBzdHlsZT0iY29sb3I6IHNreSBibHVlOyI+UGFzbyAxLiBJbnN0YWxhciBwYXF1ZXRlcyB5IGxsYW1hciBsaWJyZXJpYXM8L3NwYW4+CmBgYHtyfQojaW5zdGFsbC5wYWNrYWdlcygibmV1cmFsbmV0IikKbGlicmFyeShuZXVyYWxuZXQpCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPlBhc28gMi4gT2J0ZW5lciBkYXRvczwvc3Bhbj4KYGBge3J9CmV4YW1lbiA8LSBjKDIwLCAxMCwgMzAsIDIwLCA4MCwgMzApCnByb3llY3RvIDwtIGMoOTAsIDIwLCA0MCwgNTAsIDUwLCA4MCkKZXN0YXR1cyA8LSBjKDEsIDAsIDAsIDAsIDAsIDEpCmRmMSA8LSBkYXRhLmZyYW1lKGV4YW1lbiwgcHJveWVjdG8sIGVzdGF0dXMpCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPlBhc28gMy4gQ3JlYXIgbGEgcmVkIG5ldXJvbmFsPC9zcGFuPgpgYGB7cn0Kcm4xIDwtIG5ldXJhbG5ldChlc3RhdHVzIH4uLCBkYXRhPWRmMSkKcGxvdChybjEsIHJlcD0gImJlc3QiKQpgYGAKCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPlBhc28gNC4gUHJlZGVjaXIgcmVzdWx0YWRvczwvc3Bhbj4KYGBge3J9CnBydWViYV9leGFtZW4gPC0gYygzMCw0MCw4NSkKcHJ1ZWJhX3Byb3llY3RvIDwtIGMoODUsNTAsNDApCnBydWViYTEgPC0gZGF0YS5mcmFtZShwcnVlYmFfZXhhbWVuLHBydWViYV9wcm95ZWN0bykKcHJlZGljY2lvbiA8LSBjb21wdXRlKHJuMSxwcnVlYmExKQpwcmVkaWNjaW9uJG5ldC5yZXN1bHQKcHJvYmFiaWxpZGFkIDwtIHByZWRpY2Npb24kbmV0LnJlc3VsdApyZXN1bHRhZG8gPC0gaWZlbHNlKHByb2JhYmlsaWRhZD4wLjUsMSwwKQpyZXN1bHRhZG8KYGBgCgoKIyAgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPkVqZXJjaWNpbyAyLiBDYW5jZXIgZGUgbWFtYTwvc3Bhbj4KCiMjIDxzcGFuIHN0eWxlPSJjb2xvcjogc2t5IGJsdWU7Ij5QYXNvIDEuIEluc3RhbGFyIHBhcXVldGVzIHkgbGxhbWFyIGxpYnJlcmlhczwvc3Bhbj4KYGBge3J9CiNpbnN0YWxsLnBhY2thZ2VzKCJuZXVyYWxuZXQiKQpsaWJyYXJ5KG5ldXJhbG5ldCkKYGBgCgojIyA8c3BhbiBzdHlsZT0iY29sb3I6IHNreSBibHVlOyI+UGFzbyAyLiBPYnRlbmVyIGRhdG9zPC9zcGFuPgpgYGB7cn0KY2FuY2VyZGVtIDwtIHJlYWQuY3N2KCIvVXNlcnMvaGVjdG9yZGVsYWdhcnphdHJldmluby9MaWJyYXJ5L0Nsb3VkU3RvcmFnZS9Hb29nbGVEcml2ZS1hMDExNzc5NjBAdGVjLm14L01pIHVuaWRhZC9MSVQvU2V4dG8gc2VtZXN0cmUvSW50ZWxpZ2VuY2lhIEFydGlmaWNpYWwgY29uIEltcGFjdG8gRW1wcmVzYXJpYWwvTW9kdWxvIDIvU2VzaW9uIDQvY2FuY2VyX2RlX21hbWEuY3N2IikKY2FuY2VyZGVtJGRpYWdub3NpcyA8LSBpZmVsc2UoY2FuY2VyZGVtJGRpYWdub3NpcyA9PSAiTSIsIDEsIDApCmBgYAoKIyMgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPlBhc28gMy4gQ3JlYXIgbGEgcmVkIG5ldXJvbmFsPC9zcGFuPgpgYGB7cn0Kcm4yIDwtIG5ldXJhbG5ldChkaWFnbm9zaXMgfiAuLCBkYXRhID0gY2FuY2VyZGVtKQpwbG90KHJuMiwgcmVwID0gImJlc3QiKQpgYGAKCiMgPHNwYW4gc3R5bGU9ImNvbG9yOiBza3kgYmx1ZTsiPlBhc28gNC4gUHJlZGVjaXIgcmVzdWx0YWRvczwvc3Bhbj4KYGBge3J9CnBydWViYTIgPC0gY2FuY2VyZGVtW2MoMTksMjAsMjEsMjIsMjMpLCBdCnByZWRpY2Npb24yIDwtIGNvbXB1dGUocm4yLHBydWViYTIpCnByZWRpY2Npb24yJG5ldC5yZXN1bHQKcHJvYmFiaWxpZGFkMiA8LSBwcmVkaWNjaW9uMiRuZXQucmVzdWx0CnJlc3VsdGFkb3MyIDwtIGlmZWxzZShwcm9iYWJpbGlkYWQyPjAuNSwxLDApCnJlc3VsdGFkb3MyCmBgYAo=