繁体   English   中英

多 Output 卷积神经网络

[英]Multi Output Convolutional Neural Network

我正在开发一个用于图像分类的卷积神经网络,或者更好地用于车牌分类。 这些车牌最多包含 8 个字符,每个字符可以包含 37 个字符(AZ、0-9 和一个空格)。 我现在想知道如何设计网络中的最后两层。 我认为,最后一个必须是具有 37 个概率的 softmax 层。 这应该完全连接到之前层中的一个(?)神经元? 我认为,在之前的层中我们需要 8 个神经元,因为之前的车牌中有 8 个字符,但我在这里不确定。 在这些层之前,我添加了一些卷积层和 maxPooling 层。 这是一种有效的方法还是您有其他建议?

我写了这段代码:

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"])

尤其是关于我的 Flatten Layer 之后的层,我真的不确定......有没有人可以帮忙? 我希望我正确地描述了我的问题......

在您之前的层中,有许多常用的架构,您可以尝试在数据集上获得更好的准确性。

在密集层上,有多种方法可以解决它。 因为,最多有 8 个字符,每个字符有 37 个可能的字符。 您可以将最后一层设置为model.add(Dense(37*8, activation = "sigmoid")) ,阈值为 0.5 以表示所有 37*8 的可能性。

 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"))

更合适的方法可能是使用 9 个 output 层:一个有 8 个神经元来表示字符的存在,另外 8 层有 37 个神经元,每个都有 softmax 来表示它是什么字符。 请注意,要执行此操作,您必须使用功能 API 而不是顺序 API。

一个例子:

 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])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM