
Объединение различных моделей для ансамблевого обучения
237
Рис. 7.10. Запуск 10 обучающих проходов с помощью алгоритма AdaBoost
>>> y = np.array([1, 1, 1, -1, -1, -1, 1, 1, 1, -1])
>>> yhat = np.array([1, 1, 1, -1, -1, -1, -1, -1, -1, -1])
>>> correct = (y == yhat)
>>> weights = np.full(10, 0.1)
>>> print(weights)
[0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1 0.1]
>>> epsilon = np.mean(~correct)
>>> print(epsilon)
0.3
Здесь
correct
— это логический массив, состоящий из значений
True
и
False
, где первое
указывает, что прогноз верен. Оператор
~correct
инвертирует массив, так что
np.mean(~correct)
вычисляет долю неверных прогнозов (
True