TensorFlow 提供了一系列的损失函数,用于在模型训练过程中评估预测值与真实值之间的差异。以下是一些常用的损失函数及其用法。
常用损失函数
均方误差(Mean Squared Error, MSE):用于回归问题,计算预测值和真实值之间差的平方的平均值。
- 公式:MSE = (1/N) * Σ(y_i - y'_i)^2
- 示例代码:
tf.keras.losses.MeanSquaredError()
交叉熵(Cross-Entropy):用于分类问题,计算预测概率分布与真实概率分布之间的差异。
- 公式:H(y, p) = -Σy_i * log(p_i)
- 示例代码:
tf.keras.losses.CategoricalCrossentropy()
二元交叉熵(Binary Cross-Entropy):交叉熵的特例,用于二分类问题。
- 示例代码:
tf.keras.losses.BinaryCrossentropy()
- 示例代码:
示例
以下是一个使用均方误差损失函数的简单示例:
import tensorflow as tf
# 创建模型
model = tf.keras.models.Sequential([
tf.keras.layers.Dense(10, activation='relu', input_shape=(8,)),
tf.keras.layers.Dense(1)
])
# 编译模型
model.compile(optimizer='adam', loss=tf.keras.losses.MeanSquaredError())
# 训练模型
model.fit(x_train, y_train, epochs=10)
扩展阅读
更多关于 TensorFlow 损失函数的详细信息,请访问 TensorFlow Losses API。
TensorFlow Logo