Eu tenho dois grupos de sujeitos, A e B, cada um com um tamanho de aproximadamente 400 e cerca de 300 preditores. Meu objetivo é construir um modelo de previsão para uma variável de resposta binária. Meu cliente deseja ver o resultado da aplicação do modelo criado de A em B. (Em seu livro "Estratégias de modelagem de regressão", @FrankHarrell menciona que é melhor combinar os dois conjuntos de dados e criar um modelo, pois isso adiciona potência e precisão --- consulte a página 90, Validação externa.Eu concordo com ele, considerando que a coleta do tipo de dados que tenho é muito cara e consome muito tempo, mas não tenho escolha sobre o que o cliente deseja .) Muitos dos meus preditores são altamente correlacionados e também muito distorcidos. Estou usando regressão logística para construir meu modelo preditivo.
Meus preditores vêm principalmente da mecânica. Por exemplo, tempo total em que o sujeito passou por um estresse maior que o limite durante o período , para vários valores de e . É claro que apenas a partir de suas definições, muitos desses tempos totais estão algebricamente relacionados entre si. Muitos dos preditores que não estão relacionados algebricamente estão relacionados por causa de sua natureza: indivíduos que estão sob alto estresse durante um período de tempo tendem a estar sob alto estresse durante o período de tempo , mesmo se. Para reduzir a dimensão dos dados, agrupei preditores relacionados em conjunto (por exemplo, todo o tempo total de estresse) e usei a análise de componentes principais para representar cada cluster. Como as variáveis foram distorcidas, tentei dois caminhos alternativos:
- Antes de fazer o PCA, usei uma transformação logarítmica para reduzir a inclinação nas variáveis.
- Usei o algoritmo ROBPCA de Mia Hubert, conforme implementado pelo pacote rrcov em R (PcaHubert), para encontrar os principais componentes robustos.
Estou usando o formato geral da curva ROC, o formato da curva de precisão e a área sob a curva ROC (AUC) como medidas de desempenho, e gostaria de obter resultados semelhantes para os conjuntos de dados A e B Eu esperava obter um resultado muito melhor usando os componentes principais robustos, mas, para minha surpresa, o primeiro método foi melhor: melhor valor de AUC para os conjuntos de dados A e B, mais semelhança entre as curvas ROC e recuperação de precisão mais semelhante curvas.
Qual a explicação para isso? E como posso usar componentes principais robustos, em vez de tentar fazer com que meus dados pareçam normais? Existem métodos PCA robustos específicos que você recomendaria em vez do ROBPCA?