我目前正在研究时间序列预测问题,并正在研究使用 LSTM。
我用来确定预测是否良好的最终准确度指标定义如下:
其中是实际值,是预测值。所以这个公式将产生之间的分数。然后可以从 1 中减去该分数,以在指定的预测范围内产生预测的百分比准确度
我正在使用 keras,并且已经看到我可以指定自定义损失函数和指标。由于我的预测准确性将使用 sMAPE 3(如上定义)来衡量,因此将其用作我的损失函数对我来说是有意义的。这是因为我的网络成功将通过它使用它的得分来衡量。0分表示100%准确率,1分表示0%准确率。
所以这提出了两个问题,像 smape 这样的度量是否可以用作损失函数,如果可以,为什么/为什么不呢?keras 中的标准损失函数是否被认为更好?也许是因为它们允许更快的收敛?我选择使用 SMAPE3 作为损失函数是否会影响我应该使用哪种优化器?
我问是因为我没有看到很多人使用除 RMSE、MSE 和 MAE 以外的损失函数,这一定是有原因的。