【机器学习300问】8、为什么要设计代价函数(损失函数)?它有什么用?

一、先介绍一下线性回归模型

(1)基本概念理解

        文字解释:线性回归模型顾名思义,他处理的回归问题,是监督学习的一种。线性回归模型是一种预测模型,其基础是假设目标值和输入值之间存在线性关系。通过一条最佳拟合线(或者在多维情况下的一个超平面)对某些数据点进行拟合的过程。

        数学公式(最简单的一元线性方程):

        y=wx+b 

        其中的w是权重b是偏置,他们在机器学习中就是要学习的参数y是目标值x是输入值或者叫做特征量。线性回归模型的有效性基于一个关键假设,即输入变量与目标变量之间真实存在线性关系。如果这个假设不成立,那么模型的预测效果可能就会受到影响。

(2)实际应用举例

  • 商品销量预测:可以把销量设定为目标值,将价格、促销、节假日等因素设定为输入值,建立线性回归模型进行预测。
  • 房价预测:将房价设为目标值,将房屋的面积、位置、装修等级等因素设定为输入值,建立模型进行预测。
  • 股票价格预测:可以基于过往的股价、交易量等信息(输入值),建立线性回归模型,预测未来的股票价格(目标值)。

(3)线性回归模型中的名词或符号解释

名词或符号解释
x输入值、输入变量、特征值、特征量
y目标值、目标变量、真实值
\widehat{y}模型的预测值
m训练集样本总数
(x, y)某一个训练样本
模型

线性回归模型,其实就是一个函数,用符号f表示

损失函数

损失函数也可以叫代价函数,用符号J表示。模型在训练过程中用于度量预测输出与真实目标值之间差异的函数。通过优化这个函数(通常是使其最小化),机器学习算法得以调整其参数以获得更好的预测性能。

参数就是w和b,“学习”的目标就是找出能让预测最准确的w和b

(4)怎么得到最拟合数据的线呢?

        “线”就是线性回归模型,就多项式函数,这个问题其实也可以换成,怎么判断我找到的函数预测效果最好?如果有一种指标能将预测值和真实目标值之前的差距表示出来,就能作为判断预测好坏的标准。

二、从线性回归模型中理解代价函数

        让预测值减去真实值不就是误差了嘛!但是误差应该始终是一个正数才好让人理解,所以公式可以写成这样,其中平方就是为了让误差是正的。

        (\widetilde{y} - y)^{2}

        但这只有一个点的误差,我要是能在整体上把握这个线与所有点的误差,也就是说我要让我的所有样本点对于这个线都有最小的差距,这样就能真的判断是否真的预测精准了,于是可以用累加和处理。

        \sum_{i=1}^{m}(f(x^{i})-y^{i})^{2}

        这样我就得到了总误差,但我只是想预测下一个具体的x,他对应的y,所以还得除上m变成平均误差,这就是均方误差。

        \frac{1}{m}\sum_{i=1}^{m}(f(x^{i})-y^{i})^{2}

        我们给他取一个名字J函数,为了后面梯度下降求导计算方便,给他添加除个2,于是线性回归模型的损失函数最常用的均方误差 (Mean Squared Error, MSE)就是如下形式

        J(w,b) = \frac{1}{2m}\sum_{i=1}^{m}(f_{w,b}(x^{i})-y^{i})^{2}

y = wx的线性回归模型拟合示意图

三、代价函数的作用

        代价函数(也叫损失函数或成本函数)在机器学习模型中起着至关重要的作用。它用来衡量模型预测的准确性。

        换句话说,代价函数可以帮助我们理解模型的性能如何,模型的预测值与真实值相比差距有多大。代价函数有两个主要的作用:

(1)性能衡量

        代价函数为我们提供了一种方法来衡量预测值和真实值之间的差距。如果模型的预测值与实际值很接近,代价函数的值会很小,反之则很大。

