当前位置:  开发笔记 > 编程语言 > 正文

神经网络"育种"

如何解决《神经网络"育种"》经验,为你挑选了2个好方法。

我刚刚观看了一个关于"Polyworld"(在这里找到)的Google技术谈话视频,他们谈到将两个神经网络一起培育成后代.我的问题是,如何组合两个神经网络?它们看起来如此不同,任何组合它们的尝试都只会构成第三个完全不相关的网络.也许我错过了一些东西,但我没有看到一个很好的方法来采取两个独立的神经网络的积极方面,并将它们组合成一个单一的神经网络.如果有人能详细说明这个过程,我会很感激.



1> mjv..:

到目前为止,对Polyworld的性质都没有回应!...

它们都描述了典型的遗传算法(GA)应用.虽然GA包含了Polyworld中发现的一些元素(育种,选择),但GA也意味着某种形式的"客观"标准,旨在指导进化到[相对]特定目标.

另一方面,Polyworld是人工生命(ALife)的框架.有了ALife,个体生物的生存及其将基因传递给其他世代的能力,并不是因为它们能够满足特定的"适应度函数",而是与各种更广泛,非目标导向相关联. ,标准,例如个体以与其大小和代谢相称的方式喂养自己的能力,避免捕食者的能力,寻找交配伙伴的能力以及各种剂量的运气和随机性.

Polyworld与生物及其世界相关的模型相对固定的(例如,他们都可以访问(虽然可以选择不使用)各种基本传感器(用于颜色,用于形状......)和各种执行器("设备"吃) ,交配,转弯,移动......)这些基本的感觉和运动功能不会发展(因为它可能在自然界中,例如当生物找到对热或声音变得敏感的方法和/或找到方法时移动不同于原始运动原语等...)

另一方面,生物的大脑具有结构和连接,这两者都是生物的基因构成(来自其祖先的"东西")和它自己的经验的产物.例如用于确定神经元之间的连接的强度主算法(早上,我猜生物的寿命期间使用赫布逻辑(即火一起,线一起)作为算法通常具有一个"冷却随着时间的流逝,"最大限度地减少其改变事物的能力的因素".目前还不清楚,如果模型包括某种形式的Lamarkian演变,因此一些高级的行为都[直接]通过基因传递,而不是[可能] relearnt每一代(的某些基因传递的间接基础上结构体).

ALIFE和GA之间的显着差异(也有其他人!)是与ALIFE,重点是观察和培养非定向的方式 -whatever他们可─,紧急行为,如,例如,当一些生物进化一个化妆品,促使他们等待附近成堆的绿色食物,等待深绿色的生物杀死他们,或者一些生物可能开始彼此合作,例如通过寻求彼此的存在用于其他目的而不是交配等.使用GA,重点是正在发展的计划的特定行为.例如,目标可以是使程序识别视频图像中的边缘,因此在该特定方向上有利于进化.对于进化而言,更好地执行该任务的个体程序(作为具有一些"适应度函数"的度量)是有利的.

另一个不那么明显但重要的区别是生物(或GA的程序)重现自己的方式.有了ALife,个体生物最初会随机找到他们自己的交配伙伴,但是经过一段时间后,他们可能会学会仅仅展示具有特定属性或行为的生物.另一方面,使用GA,"性别"留给GA框架本身,例如,它选择优选交叉繁殖的个体(及其克隆),其在健身功能上得分很好(并且总是为某些人留下空间)随机性,以免解决方案搜索停留在某些局部最大值,但重点是GA框架主要决定与谁发生性关系)...

已经澄清了这一点,我们可以返回到业务方案的原来的问题 ...
...一会怎样结合两种神经网络?它们看起来如此不同,任何组合它们的尝试都只会构成第三个完全不相关的网络.......我没有看到一个很好的方法来采取两个独立的神经网络的积极方面,并将它们组合成一个单独的... 一个特定生物
"基因组成"影响参数,生物的大小,它的颜色等.它还包括与大脑相关的参数,特别是其结构:神经元的数量,来自各种传感器的连接的存在(例如,生物是否非常好地看到蓝色?)存在与各种致动器的连接(例如,该生物是否使用它的光?).神经元之间的特定连接和它们的相对强度也可以在基因中传递,如果仅用作初始值,则在脑学习阶段期间快速改变.
通过采取两个生物,我们[自然!]可以或多或少地随机选择,哪个参数来自第一个生物,哪个来自另一个生物(以及来自父母双方的一些小说"突变") .例如,如果"父亲"与红色传感器有许多联系,但母亲没有后代可能看起来像这个区域的父亲,而且还得到他母亲的4个神经元层结构而不是父亲的6个神经元层结构.
这样做的好处是发现个人的新能力 ; 在上面的例子中,该生物现在可以更好地检测红色的捕食者,并且还可以在其稍微简单的大脑中更快地处理信息(与父亲相比).并非所有的后代比他们的父母,这种较弱的人更好的装备,在短期内可能消失(或者可能很幸运存活足够长的时间,提供,比方说,移动和逃避天敌,即使他们的父母让他们失明或自己奇特的方式太大或者其他什么......关键的一点是:不要担心特定特质的直接用处,只能看到它长期发挥作用.



2> MusiGenesis..:

他们不会真正将两个神经网络联合起来.据推测,他们有各种遗传算法,在给定特定的"基因"序列的情况下产生特定的神经网络结构.他们将从一群基因序列开始,产生其特有的神经网络,然后将这些网络中的每一个暴露于相同的训练方案.据推测,这些网络中的一些将比其他网络更好地响应训练(即,它们将更容易"训练"以实现期望的行为).然后,他们将采用产生最佳"受训者"的基因序列,将它们相互杂交,产生其特有的神经网络,然后将其暴露于相同的训练方案.据推测,第二代中的一些神经网络比第一代神经网络更容易训练.这些将成为第三代的父母,依此类推.


用更少的词来说,我们使用GA来学习神经网络的结构(它仍然像往常一样用反向传播来训练以更新权重).
推荐阅读
wurtjq
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有