网络编程
位置:首页>> 网络编程>> 网络编程>> keras:model.compile损失函数的用法

keras:model.compile损失函数的用法

作者:有石为玉  发布时间:2023-11-23 08:44:21 

标签:keras,model,compile,损失函数

损失函数loss:该参数为模型试图最小化的目标函数,它可为预定义的损失函数名,如categorical_crossentropy、mse,也可以为一个损失函数。详情见losses

可用的损失目标函数:

mean_squared_error或mse

mean_absolute_error或mae

mean_absolute_percentage_error或mape

mean_squared_logarithmic_error或msle

squared_hinge

hinge

categorical_hinge

binary_crossentropy(亦称作对数损失,logloss)

logcosh

categorical_crossentropy:亦称作多类的对数损失,注意使用该目标函数时,需要将标签转化为形如(nb_samples, nb_classes)的二值序列

sparse_categorical_crossentrop:如上,但接受稀疏标签。注意,使用该函数时仍然需要你的标签与输出值的维度相同,你可能需要在标签数据上增加一个维度:np.expand_dims(y,-1)

kullback_leibler_divergence:从预测值概率分布Q到真值概率分布P的信息增益,用以度量两个分布的差异.

poisson:即(predictions - targets * log(predictions))的均值

cosine_proximity:即预测值与真实标签的余弦距离平均值的相反数

补充知识:keras.model.compile() 自定义损失函数注意点

基本用法

model.compile(optimizer=Adam(lr=1e-4), loss='binary_crossentropy', metrics=['accuracy'])

注意

loss后类似'binary_crossentropy'、'mse'等代称

loss为函数名称的时候,不带括号

函数参数必须为(y_true, y_pred, **kwards)的格式

不能直接使用tf.nn.sigmoid_cross_entropy_with_logits等函数,因为其参数格式为(labels=None,

logits=None),需要指定labels=、logits=这两个参数

来源:https://blog.csdn.net/weixin_41770169/article/details/80184115

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com