用多个值填充神经网络

时间:2019-02-23 20:24:03

标签: python machine-learning neural-network

根据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]

例如,标记它们,然后向左转。

-25-左侧,0-直线,25-右侧

如何结合传感器和图像的读数,以便在学习神经网络后将这些传感器的读数考虑在内?

1 个答案:

答案 0 :(得分:0)

当然可以,只是一些额外的数据,但是您对它的处理对于Conv2D网络可能并不理想。因此,也许在您做密集的地方或以后,您合并了两个网; https://datascience.stackexchange.com/questions/26103/merging-two-different-models-in-keras上方也有一个keras示例,也可能是张量流。