Python SKLearn: Probabilidades de regresión logística

Estoy utilizando el módulo SKLearn de Python para realizar una regresión logística. Tengo un vector variable dependiente Y (tomando valores de 1 de las clases M) y una matriz variable independiente X (con N características). Mi codigo es

  LR = LogisticRegression() LR.fit(X,np.resize(Y,(len(Y)))) 

Mi pregunta es, ¿ LR.intercept_ representan LR.coef_ y LR.intercept_ ? Inicialmente pensé que tenían los valores de intercept(i) y coef(i,j) st

 log(p(1)/(1-p(1))) = intercept(1) + coef(1,1)*X1 + ... coef(1,N)*XN . . . log(p(M)/(1-p(M))) = intercept(M) + coef(M,1)*X1 + ... coef(M,N)*XN 

donde p(i) es la probabilidad de que la observación con características [X1, ... ,XN] esté en la clase i . Sin embargo cuando bash convertir

 V = X*LR.coef_.transpose() U = V + LR.intercept_ A = np.exp(U) A/(1+A) 

de modo que A es la matriz de p(1) ... p(M) para las observaciones en X Este debe ser el mismo valor que

 LR.predict_proba(X) 

Sin embargo están cerca, pero son diferentes. ¿Por qué es esto?

Los coef_ e intercept_ representan lo que piensa, sus cálculos de probabilidad están desactivados porque olvidó normalizar: después de

 P = A / (1 + A) 

deberías hacer

 P /= P.sum(axis=1).reshape((-1, 1)) 

para reproducir el algoritmo scikit-learn .