На случай, если на собесе вас спросят про временную сложность основных ML алгоритмов
Сохраняем к себе!
#base
Сохраняем к себе!
#base
👍5🔥5
⚡ Regex101
Для тех, кому нужно попрактиковаться в регулярках, есть удобный редактор регулярных выражений Regex101. В нем приводятся объяснения символов, генератор кода для разных языков и дебаггер.
#base
Для тех, кому нужно попрактиковаться в регулярках, есть удобный редактор регулярных выражений Regex101. В нем приводятся объяснения символов, генератор кода для разных языков и дебаггер.
#base
regex101
regex101: build, test, and debug regex
Regular expression tester with syntax highlighting, explanation, cheat sheet for PHP/PCRE, Python, GO, JavaScript, Java, C#/.NET, Rust.
🔥5👍1
🚀 Зачем ускорять модели на проде ?
Привет, сегодня хочу поделиться своими мыслями о том, почему так много вакансий в области Data Science акцентируют внимание на ускорении и конвертации нейронных сетей. Раньше достаточно было владеть навыками обучения моделей и знанием теории Байеса, но сейчас ко всему прочему нужно уметь оптимизировать прод.
Зачем это надо ?
1️⃣ Экономия ресурсов: Ускорение модели экономит вычислительные затраты. Быстрая сеть = больше батчей на GPU = экономия денег. Мы можем улучшить производительность уже существующих моделей без потери точности, используя фьюзинг, конвертацию и смену бэкенда.
2️⃣ Realtime обработка: в Real Time Bidding аукционах, в областях AR/VR, автономных роботов и других, решения нужно принимать в миллисекундах. Быстрый инференс обеспечивает эффективность в таких задачах, где каждая миллисекунда имеет значение.
3️⃣ Безопасность и локальное использование: с ужесточением правил приватности данных пользователей и растущей заботой о безопасности, помещение модели все чаще деплоят Embedded на девайс пользователя. Это не только уменьшает риски утечки данных, но и сокращает время ожидания для пользователей. При этом тяжеловемные модели нужно квантизировать, чтобы их инференс помещался в ограничения телефона или планшета.
#mlops
Привет, сегодня хочу поделиться своими мыслями о том, почему так много вакансий в области Data Science акцентируют внимание на ускорении и конвертации нейронных сетей. Раньше достаточно было владеть навыками обучения моделей и знанием теории Байеса, но сейчас ко всему прочему нужно уметь оптимизировать прод.
Зачем это надо ?
1️⃣ Экономия ресурсов: Ускорение модели экономит вычислительные затраты. Быстрая сеть = больше батчей на GPU = экономия денег. Мы можем улучшить производительность уже существующих моделей без потери точности, используя фьюзинг, конвертацию и смену бэкенда.
2️⃣ Realtime обработка: в Real Time Bidding аукционах, в областях AR/VR, автономных роботов и других, решения нужно принимать в миллисекундах. Быстрый инференс обеспечивает эффективность в таких задачах, где каждая миллисекунда имеет значение.
3️⃣ Безопасность и локальное использование: с ужесточением правил приватности данных пользователей и растущей заботой о безопасности, помещение модели все чаще деплоят Embedded на девайс пользователя. Это не только уменьшает риски утечки данных, но и сокращает время ожидания для пользователей. При этом тяжеловемные модели нужно квантизировать, чтобы их инференс помещался в ограничения телефона или планшета.
#mlops
🔥3👍1
🗺 Карта навыков ML инженера.
Yandex составил карту самых часто встречающихся запросов по ML на Stack Overflow, начиная с 2010 года. Навыками считали теги вопросов на Stack Overflow, популярностью навыков — число запросов, на которые Поиск отвечал страницами с соответствующими тегами. Размер навыка на карте соответствует числу посвящённых ему поисковых запросов. Теги объединены в кластеры.
Сохраняем к себе!
#practices
Yandex составил карту самых часто встречающихся запросов по ML на Stack Overflow, начиная с 2010 года. Навыками считали теги вопросов на Stack Overflow, популярностью навыков — число запросов, на которые Поиск отвечал страницами с соответствующими тегами. Размер навыка на карте соответствует числу посвящённых ему поисковых запросов. Теги объединены в кластеры.
Сохраняем к себе!
#practices
Компания Яндекс
Карта навыков ML-разработчиков
Библиотеки, фреймворки, инструменты и другие навыки, которые ML-разработчики регулярно используют в своей работе.
🔥3👍1
🖥 Как отслеживать среду выполнения Docker с помощью Prometheus и Grafana
Среда выполнения Docker отслеживается для определения производительности и поведения контейнеров и хост-систем с помощью Prometheus и Grafana.
▪Docker для запуска контейнеров.
▪Prometheus для сбора метрик среды Docker.
▪Grafana для визуализации метрик, собранных с Prometheus.
#devops
Среда выполнения Docker отслеживается для определения производительности и поведения контейнеров и хост-систем с помощью Prometheus и Grafana.
▪Docker для запуска контейнеров.
▪Prometheus для сбора метрик среды Docker.
▪Grafana для визуализации метрик, собранных с Prometheus.
#devops
Docker
Docker: Accelerated Container Application Development
Docker is a platform designed to help developers build, share, and run container applications. We handle the tedious setup, so you can focus on the code.
👍1🔥1
The Best ChatGPT & AI Cheat Sheets.pdf
7.8 MB
Шпаргалки по ChatGPT и список из 30+ приложений полезных в быту и по хозяйству
Из доменов
- диалоговые ассистенты
- CustDev
- Productivity
- Image & Video
- Sales
- Marketing
- Плагины для ChatGPT
- Трудоустройство
Также много шпор по промпт-инжинирингу
#practices
#llm
Из доменов
- диалоговые ассистенты
- CustDev
- Productivity
- Image & Video
- Sales
- Marketing
- Плагины для ChatGPT
- Трудоустройство
Также много шпор по промпт-инжинирингу
#practices
#llm
👍5
Traffic Attribution
При проведении рекламной кампнии, когда мы продвигаем продукт на разных площадках, нам важно знать откуда приходит больше всего пользователей, и какой KPI на каждой из них. Чтобы это оценить, есть 2 подхода:
1️⃣ bottom-up – когда мы физически можем трекать, какой пользователь откуда пришёл, в явном виде посчитать ROI на каждый источник (Return On Investment, во сколько раз ты получил больше денег, чем потратил). Здесь пригождается разметка для более точной сегментации аудитории.
2️⃣ top-down – когда мы физически не можем трекать (например, мы не знаем, кто видел нашу наружную рекламу или кто просмотрел наш TikTok). Здесь применяется Marketing Mix Modelling. Т.е. здесь нам нужно понять, в каком соотношении распределять бюджет по разным каналам, когда известен только общий выхлоп.
Marketing Mix Modelling
Если в двух словах, то это стат модель, которая анализирует вклад различных каналов в общий результат кампании. Она учитывает факторы, такие как бюджеты на маркетинг, экономические показатели, конкурентную среду и т. д.
Для построения такой модели есть библиотека Robyn
#adtech
При проведении рекламной кампнии, когда мы продвигаем продукт на разных площадках, нам важно знать откуда приходит больше всего пользователей, и какой KPI на каждой из них. Чтобы это оценить, есть 2 подхода:
1️⃣ bottom-up – когда мы физически можем трекать, какой пользователь откуда пришёл, в явном виде посчитать ROI на каждый источник (Return On Investment, во сколько раз ты получил больше денег, чем потратил). Здесь пригождается разметка для более точной сегментации аудитории.
2️⃣ top-down – когда мы физически не можем трекать (например, мы не знаем, кто видел нашу наружную рекламу или кто просмотрел наш TikTok). Здесь применяется Marketing Mix Modelling. Т.е. здесь нам нужно понять, в каком соотношении распределять бюджет по разным каналам, когда известен только общий выхлоп.
Marketing Mix Modelling
Если в двух словах, то это стат модель, которая анализирует вклад различных каналов в общий результат кампании. Она учитывает факторы, такие как бюджеты на маркетинг, экономические показатели, конкурентную среду и т. д.
Для построения такой модели есть библиотека Robyn
#adtech
Medium
Market Mix Modeling (MMM) — 101
A primer on Market Mix Modeling.
👍4🔥1
Обычно, я новости не публикую, но релиз text2video от OpenAI точно заслуживает внимания
Forwarded from XOR
Media is too big
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Media is too big
VIEW IN TELEGRAM
Пока доступ только у «избранных» художников, сроков для всех не дают, но ждем. А технический разбор выйдет в нашем канале @data_secrets.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤯2👍1🦄1
Основные архитектурные стили
Шпаргалка по архитектуре пригодится, чтобы вспомнить основные паттерны проектирования. Наиболее интересные из них на мой взгляд:
- Orchestration architecture: оркестратор, который направляет взаимодействие между сервисами. Пример оркестратора: Airflow, где мы строим направленные ациклические графы и можем управлять job'ами.
- CQRS: разделяет операции чтения и записи для хранилища данных. Также позволяет независимо их масштабировать.
- Layered (n-tier) architecture: разделяет приложение на логические слои.
- Microkernel: разделяет ядро на две части: core часть и часть, специфичную для клиента.
- Microservice: независимо развертываемые маленькие модульные сервисы (Kubernetes).
- Event-driven architecture: запись и чтение событий, часто в виде потока. В основном используется в асинхронном паттерне с использованием систем очередей (Kafka, RabbitMQ и т. д.).
#devops
Шпаргалка по архитектуре пригодится, чтобы вспомнить основные паттерны проектирования. Наиболее интересные из них на мой взгляд:
- Orchestration architecture: оркестратор, который направляет взаимодействие между сервисами. Пример оркестратора: Airflow, где мы строим направленные ациклические графы и можем управлять job'ами.
- CQRS: разделяет операции чтения и записи для хранилища данных. Также позволяет независимо их масштабировать.
- Layered (n-tier) architecture: разделяет приложение на логические слои.
- Microkernel: разделяет ядро на две части: core часть и часть, специфичную для клиента.
- Microservice: независимо развертываемые маленькие модульные сервисы (Kubernetes).
- Event-driven architecture: запись и чтение событий, часто в виде потока. В основном используется в асинхронном паттерне с использованием систем очередей (Kafka, RabbitMQ и т. д.).
#devops
👍6
📱 Квантование моделей или как сократить время инференса
Кроме настройки пайплайна, ML инженерам приходится решать задачи ускорения инференса моделей. Чтобы этого добиться существует несколько подходов и один из них таких подходов квантование.
Квантование - это метод понижения дискретности весов в модели. Так, модель (чаще всего сетка), обученная с использованием 32-битных чисел с плавающей запятой (float32) может быть заквантована и выполняться на мобильном процессоре в 8-битных беззнаковых целых числах (uint8) или в серверном решении с уполовиниванием ёмкости весов (float16).
Математически квантование можно представить, как если бы мы старались скукожить и сдвинуть распределение весов в более узкий диапазон (32 -> 8 бит).
Здесь w - это исходный вес, S - коэффициент сжатия, Z - константа для сдвига. При этом коэффициент S считается следующим образом
Где b - число бит, в которое производится квантование, например 8, alpha и beta - левая и правая границы возможных значений веса, симметричные или нет относительно нуля.
Квантование как инструмент широко применяется при разработке сеток. Так с его помощью удаётся поднять скорость в несколько раз (регистр, который до этого обрабатывал один float32, теперь может обработать четыре uint8 за раз).
Также Pytorch поддерживает API для механизма квантования
#mlops
Кроме настройки пайплайна, ML инженерам приходится решать задачи ускорения инференса моделей. Чтобы этого добиться существует несколько подходов и один из них таких подходов квантование.
Квантование - это метод понижения дискретности весов в модели. Так, модель (чаще всего сетка), обученная с использованием 32-битных чисел с плавающей запятой (float32) может быть заквантована и выполняться на мобильном процессоре в 8-битных беззнаковых целых числах (uint8) или в серверном решении с уполовиниванием ёмкости весов (float16).
Математически квантование можно представить, как если бы мы старались скукожить и сдвинуть распределение весов в более узкий диапазон (32 -> 8 бит).
q = int(w / S) - Z
Здесь w - это исходный вес, S - коэффициент сжатия, Z - константа для сдвига. При этом коэффициент S считается следующим образом
S = (beta - alpha) / (2^b - 1)
Где b - число бит, в которое производится квантование, например 8, alpha и beta - левая и правая границы возможных значений веса, симметричные или нет относительно нуля.
Квантование как инструмент широко применяется при разработке сеток. Так с его помощью удаётся поднять скорость в несколько раз (регистр, который до этого обрабатывал один float32, теперь может обработать четыре uint8 за раз).
Также Pytorch поддерживает API для механизма квантования
#mlops
👍3🔥3
В защиту SSP!
Ранее я уже писал, что участились случаи, когда вендоры программатик рекламы все чаще переходят от услуг посредников Supply Side Platform (SSP) на прямые сделки с издателями.
По этому вопросу Саймон Халстид, основатель Halstead Incubation Partners, подтвердил, что последнее время участились нападки на SSP, как на лишний орган в организме OpenRTB, якобы это такой налог на рекламные технологии.
Поэтому Саймон выступил в защиту SSP. В качестве аргументов он приводит то, что SSP выполняют всю тяжелую работу на начальных этапах воронки продаж:
- фильтрация невостребованного инвентрая и продвижения только тех Ad Opportunities, на которые будет спрос у DSP (которые представляют интересы рекламодателей)
- помощь издателям в монетизации их инвентаря и ценообразовании (оценке floor price для рекламного места на аукционе)
- управление форматами издателя: banner, inread, instream, carousel, native etc.
В конечном итоге эти усилия повышают ценность инвентаря и упрощают процессы. При этом также нельзя забывать, что Demand Side Platform'ы (DSP) действуют исключительно в интересах рекламодателя (чтобы улучшить их KPI кампании), и единственным кто защищает интересы издателей в продаже инвентаря является SSP.
Поэтому без SSP никуда!
#adtech
Ранее я уже писал, что участились случаи, когда вендоры программатик рекламы все чаще переходят от услуг посредников Supply Side Platform (SSP) на прямые сделки с издателями.
По этому вопросу Саймон Халстид, основатель Halstead Incubation Partners, подтвердил, что последнее время участились нападки на SSP, как на лишний орган в организме OpenRTB, якобы это такой налог на рекламные технологии.
Поэтому Саймон выступил в защиту SSP. В качестве аргументов он приводит то, что SSP выполняют всю тяжелую работу на начальных этапах воронки продаж:
- фильтрация невостребованного инвентрая и продвижения только тех Ad Opportunities, на которые будет спрос у DSP (которые представляют интересы рекламодателей)
- помощь издателям в монетизации их инвентаря и ценообразовании (оценке floor price для рекламного места на аукционе)
- управление форматами издателя: banner, inread, instream, carousel, native etc.
В конечном итоге эти усилия повышают ценность инвентаря и упрощают процессы. При этом также нельзя забывать, что Demand Side Platform'ы (DSP) действуют исключительно в интересах рекламодателя (чтобы улучшить их KPI кампании), и единственным кто защищает интересы издателей в продаже инвентаря является SSP.
Поэтому без SSP никуда!
#adtech
Telegram
ML Advertising
Новости из мира рекламы
🔥 Yahoo зарелизил свою платформу Backstage для прямого контакта с издателями
В Yahoo объявили, что намерены напрямую взаимодействовать с издателями через Yahoo Backstage . В то же время Yahoo сокращает трафик, проходящий через платформу…
🔥 Yahoo зарелизил свою платформу Backstage для прямого контакта с издателями
В Yahoo объявили, что намерены напрямую взаимодействовать с издателями через Yahoo Backstage . В то же время Yahoo сокращает трафик, проходящий через платформу…
👍2🔥2