(2)参数优化

        在训练机器学习模型的过程中,我们希望找到一组参数使得代价函数达到最小值。这通常通过优化算法(如梯度下降等)来实现。根据代价函数对参数的梯度,我们可以调整参数,使得模型的预测结果更接近真实值。

        因此,代价函数是机器学习中模型评估和优化的关键,它帮助我们量化模型的误差,并引导我们如何调整模型的参数以改进其性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/626264.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Mingw32编译opencv库

文章目录 1. 准备工作2. 编译cmake构建程序mingw32-make编译 3. 安装4. 安装完的结果 注意: mingw32-make编译的库和MSVC编译的库不兼容,MSVC和mingw-make生成的动态库使用的是不同的ABI(Application Binary Interface)&#xff0…

蓝桥杯省赛无忧 编程4 小蓝的漆房

输入 2 5 2 1 1 2 2 1 6 2 1 2 2 3 3 3输出 1 2#include <bits/stdc.h> using namespace std; int main() {int t; cin >> t;for (int i 0, n, k; i < t; i) {cin >> n >> k;vector<int> arr(n);unordered_set<int> s;for (int j 0…

计算机导论05-计算机网络

文章目录 计算机网络基础计算机网络概述计算机网络的概念计算机网络的功能计算机网络的组成 计算机网络的发展计算机网络的类型 网络体系结构网络互联模型OSI/RM结构与功能TCP/IP结构模型TCP/IP与OSI/RM的比较 网络地址与分配IP地址构成子网的划分IPv6 传输介质与网络设备网络传…

构建稳健的Web应用:LAMP 实践

LAMP 介绍 LAMP 代表 Linux、Apache、MySQL 和 PHP/Python/Perl&#xff08;这些选项中一种&#xff09;的组合&#xff0c;用于搭建 Web 应用程序的开发和运行环境。 Linux&#xff1a;作为操作系统的基础&#xff0c;提供整个 LAMP 堆栈的基础。Linux 提供稳定、安全的环境&…

Pytorch基础:数据读取与预处理——调用PyTorch官方数据集

数据读取与预处理——调用PyTorch官方数据集 1. 从网络端下载 FashionMNIST 数据集到本地2. 数据集可视化 1. 从网络端下载 FashionMNIST 数据集到本地 (base) PS C:\Users\孙明阳> conda activate yang (yang) PS C:\Users\孙明阳> python Python 3.11.5 | packaged by…

CSS 水浪按钮

<template><view class="content"><button class="button"><view class="liquid"></view><view class="btn-txt">水浪按钮</view></button></view></template><scrip…

数据结构与算法教程,数据结构C语言版教程!(第四部分、字符串,数据结构中的串存储结构)二

第四部分、字符串&#xff0c;数据结构中的串存储结构 串存储结构&#xff0c;也就是存储字符串的数据结构。 很明显&#xff0c;字符串之间的逻辑关系也是“一对一”&#xff0c;用线性表的思维不难想出&#xff0c;串存储结构也有顺序存储和链式存储。 提到字符串&#xff…

c语言-数据类型(上)

目录 一、数据类型 二、常量与变量 常量&#xff1a; 变量&#xff1a; 三、进制&#xff08;八&#xff0c;十&#xff0c;十六&#xff09; 十进制&#xff1a; 八进制&#xff1a; 十六进制&#xff1a; 四、基本类型 1.整型常量&#xff1a; 2.整型变量&#xff…

C++内存管理机制(侯捷)笔记4(完结)

C内存管理机制&#xff08;侯捷&#xff09; 本文是学习笔记&#xff0c;仅供个人学习使用。如有侵权&#xff0c;请联系删除。 参考链接 Youtube: 侯捷-C内存管理机制 Github课程视频、PPT和源代码: https://github.com/ZachL1/Bilibili-plus 介绍 下面是第四讲和第五讲…

XSS漏洞:xss-labs靶场通关

