Как стать автором
Обновить
0
0
Евгений @Jecki494

ML Engineer

Отправить сообщение

Как улучшить ваши A/B-тесты: лайфхаки аналитиков Авито. Часть 1

Время на прочтение29 мин
Количество просмотров66K

Всем привет! Я Дмитрий Лунин, работаю аналитиком в команде ценообразования Авито. Наш юнит отвечает за все платные услуги площадки. Наша основная задача — сделать цены на них оптимальными. 

Мы не только пытаемся максимизировать выручку Авито, но и думаем про счастье пользователей. Если установить слишком большие цены, то пользователи возмутятся и начнут уходить с площадки, а если сделать цены слишком маленькими, то мы недополучим часть оптимальной выручки. Низкие цены также увеличивают количество «спамовых» объявлений, которые портят поисковую выдачу пользователям. Поэтому нам очень важно уметь принимать математически обоснованные решения — любая наша ошибка напрямую отразится на выручке и имидже компании. 

Одним из инструментов для решения наших задач является A/B-тестирование.

Читать далее
Всего голосов 10: ↑8 и ↓2+7
Комментарии15

Единая нейросетевая модель кредитного скоринга

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров8.6K

Сейчас в Альфа-Банке при построении моделей используется множество различных источников данных. Мы в Лаборатории машинного обучения уже несколько лет применяем нейронные сети на последовательностях для решения задачи кредитного скоринга и построили модели на данных карточных транзакций, транзакций расчетного счета и кредитных историй. Повышение качества в задаче кредитного скоринга позволяет банку выдавать большее количество кредитов при неизменном уровне риска, что напрямую влияет на его прибыль.

Моделей становится все больше, и возникает вопрос: почему бы нам не смешивать модели не на уровне их предсказаний, а на некотором более низком уровне? Эта идея приводит нас к новому способу смешивания - построению единой нейросетевой модели, работающей со всеми источниками последовательных данных и учитывающей их взаимное влияние друг на друга. В этой статье мы расскажем, как нам удалось разработать такую модель и каких результатов она позволяет добиться в задаче кредитного скоринга.

Читать далее
Всего голосов 35: ↑32 и ↓3+31
Комментарии7

Полезные материалы и инструменты для погружения в Flask: выбор сотрудников Selectel

Время на прочтение4 мин
Количество просмотров8.7K

Часто Python-разработчики выбирают Flask в качестве «быстрого старта» для создания веб-приложений. Он прост в использовании и имеет много преимуществ перед другими фреймворками — например, легкий синтаксис, удобные шаблоны и инструменты для гибкой настройки сайтов.

Однако у начинающих могут быть трудности в работе с фреймворком. Чтобы свести их к минимуму и помочь с погружением в Flask, наши коллеги собрали полезные материалы. Сохраняйте подборку в закладки и делитесь своими вариантами в комментариях.
Читать дальше →
Всего голосов 22: ↑18 и ↓4+19
Комментарии6

ML для оптимизации цен на основе эластичности по цене

Время на прочтение25 мин
Количество просмотров20K

Кривая эластичности спроса по цене – это то, как продажи зависят от цены.Чем меньше цена, тем больше продаж и наоборот.

В этой статье рассказывается про ML методы получения кривых спроса сразу для сотен тысяч товаров (нейросети, pyTorch), а также как, имея кривые спроса, решать бизнес задачу про баланс оборота и прибыли – в этом нам поможет метод множителей Лагранжа. Что первично – ограничение на прибыль или множитель Лагранжа? Как инженерам объяснить, что такое kvi-товары и товары-герои? Это и многое другое

Читать далее
Всего голосов 9: ↑8 и ↓1+7
Комментарии18

Что такое MLOps? Самый подробный текст про работу с ML-системами, который вы найдете в интернете

Время на прочтение25 мин
Количество просмотров28K


В этом материале мы подробно разбираем концепцию MLOps. Более того, делаем это тремя способами. Сначала теоретически — через самую толковую, на наш взгляд, схему MLOps. Затем — концептуально, через артефакты, которые заложены в подходе. И наконец, через понимание MLOps как информационной системы.

Сохраняйте текст в закладки, потому что на данный момент это, возможно, самое полное описание MLOps на русском языке (и не перевод очередной англоязычной статьи!). Подарим мерч Selectel тому, кто пришлет ссылку на более развернутое описание концепции в комментариях.
Читать дальше →
Всего голосов 43: ↑43 и ↓0+43
Комментарии13

