优化输入向量以达到最佳结果

我无法解决以下问题:如果可以的话,我想立即给你一个例子
想象一下,你处理的是市场数据,并且你开发了一个很好的回归模型,用来预测某个广告活动的“覆盖范围”。一切顺利,数据科学家的工作完成了。
但是,等一下。我们可以做得更多。
我想问你的问题是:
假设我们有一个好的模型,我们如何优化输入向量(=市场活动)来获得最佳的“覆盖范围”(=预测器/优化目标)?
我疯狂地在网上搜索,但找不到任何好的方法(我不是在说任何超参数优化)。我找到的最佳方法是遗传算法… 例子在这里在这里
或者 – 一种蛮力方法 – 计算一个巨大的网格,包含大量可能的输入向量,然后检查哪个是最好的(直接) – 但这将是计算上昂贵的。

我很想听听你的意见。你有什么建议我应该查看哪些主题吗?


回答:

一个很长的评论:

遗传算法可以嵌套。将你的遗传解决方案查找器放入一个适应度函数中。将其交给一个父级遗传算法。让它们通过外部GA的“优化输入向量”和内部GA的“优化目标”来搜索结果。

你甚至可以添加第三层GA,来测试中间层GA的构建参数,因为我们可能不知道我们需要什么样的搜索空间。如果我们知道这一点,那么我们就不需要优化那个向量了。

通过这种方式,你甚至可以减少每个GA的问题维度。

vector:x,y,zGA1: optimizes x and GA2 parameters  GA2: optimizes y and GA3 parameters     GA3: optimizes z        fitness(x,y,z)all pass their best fitness to parent

我不确定这是否会比

GA: optimize x,y,z    fitness(x,y,z)

更快/更慢,因为我不知道GA3的变异是否能使整个优化器免于陷入局部最小值。还有其他版本:

GA1: optimize GA2   GA2: optimize x,y,z       fitness(x,y,z)

我不知道它的性能。也许GA也可以解决应该有多少个嵌套的GA的问题

GA0: optimize N, x0,x1,..xM-N  GA1: optimize XM-N+1    GA2: optimize XM-N+2       ...           GAM: optimize XM               fitness(X0,X1,..XM)

但我猜在所有层级上构建/销毁太多对象会降低性能(与内存带宽相关)和可读性(回调地狱)。

Related Posts

使用LSTM在Python中预测未来值

这段代码可以预测指定股票的当前日期之前的值,但不能预测…

如何在gensim的word2vec模型中查找双词组的相似性

我有一个word2vec模型,假设我使用的是googl…

dask_xgboost.predict 可以工作但无法显示 – 数据必须是一维的

我试图使用 XGBoost 创建模型。 看起来我成功地…

ML Tuning – Cross Validation in Spark

我在https://spark.apache.org/…

如何在React JS中使用fetch从REST API获取预测

我正在开发一个应用程序,其中Flask REST AP…

如何分析ML.NET中多类分类预测得分数组?

我在ML.NET中创建了一个多类分类项目。该项目可以对…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注