Fala João, blza?
O R^2 representa a proporção que o modelo consegue explicar da variabilidade dos dados. Por exemplo,
R^2 = 0,73 significa que o modelo está capturando 73% da variabilidade total dos dados.
O overfiting é um ponto a parte. Ele diz respeito ao sobreajuste que ocorre em um conjunto de dados, ou seja, quando o modelo aprende muito com a amostra de treino a ponto de não ter a capacidade de previsão na amostra de validação.
Dessa forma, a melhor maneira de avaliar o overfiting de um modelo é comprar o R^2 da amostra de treino com o R^2 do teste.
O que ocorre geralmente, é o aumento gradativo do R^2 do treino e o não aumento do R^2 na amostra de teste, a medida que cada iteração ocorre. Quando isso começar acontecer, podemos dizer que o modelo está sendo sobreajustado na amostra de treino (e neste caso ele pode chegar até 1).
Agora, enquanto o valor de R^2 não parar de crescer na amostra de teste, não pode-se dizer que o modelo está sendo sobreajustado no treinamento e isso independe do valor de R^2. Ele pode começar a sobreajustar em 0,73 ou 0,84.
Lembrando que, em uma situação real, é muito suspeito termos R^2 = 1 na amostra de treino e teste.
Espero ter ajudado.
Abs