Red neuronal convolucional de múltiples salidas

Tobitor

Estoy desarrollando una red neuronal convolucional para la clasificación de imágenes o mejor para la clasificación de matrículas. Estas placas contienen hasta 8 caracteres y para cada carácter son posibles 37 caracteres (AZ, 0-9 y un espacio en blanco). Ahora me pregunto cómo diseñar las dos últimas capas de mi red. Creo que el último tiene que ser una capa softmax con 37 probabilidades. Esto debería estar completamente conectado a una (?) Neurona en la capa anterior? Creo que en la capa anterior necesitamos 8 neuronas debido a los 8 caracteres de la matrícula anterior, pero no estoy seguro aquí. Antes de estas capas, agrego algunas capas convolucionales y maxPooling. ¿Es ese un enfoque válido o tiene otras sugerencias?

Escribí este código:

from keras.models import Sequential
from keras.layers import Dense, Dropout, Flatten, Conv2D, MaxPooling2D

model = Sequential()
model.add(Conv2D(32, kernel_size=(3, 3), input_shape = (600, 1200, 1), activation = "relu"))
model.add(MaxPooling2D(pool_size=(2, 2)))
model.add(Dropout(0.25))
model.add(Flatten())
model.add(Dense(64, activation = "relu"))
model.add(Dense(8, activation = "relu"))
model.add(Dense(37, activation = "softmax"))

model.compile(optimizer="rmsprop", loss="categorical_crossentropy", metrics=["accuracy"])

Especialmente con respecto a las capas después de mi Flatten Layer, no estoy muy seguro ... ¿Hay alguien que pueda ayudarme? Espero haber descrito mi problema correctamente ...

Sreyas

En sus capas anteriores, hay muchas arquitecturas de uso común que podría intentar para obtener una mejor precisión en su conjunto de datos.

En las capas densas, hay varias formas de abordarlo. Dado que, hay al menos 8 caracteres con 37 caracteres posibles cada uno. Podría tener la última capa como model.add(Dense(37*8, activation = "sigmoid"))con el umbral en 0.5 para denotar todas las 37 * 8 posibilidades.

 model = Sequential()
 model.add(Conv2D(32, kernel_size=(3, 3), input_shape = (600, 1200, 1), activation = "relu"))
 model.add(MaxPooling2D(pool_size=(2, 2)))
 model.add(Dropout(0.25))
 model.add(Flatten())
 model.add(Dense(64, activation = "relu"))
 model.add(Dense(37*8, activation = "relu"))

Una forma más adecuada podría ser tener 9 capas de salida: una con 8 neuronas para denotar la presencia de un personaje y otras 8 capas con 37 neuronas cada una con softmax para indicar qué personaje es. Tenga en cuenta que para hacer esto, debe utilizar la API funcional en lugar de la API secuencial.

Un ejemplo:

 inp = Input(shape=(600,1200,1))
 X = Conv2D(32, kernel_size=(3, 3), activation = "relu")(inp)
 X = MaxPooling2D(pool_size=(2, 2))(X)
 X = Dropout(0.25)(X)
 X = Flatten()(X)
 X = Dense(64, activation = "relu")(X)
 P = Dense(8, activation = "relu")(X)
 C1 = Dense(37, activation = "softmax")(X)
 ...
 C8 = Dense(37, activation = "softmax")(X)
 model = Model(inp, [P,C1,C2,...C8])

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Entrene a cada "cabeza" de una red neuronal de múltiples salidas de forma independiente

Tutorial de red neuronal convolucional de TensorFlow

red neuronal con múltiples salidas en sklearn

¿Cómo incorporar los comentarios de los usuarios en una red neuronal convolucional de opciones múltiples?

Error de forma de Keras en una red neuronal convolucional

Red neuronal convolucional usando openCV

Sobreajuste en red neuronal convolucional

Reanudar el entrenamiento de la red neuronal convolucional

Red neuronal convolucional con imágenes en escala de grises

¿Qué es la profundidad de una red neuronal convolucional?

¿Qué es la profundidad de una red neuronal convolucional?

Ajuste fino de la red neuronal convolucional preentrenada

¿Agregar un valor adicional a una entrada de red neuronal convolucional?

Implementación de PCA en una red neuronal convolucional

Cómo alimentar múltiples imágenes como entrada a una red neuronal convolucional

Exportación de salidas de una red neuronal

Exportación de salidas de una red neuronal

Grupos en la red neuronal convolucional / CNN

Sesgo constante en la red neuronal convolucional

Problemas para comprender la red neuronal convolucional

Red neuronal: predicción de valores de múltiples variables

Múltiples entradas de red neuronal y una salida

Red neuronal compuesta por múltiples funciones de activación

Aumento de la velocidad de una implementación de red neuronal convolucional Numpy / Scipy pura

Interpretación de la capa completamente conectada en la arquitectura de red neuronal convolucional

Forma de entrada de red neuronal convolucional 1D `ValueError`

Calcular la dimensión de los mapas de características en una red neuronal convolucional

Calcular la dimensión de los mapas de características en una red neuronal convolucional

Entrada de red neuronal convolucional de tamaño variable y salida fija

TOP Lista

CalienteEtiquetas

Archivo