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

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

目录

一、多重回归概述

二、案例分析

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

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

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


一、多重回归概述

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

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


二、案例分析

1. 设置问题

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

2. 定义模型

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

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

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

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

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

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

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

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

3. 多重回归

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

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

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

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

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

相关推荐
有意义2 小时前
深度拆解分割等和子集:一维DP数组与倒序遍历的本质
前端·算法·面试
用户726876103373 小时前
解放双手的健身助手:基于 Rokid AR 眼镜的运动计时应用
算法
Wect3 小时前
LeetCode 17. 电话号码的字母组合:回溯算法入门实战
前端·算法·typescript
ZhengEnCi1 天前
08c. 检索算法与策略-混合检索
后端·python·算法
程序员小崔日记1 天前
大三备战考研 + 找实习:我整理了 20 道必会的时间复杂度题(建议收藏)
算法·408·计算机考研
lizhongxuan1 天前
AI小镇 - 涌现
算法·架构
AI工程架构师1 天前
通常说算力是多少 FLOPS,怎么理解,GPU和CPU为什么差异这么大
算法
祈安_1 天前
Java实现循环队列、栈实现队列、队列实现栈
java·数据结构·算法
归去_来兮2 天前
拉格朗日插值算法原理及简单示例
算法·数据分析·拉格朗日插值
千寻girling2 天前
Python 是用来做 AI 人工智能 的 , 不适合开发 Web 网站 | 《Web框架》
人工智能·后端·算法