AI学习-线性回归推导

线性回归

      • 1.简单线性回归
      • 2.多元线性回归
      • 3.相关概念熟悉
      • 4.损失函数推导
      • 5.MSE损失函数

1.简单线性回归

线性回归:有监督机器学习下一种算法思想。用于预测一个或多个连续型目标变量y与数值型自变量x之间的关系,自变量x可以是连续、离散,但是目标变量y必须连续。类似于初中的一元一次方程y = a + bx。不同的是以前可以根据两组值唯一确定a和b的关系,但是机器学习下这种算法是根据多种数据信息,计算出最优解

方程:
在这里插入图片描述
最优解:所有的样本数据都尽可能的贴合(拟合)到该方程(模型model)上方为最优解。说人话是: 我们根据样本数据,计算出很多的a、b值即为多种模型model,从多种模型中预测值Predicted value)和真实值Actual value)进行比较,误差Error越小的模型即为最优解。我们需要让机器知道什么是最优解的话,需要定义个损失函数Loss函数

字段描述
Actual value真实值,即已知的y
Predicted value预测值,是把已知的×带入到公式里面和猜出来的参数a,b计算得到的
Error误差,预测值和真实值的差距
最优解尽可能的找到一个模型使得整体的误差最小,整体的误差通常叫做损失Loss
Loss函数整体的误差,loss通过损失函数loss function计算得到

Loss 函数

平方均值损失

2.多元线性回归

​ 上面的简单线性回归影响其因素只有一个自变量X,但是在现实生活中影响y的可能有多个因素,所以多元线性回归也就用来解决这些问题。方程为:
在这里插入图片描述

上面写的过于复杂,学过数学矩阵的同学应该清楚:根据下面的图形示意图可以使用矩阵简写处理:
在这里插入图片描述

矩阵简写方程:

在这里插入图片描述

用矩阵表示符合我们机器学习相关编程语言的书写方式,便于使用编程语言实现。

3.相关概念熟悉

特征与维度

特征通常指的是影响结果或目标的一系列变量或因素,这些变量或因素构成了模型的 维度。在给定的例子中,x是由n列组成的,这些列可以看作是特征,它们共同构成了x的维度。这些特征会影响最后的结果y。

中心极限定理与正态分布

中心极限定理告诉我们,大量随机变量的总和会趋近于 正态分布

  • 中心极限定理和线性回归的关系:当使用线性回归对大量数据进行处理时,得到的结果可能会符合正态分布。

中心极限定理为线性回归提供了一个理论基础,而这种正态分布的性质,如平均值和标准差,可以被用来评估模型的性能和解释性

误差

第i个样本实际的值yi等于预测的值yihat加误差Ei,或者公式可以表达为如下
在这里插入图片描述
假定所有的样本的误差都是独立的随机变量,足够多的随机变量叠加之后形成的分布,根据中心极限定理,它服从的就是正态分布。

机器学习中我们假设误差符合均值为0,方差为定值的正态分布

最大似然估计

给定一个概率分布D,已知其概率密度函数(连续分布)或概率质量函数(离散分布)为fD以及一个分布参数0我们可以从这个分布中抽出一个具有n个值的采样 ,利用f_D计算出其似然函数:
在这里插入图片描述
若D是离散分布,f0即是在参数为0时观测到这一采样的概率。若其是连续分布,f0则为x1,x2…xn联合分布的概率密度函数在观测值处的取值。

术语对应的函数术语描述
连续分布概率密度函数连续型随机变量的概率密度函数是一个描述这个随机变量的输出值
离散分布概率质量函数离散型随机变量的概率质量函数是一个描述这个随机变量的输出值

原理:假设样本数据是由某个概率分布生成的(连续分布、离散分布),而这个分布的参数是未知的。最大似然估计的目标是找到那些能使观察值出现的概率最大的参数值。

为啥要了解最大似然估计:上边我们不是假定了误差是符合正态分布的,正态分布又是是连续分布的。如果要求出其中的误差正态分布的相关参数值(均值=0,方差=参数值),则可以通过最大似然估计计算求出。

4.损失函数推导

正态分布的概率密度函数
在这里插入图片描述

误差的概率密度函数

误差是一个均值为0,方差为定值的正态分布,所以将误差带入得出:一条样本的概率密度方程如下:
在这里插入图片描述
误差属于正态分布,而正态分布的相关参数可以通过最大似然估计算出。

