Eu tenho um grande conjunto de preditores (mais de 43.000) para prever uma variável dependente que pode assumir 2 valores (0 ou 1). O número de observações é superior a 45.000. A maioria dos preditores são unigramas, bigramas e trigramas de palavras, portanto há um alto grau de colinearidade entre eles. Há muita esparsidade no meu conjunto de dados também. Estou usando a regressão logística do pacote glmnet, que funciona para o tipo de conjunto de dados que tenho. Meu problema é como posso relatar a significância do valor-p dos preditores. Eu recebo o coeficiente beta, mas existe uma maneira de afirmar que os coeficientes beta são estatisticamente significativos?
Aqui está o meu código:
library('glmnet')
data <- read.csv('datafile.csv', header=T)
mat = as.matrix(data)
X = mat[,1:ncol(mat)-1]
y = mat[,ncol(mat)]
fit <- cv.glmnet(X,y, family="binomial")
Outra pergunta é: estou usando a penalidade padrão alfa = 1, laço que causa o problema adicional de que, se dois preditores forem colineares, o laço escolherá um deles aleatoriamente e atribuirá zero peso beta ao outro. Eu também tentei com penalidade de crista (alfa = 0), que atribui coeficientes semelhantes a variáveis altamente correlacionadas, em vez de selecionar uma delas. No entanto, o modelo com penalidade no laço me dá um desvio muito menor do que o modelo com penalidade no cume. Existe alguma outra maneira de relatar os dois preditores altamente colineares?