zl程序教程

您现在的位置是:首页 >  工具

当前栏目

【文献学习】Deep Complex Networks

学习 Deep Networks 文献 complex
2023-09-14 09:12:40 时间

1 简介

论文和源码

1.1 创新点

提出了神经网络中复数处理的技术应用到卷积前馈神经网络和卷积LSTM网络
提出了复数batch-normalization的算法,用于复数神经网络的复数权重初始化

1.2 复数的优势

复数在伸进网络中有更丰富的表示能力
允许强大的噪声存储机制noise-robust
复数在检索和插入关联存储器方面有优势。
在音乐转录、语音频谱预测、生物学、信号处理方面有复数的应用

1.3 作者贡献

复数batch-normalization的公式
复数权重初始化
不同的基于RelU的复数值激活函数的比较
深度复数技术应用于MusicNet多乐器音乐转录数据集的最新结果
深度复数技术应用于TIMIT数据集的语音频谱预测任务

2 深度复数技术

2.1 复数卷积

计算公式。h=x+iy是要卷积的复数.W = A+iB,W是构造的复数,A、B是实数矩阵
在这里插入图片描述

用矩阵形式表示以上公式
在这里插入图片描述

将激活函数限制为复数的可微分的和全纯函数,限制了将可能的激活函数应用到复数神经网络中。

2.2 复数激活

针对复数有特殊的激活函数

  • ModReLU
    在这里插入图片描述

z是复数,θz是z的相位,b是一个可学习的实数参数
modReLU设计背后的直觉是保留预激活相位θz,因为使用激活函数对其进行更改会严重影响复数值表示。 modReLU不满足Cauchy-Riemann方程,因此不是全纯的.在表6.4中显示测试结果

  • CReLU
    就是分别对实部和虚部进行ReLU激活
    在这里插入图片描述

当实部和虚部同时处于严格正值或严格负值时,CReLU满足Cauchy-Riemann方程。在表6.4中显示测试结果

  • zReLU
    z是复数,θz是z的相位。表6.4显示测试结果
    在这里插入图片描述

2.3 复数Batch-Normalization

第一步:复数的Normalization
不是传统的缩放到0-1范围,作者提出复数的方法如下:
我们选择复数的实部和虚部视为2维向量中的一个,按两个主分量中每个分量的方差平方根来缩放数据。公式如下
在这里插入图片描述

x是复数,E(x)是求均方,V是2*2 的协方差矩阵计算公式如下,(x-E(x))表示以0为中心的数据,即方差。
在这里插入图片描述

均方差和方差的平方根的倒数相乘以确保x〜具有标准复数分布,均值为0,协方差 1,伪协方差(也称为关系)C = 0。
归一化过程允许将单元的虚部和实部去相关(decorrelate)。 这样的优点是避免了两个组件之间的共同适应,从而降低了过拟合的风险
没有明白V的计算公式中Cov(…)表示什么意思?

第二步:执行Batch-Normalization算法
算法步骤如下
使用两个参数β和γ。 移位参数β是一个复数的参数,具有两个可学习的分量(实数和虚数的均值)。
缩放参数γ是一个2×2正半定矩阵,只有三个自由度,因此只有三个可学习的分量。
矩阵 ( V ) − 12 (V)^{−12} V12沿输入的两个原始主成分将输入方差归一化为1,因此γ沿所需的新主成分按比例缩放输入以实现所需方差。 缩放参数γ由下式给出
在这里插入图片描述

将γrr和γii都初始化为1/ 2 \sqrt{2} 2 ,以获得归一化值方差的模数为1。R{β} 和 I{β}被初始化为0(这里的R{β}和I{β}对应作者给出的V公式中的两个看不懂的符号,只是换了把x换成了β)。综上,Batch-Normalization的公式如下
在这里插入图片描述

注意:
在训练和测试过程中,作者使用具有动量的移动平均值来维持对复数的Batch-Normalization统计数据的估计。 Vri和β的移动平均值被初始化为0。Vrr和Vii的移动平均值被初始化为1/ 2 \sqrt{2} 2 。 移动平均值的动量设置为0.9。

2.4 复数的权重初始化

复数权重表示
在这里插入图片描述

θ和|W|分别是W的自变量(相位)和幅度。
权重的方差计算公式
在这里插入图片描述

(剩下的内容太复杂,看不明白)

2.5 复数的卷积残差网络

包括三个步骤,最后一个步骤特征图将进行2倍的下采样,卷积核的数量也将增加一倍。 卷积核的大小始终设置为3 x3。在一个阶段中,有几个残差块,每个残块包含2个卷积层.
由于作者使用的所有数据集均具有实值输入,因此我们提供了一种学习其虚部的方法,以使网络的其余部分在复数平面中运行。 通过执行单个实值残差块中存在的运算来学习输入的初始虚部
(太复杂,看不明白)

3 疑问和反思

(1)2.3中没有明白V的计算公式中Cov(…)表示什么意思?
(2)2.4的复数权重初始化太复杂看不明白
(3)2.5的复数的卷积残差网络和介绍复数模块有什么关系,没有看明白理论太复杂,也不知道作者去介绍这个部分的目的。