【问题标题】:Neural network for optimization problems用于优化问题的神经网络
【发布时间】:2020-06-30 21:47:15
【问题描述】:

假设我已经训练了一个神经网络,它接受一些输入并准确计算它们的值。该神经网络用于逼近一个难以解析求解或使用其他方法模拟的函数。它是一个非常精确的函数逼近器。现在我想知道返回最高值的最佳输入是什么。我在想我可以用遗传算法来做到这一点,但有没有一种神经网络方法可以做到这一点?是否可以同时训练神经网络并找到最佳输入?什么样的网络架构可以做到这一点?

【问题讨论】:

    标签: python tensorflow keras deep-learning neural-network


    【解决方案1】:

    嗯,一个直接的解决方案是将微积分应用于每个层并求解任何局部最小值或最大值(假设您没有那么多变量)。但我不认为这种解决方案(或类似的优化方法)是对神经网络的正确使用。

    神经网络旨在模仿。给定输入 X 和预期输出 Y,优化一个猜测“接近”Y 的函数。这就是神经网络的本质。孤立的优化问题提出了一个根本不同的问题。给定一组近似于某些基础函数的数据,找到单一的“最佳”解决方案。此类问题是在数据集合中寻找单个案例(或孤立的离散案例)。

    如果您想用神经网络解决方案来表述优化问题,它看起来像这样。给定一组近似函数(数百万个经过训练的神经网络)和已知的优化解决方案(每个解决方案的预期解决方案),训练一个模仿这种行为的新神经网络。这当然可以做到,但是感兴趣的函数的集合需要某种界限;当然不可能训练一个“普遍”应用于所有可能的优化问题的神经网络。这将解决整个优化理论领域。

    例如,给定一个形式为 Asin(Bx+C)+D 的函数集合,用于 A、B、C 和 D 的随机分布;找到最大值。或者计算最大值和最小值的数量。这些是神经网络可以学习数据集中看不见的函数的很好的例子。神经网络甚至可以很好地学习底层行为,以至于它也适用于初始数据集之外的系数。

    当然,人们可以开始构建大量优化神经网络,这些网络适用于数百万种不同的案例,解决各种不同的问题。这样的“神经网络动物园”可以解决所有的优化理论。

    【讨论】:

      猜你喜欢
      • 2012-12-29
      • 1970-01-01
      • 1970-01-01
      • 2017-01-24
      • 1970-01-01
      • 2011-02-22
      • 1970-01-01
      • 1970-01-01
      • 2017-05-27
      相关资源
      最近更新 更多