Пора забывать GridSearch — встречайте ProgressiveGridSearch. Фракталы в ML, постепенно увеличиваем разрешение

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров7.7K

Здравствуйте, меня зовут Николай Стрекопытов и я придумал как подбирать гиперпараметры бескомпромиссно лучше GridSearch’а. Нужно лишь изменить порядок вычислений. И да, это заявка на обновление индустриального стандарта - скоро вы сможете улучшить свои ML-пайплайны заменой нескольких строчек кода.

Читать далее
Всего голосов 28: ↑27 и ↓1+32
Комментарии11

YOLOv7 для определения поз людей на видео

Уровень сложностиСредний
Время на прочтение16 мин
Количество просмотров9.7K

Привет, Хабр!

С вами Максим Алёшин, Data Scientist и участник профессионального сообщества NTA.

В этом посте мы познакомимся с возможностями YOLOv7 для определения поз людей на видео, обсудим принцип работы алгоритма, разберёмся, чем принципиально отличается подход к детекции скелетов человека в модели YOLOv7 и других фреймворках, подробно пройдёмся по всем шагам запуска на инференс предобученной модели YOLOv7-pose для детекции людей с их скелетами.

В процессе копания в первоисточниках и не только, мне удалось почерпнуть несколько интересных фактов о YOLO, чем я поделюсь с читателями. Некоторые труднопереводимые термины будут оставаться как есть.

Узнать больше
Всего голосов 9: ↑9 и ↓0+9
Комментарии1

Полезные материалы по Data Science и машинному обучению, которые помогут пройти сквозь джунгли из терминов

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров25K

Привет, Хабр! Меня зовут Ефим, я MLOps-инженер в Selectel. В прошлом был автоматизатором, ML-инженером, дата-аналитиком и дата-инженером — и уже несколько лет падаю в пропасть машинного обучения и Data Science. Это буквально необъятная сфера, в которой почти нет ориентиров. Основная проблема в том, что разделов математики довольно много и все они, на первый взгляд, нужны в том же машинном обучении.

В этой статье делюсь полезными материалами, которые помогут найти и заполнить теоретические и практические проблемы и основательно подойти к своему профессиональному развитию. Добро пожаловать под кат!
Читать дальше →
Всего голосов 59: ↑59 и ↓0+59
Комментарии15

Теории вероятностей: готовимся к собеседованию и разрешаем «парадоксы»

Время на прочтение17 мин
Количество просмотров94K

Каждый год я участвую примерно в сотне собеседований в образовательных проектах JetBrains: собеседую абитуриентов в Computer Science Center и корпоративную магистратуру ИТМО (кстати, набор на программу идёт прямо сейчас). Все собеседования устроены по одному шаблону: мы просим на месте порешать задачи и задаём базовые вопросы по дисциплинам, которые студенты изучали в университетах. Большинство вопросов, которые мы задаём, довольно простые — нужно дать определение некоторого понятия, сформулировать свойство или теорему. К сожалению, у значительной доли студентов все эти определения выветриваются сразу после экзаменов в университетах. Казалось бы, что тут удивительного? В современном мире любое определение можно за пару секунд нагуглить, если это нужно. Но невозможность восстановить базовое определение свидетельствует о непонимании сути предмета.

Если непонимание алгебры или математического анализа может мало влиять на вашу жизнь, то непонимание теории вероятностей делает из вас лёгкую мишень для обмана и манипулирования. Суждения о вероятностях различных событий настолько глубоко вошли в нашу повседневную жизнь, что умение правильно рассуждать и отличать правду от невежества или манипуляции является необходимым. В этом небольшом обзоре мы поговорим о базовых понятиях теории вероятностей, научимся правильно формулировать утверждения про простые случайные процессы и разберём несколько парадоксов. Часть материала позаимствована из брошюры А. Шеня «Вероятность: примеры и задачи», которую я очень рекомендую для самостоятельного изучения.
Читать дальше →
Всего голосов 15: ↑12 и ↓3+17
Комментарии101

Структурное мышление или важное отличие человека от ИИ

Время на прочтение28 мин
Количество просмотров22K

В этой статье я расскажу об одном из самых важных отличий человеческого мышления от того, как работают нейросети: о структурном восприятии мира. Мы поймем, как это отличие мешает ИИ эффективно решать многие задачи, а также поговорим об идеях, с помощью которых можно внедрить в нейросети понимание структуры. В том числе обсудим недавние работы таких известных в области AI людей, как Джеффри Хинтон и Ян ЛеКун.

