AI算法公式

335 阅读1分钟

1. MSE(均方误差)定义及计算方法详解

用于预测波士顿房价

MSE(Mean Squared Error,均方误差)是衡量预测值与实际值差异的常用指标,广泛应用于回归分析中。其计算公式为:

MSEMSE =1ni=1n(yiyi^)2\frac{1}{n} \sum_{i=1}^{n}( {y_i - \hat{y_i}}) ^2

其中:

  • n 是样本数量
  • yi {y_i} 是第 i个实际值
  • yi^ \hat{y_i} 是第 i 个预测值

特点

  1. 非负性:MSE 始终为非负数,值为零表示预测完全准确。
  2. 放大误差:由于误差被平方,较大的误差会被显著放大,因此 MSE 对异常值敏感。
  3. 单位:MSE 的单位是实际值的平方,可能不如 RMSE(均方根误差)直观。

应用

  • 模型评估:用于评估回归模型的预测精度。
  • 优化目标:在训练模型时,常作为损失函数进行优化。

示例

假设有以下实际值和预测值:

样本实际值 yi{y_i}预测值y^i{\hat y_i}误差yiy^i{y_i -\hat y_i}误差平方 (yiy^i)2({y_i -\hat y_i})^2 
132.50.50.25
254.80.20.04
377.2-0.20.04
498.90.10.01

计算 MSE:

MSE=0.25+0.04+0.04+0.014=0.344=0.085MSE=40.25+0.04+0.04+0.01​=40.34​=0.085

总结

MSE 是评估回归模型性能的重要指标,值越小表示预测越准确,但对异常值敏感。

2. np.random.seed(0) 的作用

import numpy as np

# 设置随机数种子
np.random.seed(0)

# 生成随机数
random_numbers_1 = np.random.rand(5)
print("第一次生成的随机数:", random_numbers_1)

# 再次生成随机数
random_numbers_2 = np.random.rand(5)
print("第二次生成的随机数:", random_numbers_2)

# 重置种子
np.random.seed(0)

# 再次生成随机数
random_numbers_3 = np.random.rand(5)
print("重置种子后生成的随机数:", random_numbers_3)

总结

np.random.seed(0) 的作用是 下次随机生成的数值一样

第一次生成的随机数: [0.5488135  0.71518937 0.60276338 0.54488318 0.4236548 ]
第二次生成的随机数: [0.64589411 0.43758721 0.891773   0.96366276 0.38344152]
重置种子后生成的随机数: [0.5488135  0.71518937 0.60276338 0.54488318 0.4236548 ]