【问题标题】:How to determine unknown array to array function using TensorFlow?如何使用 TensorFlow 确定未知数组到数组函数?
【发布时间】:2019-12-24 03:31:27
【问题描述】:

对于一些看起来像这样的未知函数:

def unknown_function(input_array): # where input array could be, for example, a 3 by 3 numpy array
    # does some unknown operation on input array 
    # to determine output array of same shape
    return output_array

如果有足够大的输入输出数组对数据集来训练模型,如何创建 TensorFlow 模型来找到任意输入数组的输出数组?

【问题讨论】:

  • 这可能首先是一个理论/统计问题,不是吗?无论如何,这对于 Stack Overflow 来说可能过于宽泛。
  • @AMC 我不这么认为。我在文档中看到了从输入数组到标量的示例:tensorflow.org/tutorials/keras/regression。当输出是一个数组时,我对如何实现类似类型的东西有点困惑。
  • 你更关心理论难点还是实际难点?

标签: python arrays numpy tensorflow keras


【解决方案1】:

有很多方法可以通过更简单的函数来逼近一个函数。这在很大程度上取决于您试图近似的函数类型,最好的方法是什么。是连续的吗?它有多复杂?等等。

试着找出你的函数的行为是什么。如果它是连续的,并且输入位于 R^n 的紧凑子集中,那么universal approximation theorem 表示它可以通过神经网络进行近似。

但这并不意味着这是最好的方法。也许least-squares 拟合傅立叶系数或单项式因子可能已经足以很好地逼近您的函数(这通常要便宜得多)。

查看逼近函数的不同方法,查看函数的属性,看看哪种方法看起来最合适。首先尝试选择更便宜的选项(例如最小二乘法),如果这些选项不起作用,请查看更昂贵的选项(例如深度神经网络)。

通过不对所有可用数据进行训练而对未使用的数据进行测试来测试您的方法。还要看看你得到什么类型的输出,以确定什么是好的损失函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-06
    • 1970-01-01
    • 1970-01-01
    • 2021-12-07
    相关资源
    最近更新 更多