Saudações amigos de R, 

Depois de muito tempo sem interagir na lista venho pedir uma luz. Estou tentando montar um modelo de previsão penalizado. Eu já tinha usado no passado remoto o pacote glmpath que regulariza/penaliza modelos glm. 
Recentemente me deparei com a função glmnet - glmnetUtils - que faz o mesmo trabalho de forma mais automatizada, inclusive com validação cruzada já implementada. Porém, ao olhar a saída do modelo fiquei com dúvidas. Fui olhar a bibliografia original do pacote e não adiantou muito. Acho que é uma expectativa equivocada de minha parte que está me impedindo de entender corretamente. 

Então ajustei o seguinte modelo:

cva.glmnet(hav ~ ano_nasc_trunc60 + idade + indicacao_outras + sexo, data = bi[setD,],alpha = seq(0, 1, len = 11), family="binomial", nfolds = 1000, grouped = FALSE, trace.it = TRUE, outerParallel = makeCluster(4))

(Inntercept)                                                                                                  113.55782297
ano_nasc_trunc60                                                                                              -0.05781642
idade                                                                                                          0.04359743
indicacao_outrasViajante                                                                                      -0.85226169
indicacao_outrasOTHER                                                                                         -0.53550446
indicacao_outrasHIV/AIDS                                                                                       0.49319132
indicacao_outrasAsplenia anatômica ou funcional e doenças relacionadas (anemia falciforme, talassemia maior)   .        
indicacao_outrasPneumopatias crônicas (DPOC, Bronquiectasia, Asma etc)                                         .        
indicacao_outrasCandidatos a transplante de órgão sólido                                                       0.13338936
indicacao_outrasCardiopatias crônicas                                                                         -0.05086300
indicacao_outrasHepatopatias crônicas, Cirrose e portadores de HCV                                             .        
indicacao_outrasComunicantes domiciliares de imunodeprimidos                                                  -0.24283444
indicacao_outrasImunodeficiência/Imunodepressão outras (adquirida ou congênita)                                .        
indicacao_outrasImunodepressão terapêutica ou devido ao câncer                                                 0.15478292
indicacao_outrasNão informado                                                                                 -0.18649749
indicacao_outrasNefropatias crônicas/hemodialisados/sindrome nefrótica                                         .        
indicacao_outrasProfissional de saúde                                                                         -0.51745839
indicacao_outrasTransplante de órgão sólido                                                                    .        
sexoFeminino                                                                                                   0.03089234
sexoMasculino                                                                                                 -0.01749610
 
Reparem que há dois coeficientes para o sexo, um pra masculino e outro para Feminino. Eu esperaria que houvesse somente 1, sendo que a referencia (no caso o masculino) não apareceria ou deveria ser zero. A mesma dúvida no preditor indicação, onde a categoria Viajantes deveria ser a referência e eu não esperaria que esta aparecesse ou fosse zero. É claro que as categorias são mutuamente exclusivas, então quando um está presente, ou outro necessariamente é zero. Mas no glm, até a minha memória vai, o efeito de uma categoria deveria ser o efeito adicional ao efeito da referência quando a categoria está presente, mas na saída como está não consigo fazer esta interpretação. Alguem pode me dar uma luz de como interpretar corretamente ester aspecto?

Em análises alternativas eu explorei interações e faz sentido que a idade tivesse efeitos diferentes para diferentes anos de nascimento, sendo que efeitos não lineares não foram detectados. Quando faço um ajuste com interação a saída fica ainda mais esquisita

cva.glmnet(hav ~ ano_nasc_trunc60+idade+indicacao_outras+sexo+ano_nasc_trunc60*idade, data = bi[setD,],alpha = seq(0, 1, len = 11), family="binomial", nfolds = 1000, grouped = FALSE, trace.it = TRUE, outerParallel = makeCluster(4))

(Intercept)                                                                                                   1.056153e+02
ano_nasc_trunc60                                                                                             -2.736619e-02
idade                                                                                                         1.656760e-02
indicacao_outrasViajante                                                                                     -8.345313e-01
indicacao_outrasOTHER                                                                                        -4.632827e-01
indicacao_outrasHIV/AIDS                                                                                      4.927235e-01
indicacao_outrasAsplenia anatômica ou funcional e doenças relacionadas (anemia falciforme, talassemia maior)  .          
indicacao_outrasPneumopatias crônicas (DPOC, Bronquiectasia, Asma etc)                                        .          
indicacao_outrasCandidatos a transplante de órgão sólido                                                      1.358595e-01
indicacao_outrasCardiopatias crônicas                                                                         .          
indicacao_outrasHepatopatias crônicas, Cirrose e portadores de HCV                                            .          
indicacao_outrasComunicantes domiciliares de imunodeprimidos                                                 -2.076846e-01
indicacao_outrasImunodeficiência/Imunodepressão outras (adquirida ou congênita)                               .          
indicacao_outrasImunodepressão terapêutica ou devido ao câncer                                                1.432945e-01
indicacao_outrasNão informado                                                                                -1.616079e-01
indicacao_outrasNefropatias crônicas/hemodialisados/sindrome nefrótica                                        .          
indicacao_outrasProfissional de saúde                                                                        -4.942054e-01
indicacao_outrasTransplante de órgão sólido                                                                   .          
sexoFeminino                                                                                                  3.024890e-02
sexoMasculino                                                                                                -1.611223e-02
ano_nasc_trunc60                                                                                             -2.651105e-02
idade                                                                                                         1.603003e-02
ano_nasc_trunc60:idade                                                                                        7.512202e-06

Reparem que agora, além do sexo, o ano de nascimento e a idade têm cada uma, além do coeficiente da interação, dois coeficientes diferentes de zero, quando eu esperava que houvesse somente o coeficiente da interação. Talvez entendendo os porques da primeira questão eu consiga achar o porque da segunda. Se puderem indicar alguma leitura, eu agradeço. 

Olhando o desempenho do ajuste com e sem a interação, a discriminação é bem pareceida, mas a calibração é um tanto melhor no ajuste com a interação.

Abraços fraternos a todos.  

Pedro Brasil