在Python中,计算均方误差(MSE)通常使用以下步骤:
1. 计算预测值(`y_pred`)和真实值(`y_true`)之间的差值。
2. 将差值进行平方。
3. 对所有平方后的差值求和。
4. 将求和结果除以样本数量(或特征数量,取决于上下文)。
from sklearn.metrics import mean_squared_error
假设 `y_true` 是真实值,`y_pred` 是预测值
y_true = [1.5, 2.1, 3.3, -4.7, -2.3, 0.75]
y_pred = [0.5, 1.5, 2.1, -2.2, 0.1, -0.5]
计算MSE
mse = mean_squared_error(y_true, y_pred)
print("MSE:", mse)
如果你使用的是Keras框架,可以通过设置模型的损失函数为`mean_squared_error`来计算MSE:
from keras.models import Sequential
from keras.layers import Dense
from keras.optimizers import SGD
创建一个简单的模型
model = Sequential()
model.add(Dense(64, input_dim=10, init='uniform'))
model.add(Activation('tanh'))
model.add(Activation('softmax'))
编译模型,设置损失函数为均方误差
model.compile(loss='mean_squared_error', optimizer=SGD(lr=0.1, decay=1e-6, momentum=0.9, nesterov=True))
假设 `y_true` 是真实值,`y_pred` 是预测值
y_true = ...
y_pred = ...
在训练模型之前,你可以使用以下代码来计算MSE
mse = model.evaluate(y_true, y_pred, verbose=0)
print("MSE:", mse)
请注意,在Keras中,`model.evaluate`函数会返回损失值,其中第一个值就是MSE。