TL; DR (muito longo, não leu):
Estou trabalhando em um problema de previsão de séries temporais, que formulo como um problema de regressão usando o Deep Learning (keras). Quero otimizar a correlação de Pearson entre minha previsão e os rótulos verdadeiros. Estou confuso pelo fato de que o uso do MSE como proxy realmente leva a melhores resultados (em termos de correlação) do que o uso direto da Pearson como uma função de perda. É uma prática recomendada usar métricas de correlação como funções de perda para aprendizado profundo? Se sim, por quê?
Versão mais longa:
Tenho uma tarefa de previsão de séries temporais: observo valores para etapas consecutivas no tempo e preciso prever o valor na etapa T + 1 . Como os valores geralmente estão em [ - 200 , 200 ] , estou tratando isso como um problema de regressão, que estou resolvendo usando o Deep Learning (keras).
Minha pergunta é sobre a escolha de perda e métricas.
Meus dados têm rótulos verdadeiros principalmente em torno de com alguns valores extremos. Muitos dos valores extremos são errôneos e não quero mudar meu aprendizado para focar em acertá-los. Em outras palavras, quero ser capaz de captar a tendência geral (classificar corretamente o período de valores positivos versus negativos) e posso "conviver" com a previsão de 100 em vez de 200, por exemplo.
Por esse motivo, acho que minha métrica de avaliação deve ser a correlação de Pearson entre os valores previstos e verdadeiros.
Agora, para a função de perda: idealmente, se eu quiser otimizar a alta correlação de Pearson, faria sentido usar isso como a função de perda, certo? Eu testei uma arquitetura simples que é meu "modelo de linha de base" duas vezes: uma vez usando o Pearson (calculado em um mini-lote) diretamente como minha função de perda e uma vez usando o MSE comum como proxy. Nos dois casos, acompanho o MSE e o Pearson em diferentes épocas e faço "paradas antecipadas" com base em um conjunto de validação.
Meus resultados:
- MSE como uma perda: MSE 160, Pearson 0,7
- Pearson como perda: MSE 250, Pearson 0,6
Entendo que o MSE mais alto para a perda de Pearson é o resultado do fato de que a otimização para correlação não tem escala, de modo que toda a previsão pode ser "desativada" por um fator que aumenta o MSE. Mas como é que o uso do MSE como proxy realmente se sai melhor em termos da correlação de Pearson? Existe algum motivo relacionado à otimização do motivo pelo qual a correlação de Pearson não deve ser usada como uma função de perda? Na verdade, vejo que, na prática, dificilmente é usado, mas gostaria de entender a razão por trás disso.
fonte