Herramientas de usuario

Herramientas del sitio


clase:iabd:pia:1eval:tema06

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:tema06 [2023/12/20 18:04]
admin [Selección de función de activación]
clase:iabd:pia:1eval:tema06 [2024/03/25 15:06] (actual)
admin [Tipos de funciones de activación en la capa de salida]
Línea 702: Línea 702:
   * Uso en Keras: Sigmoide   * Uso en Keras: Sigmoide
 <sxh python> <sxh python>
-model.add(Dense(3, input_dim=1,activation=tf.keras.activations.sigmoid)) +model.add(Dense(3, activation="sigmoid")) 
-model.add(Dense(3, input_dim=1,activation="sigmoid"))+model.add(Dense(3, activation=tf.keras.activations.sigmoid)) 
 </sxh> </sxh>
  
Línea 709: Línea 710:
  
 <sxh python> <sxh python>
-model.add(Dense(3, input_dim=1,activation=tf.keras.activations.tanh)) +model.add(Dense(3, activation="tanh")) 
-model.add(Dense(3, input_dim=1,activation="tanh"))+model.add(Dense(3, activation=tf.keras.activations.tanh)) 
 </sxh> </sxh>
  
Línea 753: Línea 755:
  
 <sxh python> <sxh python>
-model.add(Dense(3, input_dim=1,activation=tf.keras.activations.relu)) +model.add(Dense(3, activation="relu")) 
-model.add(Dense(3, input_dim=1,activation="relu")) +model.add(Dense(3, activation=tf.keras.activations.relu)) 
-model.add(Dense(3, input_dim=1,activation=tf.keras.layers.ReLU()))+model.add(Dense(3, activation=tf.keras.layers.ReLU()))
 </sxh> </sxh>
  
Línea 761: Línea 763:
  
 <sxh python> <sxh python>
-model.add(Dense(3, input_dim=1,activation=tf.keras.layers.LeakyReLU())) +model.add(Dense(3, activation="LeakyReLU")) 
-model.add(Dense(3, input_dim=1,activation=tf.keras.layers.LeakyReLU(alpha=0.2)))+model.add(Dense(3, activation=tf.keras.layers.LeakyReLU())) 
 +model.add(Dense(3, activation=tf.keras.layers.LeakyReLU(alpha=0.2)))
 </sxh> </sxh>
  
Línea 806: Línea 809:
  
 <sxh python> <sxh python>
-model.add(Dense(3, input_dim=1,activation=tf.keras.activations.elu)) +model.add(Dense(3, activation="elu")) 
-model.add(Dense(3, input_dim=1,activation="elu")) +model.add(Dense(3, activation=tf.keras.activations.elu)) 
-model.add(Dense(3, input_dim=1,activation=tf.keras.layers.ELU(alpha=0.2)))+model.add(Dense(3, activation=tf.keras.layers.ELU(alpha=0.2)))
 </sxh> </sxh>
  
Línea 814: Línea 817:
  
 <sxh python> <sxh python>
-model.add(Dense(3, input_dim=1,activation=tf.keras.activations.selu,kernel_initializer="lecun_normal")) +model.add(Dense(3, activation="selu")) 
-model.add(Dense(3, input_dim=1,activation="selu",kernel_initializer="lecun_normal"))+model.add(Dense(3, activation=tf.keras.activations.selu))
 </sxh> </sxh>
  
Línea 907: Línea 910:
   * La probabilidad de que haya que comprar mañana acciones de la empresa Y.   * La probabilidad de que haya que comprar mañana acciones de la empresa Y.
   * La probabilidad de que haya que comprar mañana acciones de la empresa Z.   * La probabilidad de que haya que comprar mañana acciones de la empresa Z.
 +
 +Es decir se puede usar para clasificar entre 2 opciones pero también se puede usar cuando son más de dos opciones pero que no sean excluyentes entre ellas.
  
 <note tip> <note tip>
Línea 960: Línea 965:
  
 <sxh python> <sxh python>
 +from sklearn.preprocessing import LabelBinarizer
 +
 y=iris.target y=iris.target
 label_binarizer = LabelBinarizer() label_binarizer = LabelBinarizer()
Línea 986: Línea 993:
  
  
 +
 +===== Guardando modelos a disco =====
 +Una vez tenemos la red neuronal entrenada, la podemos guardar a disco para poder usarla en otro programa.
 +
 +
 +  * Para guardar la red
 +<sxh python>
 +
 +model=Sequential()
 +model.add(Dense(10, activation="sigmoid",input_dim=2))
 +model.compile(loss="mse")
 +history=model.fit(x_train,y_train,validation_data=(x_test,y_test),epochs=10,verbose=False)
 +
 +
 +model.save('my_red_neuronal.keras'
 +</sxh>
 +
 +  * Para cargar la red en otro programa
 +
 +<sxh python>
 +model=tf.keras.models.load_model('my_red_neuronal.keras')
 +
 +</sxh>
 +
 +  * Si el modelo al crearse usó funciones personalizadas, se debe usar el parámetro ''custom_objects''. Por ejemplo si se usó la función ''specificity'' se debe cargar:
 +<sxh python>
 +model=tf.keras.models.load_model('my_red_neuronal.keras',custom_objects={"specificity": specificity})
 +</sxh>
  
  
 +Más información:
 +  * [[https://www.tensorflow.org/api_docs/python/tf/keras/saving/save_model|tf.keras.saving.save_model]]
  
 ===== Redes Neuronales Famosas ===== ===== Redes Neuronales Famosas =====
clase/iabd/pia/1eval/tema06.1703091844.txt.gz · Última modificación: 2023/12/20 18:04 por admin