根据Nvidia的神经网络架构:
self.model = Sequential() #135, 135, 3
self.model.add(BatchNormalization(epsilon=0.001, input_shape=(135, 135, 3)))
self.model.add(Conv2D(24, 5, 5, border_mode='valid', activation='relu', subsample=(2, 2)))
self.model.add(Dropout(0.5))
self.model.add(Conv2D(36, 5, 5, border_mode='valid', activation='relu', subsample=(2, 2)))
self.model.add(Dropout(0.5))
self.model.add(Conv2D(48, 5, 5, border_mode='valid', activation='relu', subsample=(2, 2)))
self.model.add(Dropout(0.5))
self.model.add(Conv2D(64, 3, 3, border_mode='valid', activation='relu', subsample=(1, 1)))
self.model.add(Dropout(0.5))
self.model.add(Conv2D(64, 3, 3, border_mode='valid', activation='relu', subsample=(1, 1)))
self.model.add(Dropout(0.5))
self.model.add(Flatten())
self.model.add(Dense(1164, activation='relu'))
self.model.add(Dropout(0.5))
self.model.add(Dense(100, activation='relu'))
self.model.add(Dropout(0.5))
self.model.add(Dense(50, activation='relu'))
self.model.add(Dropout(0.5))
self.model.add(Dense(10, activation='relu'))
self.model.add(Dropout(0.5))
self.model.add(Dense(1, activation='tanh'))
adam = Adam(lr=0.0001)
self.model.compile(loss='mse',
optimizer=adam,
metrics=['accuracy'])
此模型是专门为自动驾驶问题设计的。
在入口处,在卷积网络的第1层,它拍摄尺寸为135, 135, 3
的图像,并且在入口处已经给出了机器应该旋转的任何角度(取决于数据集)
是否有任何方法可以与图像一起添加-例如,传感器的读数? (距离等)
例如:我有一张图像,尺寸为135,135,3
,还有来自传感器的读数数组,例如:
3个传感器 [10,0,25]
例如,标记它们,然后向左转。
如何结合传感器和图像的读数,以便在学习神经网络后将这些传感器的读数考虑在内?
答案 0 :(得分:0)
当然可以,只是一些额外的数据,但是您对它的处理对于Conv2D网络可能并不理想。因此,也许在您做密集的地方或以后,您合并了两个网; https://datascience.stackexchange.com/questions/26103/merging-two-different-models-in-keras上方也有一个keras示例,也可能是张量流。