Deductron——一种循环神经网络
机器学习
2019-11-26 v3 机器学习
摘要
本文是对循环神经网络(RNN)的一项研究,其动机在于缺乏既足够简单以便从理论上被彻底理解、又足够复杂以贴近实际的例子。我们构造了一类结构化数据示例,其动机来自图像到文本转换(OCR)中的问题,该数据需要长期记忆才能解码。我们的数据是一种简单的书写系统,将字符 'X' 和 'O' 编码为其上半部分,这得益于两字符的对称性。字符可像某些使用草书的语言(如阿拉伯语(abjad))那样连写。字符串 'XOOXXO' 可编码为 ''。由此可知,我们可能需要任意长的历史信息来解码当前字符,从而需要长期记忆。随后我们构造了一个能够解码以此方式编码序列的 RNN。我们并非通过训练,而是“凭观察”构造该 RNN,即我们猜出了它的权重。这包含一系列步骤:我们编写了一个能解码上述示例序列的传统程序;随后将该程序解释为一个神经网络(据我们所知这是此类唯一例子);最后我们将该神经网络推广,从而发现了一种新的 RNN 架构,其实例即我们手工打造的 RNN。它为一个 3 层网络,其中间层能进行简单逻辑推断,故得名“deductron”。我们证明了可通过模拟退火训练该网络,并且已知的随机梯度下降(SGD)方法变体也被证明有效。
引用
@article{arxiv.1806.09038,
title = {Deductron -- A Recurrent Neural Network},
author = {Marek Rychlik},
journal= {arXiv preprint arXiv:1806.09038},
year = {2019}
}
备注
34 pages, contains Python code, Python code requires data file data.py (should be included in the archive)