xss系列往期文章&#xff1a; 初识XSS漏洞-CSDN博客 利用XSS漏洞打cookie-CSDN博客 目录 第一关 第二关 第三关 第四关 第五关 第六关 第七关 第八关 第九关 第十关 第十一关 第十二关 第十三关 第十四关 第十五关 第十六关 第十七关 第十八关 第十九关 …

Unity | AudioSource 无声音

Unity | AudioSource 无声音 你是否也会遇到相同的问题&#xff1f;AudioSource没声音&#xff1f; 解决&#xff1a; 注意查看一下几处声音设置&#xff1a;

XS2180四通道,兼容 IEEE 802.3at/af以太网供电 PSE 控制器 V1.0

XS2180 是一个四通道、供电设备&#xff08; PSE &#xff09;电源控制 器&#xff0c;设计用于 IEEE 802.3at/af 兼容 PSE 。器件提供用 电设备&#xff08; PD &#xff09;检测、分级、限流以及负载断开检测。器 件支持自动工作和软件编程。器件还支持最新二事件分…

宁夏银行关键系统基于OceanBase的创新实践

宁夏银行成立于 1998 年&#xff0c;是宁夏第一家“宁”字号地方商业银行&#xff0c;西部地区第一家以省级行政区命名的地方商业银行。2016 年&#xff0c;被中国人民银行评为宁夏地区系统性重要银行。目前&#xff0c;全行设分支机构 97 家&#xff0c;其中总行营业部 1 家&a…

centos7 arm服务器编译安装PaddlePaddle

前言 随着国产服务器发展&#xff0c;部署项目需要用在国产服务器上&#xff0c;官方教程里面很多没有讲解到&#xff0c;安装过程中出现了各种各样的问题&#xff0c;以下是对官方教程的补充&#xff0c;有什么问题&#xff0c;欢迎指正&#xff01; 一、环境准备 gcc: 8.2版…

BootStrap 实现轮播图

Bootstrap中文网 1、下载BootStrap 2、引入相关文件 在下载好的文件夹中找到下面的文件&#xff0c;复制到自己的项目中并引入 <link rel"stylesheet" href"bootstrap/css/bootstrap.min.css" /><script src"bootstrap/js/jquery.min.js…

【数据结构与算法】之数组系列-20240116

这里写目录标题 一、15. 三数之和二、16. 最接近的三数之和三、49. 字母异位词分组四、53. 最大子数组和五、189. 轮转数组六、179. 最大数 一、15. 三数之和 提示 中等 给你一个整数数组 nums &#xff0c;判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i ! j、i ! k…

【教3妹学编程-算法题】3006. 找出数组中的美丽下标 I

3妹&#xff1a;呜呜&#xff0c;烦死了&#xff0c; 脸上长了一个痘 2哥 : 不要在意这些细节嘛&#xff0c;不用管它&#xff0c;过两天自然不就好了。 3妹&#xff1a;切&#xff0c;你不懂&#xff0c;影响这两天的心情哇。 2哥 : 我看你是不急着找工作了啊&#xff0c; 工作…

如何使用服务器?

文章目录 如何使用服务器&#xff1f;一、工具二、第一种方法三、第二种方法四、实例 个人经验 如何使用服务器&#xff1f; 本文详细介绍了如何利用服务器跑模型&#xff0c;具体流程如下&#xff1a; 一、工具 ToDeskPyCharm Professional移动硬盘JetBrains GatewayGit 二…

dp--62. 不同路径/medium 理解度A

62. 不同路径 1、题目2、题目分析3、复杂度最优解代码示例4、抽象与扩展 1、题目 一个机器人位于一个 m x n 网格的左上角 &#xff08;起始点在下图中标记为 “Start” &#xff09;。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角&#xff08;在下图中…

免费的域名要不要?

前言 eu.org的免费域名相比于其他免费域名注册服务&#xff0c;eu.org的域名后缀更加独特。同时&#xff0c;eu.org的域名注册也比较简单&#xff0c;只需要填写一些基本信息&#xff0c;就可以获得自己的免费域名。 博客地址 免费的域名要不要&#xff1f;-雪饼前言 eu.org…