您是否知道有人试图将高级编程语言(java,c#等)编译为循环神经网络,然后对其进行演化?

我的意思是,包括内存使用情况在内的整个过程都存储在神经网络的图形中,而我所谈论的是复杂的程序(考虑自然语言处理问题)。

当我说神经网络时,我的意思是分散激活的有向加权图,并且节点是其输入的函数(为简单起见,它们是线性的,S型的和乘法的)。

此外,人们在基因编程中的意思还是有区别?

最佳答案

神经网络并不是特别适合于不断发展的计划;它们的优势往往在于分类。如果有人尝试过,我还没有听说过(考虑到我几乎不接触神经网络就不足为奇了,但是我目前在通用AI领域很活跃)。

神经网络对生成程序无用的主要原因是它们基本上代表了一个数学方程(数字,而不是函数)。给定一些数字输入,您将获得数字输出。很难在程序的上下文中解释这些比简单算术更复杂的事情。

遗传编程传统上使用Lisp,这是一种纯函数式语言,并且程序经常以树形图显示(有时看起来类似于某些神经网络图-这是造成您困惑的原因吗?)。通过在程序之间交换树的整个分支(函数及其所有参数)或随机重新生成整个分支来演化程序。

当然,在这两个主题上都有很多好的(坏的)参考资料-我不列出它们,因为不清楚您实际上对什么感兴趣。Wikipedia涵盖了每种技术,并且一个很好的起点。

07-27 22:38