Conv neural network CNN:用于像素分类的Softmax层
我想更详细地了解softmax层在CNN中如何对图像进行语义分割/像素分类。CNN输出一个类标签的图像,原始图像的每个像素获得一个标签 将测试图像通过网络后,下一层输出原始图像分辨率的N个通道。我的问题是,softmax层如何将这N个通道转换为标签的最终图像 假设我们有C类(#可能的标签)。我的建议是,对于每个像素,前一层的N个神经元连接到softmax层的C神经元,其中每个C神经元代表一个类别。使用softmax激活功能,C输出的总和(对于该像素)等于1(这有助于网络的训练)。最后,每个像素被分类为概率最高的类别(由softmax值给出)。 这意味着softmax层由C*像素和神经元组成。我的建议正确吗?我没有找到解释,希望你能帮助我Conv neural network CNN:用于像素分类的Softmax层,conv-neural-network,image-segmentation,softmax,Conv Neural Network,Image Segmentation,Softmax,我想更详细地了解softmax层在CNN中如何对图像进行语义分割/像素分类。CNN输出一个类标签的图像,原始图像的每个像素获得一个标签 将测试图像通过网络后,下一层输出原始图像分辨率的N个通道。我的问题是,softmax层如何将这N个通道转换为标签的最终图像 假设我们有C类(#可能的标签)。我的建议是,对于每个像素,前一层的N个神经元连接到softmax层的C神经元,其中每个C神经元代表一个类别。使用softmax激活功能,C输出的总和(对于该像素)等于1(这有助于网络的训练)。最后,每个像素被
谢谢你的帮助 答案是softmax layer不将这些N个通道转换为标签的最终图像 假设您有一个N通道的输出,您的问题是如何将其转换为最终输出的3通道 答案是你不知道。这些N通道中的每一个都代表一个类。方法是,您应该有一个具有相同高度和重量以及3个通道的虚拟阵列 现在你必须用一种颜色对每个类进行抽象编码,比如街道是绿色的,汽车是红色的等等 假设高度=5,宽度=5,通道7具有最大值。现在, ->如果通道7代表汽车,则需要在虚拟阵列上放置一个红色像素,其中高度=5,宽度=5 ->如果通道7代表街道,则需要在虚拟阵列上放置一个绿色像素,其中高度=5,宽度=5 因此,您正在尝试查找像素属于N类中的哪一类。并且基于该类,您将在虚拟阵列上以独特的颜色重新绘制像素 这个虚拟数组称为掩码 例如,假设这是一个输入 我们正试图用像素分类法来定位大脑的肿瘤区域。这里的分类数为2,肿瘤存在和不存在。因此,softmax层输出一个2通道对象,通道1表示存在肿瘤,通道2表示不存在肿瘤 因此,每当高度=X,宽度=Y时,通道1的值较高,我们为Dummy[X][Y]图像制作一个白色像素。当通道2的值较高时,我们制作一个黑色像素 之后我们就有了这样的面具 这没什么意义。但是当我们叠加这两幅图像时,我们得到了这个 因此,基本上,您将尝试使用N通道从输出创建遮罩图像(第二个)。叠加它们将得到最终输出