Готовимся к собесу, шпаргалка по деревьямОбщее понимание градиентного бустингаИзначальный алгоритм Фридмана (Friedman, 2001) задаёт базовый принцип.Идея: мы берём функцию потерь (loss), которую нужно минимизировать ансамблем слабых моделей (обычно деревья решений).Начинаем с базовой константы (например, среднее значение таргета).На каждом шаге строим новое дерево по текущим градиентам функции потерь (первая производная по предсказанию).Значения в листьях подбираются так, чтобы минимизировать loss в этой области (иногда используют и вторую производную для точности).Каждое дерево добавляется в модель с коэффициентом обучения (learning rate), чтобы не переобучиться.Фридман показал, что этот подход работает и для регрессии (MSE), и для классификации (логлосс/NLL).Chen & Guestrin, 2016 — это про XGBoost.В XGBoost формализовали общее выражение для прироста качества (gain) узла с учётом первых и вторых производных.Значение листа считается по формуле:w_j = - (sum(g_i)) / (sum(h_i) + lambda)гдеg_i — первый градиент,h_i — второй градиент (Гессиан),lambda — коэффициент регуляризации.Прирост качества (gain) при разбиении узла:gain = 0.5 * ( ( (sum(g_left))^2 / (sum(h_left) + lambda) ) + ( (sum(g_right))^2 / (sum(h_right) + lambda) ) - ( (sum(g_total))^2 / (sum(h_total) + lambda) ) ) - gammaгдеg_left, h_left — суммы градиентов и Гессианов для левого узла,g_right, h_right — суммы для правого узла,g_total, h_total — суммы для всего узла до разбиения,gamma — минимальный прирост, чтобы оставить разбиение (если меньше, то узел схлопывается, читай прунинг).Prokhorenkova et al., 2018 — про CatBoost.Там основное — как бороться с переобучением и эффективно работать с категориальными признаками.Категориальные фичи: кодирование делается через "средние по таргету", но с порядковым шифтом (ordered target encoding). То есть значение для объекта считается только по предыдущим объектам в случайной перестановке. Это сильно уменьшает target leakage.Симметричные деревья: вс
Data Science News
@data_science_news
Данные, инструменты для них и немного математики. Чат: @data_science_chat Для контактов: @telejamm
Похожие каналы
Все →Последние посты
Набросал шаблон для тех, кто пишет на Python и любит Vim + Docker.Это удобная заготовка, которая позволяет:- Разворачивать Python-проекты в Docker- Писать код прямо в контейнере через настроенный Vim- Работать в воспроизводимой среде (Poetry + Compose)- При желании запускать Jupyter (если ты в DS/ML)Если вы хотели чтобы dev-среда совпадала с runtime и при этом оставаться в Vim то загляните. Там автодополнения, LSP, Git, Markdown, всё как надо.🔗 https://github.com/jamm1985/vim-python-docker-template
Смотрим на t-тест повнимательнее (youtube, vk)
Всем привет! Сентябрь уже заканчивается, самое время разобрать задачку. Классическая игла Бюффона на youtube и vk.
Harald Steck, математик из Netflix, опубликовал работу с говорящим названием Is Cosine-Similarity of Embeddings Really About Similarity? Автор задаётся вопросом почему косинус расстояние работает хуже в некоторых практических сценариях чем скалярное произведение для ненормированных векторов? Для ответа на этот вопрос в работе представлена линейная декомпозиция на синтетических данных, аналогично факторизации матриц в задачах рекомендаций. В выводах отмечено, что косинус расстояние сильно зависит от регуляризации. Сделано предположение, что векторное представление (эмбеддинги) для моделей глубокого обучения подвержены аналогичным проблемам. Harald Steck известен своей работой по линейному моделированию автокодировщика в задаче рекомендаций. Эта модель сделала своего рода революцию и открыло целое направление исследований и практических внедрений. Полный список работ Гарольда можно посмотреть здесь.
А вот и первая лекция: https://youtu.be/qPJ5Dz3bKTQ
Если вам наскучили трудовые будни, посмотрите новое ML инженерное видео от Андрея Картпаты. С этим материалом вы:- разберётесь, наконец, вспомните особенности UTF-8- напишите прямую реализацию токенайзера- посмотрите открытые библиотеки токенизации- поймете магические регулярки для препроцессинга текста в GPT-2-4- осознаете важность токенизации (!)- увидите как можно заставить ChatGPT выдавать неправильно на граничных случаях токенизации.Внимание! В процессе просмотра возникает непреодолимое желание открыть консоль и поэксперементировать. Поэтому не обращайте внимание на то что видео всего 2,5 часа, скорее всего, это отнимет у вас гораздо больше времени.
В RL есть устоявшаяся терминология подходов к моделям. Если хотите быстро разобраться что к чему, то эта серия видео будет кстати. Несмотря на то что последние лекции несколько укорочены, общее представление можно получить достаточно быстро. И отдельно можно посмотреть примерно то же самое, но со спецификой offline RL.
А у нас тут на русском языке есть доклады по машинному обучению прямо на границе текущего развития науки. Названия к видео говорящие, ориентироваться просто. Могу со своей стороны выделить несколько выступлений со школы 2023 года:Доклад про комбинацию ML и физических методов с примерами из реальных земных задач. Хороший обзорный рассказ и для общего развития полезно.Если вы хотите знать почему в adam или adagrad так как есть, откуда это всё эти оптимизации взялись, можно ли сделать лучше, и как теоретически связан batch size и learning rate то вам сюда обязательно. Размяться перед просмотром лекции можно на этом.Доклад про теорию диффузионных моделей. Смотрится относительно легко. Если вы думали что теория вероятности в ML вам не нужна, то самое время убедится в обратном.Длина видео по 1,5 часа, однако, есть чем занять себя на скучных праздниках!
Хорошая обзорная работа по функциям активации (декабрь 2022). Есть почти все, не нужно бегать по разным частям интернета если вдруг забыли как, например, выглядит первая производная gelu. Всё с тестами, как положено https://arxiv.org/abs/2209.02681
Супер инженерный доклад от Netflix про то как они строят распределённую MLOps систему для обучения рекомендательных моделей. То что FSx, S3, tf.data это уже не новость. А вот использование Ray в этом процессе это новинка. В докладе много инженерных деталей, и, в принципе, весь процесс обработки и подачи данных сверху виден. https://www.anyscale.com/blog/heterogeneous-training-cluster-with-ray-at-netflix
Вышел State of AI Report 2023. На удивление там не только про LLM и Nvidia. Хотя секция research представлена в основном результатами из прикладных направлений. Есть несколько интересных моментов. Например, падение трафика на stackoverflow после релиза copilot и ChatGPT. Ещё авторы отмечают, что все авторы работы Attention is all you need покинули Google и работают в собственных стартапах. В общем, без претензий на объективность, но интересно. https://docs.google.com/presentation/d/156WpBF_rGvf4Ecg19oM1fyR51g4FAmHV3Zs0WLukrLQ/edit?usp=sharinghttps://www.stateof.ai/
https://youtu.be/5HbQ16mb7zs
Если вы начинаете интересоваться такой сферой как Quant, стоит обратить внимание на блог-пост с обзором фундаментальных научных статей из этой области
Исследование stackoverflow по AI/ML. Что интересного:- Профессиональные разработчики это неоднородная группа за счёт большого спектра технологий и областей применения.- AI/ML активно применяется практически во всех сферах разработки от дизайна и системного администрирования до научных исследований.- Восприятие AI технологий исключительно положительное.- Начинающие разработчики больше доверяют точности моделей чем профессионалы (оно и понятно).