Вот деталь:
Допустим, у меня есть модель со следующими коэффициентами и перехватом:
# Coef
w1 = 0.018056353337078567
w2 = 0.000646433629145055
w3 = 0.11595942738379618
w4 = 0.021109268199259484
w5 = 0.05204164353607967
w6 = -0.11317012710348132
w7 = -0.05215587577473489
w8 = -2.0132721508721287
intercept = -2.0132721508721287
и мой образец:
# Sample
x1 = 10
x2 = 70.05
x3 = 15
x4 = 24
x5 = 1
x6 = 2
x7 = 17
x8 = 1
Когда я использую sklearn логистическая регрессия , после загрузки модели и вызова model.predict_proba я получил
[[0.21018339 0.78981661]]
Но я помещаю эти параметры в сигмовидную функцию, я получил
0.0681390750219555
Ясно, 0,78981661! = 0,0681390750219555, но мне интересно, почему это произошло.
Вот код для сигмовидной функции:
import numpy as np
# Coef
w1 = 0.018056353337078567
w2 = 0.000646433629145055
w3 = 0.11595942738379618
w4 = 0.021109268199259484
w5 = 0.05204164353607967
w6 = -0.11317012710348132
w7 = -0.05215587577473489
w8 = -2.0132721508721287
intercept = -2.0132721508721287
# Sample
x1 = 10
x2 = 70.05
x3 = 15
x4 = 24
x5 = 1
x6 = 2
x7 = 17
x8 = 1
z = \
w1 * x1 + \
w2 * x2 + \
w3 * x3 + \
w4 * x4 + \
w5 * x5 + \
w6 * x6 + \
w7 * x7 + \
w8 * x8 + \
+ intercept
y = 1/(1+np.exp(-z))
print(y)