UNIVERSIDAD NACIONAL AGRARIA LA MOLINA Facultad de Economía y Planificación Departamento de Estadística e Informática Lenguaje de Programación III Redes Neuronales: Casos Profesora: Frida Coaquira Nina Data Iris 4 variables predictoras Tres clases 150 datos Ejemplo Con la librería neuralnet de R #Cargando los datos data(iris) iris$setosa <- iris$Species=="setosa" iris$virginica <- iris$Species == "virginica" iris$versicolor <- iris$Species == "versicolor" iris.train.idx <- sample(x = nrow(iris), size = nrow(iris)*0.70) iris.train <- iris[iris.train.idx,] iris.valid <- iris[-iris.train.idx,] #Aplicación library(neuralnet) iris.net <- neuralnet(setosa+versicolor+virginica ~ Sepal.Length + Sepal.Width + Petal.Length + Petal.Width, data=iris.train, hidden=c(10,10), rep = 5, err.fct = "ce", linear.output = F, lifesign = "minimal", stepmax = 1000000, threshold = 0.001) plot(iris.net, rep="best") # Predicción iris.prediccion <- compute(iris.net, iris.valid[-5:-8]) idx <- apply(iris.prediccion$net.result, 1, which.max) predicted <- c('setosa', 'versicolor', 'virginica')[idx] table(predicted, iris.valid$Species) Resultados > predicted [1] "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" [10] "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" "setosa" "versicolor" [19] "versicolor" "versicolor" "versicolor" "versicolor" "versicolor" "virginica" "versicolor" "versicolor" "versicolor" [28] "versicolor" "versicolor" "versicolor" "versicolor" "virginica" "virginica" "virginica" "virginica" "virginica" [37] "virginica" "virginica" "versicolor" "virginica" "virginica" "virginica" "virginica" "virginica" "virginica" > table(predicted, iris.valid$Species) predicted setosa versicolor virginica setosa 17 0 0 versicolor 0 13 1 virginica 0 1 13 # Tasa de Error te= 2/45 [1] 0.04444444 En google collab • Tensor flow (2015) Es una biblioteca para cálculos numéricos utilizados en Machinne Learning, hace uso de diagramas de flujo de datos, es un referente en los sistemas de aprendizaje profundo y redes neuronales. • Keras (2017) Es una biblioteca para redes neuronales de alto nivel desarrollada para Python. Permite ejecutarse sobre bibliotecas como tensor flow. Ejemplo 1 • https://colab.research.google.com/github/google/engedu/blob/master/ml/pc/exercises/image_classification_part1.ipynb#s crollTo=RXZT2UsyIVe_ Ejemplo 2 • https://notebooks.githubusercontent.com/view/ipynb?browser=chrome&color_ mode=auto&commit=26628e7ef4951731c3586a7850d17a49228e5323&device= unknown&enc_url=68747470733a2f2f7261772e67697468756275736572636f6e 74656e742e636f6d2f61676e69697965722f54656e736f72466c6f772d696e2d507 26163746963652d5370656369616c697a6174696f6e2f323636323865376566343 935313733316333353836613738353064313761343932323865353332332f322e2 53230436f6e766f6c7574696f6e616c2532304e657572616c2532304e6574776f72 6b73253230696e25323054656e736f72466c6f772f436f757273652532303225323 02d25323050617274253230322532302d2532304c6573736f6e253230322532302 d2532304e6f7465626f6f6b2e6970796e62&logged_in=false&nwo=agniiyer%2FTe nsorFlow-in-PracticeSpecialization&path=2.+Convolutional+Neural+Networks+in+TensorFlow%2FCour se+2+-+Part+2+-+Lesson+2++Notebook.ipynb&platform=android&repository_id=260698080&repository_typ e=Repository&version=98 Clasificación de imágenes • “Dogs vs Cats” consta de 25000 imágenes • https://storage.googleapis.com/mledudatasets/cats_and_dogs_filtered.zip total training cat images: 1000 total training dog images: 1000 total validation cat images: 500 total validation dog images: 500 total Mostrando algunas imagenes Preprocesamiento Entrenamiento Representación intermedia de las imagenes Representación compacta Accuracy