多元线性回归正规方程法公式推导详解:从W T X + B W^T X + BWTX+B到X W XWXW的转换逻辑
很多人在推导多元线性回归正规方程法时,都会卡在同一个地方:预测值公式为什么一会儿写成W T X + B W^T X + BWTX+B,一会儿又变成X W XWXW?本文从 Pandas/Python 的数据存储形态出发,逐层拆解单样本与多样本下的矩阵维度变化,帮你彻底理清公式转换的来龙去脉,并掌握正规方程法的完整求解流程。
目录
- 多元线性回归正规方程法公式推导详解:从W T X + B W^T X + BWTX+B到X W XWXW的转换逻辑
- 核心问题背景
- Pandas/Python 数据结构特性
- 单样本情况下的矩阵运算逻辑
- 多样本情况下的矩阵运算逻辑
- 关键补充:偏置项B BB的矩阵化处理
- 多元线性回归:正规方程法详解
- 核心公式与变量定义
- 公式表达
- 变量含义
- 计算步骤与矩阵操作
- 总结与结论
- 核心公式与变量定义
核心问题背景
- 在多元线性回归正规方程法的推导过程中,预测值公式会出现形态转换(即从W T X + B W^T X + BWTX+B变为X W XWXW)。
- 多数学习者的困惑点在于:为何不直接使用W T X W^T XWTX,而是写成了X W XWXW?其根本原因在于数据维度的变化与底层编程语言的展示机制。
Pandas/Python 数据结构特性
- 单条数据的展示形态:在 Pandas 或 Python 环境中,严格意义上并没有独立的“行”展示概念,。当仅处理单行(单个样本)数据时,系统会将其以列(Series)的形式进行存储和展示。
- 多条数据的展示形态:当输入包含多个样本(多行数据)时,数据才会按照直观的行(Row)结构进行排列展示。
- 这一特性直接决定了后续矩阵运算中变量形状的演变路径。
单样本情况下的矩阵运算逻辑
- 权重向量W WW的形态:每个特征列对应一个权重系数(如W 1 , W 2 , W 3 , … W_1, W_2, W_3, \dotsW1,W2,W3,…),在内存中默认以列向量形式存在。
- 样本向量X XX的形态:单条样本数据同样以列向量形式展示。
- 维度冲突与转置必要性:若直接计算W × X W \times XW×X,由于两者均为列向量,不满足矩阵乘法前提,无法相乘。必须对W WW进行转置(Transpose)操作,使其变为行向量。
- 维度匹配验证:转置后W T W^TWT为1 × n 1 \times n1×n,X XX为n × 1 n \times 1n×1,完美符合左矩阵列数 = 右矩阵行数的规则,可计算出标量结果。
- 公式表达:单样本预测值写作W T X + B W^T X + BWTX+B。
多样本情况下的矩阵运算逻辑
- 数据形态转变:当输入为批量数据时,特征矩阵X XX不再是列向展示的序列,而是真实的多维矩阵(形状为m × n m \times nm×n,m mm为样本数,n nn为特征数)。
- 为何W T X W^T XWTX失效:此时X XX为m × ( n + 1 ) m \times (n+1)m×(n+1),W T W^TWT为1 × ( n + 1 ) 1 \times (n+1)1×(n+1)。左矩阵列数( n + 1 ) (n+1)(n+1)不等于右矩阵行数m mm,维度不匹配,乘法无法执行。
- 为何采用X W XWXW:
- 将X XX置于左侧,W WW置于右侧。
- 检查维度:X XX的列数为( n + 1 ) (n+1)(n+1),W WW的行数为( n + 1 ) (n+1)(n+1),严格满足A 列 = B 行的矩阵乘法条件。
- 计算机制:X XX的每一行(样本)与W WW的每一列(权重)进行逐元素相乘再求和,实现高效批量预测。
- 公式表达:多样本批量预测值统一写作X W XWXW。
关键补充:偏置项B BB的矩阵化处理
- 补全 1 列的操作:在真实特征数据的最前方额外添加一列值全为
1的数据。 - 设计目的:该列专门用于与偏置项B BB进行矩阵乘法运算(1 × B 1 \times B1×B)。通过这种方式,偏置项被无缝融入统一的矩阵乘法框架中,无需单独编写加法逻辑。
- 这也是为何特征矩阵X XX的列数始终比原始特征数多 1 的原因。
多元线性回归:正规方程法详解
- 正规方程法的理论根基是最小二乘损失函数(Least Squares Loss Function)。
- 其优化目标是使预测值与真实值之间的误差L2 范数平方和达到最小,由此数学推导可得出正规方程的精确解。
核心公式与变量定义
公式表达
多元线性回归通过**正规方程法(Normal Equation)**可直接求得权重参数的闭式解析解:
W = ( X T X ) − 1 X T Y W = (X^T X)^{-1} X^T YW=(XTX)−1XTY
变量含义
- X XX(特征矩阵):由数据集中所有样本的所有特征列拼接而成。通常首列为全 1 向量(用于拟合偏置项b bb),其余列为实际业务特征(如房屋面积、房间数等)。
- Y YY(真实标签向量):数据集对应的目标观测值(如房价)组成的列向量。
- W WW(权重系数向量):包含各特征对应的权重系数(w 1 , w 2 , … w_1, w_2, \dotsw1,w2,…)及偏置项b bb的最终求解结果。
计算步骤与矩阵操作
将实际数据代入公式时,需严格遵循矩阵运算的优先级与顺序:
- 求转置:对特征矩阵X XX进行转置操作,得到X T X^TXT(原矩阵的第i ii行变为新矩阵的第i ii列)。
- 矩阵乘法:计算X T X^TXT与X XX的乘积,得到一个方阵X T X X^T XXTX。
- 求逆矩阵:计算( X T X ) (X^T X)(XTX)的逆矩阵。该步骤的前提是矩阵必须可逆。
- 连续右乘:将求得的逆矩阵依次右乘X T X^TXT和Y YY,即完成( X T X ) − 1 X T Y (X^T X)^{-1} X^T Y(XTX)−1XTY的运算。
- 输出结果:最终计算得到的向量即为模型的最优权重参数W WW。
总结与结论
- 公式转换的本质:并非数学原理发生改变,而是因计算对象从单样本扩展至多样本,导致X XX的维度形态发生翻转,进而触发矩阵乘法顺序的调整。
- 最终规范写法:在机器学习工程实现(如 Pandas/NumPy)中,多样本预测值标准表达式为X W XWXW(偏置B BB已通过全 1 列吸收进矩阵乘法中)。
- 推导核心原则:
- 明确当前处理的是单条数据(列向展示)还是批量数据(行向展示)。
- 严格遵循矩阵乘法维度匹配原则(左矩阵列数 = 右矩阵行数)确定运算符顺序。
- 理解X W XWXW是批量计算场景下唯一满足维度规则且符合底层数据存储逻辑的正确写法。