Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Deep learning Keras损失函数信息是如何传递的_Deep Learning_Theano_Keras_Objective Function - Fatal编程技术网

Deep learning Keras损失函数信息是如何传递的

Deep learning Keras损失函数信息是如何传递的,deep-learning,theano,keras,objective-function,Deep Learning,Theano,Keras,Objective Function,我是keras和DL的新手,我正在尝试构建一个损失函数,但我对来自网络的数据如何通过损失函数的y_pred和y_true有疑问 例如,我的网络有3种不同的输出,以下是一种: SEC5 = merge( [SEC1_up, SEC2_up, SEC3_up, SEC4_up], mode='concat', concat_axis=1 ) SEC5 = Convolution2D( 2,1,1, subsample=(1, 1), border_mode='same', activation="

我是keras和DL的新手,我正在尝试构建一个损失函数,但我对来自网络的数据如何通过损失函数的y_pred和y_true有疑问

例如,我的网络有3种不同的输出,以下是一种:

SEC5 = merge( [SEC1_up, SEC2_up, SEC3_up, SEC4_up], mode='concat', concat_axis=1 )

SEC5 = Convolution2D( 2,1,1, subsample=(1, 1), border_mode='same', activation="sigmoid" )( SEC5 )
SEC5现在是一个2通道张量,用于预测一个通道中的边和另一个通道中的非边

我的模型是使用以下行创建的:

model = Model( input=inputs, output=[Final, ILLP2, SEC1, SEC2, SEC3, SEC4, SEC5] )
其中,我对最终的二元交叉熵,对ILLP2进行平方损失,然后对每个SEC层进行自定义损失。在构建自定义丢失时,我遇到了一些我不理解的东西。如何将多个通道层(如SEC5)传递给损耗函数?这在边缘丢失中尤其重要,因为我需要计算边缘层中的边缘数和非边缘层中的非边缘数

当我这样做时,我不理解的是损失函数中的实际变量(y_true和y_pred):

print 'y_true data'
print y_true.ndim
print y_true.type
print 'y_pred data'
print y_pred.ndim
print y_pred.type
我得到以下值:

y_true data
2
TensorType(float32, matrix)
y_pred data
2
TensorType(float32, matrix)
这就是我被一切弄糊涂的地方。据我所知,矩阵的张量类型只能是二维的,但我基本上有三维?它如何处理这些信息

我觉得我应该明白这一点之前,我去做我自己的详细损失功能,任何信息,你可以提供给我将不胜感激

干杯


Michael

为什么您的网络输出是18频道,而您只有一个频道y_?真的吗?这不像是要预测灰度图像,但网络输出是彩色图像?你应该给出一些信息,这总是取决于我所读到的关于theano作为后端的情况,matrix类只有二维,所以我的问题是,在任何多通道输入(比如说18通道卷积输出)的情况下,它如何处理这些数据?或者我误解了theano文档?你能发布一些关于你的模型的代码吗
18xNxM
只能以秩3或更高的张量存储。顺便说一句,我想大多数CNN都会在里面使用秩4张量,无论是
NCWH
还是
NWHC
格式。我已经编辑了我的问题,包括一个例子和一些我不太理解的更多信息。干杯