神译局是怎么做到的?( 二 )


于是2018年 , Ren与自己在多伦多大学的前同事ChrisZhang , 以及他们的指导RaquelUrtasun开始尝试一种不同的方法 。他们设计出一种所谓的图超网络(GraphHypernetwork , GHN) , 这种网络可以在给出一组候选结构的情况下 , 找出解决某个任务的最佳深度神经网络结构 。
【神译局是怎么做到的?】顾名思义 , “图”指的是深度神经网络的架结构 , 可以认为是数学意义的图——由线或边连接的点或节点组成的集合 。此处节点代表计算单元(通常是神经网络的一整层) , 边代表的是这些单元互连的方式 。
原理是这样的 。图超网络从任何需要优化的结构(称其为候选结构)开始 , 然后尽最大努力预测候选结构的理想参数 。接着将实际神经网络的参数设置为预测值 , 用给定任务对其进行测试 。Ren的团队证明 , 这种方法可用于来对候选结构进行排名 , 并选择表现最佳的结构 。
当Knyazev和他的同事想出图超网络这个想法时 , 他们意识到可以在此基础上进一步开发 。在他们的新论文里 , 这支团队展示了GHN的用法 , 不仅可以用来从一组样本中找到最佳的结构 , 还可以预测最好网络的参数 , 让网络表现出绝对意义上的好 。在其中的最好还没有达到最好的情况下 , 还可以利用梯度下降进一步训练该网络 。
在谈到这项新工作时 , Ren表示:“这篇论文非常扎实 , 里面包含的实验比我们多得多 。他们在非常努力地提升图超网络的绝对表现 , 这是我们所乐见的 。”训练“训练师”
Knyazev和他的团队将自己的超网络称为是GHN-2 , 这种网络从两个重要方面改进了Ren及其同事构建的图超网络 。
首先 , 他们需要依赖Ren等人的技术 , 用图来表示神经网络结构 。该图里面的每个节点都包含有关于执行特定类型计算的神经元子集的编码信息 。图的边则描述了信息是如何从一个节点转到另一节点 , 如何从输入转到输出的 。
他们借鉴的第二个想法是一种方法 , 训练超网络来预测新的候选结构的方法 。这需要用到另外两个神经网络 。第一个用来开启对原始候选图的计算 , 更新与每个节点相关的信息 , 第二个把更新过的节点作为输入 , 然后预测候选神经网络相应计算单元的参数 。这两个网络也有自己的参数 , 在超网络能够正确预测参数值之前 , 必须对这两个网络进行优化 。
神译局是怎么做到的?
文章图片

文章图片

用图来表示神经网络
为此 , 你得训练数据——在本案例中 , 数据就是可能的人工神经网络(ANN)结构的随机样本 。对于样本的每一个结构 , 你都要从图开始 , 然后用图超网络来预测参数 , 并利用预测的参数对候选ANN进行初始化 。然后该ANN会执行一些特定任务 , 如识别一张图像 。通过计算该ANN的损失函数来更新做出预测的超网络的参数 , 而不是更新该ANN的参数以便做出更好的预测 。这样以来 , 该超网络下一次就能做得更好 。现在 , 通过遍历部分标记训练图像数据集的每一张图像 , 以及随机样本结构里面的每一个ANN , 一步步地减少损失 , 直至最优 。到了一定时候 , 你就可以得到一个训练好的超网络 。
由于Ren的团队没有公开他们的源代码 , 所以Knyazev的团队采用上述想法自己从头开始写软件 。然后Knyazev及其同事在此基础上加以改进 。首先 , 他们确定了15种类型的节点 , 这些节点混合搭配可构建几乎任何的现代深度神经网络 。在提高预测准确性方面 , 他们也取得了一些进展 。