机器学习-关于线性回归的表示方式和矩阵的基本运算规则

最近在学习机器学习的过程中,发现关于线性回归的表示和矩阵的运算容易费解,而且随着学习的深入容易搞混,因此特意做了一些研究,并且记录下来和大家分享。

一、线性模型有哪些表示方式?

器学习中,线性模型是指模型的输出是输入特征的线性组合。根的不同,线性模型有多种表示方式,主要包括:

1.线性回归(Linear Regression):

用于回归任务,模型形式为:

2.逻辑回归(istic Regression):

用于二分类任务,模型形式为:

3.线性判别分析(Linear criminant Analysis, LDA):

用于分类任务,特别是二分类问题。LDA 寻找一影方向,使得投影后同类样本尽可,异类样本尽可能远离。模型形式为:

4.支持向量机(Support Vector MachinSVM):

用于分类任务,线性可分情况下,模型形式为:

5.感知机 (Perceptron)

用于二分类任务,模型形式为:

这些线性模型在不同的任务中应用广泛,选择合适的模型取决于具体的应用场景和数据特征。

二、那么线性模型的矩阵表示是什么样的呢?

机器学习中,线性模型通常可以使用矩阵形式表示,这种表示方式在处理多元线性回归等问题时尤为方便。以下是线性模型的矩阵表示:

1.线性模型的矩阵形式:

假设我们有( n ) 个样本,每个样本有 p 个特征。线性模型可以:

其中:

  • Y 是 n × 1 的向量,表示所有样本的目标值。

  • X是n × p的特征矩阵,每一行对应一个样本的特征向量。

  • w是p×1的权重向量。

  • b是n×1 的偏置向量,通常为常数向量 b⋅1,其中 b 是偏置项。

2. 增广矩阵表示:

为了简化表示,我们可以将偏置项b 合并到权重向量 w 中。具体方法是向特征矩阵 X 加一列全为 1 的列,得到增广特征矩阵 X',同时将偏置项作为权重向量的一个分量。这样,模型可以表示为:

Y=X′w′

其中:

这种增广矩阵的表示方式简化了模型的表示和计算。

3. 损失函数的矩阵表示

在线性回归中,常用的损失函数是均方误差(M,其矩阵形式为:

通过矩阵形式表示线性模型,可以简化模型的表示和计算,特别是在处理多元线性回归和高维数据时,这种表示方式尤为有效

4.举例说明

为了更直观地理解线性模型的矩阵表示,我们通过一个具体的例子来说明。假设我们有一个包含 3 个样本的数据集,每个样本有 2 个特征。我们的目标是建立一个线性回归模型来预测目标值。

(1)数据表示:

(2)增广特征矩阵:

(3)权重向量:

(4)线性模型表示:

(5)求解权重向量:

三、需要了解的矩阵运算的几个定律:

1.在矩阵运算中,矩阵的加法和乘法遵循以下定律:

矩阵加法的定律:

矩阵乘法的定律:

注意:

  • 矩阵乘法不满足交换律:一般情况下,矩阵乘法不满足交换律,即 AB≠BA。只有在特定情况下(例如 A和 B\ 都是对角矩阵且具有相同的维度)才可能满足交换律。

2.在矩阵运算中,转置操作具有以下常见性质:

四、线性回归,解释一下如何求导得到最优w

1.之前的文章,我曾经提到过正规方程求得最优w的过程:

2、其中求导遵循的规则如下:

标量对向量的求导:

向量内积的求导:

二次型函数的求导:

矩阵求导的链式法则:

在应用这些公式时,需注意矩阵的维度匹配和转置操作。特别是在链式法则中,矩阵 A 的转置 A^T 出现在求导结果中,这是因为在矩阵乘法中,维度需要匹配,转置操作可以调整矩阵的维度以确保运算的合法性。

相关推荐
yuanpan2 分钟前
机器学习是怎么一步一步由神经网络发展到今天的Transformer架构的?
神经网络·机器学习·transformer
小诸葛IT课堂9 分钟前
PyTorch 生态概览:为什么选择动态计算图框架?
人工智能·pytorch·python
雅菲奥朗21 分钟前
4大观点直面呈现|直播回顾-DeepSeek时代的AI算力管理
人工智能·ai算力·deepseek
程序员JerrySUN33 分钟前
深入解析 TensorFlow 兼容性问题及构建输出文件结构*
人工智能·tensorflow·neo4j
ruokkk41 分钟前
搭建一个声纹识别系统
人工智能
kula77543 分钟前
Trae,国产首款AI编程IDE初体验
人工智能
moonless022244 分钟前
【AI】MercuryCoder与LLaDA? 自回归模型与扩散模型的碰撞,谁才是未来的LLM答案?
人工智能·llm
吾名招财1 小时前
pytorch快速入门——手写数字分类GPU加速
人工智能·pytorch·分类
天天向上杰1 小时前
地基Prompt提示常用方式
人工智能·prompt·提示词
KARL1 小时前
最小闭环manus,langchainjs+mcp-client+mcp-server
前端·人工智能