Регрессия — это процесс выявления взаимосвязей между данными в наборе данных и прогнозирования возможного результата.

Логистическая регрессия — это форма регрессии, в основном ориентированная на дискретные функции или бинарную цель, которая отличается от линейной регрессии, которая работает с непрерывными функциями. Линейная регрессия представлена ​​линией y= mx+b, тогда как логистическая регрессия представлена ​​y= 1/e^-(mx+b), образующей сигмовидную кривую. Реализация логистической регрессии выглядит следующим образом:

from sklearn.model_selection import GridSearchCV
from sklearn.linear_model import LogisticRegression

logistic_regression = LogisticRegression()
hyper_parameters= {'C':[0.001, 0.01, 0.1, 1, 10, 100, 1000]}

cv = GridSearchCV(logistic_regression, hyper_parameters,cv=5)
cv.fit(X_training_features, X_training_labels)

В приведенном выше фрагменте мы выполняем поиск по сетке с использованием метода перекрестной проверки K-кратности, чтобы найти оптимальное значение настройки гиперпараметра. Поэтому важно отметить, что гиперпараметр, который является параметром настройки, в основном используется для регуляризации, поскольку мы не хотим подгонять или подгонять наши данные. Таким образом, по сути, мы предоставляем параметры настройки для наилучшей оценки.

После того, как модель подобрана, мы можем получить некоторую информацию, такую ​​как среднее значение, стандартное отклонение, параметры наилучшей настройки.

print_results(result):
  print('Best Results: {}'.format(result.best_params_))
  mean = result.cv_results_['mean_test_score']
  std = result.cv_results_['std_test_score']
  for mean, std, params in zip(mean,std, result.cv_results_['params']:
    print('Mean: {}'.format(mean))
    print('StandardDeviation: {}'.format(mean))
    print('Params: {}'.format(params))

print_results(cv)

Удачного кодирования :)