zoukankan      html  css  js  c++  java
  • 【ML-0-1】矩阵求导-定义和求导布局

    目录

    1. 矩阵向量求导定义
    2. 矩阵向量求导布局

    机器学习中很多地方用到了标量,向量和矩阵之间的求导,计算求导确实非常麻烦,三个两两结合,就有9中基本形态,再加上转置,就更加晕乎了,因此作为后续学习基础,这个放到机器学习最前面作为先导知识。具体求导内容可见:

    张贤达的《矩阵分析与应用》,电子档文本如下:

    链接:https://pan.baidu.com/s/1iIcqAyJ1cfi2icdwgay0kw 提取码:rcwx

    一、矩阵向量求导定义

    求导其实高中就学过,基本都是标量对标量求导,也即是下图中的第一种形式,很简单就不展开。所谓向量对标量的求导,其实就是向量里的每个分量分别对标量求导,最后把求导的结果排列在一起,按一个向量表示而已。类似的结论也存在于标量对向量的求导,向量对向量的求导,向量对矩阵的求导,矩阵对向量的求导,以及矩阵对矩阵的求导等。

    若没有特殊说明,默认情况定义如下:求导的自变量用x表示标量,x表示n维向量,X表示m×n维度的矩阵,求导的因变量用y表示标量,y表示m维向量,Y表示p×q维度的矩阵。默认向量为向量,若是行向量,本文全部使用对应字母的转置表示。

    根据求导的自变量和因变量是标量,向量还是矩阵,我们有9种可能的矩阵求导定义,如下:

    自变量因变量

    标量y

    向量y

    矩阵Y

    标量x

    ∂y/∂x

    y/∂x

    Y/∂x

    向量x

    ∂y/x

    y/x

    Y/x

    矩阵X

    ∂y/X

    y/X

    Y/X

    但是向量和矩阵表示又区分行和列不同情况,实际也就是转置不同,需要统一标准,才能阅读方便,一般称之为求导布局。

    二、 矩阵向量求导布局

    最基本的求导布局有两个:分子布局(numerator layout)和分母布局(denominator layout )。总体原则:根据保持与前面向量或矩阵为一致作为默认形式 

    2.1 分子布局(numerator layout)

    一种解释:分子为 y 或者分母为 xT (即,分子为列向量或者分母为行向量)

    另一种理解:以分子为主,求导的结果的维度和分子的维度是一致的。

    如果向量y是一个m维的列向量,那么求导结果∂y/x也是一个m维列向量;

    如果向量y是一个m维的行向量,那么求导结果∂y/∂x也是一个m维行向量。

    2.2 分母布局(denominator layout )

    一种解释:分子为 y或者分母为 x (即,分子为行向量或者分母为列向量)

    另一种理解:对于分母布局来说,我们求导结果的维度以分母为主

    如果向量y是一个m维的列向量,那么求导结果∂y/∂x是一个m维行向量;

    如果向量y是一个m维的行向量,那么求导结果∂y/∂x是一个m维列向量。

    2.3 举例说明:

    总体来说还是有点绕,统一举例列表如下所示。

    2.3.1 分子布局

    标量/向量(行向量): 

    向量 (列向量)/标量:默认形式  

    向量/向量: (分子为列向量横向平铺,分母为行向量纵向平铺)默认形式 称为雅克比 (Jacobian)矩阵

    标量/矩阵:  (注意这个矩阵部分是转置的,而下面的分母布局是非转置的

    矩阵/标量默认形式 

    2.3.2 分母布局

    标量/向量 (分母的向量为列向量)默认形式 

    向量/标量:  (分子的向量为行向量)

    向量/向量: (分子为行向量纵向平铺,分母为列向量横向平铺)

    标量/矩阵  (矩阵部分为原始矩阵)默认形式 

    2.3.3 汇总

    第一种太简单,不写了,后面三种情况太难,后续再展开。均有斜杠表示。我么按照列向量来举例子,行向量取转置即可。

    自变量因变量

    标量y

    列向量ym维)

    矩阵Y(p × q)

    标量x

    /

    y/∂x

    分子布局:m维列向量(默认布局)

    分母布局:m维行向量

    Y/∂x

    分子布局:p × q矩阵(默认布局)

    分母布局:q × p矩阵

    列向量xn维)

    ∂y/∂x

    分子布局:n维行向量

    分母布局:n维列向量(默认布局)

      

    y/∂x

    分子布局:m × n雅可比矩阵(默认布局)

    分母布局:n × m梯度矩阵

    /

    矩阵X

    (p × q)

    ∂y/∂X

    分子布局:q × p矩阵

    分母布局:p × q矩阵(默认布局)

    /

    /

       

    主要来自:

    https://www.cnblogs.com/pinard/p/10750718.html

  • 相关阅读:
    二分查找
    bracketed-paste-magic:zle:41: not enough arguments for -U
    逗号表达式返回值
    requestAnimationFrame实现一帧的函数节流
    phaser常用API总结
    table表头固定问题
    接口防刷的方法
    雪碧图background-position的rem用法
    sphinx 增量索引与主索引使用测试
    msysgit ls 中文显示
  • 原文地址:https://www.cnblogs.com/yifanrensheng/p/12632456.html
Copyright © 2011-2022 走看看