Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/308.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
Python 克拉斯';型号';对象没有属性'_可赎回损失';_Python_Tensorflow_Keras_Deep Learning - Fatal编程技术网

Python 克拉斯';型号';对象没有属性'_可赎回损失';

Python 克拉斯';型号';对象没有属性'_可赎回损失';,python,tensorflow,keras,deep-learning,Python,Tensorflow,Keras,Deep Learning,我有一个由网络组成的类,它接受给定的np.array输入和输入形状,并返回具有相同形状的输出。我想实现一个自定义的loss,它包含三个参数。为此,我使用Keras方法。添加损失,但它似乎抛出了一个错误。 我使用的类如下(简化): 但是,在实例化类并运行_build方法时: net = Net() net._build() 我被抛出以下错误: <ipython-input-124-46b9e7f916ce> in _build(self) 50 51

我有一个由网络组成的类,它接受给定的np.array输入和输入形状,并返回具有相同形状的输出。我想实现一个自定义的loss,它包含三个参数。为此,我使用Keras方法。添加损失,但它似乎抛出了一个错误。 我使用的类如下(简化):

但是,在实例化类并运行_build方法时:

net = Net()
net._build()
我被抛出以下错误:

<ipython-input-124-46b9e7f916ce> in _build(self)
     50 
     51         self.get_optimiser()
---> 52         model = self.get_loss(inputs, x)
     53 
     54         return model

<ipython-input-124-46b9e7f916ce> in get_loss(self, inputs, outputs)
    151             model = Model(inputs=[inputs, y_true, is_weight], outputs=[outputs])
    152 
--> 153             model.add_loss(weighted_dice_loss(y_true, outputs, is_weight))
    154             self._model.compile(optimizer = self._optimiser, loss = None, metrics = [dice_coef])
    155 

~/miniconda3/envs/segment/lib/python3.7/site-packages/tensorflow/python/keras/engine/base_layer.py in add_loss(self, losses, inputs)
    899         eager_losses.append(_tag_unconditional(loss))
    900 
--> 901     self._callable_losses += callable_losses
    902 
    903     call_context = base_layer_utils.is_in_call_context()

AttributeError: 'Model' object has no attribute '_callable_losses'
引发的错误现在已更改为:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-4-c4c292a59224> in <module>
     11 
     12 
---> 13 unet_model = unet._build()

<ipython-input-2-9245d04f54db> in _build(self)
     44         inputs = Input(shape = self._input_shape)
     45 
---> 46         x = self.first_layers(inputs)
     47         x = self.contractive_path(x)
     48         x = self.middle_path(x)

<ipython-input-2-9245d04f54db> in first_layers(self, inputs)
     57 
     58         layer = Conv3D(filters = self._n_filters, kernel_size = self._patch, activation = self._activation, kernel_initializer = self._kernel_initializer,
---> 59                 padding = self._padding)(inputs)
     60 
     61         return layer

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/legacy/interfaces.py in wrapper(*args, **kwargs)
     89                 warnings.warn('Update your `' + object_name + '` call to the ' +
     90                               'Keras 2 API: ' + signature, stacklevel=2)
---> 91             return func(*args, **kwargs)
     92         wrapper._original_function = func
     93         return wrapper

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/layers/convolutional.py in __init__(self, filters, kernel_size, strides, padding, data_format, dilation_rate, activation, use_bias, kernel_initializer, bias_initializer, kernel_regularizer, bias_regularizer, activity_regularizer, kernel_constraint, bias_constraint, **kwargs)
    617             kernel_constraint=kernel_constraint,
    618             bias_constraint=bias_constraint,
--> 619             **kwargs)
    620 
    621     def get_config(self):

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/layers/convolutional.py in __init__(self, rank, filters, kernel_size, strides, padding, data_format, dilation_rate, activation, use_bias, kernel_initializer, bias_initializer, kernel_regularizer, bias_regularizer, activity_regularizer, kernel_constraint, bias_constraint, **kwargs)
    103                  bias_constraint=None,
    104                  **kwargs):
--> 105         super(_Conv, self).__init__(**kwargs)
    106         self.rank = rank
    107         self.filters = filters

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/engine/base_layer.py in __init__(self, **kwargs)
    130         if not name:
    131             prefix = self.__class__.__name__