正态分布最大总似然数

上述公式我们只是推导出了一条误差的概率密度函数。接下来我们就是要把最大似然函数通过正太分布概率密度函数表达出来

在这里插入图片描述
样本误差服从正态分布也服务互相独立的假设,所以我们可以把上面式子写出连乘的形式概率的公式:

在这里插入图片描述
正态分布最大似然函数
在这里插入图片描述

等于

在这里插入图片描述
引入误差公式
在这里插入图片描述

最终推导出来的误差(正态分布)最大似然函数
在这里插入图片描述

5.MSE损失函数

因为数学的推导过程比较枯燥且晦涩难懂,所以我们先基于目的梳理一遍过程:获取线性回归的最优解即最优特征值。

  1. 线性回归最优解对应最小损失函数
  2. 最小损失函数基于中心极限定理服从正态分布
  3. 正态分布获取其取值的最大概率则基于最大似然函数
  4. 得到误差最大似然函数 最终可以求解其特征值

接下来继续推导MSE损失函数。总似然最大的那一时刻对应的参数 θ当成是要求的最优解!

最大总似然

获取最大总似然函数(连乘):
在这里插入图片描述
引入对数函数

因为log对数函数中,当底大于1的时候是单调递增,获取θ的最大值可以转换为获取loge的最大值(因为使用对数函数后便于简化公式,结果还是一样的) 公式如下:

在这里插入图片描述

基于对数函数的相关运算法则进行继续推导
在这里插入图片描述
在这里插入图片描述

MSE函数
因为前面有个负号,所以最大总似然变成了最小话负号后面的部分。 到这里,我们就已经推导出来了 MSE 损失函数,从公式我们也可以看出来 MSE 名字的来 历,mean squared error也叫做最小二乘
在这里插入图片描述
其中补充说明一下 (下图 第一行是使用函数形式表示、第二行是使用矩阵形式表示)

同时上面的式子 括号里面的位置发生了变化,因为是平方的缘故,所以变换位置对结果没有影响
在这里插入图片描述

那么接下来问题就是 什么时候可以使得损失函数最小了。篇幅有限-下一篇对该问题进行求解。

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

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

相关文章

Visual Studio 配置代码风格审查工具cpplint

文章目录 一、Visual Studio 配置代码风格审查工具cpplint1、安装2、运行3、集成到Visual Studio4、集成到Git 前言 cpplint是一个用于检查C代码风格的工具,它可以帮助我们发现潜在的编码问题,提高代码质量。cpplint遵循Google的C编码规范,通…

快速获取文件夹及其子文件夹下的所有文件名

1、在文件夹中新建文本文档,命名为“命令.txt” 2、输入以下内容 tree /F > 文件名.txt dir *.* /B > 文件名.txt 其中文件名和文件格式可以是任意的,tree命令可生成文件及其子文件夹下所有文件的名称,dir命令只生成当前目…

用wordpress搭建视频点播发布平台

目录 一、安装操作系统、宝塔面板 二、宝塔面板部署环境 1、安装nginx

技术驱动下的同城O2O发展:跑腿配送APP开发教学

在同城生活服务领域,跑腿配送APP的出现与发展,为人们的日常生活提供了极大的便利。今天,小编将着重为大家讲解技术驱动下的同城O2O发展,并从跑腿配送APP的开发角度进行教学和解析。 一、同城O2O发展概述 在同城O2O模式中&#x…

BCLinux-for-Euler配置本地yum源

稍微吐槽一句…… 在这片土地上,国产化软件的大潮正在滚滚而来,虽然都不是真正意义上的国产化,但是至少壳是国产的~~~ 之前使用的Centos7的系统,现在都要求统一换成BCLinux-for-Euler。说实话换了之后不太适应,好多用习…

四月软件测试面经合集(持续更新)

四月软件测试面经合集 polelink面试(一面过)01 对于JMeter接口测试,如何做接口关联?接口关联的定义JMeter关联方法正则表达式介绍贪婪匹配和非贪婪匹配案例分析正则表达式提取器步骤 02 是否会写shell脚本,能对shell进…

JVM—类加载子系统

JVM—类加载子系统 JVM的类加载是通过ClassLoader及其子类来完成的。 有哪些类加载器 类加载器如下: 启动类加载器(BootStrap ClassLoader):负责加载JAVA_HOME\lib目录或通过-Xbootclasspath参数指定路径中的且被虚拟机认可&am…

