【机器学习笔记Ⅰ】3 代价函数

代价函数(Cost Function)

代价函数 (也称为损失函数,Loss Function )是机器学习中用于量化模型预测误差的函数。它衡量模型预测值(( \hat{y} ))与真实值(( y ))之间的差异,并通过优化算法(如梯度下降)调整模型参数(如权重 ( w ) 和偏置 ( b )),以最小化这种差异。


核心作用

  1. 评估模型性能:代价函数的值越小,说明模型预测越准确。
  2. 指导参数优化:为梯度下降等算法提供方向(如何调整参数以降低误差)。

常见代价函数

1. 均方误差(Mean Squared Error, MSE)
  • 用于回归问题(预测连续值,如房价、温度)。

  • 公式:

    • ( N ):样本数量。
    • ( y^{(i)} ):第 ( i ) 个样本的真实值。
    • ( \hat{y}^{(i)} ):第 ( i ) 个样本的预测值。
  • 特点:

    • 对异常值敏感(平方放大大误差)。
    • 可导,适合梯度下降。

示例:

  • 真实值 ( y = 2, 4, 6 ),预测值 ( \hat{y} = 1, 5, 6 )。
2. 交叉熵损失(Cross-Entropy Loss)
  • 用于分类问题(如二分类、多分类)。

  • 公式(二分类):

    • ( \hat{y}^{(i)} ) 是模型预测的概率(如逻辑回归输出)。
  • 特点:

    • 惩罚预测概率与真实标签的偏差。
    • 与Softmax激活函数配合用于多分类。
3. 平均绝对误差(Mean Absolute Error, MAE)
  • 公式:

  • 特点:

    • 对异常值鲁棒(误差线性增长)。
    • 不可导(优化时需特殊处理)。

为什么需要代价函数?

  • 参数学习的指南针 :

    例如,在线性回归中,通过最小化MSE找到最佳拟合直线。

  • 模型对比:不同模型可通过同一代价函数评估优劣。


代价函数 vs 损失函数

  • 损失函数(Loss Function):计算单个样本的误差。
  • 代价函数(Cost Function) :通常是所有样本损失的平均值(如MSE)。
    (实际使用时两者常混用。)

代码示例(MSE实现)

python 复制代码
import numpy as np

def mean_squared_error(y_true, y_pred):
    return np.mean((y_true - y_pred) ** 2)

# 示例
y_true = np.array([3, 5, 7])
y_pred = np.array([2.5, 5.1, 7.8])
print("MSE:", mean_squared_error(y_true, y_pred))  # 输出: 0.23

如何选择代价函数?

问题类型 代价函数 原因
回归(连续值预测) 均方误差(MSE) 对误差敏感,易优化。
分类(概率输出) 交叉熵损失(Cross-Entropy) 匹配概率分布,梯度稳定。
鲁棒性需求高 平均绝对误差(MAE) 减少异常值影响。

关键点总结

  1. 代价函数是模型优化的核心目标。
  2. 不同任务需选择不同代价函数(如回归用MSE,分类用交叉熵)。
  3. 梯度下降等算法通过计算代价函数的梯度来更新参数。
相关推荐
镜象科技2 小时前
AI情感大模型应用场景全解:从校园到医院再到企业的落地地图
人工智能
Joshua-a3 小时前
工程数学-理解卷积的含义_线性时不变系统的冲激响应与卷积
人工智能·深度学习
song5013 小时前
React Native for OpenHarmony 实战:三方库 react-native-css-transformer 的鸿蒙化适配指南
css·人工智能·深度学习·react native·transformer
老金带你玩AI8 小时前
ChatGPT dots,到底能替你操多少心?
人工智能
AliCloudROS8 小时前
计算巢 X DeepSeek Harness — 云端智能体工作台
人工智能·阿里云
深蓝AI9 小时前
GitHub的Push一年涨4.9倍:AI Agent为什么逼它重做Git存储?
人工智能·github
stereohomology9 小时前
大模型的观点谨:StoryTold 「Crafting Apps」四件套 · 深度总览
人工智能·llm
运维行者_9 小时前
网络性能监控怎么做?从自动发现到根因分析的4个环节
运维·服务器·网络·人工智能·支持向量机
Su米苏9 小时前
Spring AI 中MCP 与普通 @Tool的区别
java·人工智能·spring
美狐美颜sdk9 小时前
直播APP源码可以直接接入视频美颜sdk吗?技术方案详解
android·人工智能·音视频·美颜sdk·直播美颜sdk