Herramientas de usuario

Herramientas del sitio


clase:iabd:pia:1eval:tema01

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anterior Revisión previa
Próxima revisión
Revisión previa
clase:iabd:pia:1eval:tema01 [2021/09/19 17:37]
admin [Ejercicios]
clase:iabd:pia:1eval:tema01 [2023/10/22 14:28] (actual)
admin [Ejercicios]
Línea 113: Línea 113:
 from sklearn.datasets import load_iris from sklearn.datasets import load_iris
 from matplotlib.colors import LightSource from matplotlib.colors import LightSource
 +import random
  
 iris=load_iris() iris=load_iris()
Línea 126: Línea 127:
 np.random.seed(5) np.random.seed(5)
 tf.random.set_seed(5) tf.random.set_seed(5)
 +random.seed(5)  
  
 model=Sequential() model=Sequential()
Línea 183: Línea 184:
 np.random.seed(5) np.random.seed(5)
 tf.random.set_seed(5) tf.random.set_seed(5)
 +random.seed(5)  
 </sxh> </sxh>
  
Línea 345: Línea 347:
 Obtén el resultado de la red neuronal para las siguientes entradas e indica el tipo de flor que ha calcula la red neuronal. Obtén el resultado de la red neuronal para las siguientes entradas e indica el tipo de flor que ha calcula la red neuronal.
  
-|  **Largo Sépalo**  |  **Largo Pétalo**  |  **Resultado red neuroral**  |  ** Tipo de Flor **  |+|  **Largo Sépalo**  |  **Largo Pétalo**  |  **Resultado red neuronal**  |  ** Tipo de Flor(0 o 1)**  |
 |  5.4    1.7      |    | |  5.4    1.7      |    |
 |  5.5    4.0      |    | |  5.5    4.0      |    |
  
 ==== Ejercicio 2 ==== ==== Ejercicio 2 ====
-Vamos a ver como se comportan las predicciones haciendo distintos cambios en nuestra red neuronal+Modifica ahora la red neuronal de forma que:
  
