1
resposta

Definir os hiperparâmetros para logistic regression no spark

Olá, eu fiz a otimização para o modelo em logistic regression, porém não entendi os valores que coloquei como hiperparametros. Exemplo:

lr_grid = ParamGridBuilder()\
    .addGrid(lr.regParam,[0.02,0.08])\
    .addGrid(lr.elasticNetParam,[0.2,0.6])\
    .build()

Queria uma ajuda para entender quais parametros tunar com o a otimização nos modelos de logistic regression.

Obrigada!

1 resposta

Oi, Claudia! Tudo bom contigo?

Desculpe a demora em te responder.

O hiperparâmetro regParam evita o overfitting ao regularizar o modelo. O overfitting ocorre quando o modelo é treinado "demais" nos dados de treinamento e, como resultado, tem um desempenho ruim em dados não vistos.

Se regParam for 0, não há regularização. Valores maiores aplicam penalidades mais fortes nos coeficientes, podendo reduzi-los a zero e simplificar o modelo. Portanto, ao trabalhar com os valores 0.02 e 0.08 estamos, respectivamente, tornando a penalidade mais "leve" e mais "forte".

Enquanto isso, elasticNetParam determina o tipo de regularização:

  • Se elasticNetParam for 0, estamos usando regularização L2 (Ridge), que reduz a magnitude dos coeficientes;
  • Caso seja 1, estamos usando regularização L1 (Lasso), que torna alguns coeficientes exatamente zero;
  • Valores entre 0 e 1 dão uma combinação de L1 e L2.

No seu caso, ambos valores 0.2 e 0.6 representam uma combinação entre L1 e L2, no entanto, o primeiro está mais "inclinado" para L2 e o segundo, para o L1.

Claudia, regParam e elasticNetParam são geralmente os principais hiperparâmetros ajustados. Contudo, outros interessantes são:

  • maxIter: Define quantas vezes o algoritmo tentará otimizar;
  • tol: Precisão necessária para a convergência do algoritmo;
  • fitIntercept: Decide se inclui um termo constante na equação.

Caso tenha curiosidade em explorar outros hiperparâmetros, recomendo a leitura do material abaixo:

Um forte abraço!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!