1 Федеральное образование
Ввиду важности конфиденциальности данных постепенно повышается осведомленность о защите данных дома и за рубежом. В 2018 году Европейский союз издал «Общее положение о защите данных» (GDPR), а «Меры по управлению безопасностью данных (проект для комментариев)», подготовленные Администрацией киберпространства моей страны, стали общей тенденцией к свободному обмену данными в соответствии с предпосылка безопасности и соответствия. Введение этих законов и правил в той или иной степени ставит новые задачи перед традиционным способом обработки данных искусственным интеллектом.
Сегодня, при высоком развитии ИИ, многомерные и качественные данные являются узким местом, сдерживающим его дальнейшее развитие. Поскольку организации уделяют все больше и больше внимания данным, сотрудничество с данными между организациями и между различными отделами внутри организации будет становиться все более и более осторожным, что приведет к тому, что большой объем данных будет существовать в виде изолированных островков.
Суть федеративного обучения — это распределенная технология машинного обучения или структура машинного обучения, основанная на защите конфиденциальности данных. Его цель — добиться совместного моделирования на основе предпосылки потери модели на основе обеспечения безопасности конфиденциальности данных и соблюдения законодательства, улучшить эффект моделей ИИ и расширить возможности бизнеса.
Поскольку это моделирование, наиболее известные в отрасли в последние годы можно условно разделить на GBDT и нейронную сеть.Однако из-за характеристик федеративного обучения необходимо защищать конфиденциальность и безопасность характеристик пользователя и метки, поэтому требуется гомоморфное шифрование, совместное использование секретных ключей, дифференциальная конфиденциальность и другие вычислительные средства конфиденциальности для обеспечения безопасности. Однако, исходя из этого, это приносит большие проблемы.Сложные операции нейронных сетей, экспоненты, логарифмы и т. д. будут создавать очень большие проблемы для моделирования.Это все еще очень сложно с текущей технологией аппаратного и программного шифрования, но для SecureBoost, ему нужно всего лишь выполнить простую гомоморфную операцию для достижения того же эффекта моделирования, что и Xgboost, поэтому в этой статье мы поделимся с вами моделью защищенного дерева федеративного обучения — Secure Boost.
Кстати, хотя нынешняя нейронная сеть труднее быть барьером безопасности, невозможно достичь хорошего баланса между производительностью вычислений и производительностью модели, но после долгого размышления у меня уже есть решение, которое я считаю надежным, и я постепенно проверю это позже.Окончательная проверка надежна и будет доступна всем.
Поскольку древовидная модель является относительно информативной, невозможно решить чистый SecureBoost за один шаг, поэтому эта статья разделена на следующие темы.Основной контекст: дерево решений -> метод ансамбля Бэгинг и бустинг -> GBDT -> XGBoost -> Безопасное дерево повышения. Я надеюсь, что благодаря этой серии статей читатели смогут получить всестороннее и всестороннее представление о методе федеративного обучения SecureBoost.
На самом деле, для серии древовидных моделей, когда я создавал алгоритмы, я использовал многие из них и чувствовал, что хорошо их понимаю, но когда я писал модель дерева безопасности федеративного обучения, я обнаружил, что многие места не были полностью понят.,Много деталей не учтено.Когда будете писать,вы обнаружите,что вашей теоретической толщины недостаточно и детали не досконально поняты. Потом я потратил много сил и времени на зарядку.Этот вопрос тоже заставил меня понять.Ты вроде много чего понимаешь,но нет.Самое главное оставаться приземленным в том,что ты делаешь.
2 Схема модели федеративного дерева обучения
Как мы все знаем, на ранней стадии машинного обучения, когда глубокое обучение не является блестящим, это в основном мир LR и Xgboost, На сцене поиска и продвижения вы можете увидеть фигуру Xboost, В основном, это можно сказать, что Xgb можно использовать понимание, вы можете занять положение в отрасли. В то же время в соревнованиях Kaggle Xgb часто выступает как темная лошадка.
Все не существует изолированно, поэтому для федеративного обучения суть федеративного обучения заключается в распределенном моделировании, основанном на конфиденциальности и безопасности, поэтому необходимо не только защитить традиционные модели машинного обучения, такие как Xgb и LR, но и защитить глубокую модель. Эта серия статей в основном знакомит с серией безопасных моделей дерева. Запланировано три главы. На основе предыдущей главы, в которой представлено основное содержание «Федеративное обучение — дерево решений защищенной модели дерева SecureBoost», в этой главе будет продолжено введение интегрированного обучения. и GBDT, о Xgboost и федеративной модели дерева безопасности, описанной в следующем разделе.
SecureBoost относится к категории интегрированного обучения Ensemble Learning и относится к методу Boosting.Он использует остатки для обучения моделей в соответствии с реальными сценариями данных.Реализация неконфиденциальных вычислений включает Xgboost, LightGBM, HistGradientBoostingClassifier и т. д., но перед переходом на эти интегрированные алгоритмы обучения, GBDT необходимо ввести в первую очередь.
3 Ensemble Learning
3.1 Интегрированное обучение
Ансамблевое обучение — это очень эффективный метод машинного обучения, получивший широкое распространение в отрасли. Это не отдельный алгоритм машинного обучения сам по себе, он выполняет задачу обучения, создавая и комбинируя несколько машинных обучающихся. То есть мы часто говорим «учиться на чужих сильных сторонах» и «три сапожника составляют одного Чжугэ Ляна».
Ансамблевое обучение можно использовать для задач классификации, регрессии, выбора признаков, обнаружения выбросов и т. д. Можно сказать, что ансамблевое обучение можно увидеть во всех областях машинного обучения.
Интегрированное обучение в основном делится на два режима: режим мешков и повышения.Основное различие между этими двумя режимами заключается в сочетании слабых учащихся.Поскольку древовидная модель является более эффективной моделью машинного обучения, сочетание древовидной модели в интегрированном обучении Очень плотно, бэггинг и бустинг в сочетании с древовидными моделями генерируют:
- Бэггинг + Дерево решений = Случайный лес
- Повышение + дерево решений = GBDT
- Повышение + производная функция потерь второго порядка = Xgboost
3.2 Bagging & Boosting
В машинном обучении есть две очень важные базовые концепции: дисперсия и смещение, которые представляют собой дисперсию и смещение, которые используются для измерения модели, но на самом деле они противоречат друг другу. Суть бэггинга состоит в том, чтобы получить модель ансамбля с меньшей дисперсией, в то время как бустинг в основном будет генерировать модель ансамбля с меньшим смещением (даже если дисперсию можно уменьшить).
3.2.1 Bagging (bootstrap aggregating)
Бэггинг — это метод бэггинга, который параллельно вычисляет несколько слабых учеников, а затем голосует или усредняет результаты нескольких слабых учеников, чтобы выполнить слияние и конденсацию, чтобы охарактеризовать суждение модели.
- Извлеките обучающий набор из исходного набора образцов. В каждом раунде используется метод начальной загрузки для извлечения n обучающих выборок из исходного набора выборок (в обучающей выборке некоторые выборки могут быть взяты несколько раз, а некоторые выборки могут не быть взяты вообще). Всего выполняется k раундов извлечения для получения k обучающих наборов. (k обучающих наборов не зависят друг от друга)
- Каждый раз, когда обучающий набор используется для получения модели, k обучающих наборов используются для получения в общей сложности k моделей. K-модели независимы друг от друга и не имеют зависимостей.
- Коллективный разум генерирует окончательную модель:
- Для задач классификации: для результатов К-моделей результаты классификации получаются голосованием;
- Для задач регрессии математическое ожидание рассчитывается для результатов K-моделей как окончательный результат.
3.2.2 Boosting
Основная идея состоит в том, чтобы собрать слабого ученика в сильного ученика и с помощью серии последовательных итерационных процессов, посредством итеративного объединения слабых учеников, отрегулировать вес ключевых выборок, обучить набор слабых классификаторов и повторить модель.
Два основных вопроса о бустинге:
- Как изменить распределение вероятностей и веса выборки обучающих данных?
Увеличивая веса образцов, которые были неправильно оценены слабым учеником в предыдущем раунде, и уменьшая веса образцов, которые были правильно оценены в предыдущем раунде, можно достичь цели исправления неправильной информации или путем изучения остатков. , подходит.
- Как объединить слабые классификаторы?
Слабые классификаторы линейно объединяются с помощью аддитивной модели, такой как AdaBoost, путем голосования взвешенным большинством, то есть увеличения веса классификатора с небольшой частотой ошибок и уменьшения веса классификатора с большой частотой ошибок, или Остаточное- Комбинация аддитивных моделей на основе GBDT постепенно уменьшает остаток путем подгонки остатка и накладывает модели, созданные на каждом этапе, для получения окончательной модели.
3.2.3 Разница между бэггингом и бустингом
Есть три основных различия между бэггингом и бустингом:
-
По выбору образца:
- Бэггинг: бутстрейпинг выбирается случайным образом с заменой, и каждый раунд обучающих наборов, выбранных из исходного набора, независим.
- Повышение: обучающие образцы каждого раунда повышения фиксируются, а вес каждого образца изменяется. Веса корректируются в соответствии с результатами расчета предыдущего раунда.
-
Вес образцов:
- Упаковка в мешки: берется однородная выборка, и каждая проба имеет одинаковый вес.
- Повышение: отрегулируйте вес выборки в соответствии с частотой ошибок.Чем больше частота ошибок, тем больше вес выборки.
-
Вывод поезда:
- Бэггинг: каждый слабый ученик имеет одинаковый вес, и каждый слабый ученик может быть рассчитан параллельно.
- Повышение: каждый слабый ученик имеет соответствующий вес и имеет больший вес для более подходящего классификатора, и каждый слабый ученик должен рассчитываться последовательно.
4 GBDT
На самом деле, многие люди не могут отличить GBDT от Xgboost, но я больше всего люблю задавать интервьюерам вопрос о разнице между GDBT и Xgboost. На самом деле это не такая уж и сложная задача.Я много искал в интернете.С точки зрения производительности разница между первой производной и второй производной. Тем не менее, наиболее существенные недостатки не были выявлены, поэтому мы можем выйти в Интернет, чтобы проверить некоторую информацию, но для информации, полученной из Интернета, нам необходимо просмотреть и уточнить их, чтобы добиться нашей собственной интеграции.
4.1 Определение GDBT
Определение приведено ниже: GBDT (Gradient Boosting Decision Tree) градиентное повышающее итеративное дерево решений, которое является разновидностью повышающего алгоритма. Ограничения:
- Слабый ученик, используемый GBDT, должен быть CART и должен быть деревом регрессии..
- GBDT используется для прогнозирования регрессии.Конечно, его также можно классифицировать по порогу, но в основном он используется для прогнозирования регрессии..
Так что каждый должен помнить,Слабый ученик GBDT должен быть только деревом CART., обычно основанный на MSE Loss с использованием метода наименьших квадратов для расчетапервый класс. Слабый ученик Xgb очень гибок и обычно требует только производных второго порядка. Поэтому многие путают понятия GBDT и Xgb или говорят только о разнице между производной первого порядка и производной второго порядка, что слишком однобоко.
4.2 Процесс получения GBDT
Каждое вычисление GBDT должно уменьшить остаток предыдущего вычисления, поэтому относительно простая идея состоит в том, что мы уменьшаем градиент в направлении остатка, а затем строим новый ученик, верно? Да, именно так возникла GBDT.
- Во-первых, предположим, что набор данных, модель, чтобы соответствовать этим данным. Тогда определение остатка, который определяет часть модели, которая не подходит.
- Далее, если предположить, что функция потерь определяет MSE (функцию потерь для задач регрессии), то определение функции потерь будет.
- Затем вывести функцию потерь, а затем взять первую производную функции потерь,
- Затем по приведенной выше формуле можно сделать вывод, что невязка находится в том же направлении, что и отрицательный градиент. Проверка завершена.
- Следовательно, узлы разделения GBDT могут быть выбраны в соответствии с размером градиента каждой функции.
5 дополнений
Личное представление: Ду Баокун, практикующий специалист в области конфиденциальных вычислений, руководил командой от 0 до 1, чтобы создать JD. Уровень платформы: реализует промышленное решение для федеративного обучения, которое поддерживает сверхбольшие масштабы в области маркетинга электронной коммерции, поддерживает выравнивание конфиденциальности PSI для сверхбольших выборок, защищенную модель дерева и модель нейронной сети, а также многие другие модели. Бизнес-уровень: бизнес-сторона добилась хорошего начала бизнеса, создала новую точку роста бизнеса и получила значительные экономические выгоды для бизнеса. Лично я предпочитаю узнавать новое и изучать технологии. На основе рассмотрения полносвязного мышления и планирования технологий принятия решений существует множество областей исследований, начиная от инженерной архитектуры, больших данных и заканчивая алгоритмами машинного обучения и алгоритмическими структурами. Приветствую студентов, которым нравятся технологии, чтобы общаться со мной, по электронной почте:baokun06@163.com