--> 132             name = _to_snake_case(prefix) + '_' + str(K.get_uid(prefix))
    133         self.name = name
    134 

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/backend/tensorflow_backend.py in get_uid(prefix)
     72     """
     73     global _GRAPH_UID_DICTS
---> 74     graph = tf.get_default_graph()
     75     if graph not in _GRAPH_UID_DICTS:
     76         _GRAPH_UID_DICTS[graph] = defaultdict(int)

AttributeError: module 'tensorflow' has no attribute 'get_default_graph'
---------------------------------------------------------------------------
AttributeError回溯(最近一次呼叫上次)
在里面
11
12
--->13 unet_model=unet._build()
内建(自建)
44输入=输入(形状=自身。\输入\形状)
45
--->46 x=自身第一层(输入)
47 x=自收缩路径(x)
48 x=自身中间路径(x)
在第一层(自身、输入)
57
58层=Conv3D(过滤器=self.\n\u过滤器,内核大小=self.\u补丁,激活=self.\u激活,内核初始化器=self.\u内核初始化器,
--->59填充=自填充(输入)
60
61返回层
包装中的~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/legacy/interfaces.py(*args,**kwargs)
89 warnings.warn('Update your`'+object\u name+'`调用+
90'Keras 2 API:'+签名,堆栈级别=2)
--->91返回函数(*args,**kwargs)
92包装器._原始函数=func
93返回包装器
~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/layers/convolutional.py in\uuuuuuu init\uuuuuuuu(自我、过滤器、内核大小、步幅、填充、数据格式、膨胀率、激活、使用偏差、内核初始值、偏差初始值、内核正则值、偏差正则值、活动正则值、内核约束、偏差约束、**kwargs)
617内核约束=内核约束,
618偏差约束=偏差约束,
-->619**夸尔格)
620
621 def get_配置(自身):
~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/layers/convolutional.py in_uuu__init_u(自、秩、过滤器、内核大小、步幅、填充、数据格式、膨胀率、激活、使用偏差、内核初始化器、偏差初始化器、内核正则化器、偏差正则化器、活动正则化器、内核约束、偏差约束、**kwargs)
103偏差约束=无,
104**夸尔格):
-->105超级(_Conv,self)。uuu init_uuuuuuu(**kwargs)
106 self.rank=rank
107 self.filters=过滤器
~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/engine/base\u layer.py in\uuuuuuuu init\uuuuuuu(self,**kwargs)
130如果不是姓名:
131前缀=自我类名称__
-->132 name=_to_snake_大小写(前缀)+'.'+str(K.get_uid(前缀))
133 self.name=name
134
get\u uid中的~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/backend/tensorflow\u backend.py(前缀)
72     """
73全局图
--->74 graph=tf.get\u default\u graph()
75如果图形不在图形UID中:
76 GRAPH\uUID_DICTS[GRAPH]=defaultdict(int)
AttributeError:模块“tensorflow”没有属性“get\u default\u graph”

请添加用于此操作的所有导入code@Daniel-可以尝试以下方式导入库吗,
从tensorflow.keras.layers导入Conv3D、Conv3Dtranspose、BatchNormalization、Cropping3D、AveragePoolG3D、UpSampling3D
请添加用于此操作的所有导入code@Daniel-您可以尝试在中导入库吗按照这种方式,tensorflow.keras.layers中的
导入Conv3D、Conv3Dtranspose、批次标准化、裁剪3D、平均池3D、上采样3D
import tensorflow as tf
from tensorflow import keras
from tensorflow.keras import Input, optimizers
from tensorflow.keras.models import Sequential, load_model


from keras.layers.convolutional import Conv3D, Conv3DTranspose
from keras.layers.normalization import BatchNormalization
from keras.layers import Cropping3D, UpSampling3D, AveragePooling3D
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-4-c4c292a59224> in <module>
     11 
     12 
---> 13 unet_model = unet._build()

<ipython-input-2-9245d04f54db> in _build(self)
     44         inputs = Input(shape = self._input_shape)
     45 
---> 46         x = self.first_layers(inputs)
     47         x = self.contractive_path(x)
     48         x = self.middle_path(x)

<ipython-input-2-9245d04f54db> in first_layers(self, inputs)
     57 
     58         layer = Conv3D(filters = self._n_filters, kernel_size = self._patch, activation = self._activation, kernel_initializer = self._kernel_initializer,
---> 59                 padding = self._padding)(inputs)
     60 
     61         return layer

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/legacy/interfaces.py in wrapper(*args, **kwargs)
     89                 warnings.warn('Update your `' + object_name + '` call to the ' +
     90                               'Keras 2 API: ' + signature, stacklevel=2)
---> 91             return func(*args, **kwargs)
     92         wrapper._original_function = func
     93         return wrapper

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/layers/convolutional.py in __init__(self, filters, kernel_size, strides, padding, data_format, dilation_rate, activation, use_bias, kernel_initializer, bias_initializer, kernel_regularizer, bias_regularizer, activity_regularizer, kernel_constraint, bias_constraint, **kwargs)
    617             kernel_constraint=kernel_constraint,
    618             bias_constraint=bias_constraint,
--> 619             **kwargs)
    620 
    621     def get_config(self):

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/layers/convolutional.py in __init__(self, rank, filters, kernel_size, strides, padding, data_format, dilation_rate, activation, use_bias, kernel_initializer, bias_initializer, kernel_regularizer, bias_regularizer, activity_regularizer, kernel_constraint, bias_constraint, **kwargs)
    103                  bias_constraint=None,
    104                  **kwargs):
--> 105         super(_Conv, self).__init__(**kwargs)
    106         self.rank = rank
    107         self.filters = filters

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/engine/base_layer.py in __init__(self, **kwargs)
    130         if not name:
    131             prefix = self.__class__.__name__
--> 132             name = _to_snake_case(prefix) + '_' + str(K.get_uid(prefix))
    133         self.name = name
    134 

~/miniconda3/envs/segment/lib/python3.7/site-packages/keras/backend/tensorflow_backend.py in get_uid(prefix)
     72     """
     73     global _GRAPH_UID_DICTS
---> 74     graph = tf.get_default_graph()
     75     if graph not in _GRAPH_UID_DICTS:
     76         _GRAPH_UID_DICTS[graph] = defaultdict(int)

AttributeError: module 'tensorflow' has no attribute 'get_default_graph'