#recommenders #google #youtube #wizards
Задумался о реализации системы рекомендаций рекламы в ютубе.
Ожидания: топовые дата сайентисты гугла наверняка сделают что-то крутое и интересное.
Реальность: 3 задроченных ролика про то как увольняют Jira, какую-то палестинскую вымогательницу на фоне руин, какие-то блядские игры в браузере. всё это крутится в цикле.
А, еще сервис составления опросов и сервис AI-войсоверов. Всё.
Убрать набившее оскомину рекламное объявление невозможно. Технически кнопка такая есть, но она по факту ничего не меняет.
Спасибо, что хоть ублюдков, продвигавших какие-то финансовые махинации на фоне выступлений Маска, вышвырнули (надолго ли?).
Я, наверное, чего-то не понимаю, но зачем мне показывать одну и ту же рекламу сотни и тысячи раз?
Задумался о реализации системы рекомендаций рекламы в ютубе.
Ожидания: топовые дата сайентисты гугла наверняка сделают что-то крутое и интересное.
Реальность: 3 задроченных ролика про то как увольняют Jira, какую-то палестинскую вымогательницу на фоне руин, какие-то блядские игры в браузере. всё это крутится в цикле.
А, еще сервис составления опросов и сервис AI-войсоверов. Всё.
Убрать набившее оскомину рекламное объявление невозможно. Технически кнопка такая есть, но она по факту ничего не меняет.
Спасибо, что хоть ублюдков, продвигавших какие-то финансовые махинации на фоне выступлений Маска, вышвырнули (надолго ли?).
Я, наверное, чего-то не понимаю, но зачем мне показывать одну и ту же рекламу сотни и тысячи раз?
#binning #optbinning #papers
Приятное, лёгкое для чтения интро в библиотеку OptBinning. А вот уже публикация посолиднее, с указанием алгоритмов.
Мне кажется, для задач регрессии уж точно можно уменьшить потерю информации, если заменять бин не константой (например, WoE бина), а какой-то линейной функцией от константы и значений точки. Даже странно, почему это никто еще не рассмотрел.
https://medium.com/@makhija.amit/mastering-optimal-binning-with-optbinning-a-comprehensive-guide-c6cf52572d64
Приятное, лёгкое для чтения интро в библиотеку OptBinning. А вот уже публикация посолиднее, с указанием алгоритмов.
Мне кажется, для задач регрессии уж точно можно уменьшить потерю информации, если заменять бин не константой (например, WoE бина), а какой-то линейной функцией от константы и значений точки. Даже странно, почему это никто еще не рассмотрел.
https://medium.com/@makhija.amit/mastering-optimal-binning-with-optbinning-a-comprehensive-guide-c6cf52572d64
Medium
Mastering Optimal Binning with Optbinning: A Comprehensive Guide
Binning is a powerful data preprocessing technique used in statistics, data analysis, and machine learning to group continuous data into…
🔥1
#scoring #binning #woe #gini #psi
Вот еще была интересная либа vtb_scorekit.
"Алгоритм работы этого метода следующий:
Ищется разбиение на максимальное кол-во бинов. Для этого может использоваться либо наш собственный алгоритм, основанный на деревьях, либо библиотека optbinning.
Далее в найденном биннинге проводятся проверки
на тренд WOE — он может быть либо монотонным, либо V (или /\)‑образным, но во втором случае Gini переменной должно быть выше относительно монотонного тренда на заданную в параметрах величину. Такая дополнительная проверка позволяет исключить случайные отклонения от монотонности в трендах
стабильность тренда WOE — тренд должен сохраняться на всех тестовых сэмплах, и доверительные интервалы WOE в соседних бинах не должны пересекаться
стабильность Gini — Gini на всех тестовых сэмплах не должно сильно отличаться относительно обучающей выборки и все значения должны попадать в доверительные интервалы, рассчитанные бутстрэпом.
Если хотя бы одна проверка не пройдена, то максимальное число бинов уменьшается, и процедура повторяется до тех пор, пока мы не получим стабильный биннинг, удовлетворяющий всем заданным критериям.
После этого мы можем заново провести поиск уже с другим набором параметров, например, другим методом или другим критерием расщепления дерева, а затем из всех найденных стабильных биннингов автоматически выбирается оптимальный с наилучшим Gini.
В результате всех этих расчетов мы получаем и тестируем десятки (а иногда и сотни) биннингов для каждой переменной и выбираем из них лучший. Благодаря тому, что расчет каждой переменной идет полностью независимо от остальных, можно проводить все эти вычисления параллельно и, выделив большое число ядер для расчета, получать результат достаточно быстро."
Тут уже есть из коробки многофакторный анализ, проводящийся в 4 этапа:
"Сначала будут отсечены слабые и не стабильные факторы по заданным трешхолдам Gini и PSI факторов
Затем будет проведен корреляционный анализ и исключены коррелирующие факторы, либо как альтернатива этот шаг может быть пропущен, а коррелирующие факторы могут исключаться динамически по мере отбора факторов в модель. Эта опция обычно позволяет получить немного более сильную модель, но вычислительные затраты возрастают на порядок.
На третьем этапе проводится итерационный отбор факторов, который может отбирать переменные как для максимизации заданной метрики, так и по p-value переменных.
В самом конце исключаются малозначимые факторы и вошедшие в модель со знаком, противоречащим бизнес-логике."
https://habr.com/ru/companies/vtb/articles/743392/
Вот еще была интересная либа vtb_scorekit.
"Алгоритм работы этого метода следующий:
Ищется разбиение на максимальное кол-во бинов. Для этого может использоваться либо наш собственный алгоритм, основанный на деревьях, либо библиотека optbinning.
Далее в найденном биннинге проводятся проверки
на тренд WOE — он может быть либо монотонным, либо V (или /\)‑образным, но во втором случае Gini переменной должно быть выше относительно монотонного тренда на заданную в параметрах величину. Такая дополнительная проверка позволяет исключить случайные отклонения от монотонности в трендах
стабильность тренда WOE — тренд должен сохраняться на всех тестовых сэмплах, и доверительные интервалы WOE в соседних бинах не должны пересекаться
стабильность Gini — Gini на всех тестовых сэмплах не должно сильно отличаться относительно обучающей выборки и все значения должны попадать в доверительные интервалы, рассчитанные бутстрэпом.
Если хотя бы одна проверка не пройдена, то максимальное число бинов уменьшается, и процедура повторяется до тех пор, пока мы не получим стабильный биннинг, удовлетворяющий всем заданным критериям.
После этого мы можем заново провести поиск уже с другим набором параметров, например, другим методом или другим критерием расщепления дерева, а затем из всех найденных стабильных биннингов автоматически выбирается оптимальный с наилучшим Gini.
В результате всех этих расчетов мы получаем и тестируем десятки (а иногда и сотни) биннингов для каждой переменной и выбираем из них лучший. Благодаря тому, что расчет каждой переменной идет полностью независимо от остальных, можно проводить все эти вычисления параллельно и, выделив большое число ядер для расчета, получать результат достаточно быстро."
Тут уже есть из коробки многофакторный анализ, проводящийся в 4 этапа:
"Сначала будут отсечены слабые и не стабильные факторы по заданным трешхолдам Gini и PSI факторов
Затем будет проведен корреляционный анализ и исключены коррелирующие факторы, либо как альтернатива этот шаг может быть пропущен, а коррелирующие факторы могут исключаться динамически по мере отбора факторов в модель. Эта опция обычно позволяет получить немного более сильную модель, но вычислительные затраты возрастают на порядок.
На третьем этапе проводится итерационный отбор факторов, который может отбирать переменные как для максимизации заданной метрики, так и по p-value переменных.
В самом конце исключаются малозначимые факторы и вошедшие в модель со знаком, противоречащим бизнес-логике."
https://habr.com/ru/companies/vtb/articles/743392/
Хабр
Фреймворк vtb_scorekit для разработки интерпретируемых скоринговых моделей
Всем привет! Меня зовут Сакович Руслан, я занимаюсь корпоративным риск-моделированием, и сегодня расскажу о построении скоринговых моделей. Эти модели позволяют оценивать кредитные риски и являются...
👍1🔥1
#abtesting
Про ухудшающий эксперимент интересно, и про опасность подмены метрик, как и излишнего оптимизма. "Катить по серому" - забавно.
https://www.youtube.com/watch?v=gMx-juYkNCw
Про ухудшающий эксперимент интересно, и про опасность подмены метрик, как и излишнего оптимизма. "Катить по серому" - забавно.
https://www.youtube.com/watch?v=gMx-juYkNCw
YouTube
A/B тесты как способ развития продукта
Enjoy the videos and music you love, upload original content, and share it all with friends, family, and the world on YouTube.
#abtesting
Самое лучшее выступление по А/Б тестам с управленческой точки зрения, что я видел.
Фишка культуры А/Б тестирования в том, что ценность мнения CEO компании становится равной ценности мнения любого сотрудника.
Наверное, это один из главных барьеров к распространению этого подхода к принятию решений.
https://youtu.be/_sx5LV23hIE?si=B7wuha09eOp2XVYj
Самое лучшее выступление по А/Б тестам с управленческой точки зрения, что я видел.
Фишка культуры А/Б тестирования в том, что ценность мнения CEO компании становится равной ценности мнения любого сотрудника.
Наверное, это один из главных барьеров к распространению этого подхода к принятию решений.
https://youtu.be/_sx5LV23hIE?si=B7wuha09eOp2XVYj
YouTube
Stuart Frisby, Booking.com - Conversions@Google 2017
Building a Testing Culture
#dummy #baselines #sklearn #timeseries
Чёт я задумался, что Dummy* модели в sklearn совсем не предназначены для временных рядов. Сел сочинять Feature Request, посмотрим, если не зарубят, даже сам над ним поработаю.
И, кстати сказать, неудобно, что на практике всегда перебираешь все доступные стратегии, чтобы создать хоть какой-то разумный бэйз.
У меня пока такие идеи:
1) дать возможность указывать окно, как в pandas при вычислении rolling/expanding. Вводим для этого параметр scope:str={"rolling","expanding","all"}. Если scope!="all", стратегия применяется не ко всему датасету, а к окошку. параметры **kwargs передаются напрямую в метод scope ряда pandas.
Для полной поддержки взвешенных окон придётся добавить **extra_kwargs:
2) добавить strategy="lag" (только для scope="rolling")
3) добавить strategy="best", которая будет внутри перебирать все остальные стратегии, чтобы выдать пользователю самую сильную базу. Также придётся добавить параметр scoring, как в cross_validate, чтоб можно было сравнивать стратегии.
4) добавить strategy="ewm" на базе того же пандас. параметры **kwargs передаются напрямую в метод ewm pandas.
5) добавить strategy="apply" (для scope!="all") для применения кастомных аггрегирующих функций. Будет транслироваться в
6) в случае задания окна, хотелось бы добавить классу немного ума. пусть бы сам искал, какое окно даёт наилучший скоринг? только вот как это сделать, если индексом служит время, слишком много же вариантов получается.
Ещё придётся думать о сортировке y (если это ряд pandas с datetimelike-индексом) и заполнении пропусков (у окон есть параметр min_period, так что пропуски вполне могут появиться). Думаю заполнять пропуски либо backfill-ом, либо стратегией, применённой ко всему датасету. Нужен новый параметр fill_na:str={"backfill","strategy"}, видимо.
Есть ещё предложения по стратегиям?
В общем, запостил FR: https://github.com/scikit-learn/scikit-learn/issues/29813
Чёт я задумался, что Dummy* модели в sklearn совсем не предназначены для временных рядов. Сел сочинять Feature Request, посмотрим, если не зарубят, даже сам над ним поработаю.
И, кстати сказать, неудобно, что на практике всегда перебираешь все доступные стратегии, чтобы создать хоть какой-то разумный бэйз.
У меня пока такие идеи:
1) дать возможность указывать окно, как в pandas при вычислении rolling/expanding. Вводим для этого параметр scope:str={"rolling","expanding","all"}. Если scope!="all", стратегия применяется не ко всему датасету, а к окошку. параметры **kwargs передаются напрямую в метод scope ряда pandas.
Для полной поддержки взвешенных окон придётся добавить **extra_kwargs:
kwargs=dict(window=5, win_type="gaussian")
extra_kwargs=dict(std=0.1)
# Supplementary Scipy arguments passed in the aggregation function
y.rolling(**kwargs).mean(**extra_kwargs)
2) добавить strategy="lag" (только для scope="rolling")
3) добавить strategy="best", которая будет внутри перебирать все остальные стратегии, чтобы выдать пользователю самую сильную базу. Также придётся добавить параметр scoring, как в cross_validate, чтоб можно было сравнивать стратегии.
4) добавить strategy="ewm" на базе того же пандас. параметры **kwargs передаются напрямую в метод ewm pandas.
5) добавить strategy="apply" (для scope!="all") для применения кастомных аггрегирующих функций. Будет транслироваться в
def mad(x):
return np.fabs(x - x.mean()).mean()
kwargs=dict(window=4)
extra_kwargs=dict(func=mad, raw=True)
y.rolling(**kwargs).apply(**extra_kwargs)
6) в случае задания окна, хотелось бы добавить классу немного ума. пусть бы сам искал, какое окно даёт наилучший скоринг? только вот как это сделать, если индексом служит время, слишком много же вариантов получается.
Ещё придётся думать о сортировке y (если это ряд pandas с datetimelike-индексом) и заполнении пропусков (у окон есть параметр min_period, так что пропуски вполне могут появиться). Думаю заполнять пропуски либо backfill-ом, либо стратегией, применённой ко всему датасету. Нужен новый параметр fill_na:str={"backfill","strategy"}, видимо.
Есть ещё предложения по стратегиям?
В общем, запостил FR: https://github.com/scikit-learn/scikit-learn/issues/29813
❤2🏆1
#finance #trading #timeseries #lstm #rv
Интересная мысль, что для рекуррентных сетей input dimension начинает играть роль гиперпараметра (причём важного).
https://www.youtube.com/watch?v=lc8qKP8yH3E
Интересная мысль, что для рекуррентных сетей input dimension начинает играть роль гиперпараметра (причём важного).
https://www.youtube.com/watch?v=lc8qKP8yH3E
YouTube
Герман Родиков | Predicting specific time series by blending deep learning techniques
Спикер: Герман Родиков, University of Bologna
Тема доклада: Predicting specific time series by blending deep learning techniques with domain-specific knowledge
Data Fest 2024: https://ods.ai/events/datafest2024
Презентацию к докладу Вы можете скачать в…
Тема доклада: Predicting specific time series by blending deep learning techniques with domain-specific knowledge
Data Fest 2024: https://ods.ai/events/datafest2024
Презентацию к докладу Вы можете скачать в…
👍2
Forwarded from Data Secrets
Please open Telegram to view this post
VIEW IN TELEGRAM
#abtesting
Оказывается, фреквентистский А/Б тест можно сделать "подсматриваемым" за счёт снижения мощности.
И еще на ту же тему.
https://www.youtube.com/watch?v=BanBrr3Hzm8
Оказывается, фреквентистский А/Б тест можно сделать "подсматриваемым" за счёт снижения мощности.
И еще на ту же тему.
https://www.youtube.com/watch?v=BanBrr3Hzm8
YouTube
Stanford Webinar: Common Pitfalls of A/B Testing and How to Avoid Them
A Stanford Webinar presented by the Stanford Leadership & Management Science (http://stanford.io/2ppiCxy) and Decision Analysis (http://stanford.io/2pByYDC) graduate certificate programs
"Common Pitfalls of A/B Testing and How to Avoid Them"
Speaker: Ramesh…
"Common Pitfalls of A/B Testing and How to Avoid Them"
Speaker: Ramesh…
#ai #gpt
"Идеи, сгенерированные ИИ, получили статистически значимо более высокие оценки по критериям новизны и увлекательности по сравнению с идеями людей. При этом по критерию осуществимости идеи ИИ оказались немного ниже, а по эффективности — немного выше, чем идеи людей, хотя эти различия не были статистически значимыми.
Исследование также выявило некоторые недостатки в работе ИИ, такие как отсутствие разнообразия идей. Даже при чётком указании не повторяться, ИИ быстро про это забывал. Кроме того, ИИ не смог последовательно проверять и оценивать идеи и получал низкие баллы за согласие с человеческими суждениями. Важно отметить, что исследование также выявило определённые ограничения в методологии. В частности, оценка «оригинальности» идеи, даже группой экспертов, остаётся субъективной, поэтому планируется провести более комплексное исследование, в котором идеи, генерируемые как ИИ, так и людьми, будут полностью оформлены в проекты, что позволит более глубоко изучить их влияние в реальных сценариях. Тем не менее, первые результаты исследования, безусловно, впечатляют."
https://3dnews.ru/1110837/ii-prevzoshyol-uchyonih-v-generatsii-innovatsionnih-issledovatelskih-idey
"Идеи, сгенерированные ИИ, получили статистически значимо более высокие оценки по критериям новизны и увлекательности по сравнению с идеями людей. При этом по критерию осуществимости идеи ИИ оказались немного ниже, а по эффективности — немного выше, чем идеи людей, хотя эти различия не были статистически значимыми.
Исследование также выявило некоторые недостатки в работе ИИ, такие как отсутствие разнообразия идей. Даже при чётком указании не повторяться, ИИ быстро про это забывал. Кроме того, ИИ не смог последовательно проверять и оценивать идеи и получал низкие баллы за согласие с человеческими суждениями. Важно отметить, что исследование также выявило определённые ограничения в методологии. В частности, оценка «оригинальности» идеи, даже группой экспертов, остаётся субъективной, поэтому планируется провести более комплексное исследование, в котором идеи, генерируемые как ИИ, так и людьми, будут полностью оформлены в проекты, что позволит более глубоко изучить их влияние в реальных сценариях. Тем не менее, первые результаты исследования, безусловно, впечатляют."
https://3dnews.ru/1110837/ii-prevzoshyol-uchyonih-v-generatsii-innovatsionnih-issledovatelskih-idey
3DNews - Daily Digital Digest
ИИ превзошёл учёных в генерации инновационных исследовательских идей
Большие языковые модели (LLM) оказались способны генерировать новые научно-исследовательские идеи на уровне экспертов. Более того, согласно новому исследованию, эти идеи оказались более оригинальными и интересными, чем предложенные специалистами. Это ставит…
#hardware #hdd
"Роботизированная система производства Dobot Robotics на основе ИИ от Microsoft использует компьютерное зрение для распознавания различных типов жёстких дисков и выбора способа их разборки.
По данным Microsoft, этот новый подход NoShred направлен на достижение 90 % повторного использования и переработки жёстких дисков к 2025 году. Роботы обеспечивают безопасность данных, уничтожая только компоненты, несущие данные, и извлекая ценные материалы. Следует отметить, что во многих случаях компании, которые должны уничтожать свои диски, не делают этого, и они в конечном итоге собирают пыль в складских помещениях или отправляются на свалки.
На сегодняшний день по разным оценкам во всём мире ежегодно заканчивают свой жизненный цикл от 20 до 70 миллионов жёстких дисков. Только Microsoft в 2022 году уничтожила два миллиона жёстких дисков, причём процент разобранных и переработанных устройств компания не сообщила."
https://3dnews.ru/1110950/microsoft-razrabotala-robotov-dlya-razborki-i-pererabotki-dvuh-millionov-gyostkih-diskov-v-god
"Роботизированная система производства Dobot Robotics на основе ИИ от Microsoft использует компьютерное зрение для распознавания различных типов жёстких дисков и выбора способа их разборки.
По данным Microsoft, этот новый подход NoShred направлен на достижение 90 % повторного использования и переработки жёстких дисков к 2025 году. Роботы обеспечивают безопасность данных, уничтожая только компоненты, несущие данные, и извлекая ценные материалы. Следует отметить, что во многих случаях компании, которые должны уничтожать свои диски, не делают этого, и они в конечном итоге собирают пыль в складских помещениях или отправляются на свалки.
На сегодняшний день по разным оценкам во всём мире ежегодно заканчивают свой жизненный цикл от 20 до 70 миллионов жёстких дисков. Только Microsoft в 2022 году уничтожила два миллиона жёстких дисков, причём процент разобранных и переработанных устройств компания не сообщила."
https://3dnews.ru/1110950/microsoft-razrabotala-robotov-dlya-razborki-i-pererabotki-dvuh-millionov-gyostkih-diskov-v-god
3DNews - Daily Digital Digest
Microsoft создала робота для разборки и переработки 2 млн жёстких дисков в год
Неисправные или изношенные жёсткие диски могут содержать множество ценных данных, которые необходимо гарантированно удалить без возможности восстановления.
#mlstories
Моя типичнейшая ошибка повторяется - один класс моделей, нет HPT ) Когда-то будет дописана статья, как надо правильно.
Из интересного: в реальном времени сработало обнаружение data drift, использовали теневую модель.
https://www.youtube.com/watch?v=ejWCMlKBt4A
Моя типичнейшая ошибка повторяется - один класс моделей, нет HPT ) Когда-то будет дописана статья, как надо правильно.
Из интересного: в реальном времени сработало обнаружение data drift, использовали теневую модель.
https://www.youtube.com/watch?v=ejWCMlKBt4A
YouTube
Андрей Лукьяненко | Предавторизация в реальном времени для заказа такси
Спикер: Андрей Лукьяненко, Senior DS в Careem
Тема доклада: Предавторизация в реальном времени для заказа такси: от правил к машинному обучению
Data Fest 2024: https://ods.ai/events/datafest2024
Презентацию к докладу Вы можете скачать в треке секции Reliable…
Тема доклада: Предавторизация в реальном времени для заказа такси: от правил к машинному обучению
Data Fest 2024: https://ods.ai/events/datafest2024
Презентацию к докладу Вы можете скачать в треке секции Reliable…
👍2
#ai #gpt
Chain of Thought кажется сильным решением. Ждём следующей версии )
https://youtu.be/SbrfjBV8EzM?si=KKmHQwXDAKzIA51O
Chain of Thought кажется сильным решением. Ждём следующей версии )
https://youtu.be/SbrfjBV8EzM?si=KKmHQwXDAKzIA51O
YouTube
GPT-o1: The Best Model I've Ever Tested 🍓 I Need New Tests!
Let's run GPT-o1 through our LLM Rubric.
Giveaway: Subscribe to our newsletter for your chance to win a Dell wireless keyboard and mouse: https://gleam.io/v4URO/dell-keyboard-and-mouse
Join My Newsletter for Regular AI Updates 👇🏼
https://forwardfuture.ai…
Giveaway: Subscribe to our newsletter for your chance to win a Dell wireless keyboard and mouse: https://gleam.io/v4URO/dell-keyboard-and-mouse
Join My Newsletter for Regular AI Updates 👇🏼
https://forwardfuture.ai…
#python #pyccolo
Хакинг и сабклассинг питона. Для меня это уж слишком, но вдруг кому ТАКОЙ уровень гибкости нужен.
https://www.youtube.com/watch?v=8UesBrSt7wY
Хакинг и сабклассинг питона. Для меня это уж слишком, но вдруг кому ТАКОЙ уровень гибкости нужен.
https://www.youtube.com/watch?v=8UesBrSt7wY
YouTube
Stephen Macke - Python as a Hackable Language for Interactive Data Science | PyData Global 2023
www.pydata.org
Did you know that the core Python syntax and semantics can be tailored for interactive computing use cases? It turns out that more is possible than what you would expect! For example, at the most basic level, Jupyter supports basic syntax…
Did you know that the core Python syntax and semantics can be tailored for interactive computing use cases? It turns out that more is possible than what you would expect! For example, at the most basic level, Jupyter supports basic syntax…
👍1