近视反馈下的自适应影响力最大化
Adaptive Influence Maximization with Myopic Feedback
论文链接:https://papers.nips.cc/paper/8795-adaptive-influence-maximization-with-myopic-feedback.pdf
影响力最大化研究在社交网络中如何选取少量结点(称为种子结点)使得通过影响力传播产生的影响力最大。影响力最大化可以应用到口碑营销、留言监控等涉及网络传播的方面,在学术界有广泛研究。
本篇论文着重研究自适应最大化,即种子结点的选取不是一次完成,而是一次选一个或几个,再根据已选种子的传播结果决定后续选哪些种子。我们特别研究自适应影响力最大化中的近视反馈情形,即每选取一个种子结点后我们只能得到它对其网络中的直接邻居的激活情况作为反馈,而不能看到后续的传播情况。
在 Golovin 和 Krause(2011)的关于自适应优化的经典论文中,他们指出近视反馈下的自适应影响力最大化不满足自适应次模性,所以自适应贪心算法不能保证(1-1/e)的近似比,但他们猜想存在常数近似比的自适应算法。我们在这篇文章中对这个开放多年的猜想给出了肯定的回答。
我们从研究近视反馈下的自适应差距(adaptivity gap)—— 即自适应模型下的最优解和非自适应模型下的最优解之间的比值 —— 入手,证明了近视反馈下影响力最大化的自适应差距最大是4,最小是 e/(e-1)。从这个结论,我们进一步论证自适应贪心算法得到的解是自适应最优解的 1/4(1-1/e) 近似, 但存在实例近似比不会好于 (e^2+1)/(e+1)^2。我们的研究是极少数对于不满足自适应次模性的优化问题也能给出常数自适应差距论证的工作。所以它不仅扩展了自适应影响力最大化的研究,也对一般自适应优化给出了新的研究方向,而自适应优化在机器学习和数据挖掘的很多方面都有应用。
基于分布强化学习的奖励分解
Distributional Reward Decomposition for Reinforcement Learning
论文链接:https://arxiv.org/abs/1911.02166
近年来,深度强化学习已经广泛地应用在游戏、围棋、机器人等领域。但深度强化学习依然面临着样本效率低和可解释差等挑战。如何利用问题的特殊性质来设计更高效的算法便是其中一个重要的研究方向。奖励分解(reward decomposition)就是解决这个问题的一个重要分支。
现有的奖励分解算法是比较局限的。Van Seijen 等人提出,根据先验知识将状态空间切分,然后根据给定的奖励函数学习不同的价值函数,再相加构成最终的价值函数。然而,先验知识的引入限制了该方法的通用性。为了设计更具一般性的算法,Grimm 和 Singh 设计了一个新的损失函数,通过最大程度地消除子奖励之间的纠缠(disentanglement)来实现奖励分解。然而,该方法需要环境具有重置的特殊功能,同样限制了在通用环境上的应用。
受分布强化学习的启发,我们提出了一个新的奖励分解框架 DRDRL。该方法在不需要先验知识和特殊环境设置的前提下,能够在智能体学习过程中发现有意义的隐式奖励分解,并且提升了 RAINBOW 算法的性能。
在 DRDRL 中,我们将子奖励(sub reward, r_i)视为随机变量,将其对应的子奖励之和(sub return, Z_i)所对应的分类分布用 F_i 来描述。通过进行独立性假设,最终 Q 函数对应的分布 F 可以表示为不同子分布 F_i 之间的的一维卷积:
在这个新的表示形式下,我们可以推导出隐式的奖励分解表达式:
进一步,为了使得各个子分布 F_i 能得到不同的奖励分解,我们在优化过程中加入了如下的约束,即最大化下面的指标:
该约束会将不同分支所对应的动作之间的差别最大化,从而使得网络能学习到独立的子奖励。
此外,为了防止训练过程中不同的分支交换导致训练不稳定,我们借鉴了 UVFA 的思想,对不同的分支输入额外的表征分支的向量,从而得到多渠道的状态特征(multi-channel state feature),使得训练更加高效,最终的网络结构如图1所示。
图1:DRDRL 网络架构
我们将 DRDRL 在 Atari 游戏上进行了测试(图2),结果显示我们的方法能大幅度提高 RAINBOW 的性能。
图2:DRDRL 在 Atari 游戏上的测试结果
同时,我们的算法也能得到有意义的奖励分解(图3)。当画面中的潜艇上岸补充氧气时,第一个分支 r_1 能捕获更多的奖励信号;相反当潜艇射击小鱼时,第二个分支 r_2 能捕获更多的奖励信号。
图3:DRDRL 得到的有意义的奖励分解
我们用 saliency maps 对训练结果进行可视化,发现不同的分支能够 attend 到 state 当中不同的区域,这也使得我们的方法训练出来的智能体具有较强的可解释性。
图4:训练结果的可视化
更快、更鲁棒、更可控的语音合成系统 FastSpeech
FastSpeech: Fast, Robust and Controllable Text to Speech
论文链接:https://papers.nips.cc/paper/8580-fastspeech-fast-robust-and-controllable-text-to-speech.pdf
更多 Demo 声音请访问:https://speechresearch.github.io/fastspeech/
近年来,基于神经网络的端到端文本到语音合成(Text-to-Speech, TTS)技术取了快速发展。然而这种技术依然面临以下几个问题:(1)合成语音的速度较慢;(2)合成的语音稳定性较差;(3)缺乏可控性。
为了解决上述的一系列问题,本文提出了一种基于 Transformer 的新型前馈网络 FastSpeech,可以并行、稳定、可控地生成高质量的梅尔谱,再借助声码器并行地合成声音。FastSpeech 模型结构如下图所示,主要构成为前馈神经网络(Feed-Forward Transformer),长度调节器(Length Regulator)以及音素持续时间预测器(Duration Predictor)。前馈神经网络能让模型并行的生成梅尔谱,同时抛弃了传统的编码器-注意力-解码器结构,提高合成语音的稳定性。长度调节器通过音素时间预测器来预测每个因素的持续时间,进而调整音素序列和梅尔谱序列的长度差异,同时还能调节生成语音的语速以及停顿等。详细模型结构可参见论文。
图5:FasSpeech 网络架构
FastSpeech 在训练过程中采用 teacher-student 模式,teacher 模型为自回归的 Transformer TTS,student 模型为 FastSpeech。在 LJSpeech 数据集上的实验表明,FastSpeech 具有以下几点优势:
(1)快速:如表1所示,与自回归的 Transformer TTS 相比,FastSpeech 将梅尔谱的生成速度提高了近270倍,将端到端语音合成速度提高了近38倍,单 GPU 上的语音合成速度是实时语音速度的30倍。
表1:测试集上不同模型的语音合成速度比较
(2)鲁棒:几乎完全消除了合成语音中重复吐词和漏词问题;
(3)可控:可以平滑地调整语音速度和控制停顿以部分提升韵律;
最后,FastSpeech 的语音质量可以与传统端到端自回归模型(如Tacotron 2和Transformer TTS)相媲美(如表2所示)。
表2:FastSpeech 的语音质量与传统端到端自回归模型的对比
基于 soft 原型的神经机器翻译
Neural Machine Translation with Soft Prototype
论文链接:http://papers.nips.cc/paper/8861-neural-machine-translation-with-soft-prototype.pdf
机器翻译模型在生成序列的时候,通常采用单阶段解码过程。这种生成模式存在的一个局限性,就是生成过程没有很好地应用好目标端的全局信息。之前的工作提出了许多不同的方法利用全局信息克服这种局限,包括引入额外的网络结构生成一个中间序列;或是从已有的语料集中检索出中间序列。这些不同方法都有着相同的基本思想,即是将一个原型序列(prototype sequence)引入到标准编码器-解码器框架中。
一个好的原型序列应该具有以下两条特性:一是高质量,原型序列应该是一个包含丰富的全局信息并且方差较低的高质量向量表示;二是高效率,原型序列应该容易生成,不会带来过多的时间和存储开销。先前工作中提出的原型序列都能比较好地表达全局信息,但是生成过程效率比较低。而且,由于生成开销较大,先前工作在实践中通常利用单一序列作为 hard 原型,这样会引入较大方差,对最终生成质量带来负面影响。
本研究中,我们提出了一个引入 soft 原型序列的框架来充分利用目标端的全局信息,引入原型序列后的通用框架可以表示为:
其中 Enc 和 Dec 分别是标准编码-解码器框架中的编码器和解码器网络,Net 是一个额外用于编码原型序列 R 的网络。定义 E_y 为目标域的词向量矩阵,维度为 |V_y| × d。用 1(y’) 表示目标域的序列 y’ 所对应的维度为 l_y'×|V_y| 的独热向量表达,其中的每一行对应一个单词的独热向量。序列 y’ 的 soft 原型序列 R 计算为:
在此框架的基础上,我们提出一种更高效的原型序列生成方法。我们利用一个概率生成器 g,将输入单词投影到一个目标域词表上的概率分布,即 g(v_x)=(p_1,p_2,…,p_|V_y| ),∑p_j=1。对于任意序列 x,第 i 个词 x_i 通过生成器映射为 ∑_j g_j (x_i ) e_j 的原型序列表示。这种生成方式有两个好处:和先前工作中解码或检索的原型序列生成方法相比,这里 G_y 采用非自回归的生成方式,显著提高了生成效率;同时,先前工作中通常采用单一原始序列,而 soft 原型序列包含多个候选翻译内容,为解码器提供更加丰富且方差更低的表达。
我们以机器翻译为例,在 Transformer 模型上介绍这种原型序列。如下图所示,对于给定输入序列,首先利用上述概率生成器 g 获得原型序列 R,并利用网络 Net 将其编码为上下文向量表示。原始输入序列和原型序列的上下文表示共同作用于解码器的编码-解码注意机制中,进行解码。
图6:soft 原型序列在 Transformer 中的应用
我们在有监督翻译、半监督翻译和无监督翻译上展开实验,均验证了我们算法的有效性。
用于细粒度图像表示的深度双线性变换学习
Learning Deep Bilinear Transformation for Fine-grained Image Representation
论文链接:https://papers.nips.cc/paper/8680-learning-deep-bilinear-transformation-for-fine-grained-image-representation.pdf
代码链接:https://github.com/researchmm/DBTNet
基于部位检测的表达学习需要显式地定位到各个部位,并对定位到的部位进行放大、对齐等,来进一步得到更好的表达。这类方法通常会伴随复杂的部位处理和较多的计算量,有很多方法还会因为将定位和分类分成两个子任务而无法得到全局最优解。基于双线性的特征学习通过对特征向量进行外积操作来实现通道信息之间的逐对交互,从而得到对细节信息更好的表达。但受到极高维的双线性特征的影响,这类方法会大大增加参数量,而且只能被应用在神经网络的最后一层,作为一种池化操作。
针对以上问题,我们提出了“利用基于部位的语义信息,得到一种低维而高效的双线性表达”的构想,让能够表达丰富细节的双线性特征能够很深地集成到卷积神经网络中,因此提出了深度双线性网络(Deep Bilinear Transformation Network, DBT-Net)网络结构。
我们通过设计一种语义分组的约束将卷积特征的各个通道进行分组,然后对同一组内的通道进行双线性操作,得到针对这个语义的丰富的细节表达,再将不同组之间的双线性表达求和得到低维特征。用于分组的约束要求同一个语义组内的卷积通道两两之间有尽可能大的空间交叠,而不同组件的通道尽可能没有交叠。这种逐对的分组约束可以使后续的分组双线性操作更好地捕捉针对每个语义块的细节特征。
我们设计的深度双线性转换模块可以很容易地集成到深度卷积神经网络的结构中。比如可以将其插入到传统残差块(ResNet Bottleneck Block)的第一个卷积层和第二个卷积层之间来得到能够融合双线性特征的残差块。
为了验证我们提出的深度双线性转换的有效性,我们在三个常用的细粒度分类数据集上进行了实验,均取得了明显的提高。