FaaF:利用事实作为评估RAG的函数方法

原文地址:faaf-facts-as-a-function-for-evaluating-rag 2024 年 4 月 5 日 在某些情况下,我们使用其他语言模型来验证RAG的输出结果,但这种方法并未能有效识别出数据生成过程中的错误和缺失。 论文解析 挑战 评估的可靠性和效率&#xff…

练习题(2024/4/6)

1最接近的三数之和 给你一个长度为 n 的整数数组 nums 和 一个目标值 target。请你从 nums 中选出三个整数,使它们的和与 target 最接近。 返回这三个数的和。 假定每组输入只存在恰好一个解。 示例 1: 输入:nums [-1,2,1,-4], target …

并查集python实现及题目练习

文章目录 1. 并查集概念1.1 理解并查集:简介与应用场景1.2 Python 实现并查集及优化策略1.3 扁平化栈实现1.4 分析并查集的时间复杂度 2. 情侣牵手3. 相似字符串4. 岛屿数量 如果想了解并查集基础推荐去看左程云大神的算法讲解,非常不错,b站和…

python 02字符串

字符串可能是用到最多的数据类型了,所有标准序列操作(索引、切片、乘法、成员资格检查、长度、最小值和最大值)都适用于字符串 但别忘了字符串是不可变的,因此所有的元素赋值和切片赋值都是非法的。 1.居中效果 默认为空格 可…

在不同操作系统中搭建Python编程环境

1 在不同操作系统中搭建Python编程环境 1.1 在Linux系统中搭建Python编程环境 1. 检查Python版本 在你的系统中运行应用程序Terminal(如果你使用的是Ubuntu,可按Ctrl Alt T),打开一个终端窗口。为确定是否安装了Python&…

为何网易游戏会选择引入OceanBase数据库

本文作者:田维繁,网易游戏关系型数据库小组负责人 作为中国游戏开发领域的佼佼者,网易游戏始终站在网络游戏自主研发的前沿。其产品及周边产品线丰富多样,因此,为满足各种业务场景的需求,需要多种不同的数据…

【环境变量】常见的环境变量 | 相关指令 | 环境变量系统程序的结合理解

目录 常见的环境变量 HOME PWD SHELL HISTSIZE 环境变量相关的指令 echo&env export unset 本地变量 环境变量整体理解 程序现象_代码查看环境变量 整体理解 环境变量表 环境变量表的传递 环境变量表的查看 测试验证 少说废话🆗 每个用户…

48V转15V,48V转12V,48V转24V高效率降压恒压芯片SL3041电路简单

在现代电子设备中,电源转换是一个关键且常见的技术。特别是对于那些需要将48V电压转换为更低电压(如15V、12V或24V)的设备,一个高效、可靠的降压恒压芯片至关重要。本文将详细介绍一款名为SL3041的高效率降压恒压芯片,…

#{} 和 ${}区别

1、参数是Integer类型时候没区别(#是预编译SQL,$是即时SQL) 2、当参数是String类型时,就会出错了 (1)这是$的报错信息,因为我们的参数admin并没有加引号所以不满足字符串条件 (2)正确的SQL &am…

蓝牙学习十(扫描)

一、简介 从之前的文章中我们知道,蓝牙GAP层定义了四种角色,广播者(Broadcaster)、观察者(Observer)、外围设备(Peripheral)、中央设备(Central)。 之前的学习…

基础总结篇:Activity生命周期

private int param 1; //Activity创建时被调用 Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Log.i(TAG, “onCreate called.”); setContentView(R.layout.lifecycle); Button btn (Button) findViewById(R.id.…

Python实现 AI 绘图(非常详细)零基础入门到精通,收藏这一篇就够了

今天给大家带来了 Python 对接阿里大模型,通过 AI 实现文本生成图片。 相关资料 这个功能使用的主要 API 是阿里的大模型服务。 开通服务 阿里文档 https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-1?disableWebsiteRedirecttrue 获取 a…

K8S之Job和CronJob控制器

这里写目录标题 Job概念适用场景使用案例 CronJob概念适用场景使用案例 Job 概念 Job控制器用于管理Pod对象运行一次性任务,例如:对数据库备份,可以直接在k8s上启动一个mysqldump备份程序,也可以启动一个pod,这个pod…