在阅读一些关于循环神经网络的图灵完备性的论文时(例如:Turing computability with neural nets,Hava T. Siegelmann 和 Eduardo D. Sontag,1991),我觉得那里给出的证明并不是真的那样实际的。例如,参考论文需要一个神经网络,其神经元活动必须具有无限精确性(以可靠地表示任何有理数)。其他证明需要一个无限大小的神经网络。显然,这并不是那么实际。
但我现在开始怀疑,要求图灵完备是否真的有意义。按照严格的定义,现在没有一个计算机系统是图灵完备的,因为它们都无法模拟无限磁带。
有趣的是,编程语言规范最常将其打开,无论它们是否完整。这一切都归结为他们是否总是能够分配更多内存以及函数调用堆栈大小是否无限的问题。大多数规范并没有真正指定这一点。当然,所有可用的实现都在这里受到限制,因此编程语言的所有实际实现都不是图灵完备的。
因此,您可以说所有计算机系统都与有限状态机一样强大,仅此而已。
这让我想到了一个问题:图灵这个术语到底有多大用处?
回到神经网络:对于神经网络(包括我们自己的大脑)的任何实际实现,它们将无法表示无限数量的状态,即根据图灵完备性的严格定义,它们不是图灵完备的。那么,如果神经网络是图灵完备的,这个问题是否有意义呢?
它们是否与有限状态机一样强大的问题已经在更早的时候得到了回答(Minsky 于 1954 年给出的答案:是的),而且似乎也更容易回答。即,至少在理论上,这已经证明它们与任何计算机一样强大。
其他一些更多关于我真正想知道的问题:
是否有任何理论术语可以更具体地说明计算机的计算能力?(鉴于其有限的内存空间)
您如何将神经网络的实际实现与计算机的计算能力进行比较?(如上所述,图灵完备性没有用。)