深度复数网络 Deep Complex Networks
转自:https://www.jiqizhixin.com/articles/7b1646c4-f9ae-4d5f-aa38-a6e5b42ec475 (如有版权问题,请联系本人)
目前绝大多数深度学习模型中的数学都是实数值的,近日,蒙特利尔大学、加拿大国家科学院-能源/材料/通信研究中心(INRS-EMT)、微软 Maluuba、Element AI 的多名研究者(其中包括 CIFAR Senior Fellow Yoshua Bengio)在 arXiv 上发布了一篇 NIPS 2017(今年 12 月在美国 Long Beach 举办)论文,提出了一种可用于复数值深度神经网络的关键组件,该团队也已经在 GitHub 上开源了相关研究代码。机器之心对本论文进行了摘要介绍。
论文:深度复数网络(Deep Complex Networks)

目前,深度学习的绝大多数构建模块、技术和架构都基于实数值的运算和表征。但是,近来在循环神经网络和其它更古老的基础理论上的分析表明复数可以有更加丰富的表征能力,也可以促进对噪声鲁棒的记忆检索机制。尽管它们在带来全新的神经架构上有引人注目的性质和潜力,但由于缺少设计这种模型所需的构建模块,复数值的深度神经网络一直处于边缘化的状态。在这项研究中,我们提供了可用于复数值深度神经网络的关键基本组件,并将它们应用到了卷积前馈网络中。更准确地说,我们依靠复数卷积,提出了可用于复数值深度神经网络的复数批规范化、复数权重初始化策略,并且我们还在端到端的训练方案中对它们进行了实验。我们表明,这样的复数值模型可以实现与其对应的实数值模型相媲美或更好的表现。我们在一些计算机视觉任务和使用 MusicNet 数据集的音乐转录任务上对深度复数模型进行了测试,实现了当前最佳的表现。
1 引言
本论文的贡献如下:
对复数批规范化(complex batch normalization)进行了形式化,详见 3.4 节;
复数权重初始化,详见 3.5 节;
在多乐器音乐转录数据集(MusicNet)上达到了当前最佳的结果,详见 4.2 节。
3 复数构建模块
在这一节,我们给出了我们研究成果的核心,为实现复数值的深度神经网络构建模块制定了数学框架。

图 1:复数卷积和残差网络实现细节
3.1 复数的表征
3.2 复数卷积
3.3 深度复数网络的深度和宽度
3.4 复数批规范化
3.5 复数权重初始化
3.6 复数卷积残差网络
4 实验结果
在这一节,我们给出了我们的模型在图像和音乐分类任务上的实验结果。首先,我们给出了我们的模型架构,然后给出了其在三个标准图像分类基准(CIFAR-10、CIFAR-100 和 SVHN)上的结果,另外还有在 MusicNet 基准上的自动音乐转录结果。
4.1 图像识别

表 1:模型架构。S1、S2 和 S3 Filters 分别是指在 stage 1、2 和 3 每一层所使用的卷积滤波器的数量。(S) 表示小网络,(L) 表示大网络。

表 2:在 CIFAR-10、CIFAR-100 和 SVHN 上的分类误差。注意 He et al. [2016] 使用了 110 层的模型

图 3:(a) 作为每次输入的实数和虚数对的 Stage 1 特征图;(b) 作为幅度和相的特征图

图 4:作为每次输入的实数和虚数对的 Stage 2 和 3 特征图
4.2 在 MusicNet 数据集上的自动音乐转录

表 3:MusicNet 实验。FS 表示采样率。Params 是参数的总数量。我们给出了平均精度(AP)指标,是指精度召回曲线(precision-recall curve)下的面积。

图 5:精度召回曲线
By me:
3.1 Representation of Complex Numbers
N feature maps such that N is divisible by 2;
Allocate the first N/2 feature maps to represent the real components and the remaining N/2 to represent the imaginary ones.
Four dimensional weight tensor W that links Nin input feature maps to Nout output feature maps and whose kernel size is m × m.
have a weight tensor of size (Nout × Nin × m × m) /2 complex weights
3.2 Complex Convolution
complex filter matrix W = A + iB;
complex vector h = x + iy
W ∗ h = (A ∗ x − B ∗ y) + i(B ∗ x + A ∗ y).
use matrix notation to represent it:

