Если вас интересует, как работает колонка весов в H2O-3, вы можете просмотреть документацию здесь и примеры кода здесь .
Для вашего удобства я включил копию этого документа:
weights_column
Доступно в: GBM, DRF, Deep Learning, GLM, AutoML, XGBoost, CoxPH
Гиперпараметр: нет
Описание
Этот параметр указывает столбец в тренировочной рамке, который будет использоваться при определении весов. Веса являются весами наблюдений для каждой строки и не увеличивают размер фрейма данных. Обычно это число повторений строки, но также поддерживаются нецелые значения. Во время тренировок ряды с большим весом имеют большее значение из-за большего фактора функции потерь.
Для оценки все вычисленные метрики будут учитывать веса наблюдений (для коэффициентов усиления / подъема, AUC, матриц путаницы, потерь в журнале и т. Д.), Поэтому важно также предоставить столбец весов для валидации или тестовых наборов, если вы хотите для увеличения / уменьшения веса определенных наблюдений (в идеале, между тренировкой и тестированием). Обратите внимание, что если вы опустите весовые коэффициенты, то все наблюдения будут иметь одинаковые весовые коэффициенты (равные 1) для вычисления метрик. Например, вес 2 идентичен дублированию строки.
Примечания:
Веса могут быть указаны как целые числа или как нецелые числа.
Столбец весов не может совпадать с столбцом fold_column.
Если столбец весов указан как элемент (предиктор) и вес, столбец будет использоваться только для весов.
Примеры скриптов модульного тестирования доступны на GitHub:
https://github.com/h2oai/h2o-3/blob/master/h2o-py/tests/testdir_algos/gbm/pyunit_weights_gbm.py
https://github.com/h2oai/h2o-3/blob/master/h2o-py/tests/testdir_algos/gbm/pyunit_weights_gamma_gbm.py
веса наблюдений в глубоком обучении
Веса наблюдений обрабатываются в Deep Learning иначе, чем в других поддерживаемых алгоритмах. Для алгоритмов, отличных от Deep Learning, вес напрямую относится к математике разделения и предсказания конечных узлов. Для глубокого обучения это сложнее. Использование веса в качестве мультипликативного фактора в потере не будет работать в целом, и это будет не то же самое, что репликация той же строки. Кроме того, применение одной и той же строки снова и снова не является хорошей идеей, поэтому выборка во время тренировки все еще должна быть активной. Для решения этих проблем Deep Learning реализован с помощью выборки по важности с использованием обратной кумулятивной функции распределения. Он также включает в себя специальный случай, который выбирает случайный ряд из набора данных для каждого второго ряда, который он тренирует, просто чтобы сохранить выбросы в игре. Обратите внимание, что веса наблюдения для глубокого обучения, которые не равны 0 или 1, трудно обрабатывать должным образом В этом случае может быть лучше явно перепроверять, используя balance_classes = TRUE.
Связанные параметры
- balance_classes
- offset_column
- у