如何确保gplearn的SymbolicTransformer的_best_programs输出不同?

问题描述 投票:0回答:1

我正在使用gplearn的SymbolicTransformer生成一些自动化功能。问题是,当我在拟合后通过查看_best_programs来检查特征的表达时,我发现大多数特征具有相同的表达。我想知道是否有一种方法可以确保我们在拟合后使用SymbolicTransformer输出不同的特征?

feature-engineering gplearn
1个回答
0
投票

我不知道是否有一种方法可以明确地强制执行此操作,但是您可能可以尝试强制每一代强制执行更多不同的种群,以希望这会导致产生更多不同的_best_programs。我认为您可以研究以下几个参数:

  • p_crossover
  • p_subtree_mutation
  • p_hoise_mutation
  • p_point_mutation
  • p_point_replace

如果增加交叉或突变的机会,则会增加预期的多样性,但绝对不能逾期。多样化的人口与准确的人口之间存在平衡。交叉或变异越高,您越有可能选择强壮的个人候选人并将其改变为毫无意义的事物。

© www.soinside.com 2019 - 2024. All rights reserved.