リカレントニューラルネットのチューリング完全性に関するいくつかの論文(例:ニューラルネットを使用したチューリング計算可能性、HavaT.SiegelmannおよびEduardoD.Sontag、1991)を読んでいると、そこで与えられた証明は実際にはそうではないと感じました。実用的。たとえば、参照されている論文には、ニューロンの活動が無限に正確でなければならないニューラルネットワークが必要です(有理数を確実に表すため)。他の証明には、無限のサイズのニューラルネットワークが必要です。明らかに、それは実際にはそれほど実用的ではありません。
しかし、私は今、チューリング完全性を求めることがまったく意味があるのかどうか疑問に思い始めました。厳密な定義によれば、今日のチューリング完全なコンピューターシステムはありません。これは、無限のテープをシミュレートできるコンピューターシステムがないためです。
興味深いことに、プログラミング言語の仕様は、チューリング完全であるかどうかにかかわらず、ほとんどの場合オープンのままです。結局のところ、彼らが常により多くのメモリを割り当てることができるかどうか、そして関数呼び出しのスタックサイズが無限であるかどうかという問題に要約されます。ほとんどの仕様は実際にはこれを指定していません。もちろん、ここでは利用可能なすべての実装が制限されているため、プログラミング言語のすべての実用的な実装はチューリング完全ではありません。
つまり、すべてのコンピューターシステムは、有限状態マシンと同じくらい強力であり、それ以上ではないということです。
そして、それは私に質問をもたらします:チューリングという用語は完全にどれほど有用ですか?
そしてニューラルネットに戻る:ニューラルネット(私たち自身の脳を含む)の実際の実装では、無限の数の状態を表すことはできません。つまり、チューリング完全性の厳密な定義によって、チューリング完全ではありません。では、ニューラルネットがチューリング完全であるかどうかという質問はまったく意味がありますか?
それらが有限状態マシンと同じくらい強力であるかどうかという質問は、すでにずっと以前に回答されており(1954年、ミンスキーによる回答、もちろん:はい)、回答も簡単なようです。つまり、少なくとも理論的には、それはすでに他のコンピュータと同じくらい強力であるという証拠でした。
私が本当に知りたいことについてのいくつかの他の質問:
コンピュータの計算能力についてより具体的なことを言うことができる理論用語はありますか?(限られたメモリスペースを考えると)
ニューラルネットの実際の実装の計算能力をコンピューターとどのように比較できますか?(チューリング完全性は、上記で論じたように有用ではありません。)