代码之家  ›  专栏  ›  技术社区  ›  Kiril

遗传编程在线学习

  •  4
  • Kiril  · 技术社区  · 14 年前

    有没有人见过全科医生 online learning 而不是标准的离线学习?我用遗传程序做了一些工作,但我根本不知道什么是使学习过程在线的好方法。

    请让我知道,如果你有任何想法,看到任何实现,或有任何参考,我可以看。

    3 回复  |  直到 13 年前
        1
  •  3
  •   Cerin    14 年前

    根据维基百科的链接,在线学习“一次学习一个实例”。在线/离线标签通常指的是如何将训练数据反馈给监督回归或分类算法。由于遗传规划是一种启发式搜索,它使用一个评估函数来评估其解的适合性,而不是一个带有标签的训练集,因此这些术语并不真正适用。

    如果你问的是gp算法的输出(即最好的表型)是否可以在它还在“搜索”更好的解决方案时使用,我认为没有理由不使用,假设它对你的域/应用程序有意义。一旦您的ga/gp种群的适应度达到某个阈值,您可以将该解决方案应用到您的应用程序中,并继续运行gp,在有更好的解决方案可用时切换到新的解决方案。

    沿着这条路线的一种方法是一种称为 rtNEAT 尝试用遗传算法实时生成和更新神经网络。

        2
  •  1
  •   Daniel G    14 年前

    我通过谷歌学者搜索找到了几个例子 online Genetic Programming .

    An On-Line Method to Evolve Behavior and to Control a Miniature Robot in Real Time with Genetic Programming

    看起来他们真的找到了一种方法让GP在实际活动中修改机器人控制系统的机器代码-非常酷!

    这些作者继续创作了更多相关的作品,比如这一改进:

    Evolution of a world model for a miniature robot using genetic programming

    希望他们的工作足够让你开始-我没有足够的遗传编程经验,不能给你任何具体的建议。

        3
  •  0
  •   Jay    13 年前

    看起来他们真的找到了一种方法让GP在实际活动中修改机器人控制系统的机器代码-非常酷!

    是的,多特蒙德大学的系里有很多人喜欢线性GP:-)

    GP程序与解释代码的直接执行有一些优点,但在这些日子里,您可能更希望使用动态语言,如JAVA、C语言或Obj-C,允许您在运行时编写类/方法,同时仍然可以从一些运行时受益,而不是运行。原始CPU。

    在我看来,在线学习方式并不是什么绝对新奇的东西,也不是什么与“传统家庭医生”不同的东西。 据我所知,这只是在运行时扩展训练/健身/测试用例集的一个例子?

    干杯, 杰伊