И я оттуда. Просто рыдала над градиентным бустингом там😩😭😭😭. Какие-то сумасшедшие формулы, пара слов - типа объяснили и в конце: вы освоили градиентный бустинг🤦♀️🤯
Ну и объяснения крайне доходчивые. В курсе нетологии Профессия дата саентсит так ужасно рассказывают что аж плакать хочется, хотя стоит >1.5k$ Большое спасибо за то, что ты делаешь!
И Голлум просвистел: "Что имеет корни, которые никто не видит, Оно выше деревьев, Поднимается все вверх и вверх, Но в то же время никогда не растет?" - Это легко! - сказал Бильбо. - Я думаю, это градиентный бустинг: у него математические корни, которые никто не видит, он лучше всех решающих деревьев и постоянно повышает метрику качества, двигаясь вниз по направлению вектора градиента функции нескольких переменных в поисках глобального минимума функции потерь в пространстве весов.
Черт, эт лучшее видео по этой теме в принципе, Глеб - большое спасибо тебе за классный контент! Очень запомнилась фраза веселая - мы сопроксимировали по полной - мы просто забили на это ))))) Еще раз большое спасибо тебе за топовый контент!!
Да уж, настолько просто что я даже не поверил то сначала. Кстати, давно заметил что на самом деле математика в МЛ не такая и сложная. В ней главное всё четко понимать, тогда всё прозрачно становится.
Отлично разложил, доходчиво, просто, задорно! Благодарю. Однажды на собеседовании в одну из крупных страховых компаний мне, как бы для начала, задали вот эту задачу th-cam.com/video/UeJc42dkHKs/w-d-xo.html на 10 мин. Захотелось поблевать. Задачу не решил. Собес не прошёл, хотя про бустинг расписал канонически математически.
Сначала я подумал, что работодатель просто отморозился от Вас. Но потом я поймал себя на том, что для меня непонятно (и это меня даже смутило), почему Вам захотелось поблевать, когда Вам задали задачу.. Вы так всегда реагируете или так совпало? Что ж, работодателя понять можно.
Глеб, остался вопрос. А как все таки нормально можно было реализовать классификацию? И чем такая реализация ненормальна -- тем что возвращает скоры а не вероятности?
Там с вероятностями какая-то неприятная математика начинается, вот тут можно посмотреть. blog.paperspace.com/gradient-boosting-for-classification/ Но в целом я думаю можно взять и аутпут регрессии просто прогнать через сигмоиду и получится скор в диапазоне от 0 до 1, но вероятностью это не будет.
Глеб, привет! Думал, где задать вопрос, не нашел подходящего видео и решил написать здесь. Хочу спросить по поводу стратификации при провдении АВ-тестов или стат-тестов: Вот мы разбили на какие-то группы наших пользователей (условно, Гугл - Эпл) и делаем сэмплы для снижения дисперсии. Ок, дисперсия действительно может существенно сократиться, но это во многом зависит от размеров сэмплов: если мы будем брать сэмплы большие, то дисперсия, логично, будет меньше. Не понятно какого размера сэмплы мы должны использовать на практике. Аналогичная ситуация возникает при проведении статистических тестов (с чем я столкнулся на работе), когда распределение очень плохое и его можно оценивать либо Манна-Уитни, либо бутстрапом. Так вот не понятно какого размера сэмплы использовать в таком случае при бутстрапе..
@SavushkinNM 1.. Стратификация это когда мы хотим, чтобы сэмплы по своей структуре были максимально похожи на совокупность. Если в генеральной совокупности Гугл/Эпл == 90/10, то мы хотим чтобы эта же пропорция сохранилась в сэмпле. Сэмпл можно взять случайно, и тогда есть вероятность что пропорция не сохраниться. А можно взять стратифицированный сэмпл, и тогда пропорция 100% сохраниться. 2.. Я вот не люблю оперировать дисперсией. Для меня она не удобна. Это конечно математично и научно, но не практично. Ты говоришь: “дисперсия действительно может существенно сократиться”, лучше сказать, что ошибка по отношению к совокупности уменьшается. Или просто, что семплы такие же, как совокупность. Т.е. стратификацией мы страхуемся от ошибки сэмплирования. 3.. При больших сэмплах начинает работать закон больших чисел и стратификация происходит автоматически. Но все равно всегда лучше глазами посмотреть, что получилось. 4.. На практике лучше всего использовать максимально большие сэмплы, тогда нам вообще не будет нужна ни стратификация, ни статистика вообще. Но в реальном мире большие сэмплы либо невозможны, либо очень дороги, поэтому мы при помощи статистики находим минимально необходимые сэмплы для той или иной задачи. Например, мы хотим проверить разницу в конверсии для двух групп. Для того чтобы определить необходимый размер сэмплов, нам нужно понимать 1) какая у нас базовая конверсия 2) какой минимальный прирост конверсии мы хотим обнаружить 3) с какими погрешностями -- альфа и бета (ошибки первого и второго рода). Идем в калькулятор www.evanmiller.org/ab-testing/sample-size.html , вводим данные и получаем размер для каждой из групп. Калькулятор посчитает минимально необходимый размер сэмплов для этого эксперимента. И дальше, когда мы будем формировать эти группы из наших клиентов, то нам надо задуматься о стратификации: надо чтобы группы были похожи на друг на друга, и так же на всю совокупность клиентов. Стратификация позволит быть более уверенным в том, что при составлении групп не произошло ошибки сэмплирования и группы перекошенные. 5. Размеры сэмплов можно считать не только в онлайн калькуляторе, но и в питоне. Вот например у меня есть пример colab.research.google.com/drive/10DkHtLXsRHYSB7f5LMV5h5WW__uTcNHE . Для каждого теста размер групп тоже будет разный. Для ти теста один, для Манн Витни другой, для бутстрапа третий.Для бутстрепа например можно подбирать размер сэмплов тем же бустрепом: увеличивать размеры сэмплов пока не получим заданную мощность (1-бета). Для Ман Витни тоже можно посчитать размеры сэмплов -- надо гуглить. 6. Но важно понимать, что для статистических тестов стратификация это вопрос независимый от расчета размеров сэмплов. Т.е. ты сначала считаешь какие сэмплы тебе нужны, а потом думаешь как их стратифицировать (и можно ли). Но чем больше получаются сэмплы, тем более они стратифицированы сами по себе.
@@GlebMikhaylov вопрос: 26:24 при разбиение на трейн\тест, как правильно инициализировать test['y_pred'] для тестовой выборки? допустим, в трейн выборке первое значение train['y_pred'] равно 1, правильно ли я думаю, что мы можем использовать это же значение для инициализации test['y_pred']?
Мой канал в телеге: t.me/mikhaylovgleb
Наконец-то кто-то человеческим языком на пальцах (то есть на коде, а не на мат. функциях) показал, как работает прицнип бустинга! Огромное спасибо!!!
32:38 "Мы должны спускаться на ДНО и это мы не плохо умеем!" - ГЕНИАЛЬНО! За это отдельное спасибо! :) Ну и видео - класс! Благодарю!!!
"Я могу здесь 100 поставить. Сколько хочу. Мой бустинг. Я его сам написал." 🤣 За юмор и понятное донесение материала отдельный респект)
Смотрю видео Глеба не только для заполнения белых пятен, но и для поднятия настроения
"мы аппроксимировали полностью - мы просто забили"
Мощно, очень доходчиво!!! (пришел с "Яндекс.Практикума", чтобы дополнительно разобраться)
И я оттуда. Просто рыдала над градиентным бустингом там😩😭😭😭.
Какие-то сумасшедшие формулы, пара слов - типа объяснили и в конце: вы освоили градиентный бустинг🤦♀️🤯
Поддерживаю коллег, все мы там будем. Теория вышла такой себе даже через год
Глеба в тренды!
Глеб, ты лучший. Реально самое афигенное объяснение бустинга! Спасибо!
Реально Глеб -Учитель года! Спасибо!
Ох, храни тебя Кришна, это очень доступное объяснение!
Предлагаю выдать Глебу премию "Учитель года" 🙂
Глеб, это бомба! Слушаю и кайфую
Глеб, спасибо тебе большое!) Очень и очень выручил. У тебя большущий талант объяснять такие, казалось бы, сложные вещи наипростейшим языком)
Глеб, супер! Не перестаю радоваться, что нашла Ваши курсы и обучаюсь
Ну и объяснения крайне доходчивые. В курсе нетологии Профессия дата саентсит так ужасно рассказывают что аж плакать хочется, хотя стоит >1.5k$ Большое спасибо за то, что ты делаешь!
Глеб преподает в Яндекс Практикуме на дата саентисте)))
Человек на человеческом языке объясняет!! 👍🏻 Очень хорошее видео
И Голлум просвистел:
"Что имеет корни, которые никто не видит,
Оно выше деревьев,
Поднимается все вверх и вверх,
Но в то же время никогда не растет?"
- Это легко! - сказал Бильбо. - Я думаю, это градиентный бустинг: у него математические корни, которые никто не видит, он лучше всех решающих деревьев и постоянно повышает метрику качества, двигаясь вниз по направлению вектора градиента функции нескольких переменных в поисках глобального минимума функции потерь в пространстве весов.
супер!!!
Взорвался со смеху, спасибо xDDD
Спасибо тебе, добрый человек❤🔥
Не пропадай надолго🙏😀
Раньше смотрел канал математика без ху%ни(это могла быть оплаченная реклама, но нет), теперь подпишусь на тебя.
Спасибо за качественную подачу
май гад...спасибо большое, дружище!!! наконец понял эту тему....очень хорошее видео!!
Материал пушка! Почему с этого не начинают другие преподаватели... спасибо за эксель и схему, я человек простой)))
Это лучшее, что я видел за все время существования ютуба.
Лучшее видео по градиентному бустингу, что я видел!
"Я их сгенерила из того, что было"))
Браво. Очень доступно, спасибо 🙏
Черт, эт лучшее видео по этой теме в принципе, Глеб - большое спасибо тебе за классный контент! Очень запомнилась фраза веселая - мы сопроксимировали по полной - мы просто забили на это ))))) Еще раз большое спасибо тебе за топовый контент!!
Самое лучшее видео про градиентный бустинг. Спасибо!
На пятнадцатой минуте я не выдержал и подписался. "Ученые какие-то выяснили.."
как будто посмотрел "идущий к реке" из мира МЛ. Автор прикольный.
Огонь, просто бомба)
Еще бы ссылочки видосов для самых ленивых
Хорошо зашло. Спасибо, Глеб!
Да уж, настолько просто что я даже не поверил то сначала. Кстати, давно заметил что на самом деле математика в МЛ не такая и сложная. В ней главное всё четко понимать, тогда всё прозрачно становится.
Точнее и не скажешь, главное все четко понимать
Отличное видео! Глеб, большое спасибо!
Когда хочешь лайкнуть видео, а лайк уже поставил
"Сапроксимировать по полной" - фраза огонь)))
Объяснение огонь!
Просто обалденно!
Это было очень круто )
Отлично разложил, доходчиво, просто, задорно! Благодарю. Однажды на собеседовании в одну из крупных страховых компаний мне, как бы для начала, задали вот эту задачу th-cam.com/video/UeJc42dkHKs/w-d-xo.html на 10 мин. Захотелось поблевать. Задачу не решил. Собес не прошёл, хотя про бустинг расписал канонически математически.
Сначала я подумал, что работодатель просто отморозился от Вас. Но потом я поймал себя на том, что для меня непонятно (и это меня даже смутило), почему Вам захотелось поблевать, когда Вам задали задачу.. Вы так всегда реагируете или так совпало? Что ж, работодателя понять можно.
@@ИванИванов-н9т9ъ это фигурально, никакой физиологии. 😀 Следующая задача была про цветные носки в тёмном шкафу, а затем уже тема видео.
Глеб, супер! Благодарю!
А где-то объясняешь вероятностный подход к линейной и логистической регрессии?
Да, вот тут вот про логистическую регрессию и вероятности th-cam.com/video/49ck7kCyxr4/w-d-xo.html
Огромное спасибо!
Огромное спасибо что без формул)))))))))
Лучший просто)
Огонь!
Глеб, остался вопрос. А как все таки нормально можно было реализовать классификацию? И чем такая реализация ненормальна -- тем что возвращает скоры а не вероятности?
Там с вероятностями какая-то неприятная математика начинается, вот тут можно посмотреть. blog.paperspace.com/gradient-boosting-for-classification/
Но в целом я думаю можно взять и аутпут регрессии просто прогнать через сигмоиду и получится скор в диапазоне от 0 до 1, но вероятностью это не будет.
Очень полезное видео.
00:30 - работавзятели. Так на мой взгляд точнее будет.
спасибо!
А норм то что среднее это константное предсказание именно для mse, а в цикле другую уже используете?
Про бустинг ты знаешь, а вот про логистическую регрессию? ;)
Ждём теперь про лог рег :)
Так вроде логистическая регрессия полегче кажется чем градбуст или хгбусты)))
11:13 а зачем вы дали на таргет residual? почему не у_true
Глеб, привет! Думал, где задать вопрос, не нашел подходящего видео и решил написать здесь.
Хочу спросить по поводу стратификации при провдении АВ-тестов или стат-тестов:
Вот мы разбили на какие-то группы наших пользователей (условно, Гугл - Эпл) и делаем сэмплы для снижения дисперсии.
Ок, дисперсия действительно может существенно сократиться, но это во многом зависит от размеров сэмплов: если мы будем брать сэмплы
большие, то дисперсия, логично, будет меньше. Не понятно какого размера сэмплы мы должны использовать на практике.
Аналогичная ситуация возникает при проведении статистических тестов (с чем я столкнулся на работе), когда распределение
очень плохое и его можно оценивать либо Манна-Уитни, либо бутстрапом. Так вот не понятно какого размера сэмплы использовать в таком
случае при бутстрапе..
@SavushkinNM
1.. Стратификация это когда мы хотим, чтобы сэмплы по своей структуре были максимально похожи на совокупность. Если в генеральной совокупности Гугл/Эпл == 90/10, то мы хотим чтобы эта же пропорция сохранилась в сэмпле. Сэмпл можно взять случайно, и тогда есть вероятность что пропорция не сохраниться. А можно взять стратифицированный сэмпл, и тогда пропорция 100% сохраниться.
2.. Я вот не люблю оперировать дисперсией. Для меня она не удобна. Это конечно математично и научно, но не практично. Ты говоришь: “дисперсия действительно может существенно сократиться”, лучше сказать, что ошибка по отношению к совокупности уменьшается. Или просто, что семплы такие же, как совокупность. Т.е. стратификацией мы страхуемся от ошибки сэмплирования.
3.. При больших сэмплах начинает работать закон больших чисел и стратификация происходит автоматически. Но все равно всегда лучше глазами посмотреть, что получилось.
4.. На практике лучше всего использовать максимально большие сэмплы, тогда нам вообще не будет нужна ни стратификация, ни статистика вообще. Но в реальном мире большие сэмплы либо невозможны, либо очень дороги, поэтому мы при помощи статистики находим минимально необходимые сэмплы для той или иной задачи.
Например, мы хотим проверить разницу в конверсии для двух групп. Для того чтобы определить необходимый размер сэмплов, нам нужно понимать 1) какая у нас базовая конверсия 2) какой минимальный прирост конверсии мы хотим обнаружить 3) с какими погрешностями -- альфа и бета (ошибки первого и второго рода). Идем в калькулятор www.evanmiller.org/ab-testing/sample-size.html , вводим данные и получаем размер для каждой из групп. Калькулятор посчитает минимально необходимый размер сэмплов для этого эксперимента.
И дальше, когда мы будем формировать эти группы из наших клиентов, то нам надо задуматься о стратификации: надо чтобы группы были похожи на друг на друга, и так же на всю совокупность клиентов. Стратификация позволит быть более уверенным в том, что при составлении групп не произошло ошибки сэмплирования и группы перекошенные.
5. Размеры сэмплов можно считать не только в онлайн калькуляторе, но и в питоне. Вот например у меня есть пример colab.research.google.com/drive/10DkHtLXsRHYSB7f5LMV5h5WW__uTcNHE . Для каждого теста размер групп тоже будет разный. Для ти теста один, для Манн Витни другой, для бутстрапа третий.Для бутстрепа например можно подбирать размер сэмплов тем же бустрепом: увеличивать размеры сэмплов пока не получим заданную мощность (1-бета). Для Ман Витни тоже можно посчитать размеры сэмплов -- надо гуглить.
6. Но важно понимать, что для статистических тестов стратификация это вопрос независимый от расчета размеров сэмплов. Т.е. ты сначала считаешь какие сэмплы тебе нужны, а потом думаешь как их стратифицировать (и можно ли). Но чем больше получаются сэмплы, тем более они стратифицированы сами по себе.
@@GlebMikhaylov а вы берете в личное менторство¿
@@ГульданикаОсмонова нет, личного менторства у меня нет. Есть только курсы
Ах вот оно чë!
А на 27:24 мы разве не по тесту должны предиктить?
я там комментирую, что для данной демонстрации это не важно
@@GlebMikhaylov вопрос: 26:24
при разбиение на трейн\тест, как правильно инициализировать test['y_pred'] для тестовой выборки? допустим, в трейн выборке первое значение train['y_pred'] равно 1, правильно ли я думаю, что мы можем использовать это же значение для инициализации test['y_pred']?
Ха-ха