3.3 Depth and Width in Deep Complex Networks
For a given layer, the number of parameters for each of the real and imaginary weights would be equal to N/2 × N/2 which means N2/2 when we sum both.
For a real-valued layer, it is N2.
假设一共有L层,那么实数值的参数是复数值的 (√ 2 )2L倍。
3.4 Complex Batch Normalization
未完待续。。。
深度复数网络 Deep Complex Networks的更多相关文章
- 深度残差网(deep residual networks)的训练过程
这里介绍一种深度残差网(deep residual networks)的训练过程: 1.通过下面的地址下载基于python的训练代码: https://github.com/dnlcrl/deep-r ...
- 论文翻译:2020_DCCRN: Deep Complex Convolution Recurrent Network for Phase-Aware Speech Enhancement
论文地址:DCCRN:用于相位感知语音增强的深度复杂卷积循环网络 论文代码:https://paperswithcode.com/paper/dccrn-deep-complex-convolutio ...
- 基于深度学习的安卓恶意应用检测----------android manfest.xml + run time opcode, use 深度置信网络(DBN)
基于深度学习的安卓恶意应用检测 from:http://www.xml-data.org/JSJYY/2017-6-1650.htm 苏志达, 祝跃飞, 刘龙 摘要: 针对传统安卓恶意程序检测 ...
- 受限玻尔兹曼机(RBM, Restricted Boltzmann machines)和深度信念网络(DBN, Deep Belief Networks)
受限玻尔兹曼机对于当今的非监督学习有一定的启发意义. 深度信念网络(DBN, Deep Belief Networks)于2006年由Geoffery Hinton提出.
- 深度学习论文笔记:Deep Residual Networks with Dynamically Weighted Wavelet Coefficients for Fault Diagnosis of Planetary Gearboxes
这篇文章将深度学习算法应用于机械故障诊断,采用了“小波包分解+深度残差网络(ResNet)”的思路,将机械振动信号按照故障类型进行分类. 文章的核心创新点:复杂旋转机械系统的振动信号包含着很多不同频率 ...
- [译]深度神经网络的多任务学习概览(An Overview of Multi-task Learning in Deep Neural Networks)
译自:http://sebastianruder.com/multi-task/ 1. 前言 在机器学习中,我们通常关心优化某一特定指标,不管这个指标是一个标准值,还是企业KPI.为了达到这个目标,我 ...
- 深度学习论文翻译解析(九):Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition
论文标题:Spatial Pyramid Pooling in Deep Convolutional Networks for Visual Recognition 标题翻译:用于视觉识别的深度卷积神 ...
- Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3
Spark MLlib Deep Learning Deep Belief Network (深度学习-深度信念网络)2.3 http://blog.csdn.net/sunbow0 第二章Deep ...
- 深度学习方法(十三):卷积神经网络结构变化——可变形卷积网络deformable convolutional networks
上一篇我们介绍了:深度学习方法(十二):卷积神经网络结构变化--Spatial Transformer Networks,STN创造性地在CNN结构中装入了一个可学习的仿射变换,目的是增加CNN的旋转 ...
随机推荐
- 20165218 《网络对抗技术》 Exp9 网络安全基础
Exp9 网络完全基础 基础问题回答 SQL注入攻击原理,如何防御 所谓SQL注入,就是通过把SQL命令插入到Web表单递交或输入域名或页面请求的查询字符串,最终达到欺骗服务器执行恶意的SQL命令. ...
- 洛谷P5022&P5049 旅行(及其数据加强版)
旅行(不是加强版) 加强版 加强版数据范围: 我们注意到 也就是说要么是个树,要么是个基环树 60pts 这60分是个树,可以简单的贪心想到每次都走子树中编号最小的那个,并且把1作为根 dfs练手题 ...
- np.random.shuffle(x)与np.random.permutation(x)
来自:https://blog.csdn.net/brucewong0516/article/details/79012233 将数组打乱随机排列 两种方法: np.random.shuffle(x) ...
- 阶段2 JavaWeb+黑马旅游网_15-Maven基础_第1节 基本概念_01maven概述
- Selenium学习之==>常见面试题
转自:http://www.imdsx.cn/ 一.selenium中如何判断元素是否存在? expected_conditions模块提供了多种校验方式,我常用的一种是presence_of_ele ...
- 通过vue-router实现组件间的跳转
三.通过VueRouter来实现组件之间的跳转提供了3种方式实现跳转:①直接修改地址栏中的路由地址 <!doctype html> <html> <head> &l ...
- 【MM系列】SAP 各种冲销凭证
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[MM系列]SAP 各种冲销凭证 前言部分 ...
- linux/linux学习笔记-初识linux(mooc)
一.linux简介 linux版本:内核版本和发行版本 linux企业应用: 1.基于linux的企业服务器 2.linux在嵌入式领域应用 android底层Linux : ios底层unix li ...
- 解决Jackson2反序列化LocalDateTime报错
今天在整合redis和spring boot的时候,遇到了一个错误,记录一下. 报错如下: Could not read JSON: Cannot construct instance of `jav ...
- arm初识
一.CPU从指令集角度分类 1.1. CISC (X86) 1.1. 1. CISC CPU 指complex instruction set computer复杂指令集CPU 1.1.2. CIS ...