Nota: (Keras-Applications: son módulo de aplicaciones de el Frameworks de Deep-Learning de API-Keras. Nos proporciona definiciones de Modelos y Pesos preentrenados para varias arquitecturas las mas usados).
Aplicaciones-Keras.(Modelo-Preentrenado)
-. Las Aplicaciones-Keras son modelos de Deep-Learning que están disponibles junto con pesos preentrenados. Estos modelos se pueden utilizar para la predicción, la extracción de características y el ajuste fino.
-. Tras la creación de instancias, los modelos se construirán de acuerdo con el formato de datos de imagen establecido en su archivo de configuración de Keras .
Modelos pre-entrenados consta de dos partes:
- Arquitectura del modelo.
- Pesos del modelo.
-. Los pesos del modelo son un archivo que tenemos que descargar y extraer la característica de la base de datos de ImageNet.
Modelos disponibles
Xception:
Instancia la arquitectura Xception .Xception() :
- In: tf.keras.applications.Xception(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
EfficientNet B0 a B7:
Instancia la arquitectura EfficientNetB0 .EfficientNetB0()
- In: tf.keras.applications.EfficientNetB0(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
EfficientNetV2 B0 a B3 y S, M, L
Instancia la arquitectura EfficientNetV2B0 .EfficientNetV2B0()
- In: tf.keras.applications.EfficientNetV2B0(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: include_preprocessing=True,
- In: )
ConvNeXt Diminuto, Pequeño, Base, Grande, Extragrande
Instancia la arquitectura ConvNeXtTiny “Diminuto” .ConvNeXtTiny()
- In: tf.keras.applications.ConvNeXtTiny(
- In: model_name=«convnext_tiny»,
- In: include_top=True,
- In: include_preprocessing=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
VGG16 y VGG19
Instancia el modelo VGG16 .VGG16()
- In: tf.keras.applications.VGG16(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
ResNet y ResNetV2
Instancia la arquitectura ResNet50 .ResNet50()
- In: tf.keras.applications.ResNet50(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: )
MobileNet, MobileNetV2 y MobileNetV3
Instancia la arquitectura MobileNet .MobileNet()
- In: tf.keras.applications.MobileNet(
- In: input_shape=None,
- In: alpha=1.0,
- In: depth_multiplier=1,
- In: dropout=0.001,
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
DenseNet
Instancia la arquitectura Densenet121 .DenseNet121()
- In: tf.keras.applications.DenseNet121(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
NasNetLarge and NasNetMobile
Instancia la arquitectura NASNet .NASNetLarge()
- In: tf.keras.applications.NASNetLarge(
- In: input_shape=None,
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
InceptionV3
Instancia la arquitectura Inception v3 .InceptionV3()
- In: tf.keras.applications.InceptionV3(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
InceptionResNetV2
Instancia la arquitectura Inception-ResNet v2 .InceptionResNetV2()
- In: tf.keras.applications.InceptionResNetV2(
- In: include_top=True,
- In: weights=«imagenet»,
- In: input_tensor=None,
- In: input_shape=None,
- In: pooling=None,
- In: classes=1000,
- In: classifier_activation=«softmax»,
- In: )
Discreción general de los Argumentos
- include_top= si incluir la capa completamente conectada en la parte superior.
- weights= archivo de pesos que se va a cargar.
- input_tensor= tensor Keras opcional.
- input_shape= tupla de forma opcional.
- pooling= modo de agrupación opcional.
- classes= número opcional de clases para clasificar las imágenes.
- classifier_activation= función de activación para usar en la capa «superior».
Implementación real de EfficientNet
Creamos una implementación de EfficientNetB0 para clasificar de imágenes de ImageNet:
- In: from keras.applications import EfficientNetB0
- In: model = EfficientNetB0(weights=‘imagenet’)
Recopilemos:
Keras-Aplicaciones nos facilita definiciones de Modelos y Pesos preentrenados para varias arquitecturas en este post hemos enumerados las mas conocidas.
- Referencias: (Entorno-Moreluz)
- Referencias: (Docs-Keras)