Шаг 74.
Введение в машинное обучение с использованием Python. ... . Оценки неопределенности для классификаторов (общие сведения)

    На этом шаге мы сформулируем задачу, которыую будем решать на следующих шагах.

    Еще одна полезная деталь интерфейса scikit-learn, о которой мы еще не говорили - это возможность вычислить оценки неопределенности прогнозов. Часто вас интересует не только класс, спрогнозированный моделью для определенной точки тестового набора, но и степень уверенности модели в правильности прогноза. В реальной практике различные виды ошибок приводят к очень разным результатам. Представьте себе медицинский тест для определения рака. Ложно положительный прогноз может привести к проведению дополнительных исследований, тогда как ложно отрицательный прогноз может привести к пропуску серьезной болезни. Мы подробнее разберем эту тему позднее.

    В scikit-learn существует две различные функции, с помощью которых можно оценить неопределенность прогнозов:

Большая часть классификаторов (но не все) позволяет использовать по крайней мере одну из этих функций. Давайте применим эти две функции к синтетическому двумерному набору данных, построив классификатор GradientBoostingClassifier, который позволяет использовать как метод decision_function, так и метод predict_proba:
[In 2]:
from sklearn.ensemble import GradientBoostingClassifier
from sklearn.datasets import make_blobs, make_circles
from sklearn.model_selection import train_test_split
X, y = make_circles(noise=0.25, factor=0.5, random_state=1)
# мы переименовываем классы в «blue» и «red» для удобства
y_named = np.array(["blue", "red"])[y]
# мы можем вызвать train_test_split с любым количеством массивов,
# все будут разбиты одинаковым образом
X_train, X_test, y_train_named, y_test_named, y_train, y_test = \
train_test_split(X, y_named, y, random_state=0)
# строим модель градиентного бустинга
gbrt = GradientBoostingClassifier(random_state=0)
gbrt.fit(X_train, y_train_named)

    На следующем шаге мы рассмотрим решающую функцию.




Предыдущий шаг Содержание Следующий шаг