4

有没有人看到过使用在线学习而不是标准的离线学习来实施全科医生?我已经用基因程序做了一些事情,但我根本不知道什么是使学习过程在线的好方法。

如果您有任何想法、看到任何实现或有任何我可以查看的参考资料,请告诉我。

4

3 回答 3

4

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

如果您要问的是 GP 算法的输出(即最佳表型)是否可以在它仍在“搜索”更好的解决方案时使用,我认为没有理由不这样做,假设它对您的域/应用程序有意义. 一旦您的 GA/GP 人口的适合度达到某个阈值,您可以将该解决方案应用于您的应用程序,并继续运行 GP,当有更好的解决方案可用时切换到新的解决方案。

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

于 2010-04-13T13:36:17.993 回答
1

我通过谷歌学术搜索在线遗传编程找到了一些例子。

一种通过遗传编程实时进化行为和控制微型机器人的在线方法

实际上,他们似乎找到了一种方法,可以让 GP 在实际活动中修改机器人控制系统的机器代码——非常酷!

那些相同的作者继续进行更多相关的工作,例如这种改进:

使用遗传编程的微型机器人世界模型的演变

希望他们的工作足以让你开始——我没有足够的基因编程经验,无法给你任何具体的建议。

于 2010-04-13T08:14:29.527 回答
0

实际上,他们似乎找到了一种方法,可以让 GP 在实际活动中修改机器人控制系统的机器代码——非常酷!

是的,Uni Dortmund 的部门非常喜欢线性 GP :-)

GP 程序与解释代码的直接执行相比具有一些优势,尽管在这些日子里,您可能更愿意使用动态语言,例如 Java、C# 或 Obj-C,它们允许您在运行时编写类/方法,而您仍然可以仍然可以从一些运行时中受益,而不是在原始 CPU 上运行。

在我看来,在线学习方法与“经典 GP”没有什么绝对新颖或不同的东西。据我了解,这只是在运行时扩展训练/健身/测试用例集的一个案例?

干杯,杰伊

于 2011-12-11T12:41:53.870 回答