【问题标题】:Enhance a Machin Learning model for periodic data增强周期性数据的机器学习模型
【发布时间】:2020-03-10 15:17:18
【问题描述】:

我正在通过 TensorFlow (tfjs) 学习机器学习。
我的第一个测试是训练我的模型来预测 cos(x) 作为 x 的函数(从 0 到 2*Math.PI*4 aka 4 个周期)

特征:2000 个 x 值(随机)
label: cos(x) 的 2000 个值

型号:

const model = tf.sequential({
    layers: [
        tf.layers.dense({ inputShape: [1], units: 22, activation: 'tanh' }),
        tf.layers.dense({ units: 1 }),
    ]
});

model.compile({
    optimizer: tf.train.adam(0.01),
    loss: 'meanSquaredError',
    metrics: ['mae']
});

...

await model.fit(feature, label, {
    epochs: 500,
    validationSplit: 0.2,
})

结果相当“有趣”:

现在我想知道如何增强我的模型以适应 cos(x) 的周期性(不使用 cos(x) 的数学周期性,例如 y = cos(x modulo 2PI))。
我的模型是否有可能“理解”存在周期性?

【问题讨论】:

    标签: tensorflow machine-learning keras tfjs-node


    【解决方案1】:

    我认为您构建的网络太小而无法学习余弦函数的周期性行为(尝试增加隐藏单元的数量和/或添加隐藏层),我也不认为是常规的(完全连接的神经network) 是正确的选择,如果您想学习具有周期性顺序性质的函数,请尝试为此使用 RNN 或 LSTM。

    【讨论】:

      猜你喜欢
      • 2017-10-20
      • 1970-01-01
      • 2017-11-25
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 2020-05-25
      • 2016-10-27
      • 1970-01-01
      相关资源
      最近更新 更多