Lembre-se de que a forma funcional da regressão logística é
f( x ) = 11 + e- ( β0 0+ β1 1x1 1+ ⋯ + βkxk)
É isso que é retornado por predict_proba.
O termo dentro do exponencial
d( x ) = β0 0+ β1 1x1 1+ ⋯ + βkxk
é o que é retornado por decision_function. O "hiperplano" referido na documentação é
β0 0+ β1 1x1 1+ ⋯ + βkxk= 0
Essa terminologia é uma reserva das máquinas de vetores de suporte, que literalmente estimam um hiperplano de separação. Para a regressão logística, esse hiperplano é um construto artificial, é o plano de igual probabilidade, onde o modelo determinou que as duas classes-alvo são igualmente prováveis.
A predictfunção retorna uma decisão de classe usando a regra
f( x ) > 0,5
Correndo o risco de caixa de sabão, a predictfunção tem muito poucos usos legítimos, e vejo isso como um sinal de erro ao revisar outros trabalhos. Eu iria longe o suficiente para chamá-lo de erro de design no próprio sklearn (a predict_probafunção deveria ter sido chamada predicte predictdeveria ter sido chamada predict_class, se é que alguma coisa).