Como calcular a amostra R ao quadrado?

10

Sei que isso provavelmente já foi discutido em outro lugar, mas não consegui encontrar uma resposta explícita. Estou tentando usar a fórmula para calcular fora da amostra de um modelo de regressão linear, em que é a soma dos resíduos quadrados e é a soma total dos quadrados. Para o conjunto de treinamento, é claro queR2=1SSR/SSTR2SSRSST

SST=Σ(yy¯train)2

E o conjunto de testes? Devo continuar usando fora da amostra ou usar ?y¯trainyy¯test

Descobri que, se eu usar , o resultante poderá ser negativo às vezes. Isso é consistente com a descrição da função do sklearn , onde eles usaram (que também é usado pela função do linear_model para testar amostras). Eles afirmam que "um modelo constante que sempre prediz o valor esperado de y, desconsiderando os recursos de entrada, obteria uma pontuação de R ^ 2 de 0,0".y¯testR2r2_score()y¯testscore()

No entanto, em outros lugares, as pessoas usaram como aqui e aqui (a segunda resposta por dmi3kno). Então, eu queria saber o que faz mais sentido? Qualquer comentário será muito apreciado!y¯train

louco
fonte

Respostas:

3

Você está certo.

Os resíduos OSR são baseados em dados de teste, mas a linha de base ainda deve ser de treinamento. Com isso dito, seu SST é ; observe que o mesmo é para2SST=Σ(yy¯train)2R2

user152317
fonte
3
Embora eu tenha corrigido alguns erros óbvios e aparentes de edições anteriores, algumas das notações e alguns dos significados pretendidos ainda não estão claros.
Nick Cox
Obrigado pela resposta! Você tem alguma referência sobre isso? Parece que os softwares stat usam geralmente a definição alternativa, com y_test?
Matifou 01/05/19