我正在尝试训练一个用于自动驾驶的模型,将前置摄像头的输入转换为鸟瞰图图像。
输入和输出都是形状为(96, 144)的分割掩码,其中每个像素的值范围从0到12(每个数字代表不同的类别)。
现在我的问题是,我应该如何预处理我的数据,以及我应该为模型使用哪种损失函数(我尝试使用完全卷积网络)。
我尝试使用keras的to_categorical工具将输入和输出转换为形状(96, 144, 13),这样每个通道都有0和1来表示特定类别的掩码。我使用了binary_crossentropy
和sigmoid
激活函数作为最后一层,这样模型似乎开始学习,并且损失开始减少。
但我仍然不确定这是否是正确的方法,或者是否有更好的方法。
应该是什么样的:
- 输入和输出数据格式
- 最后一层的激活函数
- 损失函数
回答:
我找到了解决方案,使用分类交叉熵和softmax激活函数作为最后一层。使用与问题中指定的相同的数据格式。