机器学习 | 回归算法原理——多重回归

Hi,大家好,我是半亩花海。接着上次的多项式回归继续更新《白话机器学习的数学》 这本书的学习笔记,在此分享多重回归这一回归算法原理。本章的回归算法原理基于**《基于广告费预测点击量》**项目,欢迎大家交流学习!

目录

一、多重回归概述

二、案例分析

[1. 设置问题](#1. 设置问题)

[2. 定义模型](#2. 定义模型)

[3. 多重回归](#3. 多重回归)


一、多重回归概述

多重线性回归模型即描述一个因变量 如何随多个自变量 的改变而改变。假定对 例观察对象逐一测定了因变量 个自变量 的数值,多重线性回归模型的一般形式为:

式中, 为常数项,又称截距。 称为偏回归系数,或简称回归系数。 则是去除 个自变量对 的影响后的随机误差,即残差。


二、案例分析

1. 设置问题

之前我们是根据广告费来预测点击量的,但实际中要解决的很多问题是变量超过2个 的复杂问题。对于上一节的"多项式回归"问题,里面确实会涉及不同次数的项,但是使用的因变量依然只有广告费一项。比如,决定点击量的除了广告费之外,还有++广告的展示位置++ 和++广告版面的大小++等多个要素。

2. 定义模型

为了让问题尽可能地简单,这次我们只考虑广告版面的大小 ,设 广告费为 、广告栏的宽为 、广告栏的高为 ,那么 可以表示如下:

接下来,思路和之前相同,分别求目标函数对 , · · · , 偏微分 ,然后更新参数 即可。但在实际去求偏微分之前,我们可以先试着简化表达式的写法。

刚才我们说有 共 3 个变量,下面我们把它推广到有 个变量的情况。这时候 会变成什么样子呢?

不过每次都像这样写 会比较麻烦,所以我们还可以把参数 和变量 看作向量

为了确保参数 和变量 的维度相同,我们可以在变量 的向量一开始加上1,如此会显得更自然。

的下标是从 0 开始的,为了与其相配合,设 ,让 的第一个元素为 会更加整齐。

转置后计算它与 相乘的结果,即计算 (运用线性代数 的知识将二者相应的元素相乘,然后全部加起来),结果如下,最终发现和上述的 的表达式结果一致。

换句话说,之前用多项式表示的 ,可以像下面 这样用向量来表示。虽然我们说的是向量,但实际在编程时只需用普通的一维数组就可以了。

3. 多重回归

接下来我们就使用 来求参数更新表达式吧,方法与之前一样:

的部分是一样的。为了一般化,我们可以考虑对第 个元素 偏微分的表达式,如下所示。

微分的部分是一样的,详情移步上一节《机器学习 | 回归算法原理------最速下降法(梯度下降法)-CSDN博客》,即对 这一部分的微分,所以接下来只需要求 的微分即可。

那么第 个参数的更新表达式如下:

我们之前还给每个 都写了更新表达式,现在它们可以汇总为一个表达式,像这样++包含了多个变量++ 的回归称为多重回归。如此看来,可以基于一般化的思路来思考问题正是数学的优点。

相关推荐
开MINI的工科男8 分钟前
深蓝学院-- 量产自动驾驶中的规划控制算法 小鹏
人工智能·机器学习·自动驾驶
limingade1 小时前
手机实时提取SIM卡打电话的信令和声音-新的篇章(一、可行的方案探讨)
物联网·算法·智能手机·数据分析·信息与通信
AI大模型知识分享1 小时前
Prompt最佳实践|如何用参考文本让ChatGPT答案更精准?
人工智能·深度学习·机器学习·chatgpt·prompt·gpt-3
小言从不摸鱼3 小时前
【AI大模型】ChatGPT模型原理介绍(下)
人工智能·python·深度学习·机器学习·自然语言处理·chatgpt
jiao000014 小时前
数据结构——队列
c语言·数据结构·算法
迷迭所归处5 小时前
C++ —— 关于vector
开发语言·c++·算法
leon6255 小时前
优化算法(一)—遗传算法(Genetic Algorithm)附MATLAB程序
开发语言·算法·matlab
CV工程师小林5 小时前
【算法】BFS 系列之边权为 1 的最短路问题
数据结构·c++·算法·leetcode·宽度优先
Navigator_Z6 小时前
数据结构C //线性表(链表)ADT结构及相关函数
c语言·数据结构·算法·链表
Aic山鱼6 小时前
【如何高效学习数据结构:构建编程的坚实基石】
数据结构·学习·算法