Начнем мы с понимания того, что вообще такое “структурное мышление” и почему люди им обладают:

Читать далее
Всего голосов 33: ↑32 и ↓1+40
Комментарии59

Про настройку гиперпараметров ансамблей моделей машинного обучения

Время на прочтение13 мин
Количество просмотров5K

Привет Хабр!

Под катом хочется затронуть тему настройки гиперпараметров в моделях машинного обучения, получаемых при помощи блендинга. В таких ансамблях предсказания из одной модели машинного обучения становятся предикторами для другой (следующего уровня). На рисунке ниже представлены некоторые варианты ансамблей, где данные передаются слева направо. Называть такие ансамбли мы будем в рамках поста также пайплайнами или композитными моделями (композитные пайплайны). 

А мемы про гиперпараметры?
Всего голосов 4: ↑4 и ↓0+4
Комментарии0

Как спрогнозировать спрос на самокаты и не захламить город, версия Whoosh

Уровень сложностиПростой
Время на прочтение11 мин
Количество просмотров6.4K

Нельзя просто так взять и расставить электросамокаты в городе. Надо, чтобы они находились в нужное время, в нужном месте и в нужном количестве, чтобы выполнять свою транспортную задачу. Спрос на поездки в разных локациях неодинаковый, поэтому если поставить самокаты ровным слоем на улицах города — будет неэффективно. Нельзя также расставить их только в местах сильного пользовательского притяжения, забыв при этом про периферию.

Нужен хоббит алгоритм, который бы рассчитал, какое количество поездок можно ожидать на определенной парковке в определенный временной промежуток.

Меня зовут Никита Зеленский, я руковожу отделом по работе с данными в Whoosh, разработчике технологических решений и операторе микромобильности. Эту статью мы написали вместе с Иваном Маричевым, дата‑сайнтистом Whoosh. Он же и автор алгоритма, о котором пойдет речь.

Здесь мы расскажем, как мы реализовывали модель прогнозирования спроса на самокаты, с чем сталкивались при прототипировании, какие модели были протестированы, чем наш случай отличается от прогнозирования спроса в каршеринге, спроса для пополнения запасов в дарксторе и т. п. (Самокат, самокаты Whoosh передают привет!)

История получилась про наши подходы и грабли, которые мы в итоге собрали. Чуть‑чуть про технику, чуть‑чуть про бизнес — нескучно и с ветерком (как на самокате).

Whoosh!

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии10

Как прогнозировать временные ряды с ETNA

Время на прочтение7 мин
Количество просмотров14K

Меня зовут Андрей, я разработчик библиотеки ETNA в Тинькофф. В статье расскажу, как быстро и легко анализировать временные ряды с помощью ETNA, зачем временным рядам столько фич, и покажу, что даже простой линейной моделью можно получить хороший результат прогнозирования.

[Под катом много картинок и GIF]

Читать далее
Всего голосов 14: ↑14 и ↓0+14
Комментарии0

10 первых ошибок в карьере ML-инженера

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров27K

Работа ML-инженера заключается не только в обучении моделей — хороший специалист погружается в бизнес-контекст, умеет доносить мысли до коллег без ML-бэкграунда, а также не забывает про тесты, дизайн-документы и документацию. 

Богдан Печёнкин, автор Симулятора ML, собрал 10 ошибок специалистов, которые зачастую встречаются в первые годы карьеры.

Узнать больше
Всего голосов 39: ↑39 и ↓0+39
Комментарии23

АБ-тесты — это не только ценный мех… Но еще и процессы

Время на прочтение20 мин
Количество просмотров6.7K

О математических нюансах АБ-тестирования есть много замечательной литературы, но почти нигде нет информации о том, каким образом в компаниях выстраивать сам процесс применения АБ-тестирования. За исключением отдельных отраслей (игры, интернет-коммерция), где уже сформировались зрелые практики.

При этом для офлайн-бизнеса внедрение АБ-тестирования во многом организационная, а не математическая проблема. На практике правильно выстроить бизнес-процесс применения АБ и позиционирования его внутри компании едва ли не сложнее, чем создать правильную статистическую методологию.

В этой статье я поделюсь своим опытом и советами о том, как это сделать.

Читать далее
Всего голосов 12: ↑12 и ↓0+12
Комментарии2

Стратегии прогнозирования временных рядов в ETNA

Время на прочтение7 мин
Количество просмотров7.6K

