【问题标题】:neural networks in realtime实时神经网络
【发布时间】:2014-04-21 07:39:15
【问题描述】:

简而言之:是否可以让神经网络对用户输入做出实时反应?

想象一个小游戏,其世界由实体组成,这些实体接收周围环境的输入并使用神经网络生成输出以实现生存。实体应该具有某种杀死和消耗另一个实体的能力,以延长最终导致死亡的饥饿倒计时,从而尽可能长时间地生存。

一个简单的解决方案是使用遗传算法来改进神经网络并找到一组具有更高生存能力的实体(适合这种情况)。

现在如果用户应该能够控制一个这样的实体,系统就会崩溃,因为他显然比实体更聪明,因为他们的网络没有经过训练来处理用户的行为。这种行为可以通过让用户多次重玩游戏直到神经网络适应来实现,但对于我的目标而言,这是一个过于乏味和耗时的过程。

因此我的问题是:是否有可能提高神经网络的学习速度,以便它们能够足够快地对用户输入做出反应,从而让用户感受到变化的发生?或者是否有不同的方法可以根据用户操作实时改进学习型 AI?

【问题讨论】:

    标签: artificial-intelligence neural-network mathematical-optimization genetic-algorithm


    【解决方案1】:

    嗯,从根本上说,问题是,“是的,可以非常快速地操纵神经网络。”即使使用大型 NN,您也基本上是在处理更新一组浮点数,这对于现代硬件来说几乎不是挑战。

    所以在你的问题正文中,你问的是学习速度,但同样,在基本层面上,我们仍然在谈论浮点算法:现在更复杂的是结合你的学习规则,但仍然可能比人类感知要快得多.

    所以我认为您真正面临的问题可能是“是否可以实时生成训练数据?”如果没有更多细节,这很难回答。为了训练你的神经网络做得更好,什么是必要的?是否需要重新运行复杂的模拟,或者调整一些输入参数就足够了”?

    当您说您使用 GA 来生成 NN 权重时,我怀疑您是在谈论更大的数据集和复杂的测试,以便创建“更好”的基于 NN 的实体集。那么,是否有可能在人类感知时间完成所有这些?这要困难得多,特别是因为开始有意义的解决方案是跨多台机器(例如 Hadoop)分布计算,但这肯定开始进入秒级,而不是毫秒级。

    【讨论】:

    • 你说得对,我面临训练数据生成的问题,我试图暗示这一点,但我认为我的优先级错误。我所说的数据量和测试时间不一定要那么大,但我的概念应该能够与非常少量的实体一起使用,这可能使 GA 成为训练它们的糟糕选择。尽管如此,我想要的是用户的行为在尽可能短的时间内对行为产生影响。想象一下另一个用户将控制其他实体,他会理解威胁并试图避免它。这就是我想要的。
    猜你喜欢
    • 2017-12-28
    • 2016-12-23
    • 1970-01-01
    • 2017-02-16
    • 2017-02-19
    • 2014-01-15
    • 1970-01-01
    • 2013-01-03
    • 2018-10-28
    相关资源
    最近更新 更多