-Los cambios son los siguientes: +    * La 1º  capa oculta tenga 4 neuronas en vez de 6 
-  * No random seed +    * La 2º capa oculta tenga 6 neuronas en vez de 12 
-Deberás eliminar las siguientes líneas: +    * La 3º capa oculta tenga 4 neuronas en vez de 6 
-<sxh python> +    * La 4º capa seguirá teniendo 1 neurona
-np.random.seed(5) +
-tf.random.set_seed(5) +
-</sxh> +
- +
- +
-  * **2 épocas** +
-  +
-En el método ''fit'' cambia el número de épocas para que sea solo 2  +
- +
- +
-  * **Red neuronal pequeña** +
- +
-Modifica el código python de la red neuronal original de forma que: +
-    * La 1º  capa oculta tenga 4 capas en vez de 6 +
-    * La 2º capa oculta tenga 6 capas en vez de 12 +
-    * La 3º capa oculta tenga 4 capas en vez de 6+
  
 Usando la web [[http://alexlenail.me/NN-SVG/index.html]] dibuja la red neuronal que acabas de crear Usando la web [[http://alexlenail.me/NN-SVG/index.html]] dibuja la red neuronal que acabas de crear
  
  
-Ahora muestra los resultados en la siguiente tabla+Ahora muestra los resultados
  
-|  **Largo Sépalo**  |  **Largo Pétalo**  |  **Resultado red neuroral Original**  |  **No random seed**  |  **2 épocas**  |  **Red neuronal pequeña**  |  **Tipo de Flor (0 o 1)**  | +|  **Largo Sépalo**  |  **Largo Pétalo**  |  **Resultado red neuronal**  |  ** Tipo de Flor(0 o 1)**  | 
-|  5.4    1.7   |    |    |    |    |    | +|  5.4    1.7      |    | 
-|  5.5    4.0   |    |    |    |    |    |+|  5.5    4.0      |    |
  
  
Línea 398: Línea 384:
 flower_type=iris.target[:] flower_type=iris.target[:]
 </sxh> </sxh>
 +
 +Entrena la red con los nuevos datos
  
 Muestra la gráfica con los datos de entrada usando el código: Muestra la gráfica con los datos de entrada usando el código:
Línea 415: Línea 403:
 Prueba a ver si funciona ahora la red neuronal con el nuevo tipo de flor. Prueba a ver si funciona ahora la red neuronal con el nuevo tipo de flor.
  
-|  **Largo Sépalo**  |  **Largo Pétalo**  |  **Resultado red neuroral**  |  ** Tipo de Flor **  |+|  **Largo Sépalo**  |  **Largo Pétalo**  |  **Resultado red neuronal**  |  ** Tipo de Flor **  |
 |  6.9    5.1      |    | |  6.9    5.1      |    |
 |  7.7    6.1      |    | |  7.7    6.1      |    |
Línea 471: Línea 459:
 Esto datos son relativos a imágenes de núcleos celulares como los siguientes: Esto datos son relativos a imágenes de núcleos celulares como los siguientes:
  
-{{ :clase:iabd:pia:1eval:nucleos_celulares_cancer.png?direct |}}+{{ :clase:iabd:pia:1eval:nucleos_celulares_cancer.png?direct&400 |}} 
 + 
 +Y los histogramas de todos los datos son los siguientes: 
 + 
 +{{ :clase:iabd:pia:1eval:breast_cancer_kde.png?direct |}} 
 + 
 +Podemos ven en los histogramas que no hay una forma fácil de saber si una célula es o no cancerígena. 
 + 
 +<note important> 
 +En vez de incluir todos los datos en la red neuronal , habría que hacer un Análisis exploratorio de datos (EDA) y por ejemplo eliminar las columnas que están relacionadas. 
 +</note> 
 + 
 +Imprime el valor de la fila 56 tanto de la ''x'' como de la ''y''
 + 
 +<sxh> 
 +#Para que los datos no se muestren con notación científica 
 +np.set_printoptions(suppress=True)  
 + 
 +print(x[56],y[56]) 
 +</sxh> 
 + 
 +Ahora muestra los valores de la ''x'' y la ''y'' para la fila 204. 
 + 
 + 
 +Crea una red neuronal en las que en cada capa tenga los siguientes números de neuronas: 
 + 
 +|  **Nº Capa**  |  **Nº Neuronas** 
 +|   1º  |  30   | 
 +|   2º  |  60   | 
 +|   3º  |  100   | 
 +|   4º  |  60   | 
 +|   5º  |  30   | 
 +|   6º  |  10   | 
 +|   7º  |  1   | 
 + 
 + 
 +Rellena la siguiente tabla y muestrala 
 + 
 +|  **Fila Datos**  | **Resultado ''verdadero''**  |  **Resultado red neuronal** 
 +|   56  |        | 
 +|   204  |        | 
 + 
 +¿Es una buena red? 
 + 
 + 
 +Usa hora una red más pequeña de forma que tenga las siguientes capas: 
 + 
 +|  **Nº Capa**  |  **Nº Neuronas** 
 +|   1º  |  6   | 
 +|   2º  |  12   | 
 +|   3º  |  6   | 
 +|   4º  |  1   | 
 + 
 + 
 +Rellena la siguiente tabla y muestrala 
 + 
 +|  **Fila Datos**  | **Resultado ''verdadero''**  |  **Resultado red neuronal** 
 +|   56  |        | 
 +|   204  |        | 
 + 
 +¿Es una buena red? 
 + 
 +==== Ejercicio 6 ==== 
 +Repite la red pequeña del ejercicio  anterior pero ahora modificando la semilla de los números aleatorios 
 +<sxh> 
 +np.random.seed(5) 
 +tf.random.set_seed(5) 
 +random.seed(5) 
 +</sxh> 
 + 
 +Rellena la siguiente tabla y muestrala con una **red con la semilla 6** 
 + 
 +|  **Fila Datos**  | **Resultado ''verdadero''**  |  **Resultado red neuronal** 
 +|   56  |        | 
 +|   204  |        | 
 + 
 +Rellena la siguiente tabla y muestrala con una **red con la semilla 88**
  
 +|  **Fila Datos**  | **Resultado ''verdadero''**  |  **Resultado red neuronal**  |
 +|   56  |        |
 +|   204  |        |
  
clase/iabd/pia/1eval/tema01.1632065869.txt.gz · Última modificación: 2021/09/19 17:37 por admin