交叉熵和遗传算法有什么区别?
Whats the difference between Cross-Entropy and Genetic Algorithms?
我的一些实验室伙伴一直在研究交叉熵强化学习。从我从他们那里收集到的所有信息和快速的互联网搜索来看,交叉熵方法似乎与遗传算法几乎相同。有人可以向我解释这两种技术之间的真正区别是什么吗?
在这种情况下,交叉熵是遗传算法的一种特殊形式。它比说 "Genetic Algorithms" 更具体,因为它涵盖了大量不同的算法。
简单地说:
遗传算法是一类算法/一种优化方法
交叉熵是一种特殊的遗传算法。
这两种方法都适用于经过多代改进的人口。关键区别在于人口的表示方式。
遗传算法 (GA) 对人群中的个体起作用,例如通过突变。可以一一列举每个人的祖先。
Cross-Entropy 方法 (CEM) 将总体表示为概率分布。个人是从这个分布中抽取的。分布参数是 re-estimated 来自最好的,例如2% 和其他 98% 被丢弃。
从技术上讲,“最好的 2%”也是一种概率分布。你可以从中抽取一个非常大的样本,但它很昂贵。所以你试着用你的简单分布来近似“2% 的分布”。 测量两个分布之间的差异,您希望将其最小化。通常这比听起来更简单:如果您的分布是高斯分布,您可以从最好的 2%.
中估计一个新的均值和(协)方差。
实际考虑:
CEM 要求您得出个体的概率分布。除了突变强度等参数之外,大多数 GA 还需要这样的分布来生成初始种群。
CEM实现简单,参数少。这是一个很好的基线算法,有时它会击败更复杂的方法。然而,CMA-ES 对于只有几百个参数的连续问题来说是一个更好的基线,因为它有很好的记录。
估计仅 2% 的人口的参数需要非常大的人口规模。丢弃 98% 的信息是一种浪费。另一方面,它可以防止 CEM“横着走”并被 sub-optimal 解决方案分散注意力。
GA 可以更花哨,并且存在许多 problem-specific 变体。 CEM 可以通过选择巧妙的分布来适应问题。这对于某些离散问题非常有用。一般来说,我会说使用 GA 是 CEM 的一个进步,无论是在复杂性(更难使其正常工作)还是在潜在性能(使其操作员适应问题的更多机会)方面。
参考文献:
The Cross-Entropy Method for Fast Policy Search(曼诺等人,2003 年)
Learning Tetris Using the Noisy Cross-Entropy Method (PDF)
(Szita 和 Lörincz,2006 年)
The Cross-Entropy Method for Optimization(Botev 等人,2013 年)
我的一些实验室伙伴一直在研究交叉熵强化学习。从我从他们那里收集到的所有信息和快速的互联网搜索来看,交叉熵方法似乎与遗传算法几乎相同。有人可以向我解释这两种技术之间的真正区别是什么吗?
在这种情况下,交叉熵是遗传算法的一种特殊形式。它比说 "Genetic Algorithms" 更具体,因为它涵盖了大量不同的算法。
简单地说:
遗传算法是一类算法/一种优化方法
交叉熵是一种特殊的遗传算法。
这两种方法都适用于经过多代改进的人口。关键区别在于人口的表示方式。
遗传算法 (GA) 对人群中的个体起作用,例如通过突变。可以一一列举每个人的祖先。
Cross-Entropy 方法 (CEM) 将总体表示为概率分布。个人是从这个分布中抽取的。分布参数是 re-estimated 来自最好的,例如2% 和其他 98% 被丢弃。
从技术上讲,“最好的 2%”也是一种概率分布。你可以从中抽取一个非常大的样本,但它很昂贵。所以你试着用你的简单分布来近似“2% 的分布”。
实际考虑:
CEM 要求您得出个体的概率分布。除了突变强度等参数之外,大多数 GA 还需要这样的分布来生成初始种群。
CEM实现简单,参数少。这是一个很好的基线算法,有时它会击败更复杂的方法。然而,CMA-ES 对于只有几百个参数的连续问题来说是一个更好的基线,因为它有很好的记录。
估计仅 2% 的人口的参数需要非常大的人口规模。丢弃 98% 的信息是一种浪费。另一方面,它可以防止 CEM“横着走”并被 sub-optimal 解决方案分散注意力。
GA 可以更花哨,并且存在许多 problem-specific 变体。 CEM 可以通过选择巧妙的分布来适应问题。这对于某些离散问题非常有用。一般来说,我会说使用 GA 是 CEM 的一个进步,无论是在复杂性(更难使其正常工作)还是在潜在性能(使其操作员适应问题的更多机会)方面。
参考文献:
The Cross-Entropy Method for Fast Policy Search(曼诺等人,2003 年)
Learning Tetris Using the Noisy Cross-Entropy Method (PDF) (Szita 和 Lörincz,2006 年)
The Cross-Entropy Method for Optimization(Botev 等人,2013 年)