【发布时间】:2019-10-20 01:14:00
【问题描述】:
(对不起,如果这个问题感觉有点头脑风暴)
我有一个函数F,参数a_1, a_2... 和b 输出x。
该函数还由一系列p_1, p_2... 参数定义,这些参数在我的工作中可能会发生变化。
F(a_1, a_2... , b) = x
给定a_1, a_2...,我想构建一个决策树算法,为函数F 找到最小化x 的b。我想自动化这个决策树构建器,以适应F(通过p_1, p_2...)的变化。
自动化过程非常重要,因为实际上a_x 可以是任何东西(整数、连续数、离散参数),而F 是高度非线性的。
我的一个直觉想法是构建假样本并在数据集上学习决策树,这将为我提供所需的决策树。然而,这似乎过于复杂,因为我可以访问产生这个问题的函数。
如果有人有任何想法或向我指出任何可以帮助我解决问题的方向,我们将不胜感激。
编辑:
我正在改变我的问题范围:
假设从最初的问题你得到了函数F',它将a_1, a_2... 映射到b(b 是离散的)。是否有一种算法试图通过以a_1, a_2... 为节点的决策树来“简化”F'。
例如一个会说if a_2 = "type2" and a_1 < 6 -> 3等的决策树。我不是在寻找精确的分区,一个合适的估计就足够了。
我正在考虑使用 ML 算法使用由 F' 的蒙特卡罗模拟生成的假样本来构建决策树。这有意义吗?
【问题讨论】:
-
如果可以评估函数,为什么不直接使用标准优化方法?
-
a_i已修复,您必须仅将F视为b的函数(真的吗?)。然后如上所述,您可以使用经典的一维最小化方法 -
我将尝试扩展问题以包含一个简化的示例,其想法是
F根本不是线性的(而b是离散的)。我已经好几年没有做优化问题了,但感觉非线性会带来麻烦,对吧? -
不,有一些众所周知的非线性优化方法。
-
“复杂函数”会误导任何知道mathematical sense of this term的人
标签: algorithm automation decision-tree