Меня зовут Дима, я разработчик библиотеки ETNA в Тинькофф. Расскажу о том, как в задаче прогнозирования временных рядов появляются стратегии, какими они бывают и как воспользоваться стратегией в библиотеке ETNA.

Читать далее
Всего голосов 22: ↑22 и ↓0+22
Комментарии2

MLOps в облаке: как организовать работу над ML-экспериментами с помощью MLflow

Уровень сложностиСложный
Время на прочтение10 мин
Количество просмотров4.5K


В свое время DevOps заметно изменил подход к разработке программного обеспечения. Последние пару лет благодаря практикам MLOps меняются принципы и подходы к работе дата-специалистов. Александр Волынский (Technical Product Manager ML Platform VK Cloud) и Сергей Артюхин (преподаватель программы «Симулятор ML» в Karpov Courses) рассказывают, почему MLOps — «новый черный» и как безболезненно реализовать этот подход в своем проекте.
Читать дальше →
Всего голосов 26: ↑26 и ↓0+26
Комментарии0

Теория вероятностей в машинном обучении. Часть 1: модель регрессии

Время на прочтение28 мин
Количество просмотров26K

В данной статье мы подробно рассмотрим вероятностную постановку задачи машинного обучения: что такое распределение данных, дискриминативная модель, i.i.d.-гипотеза и метод максимизации правдоподобия, что такое регрессия Пуассона и регрессия с оценкой уверенности, и как нормальное распределение связано с минимизацией среднеквадратичного отклонения.

В следующей части рассмотрим метод максимизации правдоподобия в классификации: в чем роль кроссэнтропии, функций сигмоиды и softmax и как кроссэнтропия связана с "расстоянием" между распределениями вероятностей и почему модель регрессии тоже обучается через минимизацию кроссэнтропии. Затем перейдем от метода максимизации правдоподобия к байесовскому выводу и его различным приближениям.

Данная серия статей не является введением в машинное обучение и предполагает знакомство читателя с основными понятиями. Задача статей - рассмотреть машинное обучение с точки зрения теории вероятностей, что позволит по новому взглянуть на проблему, понять связь машинного обучения со статистикой и лучше понимать формулы из научных статей. Также на описанном материале строятся более сложные темы, такие как вариационные автокодировщики (Kingma and Welling, 2013), нейробайесовские методы (Müller et al., 2021) и даже некоторые теории сознания (Friston et al., 2022).

Читать далее
Всего голосов 23: ↑23 и ↓0+23
Комментарии0

Регулярные выражения в Python от простого к сложному. Подробности, примеры, картинки, упражнения

Время на прочтение25 мин
Количество просмотров1.5M

Регулярные выражения в Python от простого к сложному




Решил я давеча моим школьникам дать задачек на регулярные выражения для изучения. А к задачкам нужна какая-нибудь теория. И стал я искать хорошие тексты на русском. Пяток сносных нашёл, но всё не то. Что-то смято, что-то упущено. У этих текстов был не только фатальный недостаток. Мало картинок, мало примеров. И почти нет разумных задач. Ну неужели поиск IP-адреса — это самая частая задача для регулярных выражений? Вот и я думаю, что нет.
Про разницу (?:...) / (...) фиг найдёшь, а без этого знания в некоторых случаях можно только страдать.

Плюс в питоне есть немало регулярных плюшек. Например, re.split может добавлять тот кусок текста, по которому был разрез, в список частей. А в re.sub можно вместо шаблона для замены передать функцию. Это — реальные вещи, которые прямо очень нужны, но никто про это не пишет.
Так и родился этот достаточно многобуквенный материал с подробностями, тонкостями, картинками и задачами.

Надеюсь, вам удастся из него извлечь что-нибудь новое и полезное, даже если вы уже в ладах с регулярками.
Читать дальше →
Всего голосов 99: ↑98 и ↓1+97
Комментарии66

Вижу, значит существую: обзор Deep Learning в Computer Vision (часть 2)

Время на прочтение18 мин
Количество просмотров40K
Продолжаем постигать современную магию (компьютерное зрение). Часть 2 не значит, что нужно сначала читать часть 1. Часть 2 значит, что теперь всё серьёзно — мы хотим понять всю мощь нейросетей в зрении. Детектирование, трекинг, сегментация, оценка позы, распознавание действий… Самые модные и крутые архитектуры, сотни слоёв и десятки гениальных идей уже ждут вас под катом!


Читать дальше →
Всего голосов 29: ↑28 и ↓1+27
Комментарии15

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Зарегистрирован
Активность

Специализация

ML Engineer
Middle
Python
C++
Linux