model.compile(optimizer='adam', loss={
'yolo_loss': lambda y_true, y_pred: y_pred})
参数说明:
def compile(self, optimizer,
loss=None,
metrics=None,
loss_weights=None,
sample_weight_mode=None,
weighted_metrics=None,
target_tensors=None,
**kwargs
参数
optimizer:String(优化器名称)或优化器实例。
请参阅[optimizers](/ optimizers)。
loss:String(目标函数的名称)或目标函数。
见losses。
如果模型具有多个输出,则可以使用不同的损失
通过传递字典或损失列表在每个输出上。
模型将最小化的损失值
那将是所有个人损失的总和。
metrics:模型要评估的度量标准列表
在培训和测试期间。
通常你会使用`metrics = ['accuracy']`。
为a的不同输出指定不同的度量
多输出模型,你也可以传递字典,
例如`metrics = {'output_a':'accuracy'}`。
loss_weights:指定标量的可选列表或字典
系数(Python浮动)来加权损失贡献
不同的模型输出。
模型将最小化的损失值
那么将是所有个人损失的*加权和*,
由`loss_weights`系数加权。
如果是列表,则预计会有1:1的映射
到模型的输出。如果是张量,则预计会映射
输出名称(字符串)到标量系数。
sample_weight_mode:如果你需要做时间步骤
样本加权(2D权重),将其设置为“”temporal“”。
`None`默认为样本权重(1D)。
如果模型有多个输出,则可以使用不同的输出
通过传递一个每个输出的`sample_weight_mode`
字典或模式列表。
weighted_metrics:要评估和加权的指标列表
在训练和测试期间通过sample_weight或class_weight。
target_tensors:默认情况下,Keras将为其创建占位符
模型的目标,将在期间提供目标数据
训练。相反,如果您想使用自己的
目标张量(反过来,Keras不会期望外部
你可以在训练时获得这些目标的Numpy数据
可以通过`target_tensors`参数指定它们。有可能
单个张量(对于单输出模型),张量列表,
或者将输出名称映射到目标张量的字典。
** kwargs:当使用Theano / CNTK后端时,这些论点
被传递到`K.function`。
使用TensorFlow后端时,
这些参数传递给`tf.Session.run`。