
Redes Neuronales
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: 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 librerias
#install.packages("neuralnet")
library(neuralnet)
## Warning: package 'neuralnet' was built under R version 4.1.3
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)
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
## [,1]
## [1,] 0
## [2,] 0
## [3,] 0
Ejercicio Cancer de Mama
1. Importar datos
#file.choose()
df1 <- read.csv("C:\\Users\\jesus\\Documents\\Actividades\\cancer_de_mama.csv")
2. Cambiar columna de diagnosis a valores númericos
df1$ï..diagnosis <- ifelse(df1$ï..diagnosis == "M",1,0)
3. Generar la red neuronal
red_neuronal <- neuralnet(ï..diagnosis~., data=df1)
plot(red_neuronal, rep = "best")
### 4. Predecir con la Red Neuronal
prueba <- df1[c(19,20,21,22,23),]
prediccion <- compute(red_neuronal, prueba)
probabilidad <- prediccion$net.result
resultado <- ifelse(probabilidad>0.5,1,0)
resultado
## [,1]
## 19 0
## 20 0
## 21 0
## 22 0
## 23 0
LS0tDQp0aXRsZTogIlJlZGVzIE5ldXJvbmFsZXMiDQphdXRob3I6ICJKZXN1cyBNZXN0YSBBMDE1NjcwMTkiDQpkYXRlOiAiMjAyMy0xMC0wMiINCm91dHB1dDogDQogIGh0bWxfZG9jdW1lbnQ6DQogICAgdG9jOiBUUlVFDQogICAgdG9jX2Zsb2F0OiBUUlVFDQogICAgY29kZV9kb3dubG9hZDogVFJVRQ0KICAgIHRoZW1lOiAic3BhY2VsYWIiDQogICAgaGlnaGxpZ2h0OiAidGFuZ28iDQotLS0NCg0KIVtdKEM6XFxVc2Vyc1xcamVzdXNcXERvY3VtZW50c1xcQWN0aXZpZGFkZXNcXHJlZG5ldXJvbmFsLmpwZWcpDQoNCiMgUmVkZXMgTmV1cm9uYWxlcw0KDQojIyMgQ29uY2VwdG8NClVuYSBSZWQgTmV1cmFsIGFydGlmaWNpYWwgKEFOTikgbW9kZWxhIGxhIHJlbGFjacOzbiBlbnRyZSB1biBjb25qdW50byBkZSBlbnRyYWRhcyB5IHVuYSBzYWxpZGEsIHJlc29sdmllbmRvIHVuIHByb2JsZW1hIGRlIGFwcmVuZGl6YWplLg0KDQpFamVtcGxvcyBkZSBhcGxpY2FjacOzbiBkZSBSZWRlcyBOZXVyb25hbGVzOg0KMS4gTGEgcmVjb21lbmRhY2nDs24gZGUgY29udGVuaWRvIGRlIE5ldGZsaXguDQoyLiBFbCBmZWVkIGRlIEluc3RhZ3JhbSBvIFRpa1Rvay4NCjMuIERldGVybWluYXIgZWwgbsO6bWVybyBvIGxldHJhIGVzY3JpdG8gYSBtYW5vLg0KDQojIyMgMS4gSW5zdGFsYXIgUGFxdWV0ZXMgeSBsbGFtYXIgbGlicmVyaWFzDQpgYGB7cn0NCiNpbnN0YWxsLnBhY2thZ2VzKCJuZXVyYWxuZXQiKQ0KbGlicmFyeShuZXVyYWxuZXQpDQpgYGANCiMjIyAyLiBBbGltZW50YXIgY29uIGVqZW1wbG9zDQpgYGB7cn0NCmV4YW1lbiA8LSBjKDIwLDEwLDMwLDIwLDgwLDMwKQ0KcHJveWVjdG8gPC0gYyg5MCwyMCw0MCw1MCw1MCw4MCkNCmVzdGF0dXMgPC0gYygxLDAsMCwwLDAsMSkNCmRmIDwtIGRhdGEuZnJhbWUoZXhhbWVuLHByb3llY3RvLGVzdGF0dXMpDQpgYGANCg0KIyMjIDMuIEdlbmVyYXIgbGEgcmVkIG5ldXJvbmFsDQpgYGB7cn0NCnJlZF9uZXVyb25hbCA8LSBuZXVyYWxuZXQoZXN0YXR1c34uLCBkYXRhPWRmKQ0KcGxvdChyZWRfbmV1cm9uYWwsIHJlcCA9ICJiZXN0IikNCmBgYA0KIyMjIDQuIFByZWRlY2lyIGNvbiBsYSBSZWQgTmV1cm9uYWwNCmBgYHtyfQ0KcHJ1ZWJhX2V4YW1lbiA8LSBjKDMwLDQwLDg1KQ0KcHJ1ZWJhX3Byb3llY3RvIDwtIGMoODUsNTAsNDApDQpwcnVlYmEgPC0gZGF0YS5mcmFtZShwcnVlYmFfZXhhbWVuLHBydWViYV9wcm95ZWN0bykNCnByZWRpY2Npb24gPC0gY29tcHV0ZShyZWRfbmV1cm9uYWwsIHBydWViYSkNCnByb2JhYmlsaWRhZCA8LSBwcmVkaWNjaW9uJG5ldC5yZXN1bHQNCnJlc3VsdGFkbyA8LSBpZmVsc2UocHJvYmFiaWxpZGFkPjAuNSwxLDApDQpyZXN1bHRhZG8NCmBgYA0KIyMgRWplcmNpY2lvIENhbmNlciBkZSBNYW1hDQojIyMgMS4gSW1wb3J0YXIgZGF0b3MNCmBgYHtyfQ0KI2ZpbGUuY2hvb3NlKCkNCmRmMSA8LSByZWFkLmNzdigiQzpcXFVzZXJzXFxqZXN1c1xcRG9jdW1lbnRzXFxBY3RpdmlkYWRlc1xcY2FuY2VyX2RlX21hbWEuY3N2IikNCmBgYA0KIyMjIDIuIENhbWJpYXIgY29sdW1uYSBkZSBkaWFnbm9zaXMgYSB2YWxvcmVzIG7Dum1lcmljb3MNCmBgYHtyfQ0KZGYxJMOvLi5kaWFnbm9zaXMgPC0gaWZlbHNlKGRmMSTDry4uZGlhZ25vc2lzID09ICJNIiwxLDApDQpgYGANCiMjIyAzLiBHZW5lcmFyIGxhIHJlZCBuZXVyb25hbA0KYGBge3J9DQpyZWRfbmV1cm9uYWwgPC0gbmV1cmFsbmV0KMOvLi5kaWFnbm9zaXN+LiwgZGF0YT1kZjEpDQpwbG90KHJlZF9uZXVyb25hbCwgcmVwID0gImJlc3QiKQ0KYGBgDQojIyMgNC4gUHJlZGVjaXIgY29uIGxhIFJlZCBOZXVyb25hbA0KYGBge3J9DQpwcnVlYmEgPC0gZGYxW2MoMTksMjAsMjEsMjIsMjMpLF0NCnByZWRpY2Npb24gPC0gY29tcHV0ZShyZWRfbmV1cm9uYWwsIHBydWViYSkNCnByb2JhYmlsaWRhZCA8LSBwcmVkaWNjaW9uJG5ldC5yZXN1bHQNCnJlc3VsdGFkbyA8LSBpZmVsc2UocHJvYmFiaWxpZGFkPjAuNSwxLDApDQpyZXN1bHRhZG8NCmBgYA0K