精华内容
下载资源
问答
  • 张量散度

    千次阅读 2020-05-24 17:24:48
    张量的几个物理场景 应力状态 材料内部受力状况就是应力状态,应力在不同方向的大小不同,并且与感应面有关。如图所示材料某点的应力状态,可用矩阵表示 σ=(σxτxyτxzτyxσyτyzτzxτzyσz)\sigma=\begin{...

    张量的几个物理场景

    应力状态

    材料内部受力状况就是应力状态,应力在不同方向的大小不同,并且与感应面有关。在这里插入图片描述如图所示材料某点的应力状态,可用矩阵表示
    σ = ( σ x τ x y τ x z τ y x σ y τ y z τ z x τ z y σ z ) \sigma=\begin{pmatrix} \sigma_x&\tau_{xy}&\tau_{xz}\\ \tau_{yx}&\sigma_y&\tau_{yz}\\ \tau_{zx}&\tau_{zy}&\sigma_z \end{pmatrix} σ=σxτyxτzxτxyσyτzyτxzτyzσz
    这是个对称矩阵,即 τ x y = τ y x , τ x z = τ z x , τ y z = τ z y \tau_{xy}=\tau_{yx},\tau_{xz}=\tau_{zx},\tau_{yz}=\tau_{zy} τxy=τyx,τxz=τzx,τyz=τzy
    现在已知某任意平面,那么怎么求该平面上的应力状态呢?如下图所示,以平面示意
    在这里插入图片描述红色的箭头是该平面的总的应力,该总应力可以分解成垂直于平面的正应力和平行于平面的切应力。若已知平面的法矢为 n = ( n x , n y , n z ) n=(n_x,n_y,n_z) n=(nx,ny,nz),其总应力计算如下
    σ ′ = n ⋅ σ = ( n x , n y , n z ) ( σ x τ x y τ x z τ y x σ y τ y z τ z x τ z y σ z ) \sigma'=n\cdot \sigma=(n_x,n_y,n_z) \begin{pmatrix} \sigma_x&\tau_{xy}&\tau_{xz}\\ \tau_{yx}&\sigma_y&\tau_{yz}\\ \tau_{zx}&\tau_{zy}&\sigma_z \end{pmatrix} σ=nσ=(nx,ny,nz)σxτyxτzxτxyσyτzyτxzτyzσz
    那么正应力为
    σ n ′ = σ ′ / n ⋅ n = σ ′ ⋅ n ⋅ n = ( n x , n y , n z ) ( σ x τ x y τ x z τ y x σ y τ y z τ z x τ z y σ z ) ( n x n y n z ) ( n x , n y , n z ) \sigma'_n=\sigma'/n\cdot n=\sigma'\cdot n\cdot n\\=(n_x,n_y,n_z) \begin{pmatrix} \sigma_x&\tau_{xy}&\tau_{xz}\\ \tau_{yx}&\sigma_y&\tau_{yz}\\ \tau_{zx}&\tau_{zy}&\sigma_z \end{pmatrix} \begin{pmatrix} n_x\\n_y\\ n_z \end{pmatrix}(n_x,n_y,n_z) σn=σ/nn=σnn=(nx,ny,nz)σxτyxτzxτxyσyτzyτxzτyzσznxnynz(nx,ny,nz)
    切应力的为
    σ τ ′ = σ ′ ÷ n = σ ′ − σ n ′ \sigma'_\tau=\sigma'\div n=\sigma'-\sigma'_n στ=σ÷n=σσn

    转动惯量

    一个物体的转动,和平移一样,也存在惯性。转动惯量就是衡量这个惯性的大小。对于规则的物体,其转动比较容易求得,如下图所示
    在这里插入图片描述该立方块绕 x x x轴的转动惯量为 J x J_x Jx,绕 y y y轴的转动惯量为 J y J_y Jy,绕 z z z轴的转动惯量为 J z J_z Jz。那么如何求得其绕任意轴 n n n的转动惯量 J ′ J' J,如图红色所示。转动惯量也是一种张量,其数学形式如下
    J = ( J x 0 0 0 J y 0 0 0 J z ) J=\begin{pmatrix} J_x&0&0\\0&J_y&0\\ 0& 0&J_z \end{pmatrix} J=Jx000Jy000Jz
    那么绕 n n n的总转动惯量计算如下
    J ′ = n ⋅ J = ( n x , n y , n z ) ( J x 0 0 0 J y 0 0 0 J z ) J'=n\cdot J=(n_x,n_y,n_z)\begin{pmatrix} J_x&0&0\\0&J_y&0\\ 0& 0&J_z \end{pmatrix} J=nJ=(nx,ny,nz)Jx000Jy000Jz
    总的转动惯量到转轴的投影就是绕这个轴的转动惯量
    J n ′ = J ′ / n ⋅ n J'_n=J'/n\cdot n Jn=J/nn
    总的转动惯量垂直于这个轴的投影为
    J τ ′ = J ′ ÷ n J'_\tau=J'\div n Jτ=J÷n
    有个疑问,为什么会有这个垂直的转动惯量。这是因为,在物体转动的时候,两端会甩开远离轴,或者聚拢越来越接近轴,而这个转动的转动惯量就是总转动惯量垂直于这个轴的分量。

    各向异性的感应电场

    我们知道,一个电荷在真空中形成的电场是向各个方向发散,并且每个方向等强度,即等势面是球形。但如果在物质内部呢?这个电荷在物质内部形成的是感应电场(也常称为电位移矢量),并且由于很多物质都是各向异性的,也就是说电荷在不同方向的感应效果不一样,所以等势面试是椭球,如下图所示
    在这里插入图片描述
    其实所有三维张量都可以用椭球表示,二维张量可以用椭圆表示。
    电荷在真空发出的电场为
    E = Q 4 π r 2 ( ϵ 0 0 0 ϵ 0 0 0 ϵ ) E=\frac{Q}{4\pi r^2}\begin{pmatrix} \epsilon&0&0\\0&\epsilon&0\\0&0&\epsilon \end{pmatrix} E=4πr2Qϵ000ϵ000ϵ
    电荷在各向异性物质内感应的电场为
    D = Q 4 π r 2 ( ϵ x x ϵ x y ϵ x z ϵ y x ϵ y y ϵ y z ϵ z x ϵ z y ϵ z z ) D=\frac{Q}{4\pi r^2}\begin{pmatrix} \epsilon_{xx}&\epsilon_{xy}&\epsilon_{xz}\\\epsilon_{yx}&\epsilon_{yy}&\epsilon_{yz}\\\epsilon_{zx}&\epsilon_{zy}&\epsilon_{zz} \end{pmatrix} D=4πr2Qϵxxϵyxϵzxϵxyϵyyϵzyϵxzϵyzϵzz
    该式中的矩阵为对称矩阵,即 ϵ x y = ϵ y x , ϵ x z = ϵ z x , ϵ y z = ϵ z y \epsilon_{xy}=\epsilon_{yx},\epsilon_{xz}=\epsilon_{zx},\epsilon_{yz}=\epsilon_{zy} ϵxy=ϵyx,ϵxz=ϵzx,ϵyz=ϵzy。矩阵中 ϵ i j = ϵ i j r ϵ \epsilon_{ij}=\epsilon^r_{ij}\epsilon ϵij=ϵijrϵ,其中 ϵ i j r \epsilon^r_{ij} ϵijr为方向 i j ij ij的相对介电系数,所以任意方向的感应电场强度为
    D ′ = n ⋅ D = ( n x , n y , n z ) ( ϵ x x ϵ x y ϵ x z ϵ y x ϵ y y ϵ y z ϵ z x ϵ z y ϵ z z ) D'=n\cdot D=(n_x,n_y,n_z)\begin{pmatrix} \epsilon_{xx}&\epsilon_{xy}&\epsilon_{xz}\\\epsilon_{yx}&\epsilon_{yy}&\epsilon_{yz}\\\epsilon_{zx}&\epsilon_{zy}&\epsilon_{zz} \end{pmatrix} D=nD=(nx,ny,nz)ϵxxϵyxϵzxϵxyϵyyϵzyϵxzϵyzϵzz
    其大小为
    ∣ D ′ ∣ = D ′ / n = D ′ ⋅ n = ( n x , n y , n z ) ( ϵ x x ϵ x y ϵ x z ϵ y x ϵ y y ϵ y z ϵ z x ϵ z y ϵ z z ) ( n x n y n z ) |D'|=D'/n=D'\cdot n=(n_x,n_y,n_z)\begin{pmatrix} \epsilon_{xx}&\epsilon_{xy}&\epsilon_{xz}\\\epsilon_{yx}&\epsilon_{yy}&\epsilon_{yz}\\\epsilon_{zx}&\epsilon_{zy}&\epsilon_{zz} \end{pmatrix} \begin{pmatrix} n_x\\n_y\\n_z \end{pmatrix} D=D/n=Dn=(nx,ny,nz)ϵxxϵyxϵzxϵxyϵyyϵzyϵxzϵyzϵzznxnynz
    这就是一个二次型,其图像就是椭球,所以说张量可以用椭球表示。

    张量的散度

    我们知道张量可以表示感应电场,其实他可以表示任意种不同方向不同大小和方向的场,也就是张量场。既然有场,那就有散度的概念。已知下面的张量
    M = ( a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ) M=\begin{pmatrix} a_{11}&a_{12}&a_{13}\\a_{21}&a_{22}&a_{23}\\a_{31}&a_{32}&a_{33} \end{pmatrix} M=a11a21a31a12a22a32a13a23a33
    那么该场为
    f = ( x , y , z ) ( a 11 a 12 a 13 a 21 a 22 a 23 a 31 a 32 a 33 ) f=(x,y,z)\begin{pmatrix} a_{11}&a_{12}&a_{13}\\a_{21}&a_{22}&a_{23}\\a_{31}&a_{32}&a_{33} \end{pmatrix} f=(x,y,z)a11a21a31a12a22a32a13a23a33
    散度有两种计算方式,一种是极限的计算方式
    d i v f = lim ⁡ v → 0 ∮ s f d s / v div f=\lim_{v \to 0}\oint_{s}fds/v divf=v0limsfds/v
    还有一种方式为 d i v f = ∇ ⋅ f = ∂ f ∂ x + ∂ f ∂ y + ∂ f ∂ z div f=\nabla \cdot f=\frac{\partial f}{\partial x}+\frac{\partial f}{\partial y}+\frac{\partial f}{\partial z} divf=f=xf+yf+zf
    采用第二种比较容易计算,那么张量场的散度为
    d i v f = ∇ ⋅ f = a 11 + a 22 + a 33 div f=\nabla \cdot f=a_{11}+a_{22}+a_{33} divf=f=a11+a22+a33
    也就是说张量的散度就是张量的迹,可知一个方阵无论经过什么样的相似变换,它的迹不变;也就是说场无论经过什么样的坐标变换,它的散度不变。

    展开全文
  • 该程序使用 tKL 找到一组张量的中心参考: Baba C. Vemuri, Meizhu Liu, Shun-Ichi Amari 和 Frank Nielsen, 总 Bregman 散度及其在 DTI 分析中的应用, IEEE 医学影像学报 (TMI'10),2010 年。 Meizhu Liu、Baba C...
  • 张量分解浅谈(二 CP NMF 张量秩)

    千次阅读 多人点赞 2020-07-18 22:59:26
    欢迎大家来到这一期的张量分解博客学习,本期博客的主要内容就是标题,难度会加大,本人也有写的错误的地方,烦请大家不吝赐教!

    欢迎大家来到这一期的张量分解博客学习,本期博客的主要内容就是标题,难度会加大,本人也有写的错误的地方,烦请大家不吝赐教!

    一. CANDECOMP/PARAFAC分解法

    CANDECOMP(canonical decomposition)和PARAFAC(parallel factors)是一种对高维张量进行拆分的方法, 其核心思想是用有限个的秩1张量的和来(近似地)表示该张量. 这种方法被很多人独立的发现, 不考虑历史上的因素, 我们将其称为CP分解法 (CP decomposition) !

    其实你可以这么理解:

    CP分解是将一个高维的张量,分解成多个核的和,每个核是由向量的外积组成;通过这样的分解,我们可以大大地降低参数的维度。其实,不止CP分解,其他的张量分解算法都是同个道理,只是所采用的分解方法不同而已。当然,这样的分解只是原来张量的近似,没办法保证完全复原。从以上角度来说,张量分解的目的跟矩阵分解是相同的,只是一个是在二维上的分解,另一个是在高维上的分解而已!

    这就要陆续的结合我们之前铺垫的相关知识了,检测前几期博客是否认真学习的时候到了,我们先看定义:

    在这里插入图片描述
    小伙伴们千万别把它想得有多复杂,且听我一步一步的慢慢道来:

    如果我们要把一个3阶张量 X ∈ R I × J × K \mathcal{X} \in \mathbb{R}^{I\times J\times K} XRI×J×K 进行CP分解, 其结果如下:

    X ≈ ∑ r = 1 R a r ∘ b r ∘ c r \mathcal{X} \approx \sum_{r=1}^{R} a_{r}\circ b_{r} \circ c_{r} Xr=1Rarbrcr
    这里的 ∘ \circ 是外积的意思!

    根据上面的图,我们知道这里的 a r a_{r} ar 之类的都是向量,通过三者之间的外积,组成一个新的矩阵,之后将新得到的矩阵求和,就是新的矩阵了, 通过外积的定义, 对张量中的每个元素都有:

    x i j k ≈ ∑ r = 1 R a i r b j r c k r  for  i = 1 , … , I , j = 1 , … , J , k = 1 , … , K x_{i j k} \approx \sum_{r=1}^{R} a_{i r} b_{j r} c_{k r} \text { for } i=1, \ldots, I, j=1, \ldots, J, k=1, \ldots, K xijkr=1Rairbjrckr for i=1,,I,j=1,,J,k=1,,K
    (这一步知道就行)

    我们称那些上式中通过外积组成秩1张量元素的向量集合为 因子矩阵(factor matrices),图片理解如下:
    在这里插入图片描述
    例如, A = [ a 1 a 2 … a R ] \mathbf{A}=\left[\begin{array}{llll}a_{1} & a_{2} & \ldots & a_{R}\end{array}\right] A=[a1a2aR] ,类似的,我们构造 B \mathbf{B} B C \mathbf{C} C ,利用这些定义, CP分解可以被等价写作以下矩阵形式. 注意, 其左侧都是张量的对应mode的矩阵化:
    在这里插入图片描述
    这个的小圆圈里面还有一点的符号代表的是 Khatri−Rao 积!

    接下来通过例子,帮助大家理解:

    在这里插入图片描述
    仔细观察这个例子,相信你很快就会发现它们的规律。

    我们也可以将前面的张量式子改写为horizontal slices和lateral slices的形式, 需要注意的是, 这种以slice切片为主体的表达很难延伸到超过3维的张量之中. 利用Kolda的命名方式, 也可以进一步简化CP模型:
    X ≈ [ A , B , C ] ≡ ∑ r = 1 R a r ∘ b r ∘ c r \mathcal{X} \approx[\mathrm{A}, \mathrm{B}, \mathrm{C}] \equiv \sum_{r=1}^{R} \mathrm{a}_{r} \circ \mathrm{b}_{r} \circ \mathrm{c}_{r} X[A,B,C]r=1Rarbrcr

    为了便利, 我们通常假设 A \mathbf{A} A B \mathbf{B} B C \mathbf{C} C s的列向量都是归一化的(normalized). 而原本的比重(weights)则被对应的向量所吸收, 写作以下形式:
    在这里插入图片描述
    到现在为止, 我们都把注意力放在了3维张量上. 这是因为3维张量恰恰是应用当中最为广泛也是足够满足我们需求的张量. 对于一个N阶的张量 X ∈ R I 1 × I 2 × ⋯ I N \mathcal{X} \in \mathbb{R}^{I_{1}\times I_{2} \times \cdots I_{N}} XRI1×I2×IN来说,他的CP分解可以被写为:
    在这里插入图片描述
    CP分解并未结束,后面的知识逐渐完善之后我们再看!

    二. 张量的秩

    前面说过一个张量能够被写成N个向量的外积就是秩为一的,我们举个例子让大家看一下:
    在这里插入图片描述
    大家应该能猜到这里的 | 表示有重叠的那种意思!那么显然,这就是一个秩为一的张量!

    张量的秩,记作 r a n k ( X ) rank(\mathcal{X}) rank(X) , 我们可以将它 “拆开” ,拆成秩为一的张量之和,那么新张量的数目之和就是这原张量的秩:

    在这里插入图片描述
    显然,这个张量的秩就是2!
    故:

    如果一个张量能够以一个秩一张量的和表示,那么其秩则为1。
    如果一个张量能够以两个秩一张量的和表示,那么其秩则为2。
    如果一个张量能够以三个秩一张量的和表示,那么其秩为3。
    以此类推…

    虽然理论上是这样,但是在真正的高维张量求秩的时候还是非常棘手的,目前木有特定的算法可以直接得到某给定张量的秩,一般的时候都是像上面一下用cp分解尝试!

    三. 非负矩阵分解 (NMF)

    通常的矩阵分解会把一个大的矩阵分解为多个小的矩阵,但是这些矩阵的元素有正有负。而在现实世界中,比如图像,文本等形成的矩阵中负数的存在是没有意义的,所以如果能把一个矩阵分解成全是非负元素是很有意义的。在NMF中要求原始的矩阵的所有元素的均是非负的,那么矩阵可以分解为两个更小的非负矩阵的乘积,这个矩阵有且仅有一个这样的分解,即满足存在性和唯一性

    NMF的基本思想:
    NMF的基本思想可以简单描述为:对于任意给定的一个非负矩阵A,NMF算法能够寻找到一个非负矩阵U和一个非负矩阵V,使得满足 ,从而将一个非负的矩阵分解为左右两个非负矩阵的乘积!

    对于给定矩阵 V ∈ R + F × N \boldsymbol{V}\in \boldsymbol{R_{+}^{F \times N}} VR+F×N,我们需要寻找 非负矩阵 W ∈ R + F × K \boldsymbol{W}\in \boldsymbol{R_{+}^{F \times K}} WR+F×K H ∈ R + K × N \boldsymbol{H}\in \boldsymbol{R_{+}^{K \times N}} HR+K×N使得:
    V ≈ W H \boldsymbol{V}\approx \boldsymbol{W}\boldsymbol{H} VWH

    如下图:
    在这里插入图片描述
    需要注意的是,这里用了约等于,和CP分解是一个道理:当前解法并非精确解,只是数值上的近似解!

    分解前后可理解为:原始矩阵 V \boldsymbol{V} V的列向量是对左矩阵 W \boldsymbol{W} W中所有列向量的加权和,而权重系数就是右矩阵对应列向量的元素,故称 W \boldsymbol{W} W为基矩阵, H \boldsymbol{H} H为系数矩阵。一般情况下 K \boldsymbol{K} K的选择要比 N \boldsymbol{N} N小,即满足 ( F × N ) K ⩽ F N (F\times N)K\leqslant FN (F×N)KFN,这时用系数矩阵代替原始矩阵,就可以实现对原始矩阵进行降维,得到数据特征的降维矩阵,从而减少存储空间,减少计算机资源!
    在这里插入图片描述
    其实说到这里,肯定还有小白不知道这个非负矩阵到底是干什么的,我用电影评分举一个简单的例子:

    比如:
    一个电影里如果只考虑爱情和动作两个因素。
    一个用户也一定会有给爱情打分多一点还是喜欢动作多一点。在这里插入图片描述
    期望就是我们已知下面的矩阵,而期望分解出比较合理的上面两个矩阵。这样就可以用来预测别的用户对别的电影的看法了!当然我这样举例其实是非常不严谨的,但是好理解!

    那么了解的这些东西之后,最大的问题就来了,我们如何能够求解这分解的非负矩阵呢??

    NMF求解问题实际上是一个最优化问题,利用乘性迭代的方法求解和,非负矩阵分解是一个NP问题。NMF 问题的目标函数有很多种,应用最广泛的就是欧几里得距离KL散度.

    在这里插入图片描述

    第一个式子我们可以理解为损失函数,需要我们求解其最小值是对应的各个矩阵,如果你用编程实现的话使用的是:乘法更新发展的迭代更新算法,其将矩阵分解算法转化为如下的优化问题,即最小化两个矩阵之间的欧几里得距离的优化问题:
    在这里插入图片描述
    感兴趣的同学可以了解一下上面的这个迭代跟新算法,其实非常好理解!

    上面都是理论部分,看不懂也莫慌,时间是检验真理的唯一标准,我们玩个小游戏:
    在这里插入图片描述
    这个图我们刚刚见过,但是显然其包含的信息远不止上面那么简单,我们更多的是看它内在蕴含的规律;

    游戏规则是这样的,任何图形乘以黑圆是它本身,任意图形加上圆形是它本身。举个例子, W \boldsymbol{W} W矩阵中的第二行(图中红笔圈起来的一个白圆,一个红三角)乘上H矩阵中四列,由于:
    白圆 × \times ×黑圆=白圆
    红三角 × \times ×黑圆=红三角
    白圆+红三角=红三角
    因此在V矩阵中,第二行第四列的元素为红三角;
    但同时我们也应该关注到, W \boldsymbol{W} W H \boldsymbol{H} H相乘并不能完全还原矩阵V.依然举例说明, V \boldsymbol{V} V矩阵中,第六行(也即是倒数第二行),第一列是一个白圆.
    由于W第六行是一个白圆,一个红三角. H第一列是两个白圆。
    白圆 × \times × 白圆=白圆;
    红三角 × \times ×白圆=红三角;
    白圆+红三角= 红三角;
    而原矩阵中的对应结果显然不符我们推测的结果,这也间接说明我们为什么要用约等于号 !

    这样的处理方法会让我直接想到神经网络中的示意图也是类似于这样的感觉,看下面这个图:

    在这里插入图片描述
    这个图非常好理解,通过前面定义的系数矩阵和基(特征)矩阵,将系数矩阵的每一列 h 1 , h 2 , ⋯ h n \boldsymbol{h_{1},h_{2},\cdots h_{n}} h1,h2,hn 排成上面蓝色的小球球,一次乘以矩阵 W \boldsymbol{W} W 原矩阵的 每一列 v \boldsymbol{v} v 就求出来了,它将原矩阵,权重矩阵以及特征矩阵的关系更加清晰的展现出来了,我们可以看到系数与特征进行线性操作之后可以得到原矩阵,其和神经网络的本质也是一样的,神经网络靠着对特征的学习,得出权重,也是以权重乘以特征的方式去得到最终的答案.NMEE理上等性方程组,这个理解了上面的示意图就非常简单了!

    NMF算法在是真正实现的是时候还有一个特别的地方,就是分解新矩阵的参数K的选择,这就像神经网络里面的调参一样,是个玄学,其中不同的K对于不同模型情况如下:

    • 数据拟合:K越大那么对于数据拟合更好。
    • 模型复杂性:一个更小的K模型更简单(易于预测、少输入参数等)

    下面为声频处理时候不同K的表现:

    在这里插入图片描述

    本期的博客学习就到这里了,下一期我会向大家详细的介绍 张量的另一种分解方法—— 压缩与Tucker分解法,并简单的看一下奇异值分解的相关内容,大家加油!

    展开全文
  • 一文搞懂散度

    万次阅读 多人点赞 2018-09-29 23:27:28
    Divergence Measures 介绍 在机器学习中,我们常常需要用一...而这一个目标函数,正是Divergence(散度),比如常见的KL-Divergence,JS-Divergence等等。通过这个散度的计算我们就能不断地去优化我们的Q,寻找一个最...

    Divergence Measures

    介绍

    在机器学习中,我们常常需要用一个分布Q去逼近一个目标分布P,我们希望能够找到一个目标函数 D ( Q , P ) D( Q,P) D(Q,P),计算Q到P的距离。而这一个目标函数,正是Divergence(散度),比如常见的KL-Divergence,JS-Divergence等等。通过这个散度的计算我们就能不断地去优化我们的Q,寻找一个最优的参数去逼近真实的分布P。注意,散度跟距离不一样,他没有距离的对称性( d ( x , y ) = d ( y , x ) d(x,y)=d(y,x) d(x,y)=d(y,x))或是三角不等式( d ( x , y ) ≤ d ( x , z ) + d ( z , y ) d(x,y) \leq d(x,z)+d(z,y) d(x,y)d(x,z)+d(z,y))的要求。

    KL-Divergence 一种信息论的解释

    在机器学习中,最常见的散度就是KL散度了(它还有很多名字,比如:relative entropy, relative information。),那么KL散度究竟是何方神圣?它的著名到底是历史的原因还是因为它本身优良的性质呢?

    用一句话来说,KL散度, K L ( P ∥ Q ) KL(P\| Q) KL(PQ)可以理解为,用来衡量在同一份数据P下,使用P的编码方案和Q的编码方案的平均编码长度的差异

    为了理解这个问题,我们先从熵讲起。一个随机变量X的概率密度函数为 p ( x ) p( x) p(x),那么X的熵定义为:
    H ( X ) = − ∑ x p ( x ) log ⁡ 2 p ( x ) H( X) =-\sum _{x} p( x)\log_{2} p( x) H(X)=xp(x)log2p(x)
    这里用2为底数就表示比特。熵可以看做是一个分布的不确定的程度,显然,在离散的情况下,均匀分布的熵总是最大的,此时的不确定性也是最大的。从信息的角度来看,熵是为了描述该随机变量所需要的平均比特数。

    例子:考虑一个服从均匀分布且有32种可能结果的随机变量。为了确定一个结果,我们需要5个比特的编码来告诉我们到底出现了哪种可能。该随机变量的熵恰好为:
    H ( X ) = − ∑ i = 1 32 1 32 log ⁡ 2 1 32 = 5   比 特 H( X) =-\sum ^{32}_{i=1}\frac{1}{32}\log_{2}\frac{1}{32} =5\ 比特 H(X)=i=132321log2321=5 
    在这种情况下,每个可能出现的状态的长度都是一样的,他们长度都是5个比特。但是如果随机变量不是均匀分布呢?在这种情况下,我们完全可以让出现概率较大的结果给他分配一个比较小的编码长度,从而总体的平均编码长度可以下降。

    例子: 有8匹马参加赛马比赛。8匹马的胜率分布为: P = { 1 2 , 1 4 , 1 8 , 1 16 , 1 64 , 1 64 , 1 64 , 1 64 } P=\left\{\frac{1}{2} ,\frac{1}{4} ,\frac{1}{8} ,\frac{1}{16} ,\frac{1}{64} ,\frac{1}{64} ,\frac{1}{64} ,\frac{1}{64}\right\} P={21,41,81,161,641,641,641,641},可以计算该比赛的熵为:
    H ( X ) = − 1 2 log ⁡ 2 1 2 − 1 4 log ⁡ 2 1 4 − 1 8 log ⁡ 2 1 8 − 1 16 log ⁡ 2 1 16 − 4 ∗ 1 64 log ⁡ 2 1 64 = 2   比 特 H( X) =-\frac{1}{2}\log_{2}\frac{1}{2} -\frac{1}{4}\log_{2}\frac{1}{4} -\frac{1}{8}\log_{2}\frac{1}{8} -\frac{1}{16}\log_{2}\frac{1}{16} -4*\frac{1}{64}\log_{2}\frac{1}{64} =2\ 比特 H(X)=21log22141log24181log281161log21614641log2641=2 

    此时,假定我们要把哪匹马会获胜的消息发送出去, 其中一个策略是发送胜出马的编号。 这样, 对任何一匹马, 描述需要3比特。 但由于获胜的概率不是均等的, 因此, 明智的方法是对获胜可能性较大的马使用较短的描述, 而对获胜可能性较小的马使用较长的描述。 这样做, 我们会获得一个更短的平均描述长度。 例如,使用以下的一组二元字符串来表示8匹马:0, 10, 110, 1110, 111100, 111101, 111110,111111。 此时, 平均描述长度为2比特, 比使用等长编码时所用的3比特小。可以证明任何随机变量的熵必为表示这个随机变量所需要的平均比特数的一个下界。注意到这里的 − log ⁡ 2 1 2 = 1 , − log ⁡ 2 1 4 = 2... − log ⁡ 2 1 64 = 6 -\log_{2}\frac{1}{2} =1,-\log_{2}\frac{1}{4} =2...-\log_{2}\frac{1}{64} =6 log221=1,log241=2...log2641=6恰好对应着最优编码的长度!也就是说,我们理解 log ⁡ 2 p ( x ) \log_{2} p( x) log2p(x)为分布p在x上的最优的编码长度

    那么如果,我们换一套编码方案去表示这场比赛会怎样?假设另外一场赛马比赛的胜率分布为均匀分布: Q = { 1 8 , 1 8 , 1 8 , 1 8 , 1 8 , 1 8 , 1 8 , 1 8 } Q=\left\{\frac{1}{8} ,\frac{1}{8} ,\frac{1}{8} ,\frac{1}{8} ,\frac{1}{8} ,\frac{1}{8} ,\frac{1}{8} ,\frac{1}{8}\right\} Q={81,81,81,81,81,81,81,81},显然它对应的最优编码一定是,每匹马都是3个比特,因为他们服从均匀分布。那么在均匀分布的编码下这场比赛的平均编码长度是:
    ( 1 2 + 1 4 + 1 8 + 1 16 + 1 64 + 1 64 + 1 64 + 1 64 ) ∗ 3 = 3 \left(\frac{1}{2} +\frac{1}{4} +\frac{1}{8} +\frac{1}{16} +\frac{1}{64} +\frac{1}{64} +\frac{1}{64} +\frac{1}{64}\right) *3=3 (21+41+81+161+641+641+641+641)3=3
    也就是说,使用Q方案的编码,在这次比赛中,他的平均编码长度比最优的编码多了1比特!而这,正是P和Q的KL散度!即 K L ( P ∥ Q ) = 1 KL( P\| Q) =1 KL(PQ)=1,可以验证:
    K L ( P ∥ Q ) = ∑ x P ( x ) log ⁡ 2 P ( x ) Q ( x ) = 1 KL( P\| Q) =\sum _{x} P( x)\log_{2}\frac{P( x)}{Q( x)} =1 KL(PQ)=xP(x)log2Q(x)P(x)=1

    此外,KL散度还可以写作: K L ( P ∥ Q ) = ∑ x P ( x ) log ⁡ 2 P ( x ) − ∑ x P ( x ) log ⁡ 2 Q ( x ) KL( P\| Q) =\sum _{x} P( x)\log_{2} P( x) -\sum _{x} P( x)\log_{2} Q( x) KL(PQ)=xP(x)log2P(x)xP(x)log2Q(x)$ $所以,我们可以理解为,在同一份数据P下,使用P的编码方案和Q的编码方案的平均编码长度的差异。

    散度的性质

    下面介绍3个公理,注意,只有KL距离能够满足下面所有的公理。

    1. Locality. 该性质可以认为该距离是一个关于“点”的距离,通过比较每个点的距离从而得到整个分布的距离,即,相对信息可以写成: D ( Q , P ) = ∫ f ( q ( x ) , p ( x ) , x ) d x D( Q,P) =\int f( q( x) ,p( x) ,x) dx D(Q,P)=f(q(x),p(x),x)dx, 其中f是一个任意的函数,我们只比较 q ( x ) , p ( x ′ ) q( x) ,p( x') q(x),p(x) x = x ′ x=x' x=x上的距离,当然我们可以推广到右梯度的情况,不过本质上还是点与点之间的比较: D ( Q , P ) = ∫ f ( q ( x ) , p ( x ) , x , ∇ q ( x ) , ∇ p ( x ) ) d x D( Q,P) =\int f( q( x) ,p( x) ,x,\nabla q( x) ,\nabla p( x)) dx D(Q,P)=f(q(x),p(x),x,q(x),p(x))dx
    2. Coordinate invariance坐标不变性,不管坐标系怎么办,两个分布的散度都应该是不变的,形式化的说,如果x存在一个变换 ϕ \phi ϕ使得 x ~ = ϕ ( x ) \tilde{x} =\phi ( x) x~=ϕ(x),那么变换后的散度满足: D ( Q ~ , P ~ ) = ∫ f ( q ~ ( x ~ ) , p ( x ~ ) , x ~ ) d x ~ = ∫ f ( ( q ∘ ϕ − 1 ) ( x ~ ) ∣ det ⁡ ∂ ϕ ∂ x ∣ , ( q ∘ ϕ − 1 ) ( x ~ ) ∣ det ⁡ ∂ ϕ ∂ x ∣ , ϕ − 1 ( x ~ ) ) d x ~ = D ( Q , P ) D\left(\tilde{Q} ,\tilde{P}\right) =\int f\left(\tilde{q}\left(\tilde{x}\right) ,p\left(\tilde{x}\right) ,\tilde{x}\right) d\tilde{x} =\int f\left(\frac{\left( q\circ \phi ^{-1}\right)\left(\tilde{x}\right)}{|\det\frac{\partial \phi }{\partial x} |} ,\frac{\left( q\circ \phi ^{-1}\right)\left(\tilde{x}\right)}{|\det\frac{\partial \phi }{\partial x} |} ,\phi ^{-1}\left(\tilde{x}\right)\right) d\tilde{x} =D( Q,P) D(Q~,P~)=f(q~(x~),p(x~),x~)dx~=f(detxϕ(qϕ1)(x~),detxϕ(qϕ1)(x~),ϕ1(x~))dx~=D(Q,P)
    3. Subsystem independence,如果存在子系统相互独立,那么考虑 p ( x 1 , x 2 ) p( x_{1} ,x_{2}) p(x1,x2) p ( x 1 ) p ( x 2 ) p( x_{1}) p( x_{2}) p(x1)p(x2)就是等价的。换句话说,这里存在对数可加性(这里或许我理解的不对,详情请看[2])

    实际上,如果不需要满足或部分满足上面的公理,我们就能得到各种各样不同的divergence。但是,违反公理2会导致梯度的计算有偏,违反公理3会导致计算开销很大。这也从侧面反应出,KL距离是表示相对信息最合理的一个。

    1. f-divergences, D f ( Q , P ) = ∫ f ( q ( x ) p ( x ) ) p ( x ) d x D_{f}( Q,P) =\int f\left(\frac{q( x)}{p( x)}\right) p( x) dx Df(Q,P)=f(p(x)q(x))p(x)dx,其中f是任意的strictly convex function,当 f ≠ x log ⁡ x f\neq x\log x f̸=xlogx时,他违反了公理3.
    2. Stein divergence, D ( Q , P ) = sup ⁡ f ∈ F E q [ ∇ log ⁡ p ( x ) f ( x ) + ∇ f ( x ) ] 2 D( Q,P) =\sup _{f\in \mathcal{F}} E_{q}[ \nabla \log p( x) f( x) +\nabla f( x)]^{2} D(Q,P)=supfFEq[logp(x)f(x)+f(x)]2,其中f是所有满足 E p [ ∇ log ⁡ p ( x ) f ( x ) + ∇ f ( x ) ] = 0 E_{p}[ \nabla \log p( x) f( x) +\nabla f( x)] =0 Ep[logp(x)f(x)+f(x)]=0的平滑函数。违反公理2,3
    3. Craner/energy distance D ( Q , P ) = 2 E [ ∥ x − y ∥ ] − E [ ∥ x − x ′ ∥ ] − E [ ∥ y − y ′ ∥ ] D( Q,P) =2E[ \| x-y\| ] -E[ \| x-x'\| ] -E[ \| y-y'\| ] D(Q,P)=2E[xy]E[xx]E[yy], 其中 x , x ′ ∼ P x,x'\sim P x,xP, y , y ′ ∼ Q y,y'\sim Q y,yQ,违反所有公理。如果将Euclidean norm$| \ | $换成geodesic distance 可以满足公理2.
    4. Wasserteub dustabce D p ( Q , P ) = [ inf ⁡ ρ ∫ d x d x ′ ∥ x − x ′ ∥ p ρ ( x , x ′ ) ] 1 p D_{p}( Q,P) =\left[\inf_{\rho }\int dxdx'\| x-x'\| ^{p} \rho ( x,x')\right]^{\frac{1}{p}} Dp(Q,P)=[infρdxdxxxpρ(x,x)]p1其中 ρ : R d × R d → R + \rho :\mathbb{R}^{d} \times \mathbb{R}^{d}\rightarrow \mathbb{R}^{+} ρ:Rd×RdR+是一个密度函数,其边缘密度满足 ρ ( x ) = q ( x ) , ρ ( x ′ ) = p ( x ) \rho( x) =q( x) ,\rho ( x') =p( x) ρ(x)=q(x),ρ(x)=p(x),这个 ρ \rho ρ应该可以给定边缘密度然后用copula函数来构造。该距离违反所有3个公理。如果将Euclidean norm ∣ ∣   ∣ ∣ ||\ ||  换成geodesic distance 可以满足公理2.
    5. Fisher distance D ( Q , P ) = E p [ ∥ ∇ x ln ⁡ p ( x ) − ∇ x ln ⁡ q ( x ) ∥ 2 ] D( Q,P) =E_{p}\left[ \| \nabla _{x}\ln p( x) -\nabla _{x}\ln q( x) \| ^{2}\right] D(Q,P)=Ep[xlnp(x)xlnq(x)2],满足公理1,还可以推广到度量空间从而满足不变性,满足公理2.
    6. Max-min distance (MMD) D ( Q , P ) = sup ⁡ f ( E [ f ] Q − E [ f ] P ) D( Q,P) =\sup _{f}( E[ f]_{Q} -E[ f]_{P}) D(Q,P)=supf(E[f]QE[f]P),其中f连续有界。违反公理3.

    散度的不变性

    当数据的坐标系发生变换后,两个分布的散度还是一样的吗?如果不能他会变成怎样?这一节就是为了探索这个问题。

    在这里插入图片描述

    在上图x是没有变换的坐标系,而 x ~ = ϕ ( x ) \tilde{x} =\phi ( x) x~=ϕ(x)则是经过一个可逆函数$\phi $变换后得到的值,经过变换后,下表列出了所有统计量会出现的变化

    在这里插入图片描述

    根据表格的公式,我们可以发现两个有趣的事实

    1. 即使坐标发生了变化,但是密度与测度的乘积是不变的: p ~ ( x ~ ) d x ~ = p ∘ ϕ − 1 ( x ~ ) ∣ det ⁡ ∂ ϕ ∂ x ∣ ∣ det ⁡ ∂ ϕ ∂ x ∣ d x = p ( x ) d x \tilde{p}\left(\tilde{x}\right) d\tilde{x} =\frac{p\circ \phi ^{-1}\left(\tilde{x}\right)}{|\det\frac{\partial \phi }{\partial x} |} |\det\frac{\partial \phi }{\partial x} |dx=p( x) dx p~(x~)dx~=detxϕpϕ1(x~)detxϕdx=p(x)dx

    2. 概率密度的比率也是不变的: p ~ ( x ~ ) q ~ ( x ~ ) = \frac{\tilde{p}\left(\tilde{x}\right)}{\tilde{q}\left(\tilde{x}\right)} = q~(x~)p~(x~)= p ∘ ϕ − 1 ( x ~ ) ∣ det ⁡ ∂ ϕ ∂ x ∣ \frac{p\circ \phi ^{-1}\left(\tilde{x}\right)}{|\det\frac{\partial \phi }{\partial x} |} detxϕpϕ1(x~) ∣ det ⁡ ∂ ϕ ∂ x ∣ q ∘ ϕ − 1 ( x ~ ) = p ( x ) q ( x ) \frac{|\det\frac{\partial \phi }{\partial x} |}{q\circ \phi ^{-1}\left(\tilde{x}\right)} =\frac{p( x)}{q( x)} qϕ1(x~)detxϕ=q(x)p(x)

    性质2恰恰说明了为什么在统计学中为什么似然比率这么常见,因为对于比率来说,他对数据的坐标系是不敏感的。同时这也说明了为什么散度只有在 D ( P , Q ) = ∫ f ( p ( x ) , q ( x ) , x ) d x = ∫ f ( p ( x ) q ( x ) ) p ( x ) d x D( P,Q) =\int f( p( x) ,q( x) ,x) dx=\int f\left(\frac{p( x)}{q( x)}\right) p( x) dx D(P,Q)=f(p(x),q(x),x)dx=f(q(x)p(x))p(x)dx时才会有invariant的性质(f-divergences)

    如果散度中包含梯度,想要满足invariant的性质就更加困难了,因为梯度经过变换后是会形成一个张量的,想要有不变性,我们必须把这个张量给消除掉(乘一个逆)。举个例子,对于 ( ∇ x ln ⁡ p ( x ) ) T ∇ x ln ⁡ p ( x ) ( \nabla _{x}\ln p( x))^{T} \nabla _{x}\ln p( x) (xlnp(x))Txlnp(x)来说肯定不满足不变性,如果要满足就要在他们中间乘一个张量G来消掉他们的变化: ( ∇ x ln ⁡ p ( x ) ) T G − 1 ∇ x ln ⁡ p ( x ) ( \nabla _{x}\ln p( x))^{T} G^{-1} \nabla _{x}\ln p( x) (xlnp(x))TG1xlnp(x) . 也就是说,对于Fisher distance,需要将 L 2 L_{2} L2 norm的散度,替换成可以抵消其变化的模才能保证其不变性。

    补充:MMD :maximum mean discrepancy

    MMD:
    D ( Q , P ) = sup ⁡ f ∈ F ( E [ f ] Q − E [ f ] P ) D( Q,P) =\sup _{f\in \mathcal{F}}( E[ f]_{Q} -E[ f]_{P}) D(Q,P)=fFsup(E[f]QE[f]P)
    MMD的思想是两个分布是相同的,那么对于任意变换后的均值也应该是相等的,那么这个函数到底取什么呢?其中的一种方法就是用kernel trick,该方法认为f是将x映射到希尔伯特空间上的映射,用$\phi $表示,于是其散度可以用以下kernel函数计算。
    ∥ 1 m ∑ i = 1 m ϕ ( x i ) − 1 n ∑ j = 1 n ϕ ( y i ) ∥ H 2 = &lt; 1 m ∑ i = 1 m ϕ ( x i ) − 1 n ∑ j = 1 n ϕ ( y i ) , 1 m ∑ i = 1 m ϕ ( x i ) − 1 n ∑ j = 1 n ϕ ( y i ) &gt; = 1 m 2 &lt; ∑ i = 1 m ϕ ( x i ) , 1 m ∑ i = 1 m ϕ ( x i ) &gt; + . . . = 1 m 2 ∑ i = 1 m ∑ j = 1 m k ( x i , x j ) + 1 n 2 ∑ i = 1 n ∑ j = 1 n k ( y i , y j ) − 2 m n ∑ i = 1 m ∑ j = 1 n k ( x i , y j ) \begin{aligned} \| \frac{1}{m}\sum ^{m}_{i=1} \phi ( x_{i}) -\frac{1}{n}\sum ^{n}_{j=1} \phi ( y_{i}) \| ^{2}_{\mathcal{H}} &amp; =&lt; \frac{1}{m}\sum ^{m}_{i=1} \phi ( x_{i}) -\frac{1}{n}\sum ^{n}_{j=1} \phi ( y_{i}) ,\frac{1}{m}\sum ^{m}_{i=1} \phi ( x_{i}) -\frac{1}{n}\sum ^{n}_{j=1} \phi ( y_{i}) &gt;\\ &amp; =\frac{1}{m^{2}} &lt; \sum ^{m}_{i=1} \phi ( x_{i}) ,\frac{1}{m}\sum ^{m}_{i=1} \phi ( x_{i}) &gt;+...\\ &amp; =\frac{1}{m^{2}}\sum ^{m}_{i=1}\sum ^{m}_{j=1} k( x_{i} ,x_{j}) +\frac{1}{n^{2}}\sum ^{n}_{i=1}\sum ^{n}_{j=1} k( y_{i} ,y_{j}) -\frac{2}{mn}\sum ^{m}_{i=1}\sum ^{n}_{j=1} k( x_{i} ,y_{j}) \end{aligned}\\ m1i=1mϕ(xi)n1j=1nϕ(yi)H2=<m1i=1mϕ(xi)n1j=1nϕ(yi),m1i=1mϕ(xi)n1j=1nϕ(yi)>=m21<i=1mϕ(xi),m1i=1mϕ(xi)>+...=m21i=1mj=1mk(xi,xj)+n21i=1nj=1nk(yi,yj)mn2i=1mj=1nk(xi,yj)
    这个方法的直觉在于,如果 ϕ ( x ) = x \phi ( x) =x ϕ(x)=x的话,就相当于比较两个分布的均值,如果 ϕ ( x ) = [ x   x 2 ] \phi ( x) =\left[ x\ x^{2}\right] ϕ(x)=[x x2]的话,就相当于比较均值和方差,那么如果φ足够复杂,我们就能够精确地计算两个分布间的差异!

    补充:Wasserstein距离

    该补充来自:https://zhuanlan.zhihu.com/p/25071913 ,是一篇非常棒的文章
    注意Wasserstein距离不是散度,因此它是对称的,满足三角不等式等距离的性质。Wasserstein距离又叫Earth-Mover(EM)距离,定义如下:
    W ( P r , P g ) = inf ⁡ γ ∼ Π ( P r , P g ) E ( x , y ) ∼ γ [ ∣ ∣ x − y ∣ ∣ ] W(P_r, P_g) = \inf_{\gamma \sim \Pi (P_r, P_g)} \mathbb{E}_{(x, y) \sim \gamma} [||x - y||] W(Pr,Pg)=γΠ(Pr,Pg)infE(x,y)γ[xy]
    解释如下: Π ( P r , P g ) \Pi (P_r, P_g) Π(Pr,Pg) P r P_r Pr P g P_g Pg组合起来的所有可能的联合分布的集合,反过来说, Π ( P r , P g ) \Pi (P_r, P_g) Π(Pr,Pg)中每一个分布的边缘分布都是 P r P_r Pr P g P_g Pg。对于每一个可能的联合分布 γ \gamma γ而言,可以从中采样 ( x , y ) ∼ γ (x, y) \sim \gamma (x,y)γ得到一个真实样本x和一个生成样本y,并算出这对样本的距离 ∣ ∣ x − y ∣ ∣ ||x-y|| xy,所以可以计算该联合分布 γ \gamma γ下样本对距离的期望值 E ( x , y ) ∼ γ [ ∣ ∣ x − y ∣ ∣ ] \mathbb{E}_{(x, y) \sim \gamma} [||x - y||] E(x,y)γ[xy]。在所有可能的联合分布中能够对这个期望值取到的下界 inf ⁡ γ ∼ Π ( P r , P g ) E ( x , y ) ∼ γ [ ∣ ∣ x − y ∣ ∣ ] \inf_{\gamma \sim \Pi (P_r, P_g)} \mathbb{E}_{(x, y) \sim \gamma} [||x - y||] infγΠ(Pr,Pg)E(x,y)γ[xy],就定义为Wasserstein距离。

    直观上可以把 E ( x , y ) ∼ γ [ ∣ ∣ x − y ∣ ∣ ] \mathbb{E}_{(x, y) \sim \gamma} [||x - y||] E(x,y)γ[xy]理解为在 γ \gamma γ这个“路径规划”下把 P r P_r Pr这堆“沙土”挪到 P g P_g Pg“位置”所需的“消耗”,而 W ( P r , P g ) W(P_r, P_g) W(Pr,Pg)就是“最优路径规划”下的“最小消耗”,所以才叫Earth-Mover(推土机)距离。

    Wasserstein距离相比KL散度、JS散度的优越性在于,即便两个分布没有重叠,Wasserstein距离仍然能够反映它们的远近。

    参考资料

    [1] Cover, Thomas M., and Joy A. Thomas. Elements of information theory. John Wiley & Sons, 2012.
    [2] short notes on divergence measures
    [3] Caticha, Ariel. “Relative entropy and inductive inference.” AIP conference proceedings. Vol. 707. No. 1. AIP, 2004.
    [4] CCN2018 tutorial : Deep Generative Models
    [5] Ariel Caticha. Relative entropy and inductive inference. In AIP Conference Proceedings, volume 707, pages

    展开全文
  • 【数学】张量

    2020-12-31 15:43:47
    网站、 https://wenku.baidu.com/view/ab76fe504b73f242336c5f81.html (介绍二阶张量的梯度和散度
    1. 网站、

    https://wenku.baidu.com/view/ab76fe504b73f242336c5f81.html

    (介绍二阶张量的梯度和散度)

    展开全文
  • 张量的概念及基本运算

    千次阅读 多人点赞 2020-06-03 17:08:57
    文章目录张量的概念及基本运算1 张量的定义2 纤维(Fibers)与 切片(Slices)2.1 纤维(Fibers)2.2 切片(Slices)3 张量的范数(norm)4 张量的内积(inner product)5 秩1张量(Rank-One Tensors)6 对称性与...
  • 张量与梯度

    2021-05-21 10:36:11
    叶子张量与根张量3.计算叶子张量的梯度3.获取内部张量的梯度总结 内容概况 举一个简单的例子:来记录下张量在梯度计算中的作用 一、初始案例输出 requires_grad=False import torch x = torch.tensor([[1,2]],...
  • 剪切应力张量

    千次阅读 2020-07-18 18:50:40
    本文介绍了N-S方程中的剪切张量,并介绍了膨胀粘度项,应变率以及相应的剪切应力化简形式
  • 该方法利用张量图像的散度算子构造新的外力,引导水平集函数的自适应运动,使得其可以初始为常值函数,消失其演化对初始轮廓的需要;在偏微分方程中引入张量迹信息,减少噪声对其演化的影响,避免轮廓在弱边缘处泄露...
  • 该方法利用张量图像的散度算子构造新的外力,引导水平集函数的自适应运动,使得其可以初始为常值函数,消失其演化对初始轮廓的需要;在偏微分方程中引入张量迹信息,减少噪声对其演化的影响,避免轮廓在弱边缘处泄露...
  • 场论、张量学习

    2020-10-06 10:55:48
    研究生的流体课程都需要张量 看了吴望一的流体力学、吴介之的Vortical Flows和Stephen B. Pope的Turbulence Flows,感觉FT的附录A、B介绍的最好,应该足够了
  • 在OpenFOAM中,我们用函数divDevReff 与 divDevRhoReff来计算剪切应力。 文章目录函数名称含义代码解读 ...div:散度(divergence); dev:每个二阶张量都可分解为 dev 部分(deviatoric)和 hyd 部分(hy
  • 主要研究结构张量驱动的变分偏微分方程( variational Partial Differential Equation; variational PDE) 图像建 模方法的滤波性能. 基于角形强度度量和水平线演化理论, 设计了一种具有角点增强性能的角形冲击...
  • 研究List流上梯度ShrinkingSolitons的广义Ricci张量和广义数量曲率的增长行为。通过选取适当的截断函数,利用散度定理,得到了广义Ricci张量的积分上界估计。另外,还得到了广义数量曲率的积分上界估计。
  • 为了计算简单性和效率,本文还将基于GrabCut构建的高斯混合模型(GMM)扩展到张量空间,并使用Kullback-Leibler(KL)散度代替通常的黎曼几何。 最后提出了一种迭代收敛准则,以令人满意的分割精度大大减少了Grab...
  • 梯度、散度、旋度的简单总结梯度散度旋度 梯度 ![梯度公式]](https://img-blog.csdnimg.cn/20200509215050880.png) 梯度是哈密尔顿算子直接作用于函数F得到的,不论F是标量还是向量,标量的梯度是向量,也即也即一阶...
  • α-大地偏斜散度 正式的PyTorch实现“ 偏斜”。 [ ] 非对称偏斜发散通过将分布之一混合到由参数λ确定的...计算两个张量的差异 import torch from gs_divergence import gs_div a = torch . Tensor ([ 0.1 , 0.2 ,
  • 本次将继续学习张量分解的有关内容。 一.TURCKER分解 二.非负矩阵分解 三.奇异值分解和高阶张量的奇异值分解 (一般)矩阵的奇异值分解(SVD) 高阶张量的奇异值分解(HOSVD) 四.其他矩阵分解 1.LU分解 2.正交分解...
  • 1) runco​​ord 绘制了几个典型坐标系的相交坐标面2) runmetric 计算并打印用户定义函数(例如 sphr.m)中指定的一般曲线坐标系的度量张量属性3) rundivcrl 验证在笛卡尔坐标和曲线坐标中计算的任意向量的散度和旋...
  • 梯度和散度那些事

    千次阅读 2018-11-02 17:15:46
    1 .基本知识 2.曲率漂移 3.梯度漂移 4.张量散度
  • “洞烛幽微”系列的第一篇,就探究一些梯度、散度、旋度的相关问题,这部分知识出现在了《电磁场理论与微波技术》的第一章。
  • 社交网络中基于张量分解的好友推荐 摘要 引言 相关研究 问题描述 所提好友推荐方法 实验验证 结论 摘要社交网络中快速增长的用户对现有好友推荐系统提出了挑战。本文我们用张量分解模型基于用户的标签行为信息提出了...
  • 正交曲面系下梯度散度旋度公式速记 1. 回忆正交曲面系的度量系数hih_ihi​ 记每种坐标系中不同的3个分量分别为u1u_{1}u1​ u2u_{2}u2​ u3u_{3}u3​,其度量系数分别为 坐标系 u1u_{1}u1​ u2u_{2}u2​ u3u_{3}...
  • matlab张量积代码RBM火炬工具箱 RBM工具箱是用于在线培训RBM的Torch7工具箱。 MATLAB版本位于。 支持以下内容: 支持对带有等级标签的RBM进行培训,包括: 生成培训目标[2,7] 歧视性培训目标[2,7] 混合训练目标[2,7]...
  • 作者将一个图像块(image patch)看做是一个保留了原始图像结构的二阶张量,然后设计了两个图来描绘目标和背景所在的张量样本中固有的局部几何结构,从而构建一个判别式嵌入空间。此外,作者提出了两种思路用来寻找...
  • KL散度、交叉熵可以用于衡量模型的“损失”。要深入理解KL散度和交叉熵,首先要从信息论中的基础概念入手。
  • 现在假设你要用tensorflow计算两个多元高斯分布之间的KL散度,用闭式解,该如何用tensorflow2.x实现。 看到这个公式,相比大家都是头疼的,尤其在训练时候,还要考虑Batch的维度。今天就用tensorflow实现一下。 1. ...
  • 2、tile 复制 repeat data along dim n times inner dim first 先复制小维度,后复制大维度,先axis=1,后axis=0,先横后竖 4、张量限幅 clip_by_value relu clip_by_norm gradient clipping clip_by_value tf....

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 882
精华内容 352
关键字:

张量散度