Pull to refresh
0
0
Александр Желубенков @Topspin26

Head of Data Science, Lamoda

Send message

Как устроен запуск экспериментов в ИТ-продукте на примере Joom

Reading time8 min
Views6.3K

Привет, Хабр! Меня зовут Леонид Огрель, я работаю аналитиком в Джум Лабс. В этой статье я расскажу, зачем нужен эксперимент в ИТ-продукте, и на что нужно обратить внимание при его запуске.

Как понять, понравится ли пользователям изменение, которое мы хотим внести? Принесет ли оно пользу компании? Работает ли новый алгоритм ранжирования товаров лучше по сравнению с используемым? Снизится ли конверсия, если мы добавим дополнительный баннер на карточку товара?

Чтобы ответить на подобные вопросы, мы проводим большое число онлайн экспериментов, по итогам которыx ожидаем получить чёткий ответ: улучшает ли изменение метрики компании или нет.

Процесс подготовки эксперимента к запуску можно разделить на три этапа. Ниже остановимся подробнее на каждом из них.

Читать далее
Total votes 13: ↑13 and ↓0+13
Comments1

Realtime-матчинг: находим матчи за считанные минуты вместо 24 часов

Reading time11 min
Views12K

Задача матчинга в последнее время набирает всё большую популярность и используется во многих сферах: банки матчат транзакции, маркетплейсы – товары, а Google и другие IT-гиганты проводят соревнования по решению таких задач на Kaggle.

Для маркетплейса матчинг – очень важный процесс, который решает сразу несколько задач:

1. При поисковом ранжировании из множества товаров показывать сначала самые выгодные предложения.

2. Объединять множество товаров в одну сущность и показывать предложения одного и того же товара от разных селлеров.

3. Понимать, как предложения селлеров выглядят относительно друг друга, и поощрять их дополнительными бонусами.

Сегодня мы поговорим не только о решении этой задачи, но и о способах её реализации: offline (batch) vs online (realtime). Также обсудим, как и зачем переходить от первого ко второму.

Читать далее
Total votes 42: ↑42 and ↓0+42
Comments8

Задача про пьяницу

Level of difficultyMedium
Reading time9 min
Views33K

В книге «Пятьдесят занимательных вероятностных задач с решениями - Ф. Мостеллер» есть интересная задача про пьяницу, который с вероятностью p делает один шаг к обрыву и с вероятностью 1-p один шаг от обрыва. Пьяница стоит на расстоянии одного шага от обрыва. Что можно сказать про вероятность того, что он упадет?

Читать далее
Total votes 101: ↑101 and ↓0+101
Comments72

7 причин не становиться тимлидом

Reading time6 min
Views12K

Как становятся тимлидами? Типичный путь в этот омут — “эволюционный”. Ты успешно выполнил кучу экспидайт-эпик-мамонтов, принёс в своё разработческое племя благодатный огонь метрик и мониторинга, показал, что тесты — это хорошо... И вот тебя уже назначают тимлидом — просто по принципу, что ты самый сильный среди других разработчиков. А бывает, что ты слишком долго на проекте, и вот, вуаля, предыдущий тимлид сгорел в битве при Монолите, и теперь по наследству мантия обязанностей переходит к тебе. Ну, и, конечно, путь инициативы — где ты сам вызвался на эту должность, из-за того, что очень ответственный, или от скуки, ради денег, или просто по фану.

Меня зовут Константин, недавно в Каруне я стал тимлидом и тут я поделюсь причинами, почему не стоит необдуманно падать в управленческую бездну.

Читать далее
Total votes 27: ↑21 and ↓6+19
Comments28

Как и почему перешли с Python на Go в основном сервисе рекомендаций Авито

Reading time10 min
Views24K

Привет! Меня зовут Василий Копытов, я руковожу группой разработки рекомендаций в Авито. Мы занимается системами, которые предоставляют пользователю персонализированные объявления на сайте и в приложениях. На примере нашего основного сервиса покажу, когда стоит переходить с Python на Go, а когда нужно оставить всё как есть. В конце дам несколько советов по оптимизации сервисов на Python.

Читать далее
Total votes 47: ↑43 and ↓4+42
Comments41

Разбираемся в Apache Kafka: подборка полезных статей и кейсов

Reading time3 min
Views16K

Разрабатываете приложения с применением Apache Kafka? Мы собрали для вас статьи, которые помогут освоить инструмент, познакомят с рабочими кейсами с использованием ПО. Делимся пользой и свежими идеями, подборками книг и реализованными задумками.

Читать далее
Total votes 12: ↑11 and ↓1+11
Comments1

Как спорить про результаты A/B тестирования

Reading time8 min
Views3.6K

Спорить плохо, но раз уж всё равно все спорят, то почему бы не делать это конструктивно и продуктивно :)

Лайфхак как успешно убеждать датасайентистов по результатам A/B тестирования. Работают такие аргументы:

Читать далее
Total votes 1: ↑1 and ↓0+1
Comments3

Как мы делали свой поиск в Ozon: эволюция архитектуры от SQL до O2

Reading time16 min
Views28K

Привет, Хабр! Меня зовут Сергей, я руководитель команды поиска в Ozon. Сегодня я расскажу об эволюции наших поисковых систем: как всё начиналось более 20 лет назад с обычных SQL-запросов, как мы осваивали Sphinx и Elasticsearch и как сейчас наш собственный поисковый движок O2 на базе Apache Lucene выдерживает нагрузку в десятки тысяч RPS в сезон распродаж. Исторические хроники восстанавливались по воспоминаниям современников и представлены для полноты картины. Новейшая история описана на основе собственного опыта, поэтому подробностей будет на порядок больше. Поехали!

Читать далее
Total votes 56: ↑56 and ↓0+56
Comments25

Устройство поисковых систем: базовый поиск и инвертированный индекс

Reading time24 min
Views28K

Под капотом почти каждой поисковой строки бьется одно и то же пламенное сердце — инвертированный индекс. Именно инвертированный индекс принимает текстовые запросы и возвращает пользователю список документов, а пользователь смотрит на всё это дело и радуется котиками, ответам с StackOverflow и страничкам на вики.

В статье описано устройство поиска, инвертированного индекса и его оптимизаций с отсылками к теории. В качестве подопытного кролика взят Tantivy — реализация архитектуры Lucene на Rust. Статья получилась концентрированной, математикосодержащей и несовместимой с расслабленным чтением хабра за чашкой кофе, осторожно!
Читать дальше →
Total votes 37: ↑37 and ↓0+37
Comments6

Как правильно имитировать Agile?

Reading time15 min
Views36K

Подобная статья должна была появиться раньше, лет десять или пятнадцать назад, когда Agile только начинал внедряться в ИТ-компаниях. Сколько можно бы было избежать ошибок, проблем, конфликтов, , если бы менеджеры сразу подходили к вопросу правильно, не отвлекаясь на лишние действия …

Зато за это время накопился опыт "внедрений" Agile в разных условиях, в разных компаниях, который следует обобщить и повсеместно распространять.

Читать далее
Total votes 77: ↑74 and ↓3+86
Comments40

CatBoost, XGBoost и выразительная способность решающих деревьев

Reading time42 min
Views55K

Сейчас существенная часть машинного обучения основана на решающих деревьях и их ансамблях, таких как CatBoost и XGBoost, но при этом не все имеют представление о том, как устроены эти алгоритмы "изнутри".

Данный обзор охватывает сразу несколько тем. Мы начнем с устройства решающего дерева и градиентного бустинга, затем подробно поговорим об XGBoost и CatBoost. Среди основных особенностей алгоритма CatBoost:

• Упорядоченное target-кодирование категориальных признаков
• Использование решающих таблиц
• Разделение ветвей по комбинациям признаков
• Упорядоченный бустинг
• Возможность работы с текстовыми признаками
• Возможность обучения на GPU

В конце обзора поговорим о методах интерпретации решающих деревьев (MDI, SHAP) и о выразительной способности решающих деревьев. Удивительно, но ансамбли деревьев ограниченной глубины, в том числе CatBoost, не являются универсальными аппроксиматорами: в данном обзоре приведено собственное исследование этого вопроса с доказательством (и экспериментальным подтверждением) того, что ансамбль деревьев глубины N не способен сколь угодно точно аппроксимировать функцию y = x_1 x_2 \dots x_{N+1}. Поговорим также о выводах, которые можно из этого сделать.

Читать далее
Total votes 48: ↑48 and ↓0+48
Comments9

Векторное представление товаров Prod2Vec: как мы улучшили матчинг и избавились от кучи эмбеддингов

Reading time5 min
Views18K
Привет! Меня зовут Александр, я работаю в команде матчинга Ozon. Ежедневно мы имеем дело с десятками миллионов товаров, и наша задача — поиск и сопоставление одинаковых предложений (нахождение матчей) на нашей площадке, чтобы вы не видели бесконечную ленту одинаковых товаров.
На странице любого товара на Ozon есть картинки, заголовок, описание и дополнительные атрибуты. Всю эту информацию мы хотим извлекать и обрабатывать для решения разных задач. И особенно она важна для команды матчинга. 
Чтобы извлекать признаки из товара, мы строим его векторные представления (эмбеддинги), используя различные текстовые модели (fastText, трансформеры) для описаний и заголовков и целый набор архитектур свёрточных сетей (ResNet, Effnet, NFNet) — для картинок. Далее эти векторы используются для генерации фичей и товарного сопоставления.
На Ozon ежедневно появляются миллионы обновлений — и считать эмбеддинги для всех моделей становится проблематично. А что, если вместо этого (где каждый вектор описывает отдельную часть товара) мы получим один вектор для всего товара сразу? Звучит неплохо, только как бы это грамотно реализовать…


Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments27

Сравнение матричной факторизации с трансформерами на наборе данных MovieLens с применением библиотеки pytorch-acceleratd

Reading time45 min
Views7.1K

Современный человек много чем занимается в интернете: ходит по магазинам, слушает музыку, читает новости. Все эти задачи подразумевают поиск и выбор того, что ему нужно. При этом важную роль тут играют рекомендательные системы. Они помогают людям не утонуть в многообразии вариантов и увидеть именно то, что им подойдёт, то, что иначе им сложно было бы найти. Предоставление пользователям качественных рекомендаций — это важнейшая часть обеспечения первоклассного уровня удовлетворения клиента. Это — один из самых эффективных способов взращивания лояльности клиентов и повышения ценности продукта или услуги в их глазах. Всё это так важно, что целые бизнес-модели некоторых компаний построены вокруг предоставления их клиентам наилучших рекомендаций, что делает рекомендательные системы важнейшими факторами, влияющими на прибыль подобных компаний! В результате неудивительно то, что клиенты проекта Microsoft CSE часто обращаются к нам с просьбами, касающимися реализации эталонных рекомендательных техник. Один из таких проектов был моим первым опытом в данной сфере.

Читать далее
Total votes 23: ↑23 and ↓0+23
Comments1

О русской науке замолвите слово или за что я люблю Тинькофф, часть 1

Reading time34 min
Views56K


Так сложилось, что я уже много лет руковожу научной группой, а с недавних пор лабораторией в МГУ. При этом львиная доля финансирования нашей лаборатории идет от компаний. Изначально она была создана в рамках контракта с Intel (совместная лаборатория), а позднее мы очень активно работали ещё и с RealNetworks (20+ проектов), Samsung (совместная лаборатория), Cisco, Huawei (до 5 контрактов параллельно) и другими. И так получилось, что большая часть наших контрактов (примерно 95% по количеству и 99% по деньгам) приходилась на иностранные компании, при этом взаимодействие с российскими компаниями в среднем заметно контрастировало.

Моим наилучшим примером отношения русских компаний к университетам является любимый пример Олега Тинькова из его книги:

«Третий пример, мой любимый. Весной 2011 года я выступал на мехмате МГУ и с присущим мне эпатажем заявил: «Что такое фундаментальная наука. Ходить грязным, вонючим и в итоге стать нобелевским лауреатом? Так вот, это все булшит! Зарабатывайте деньги. Не думайте про фундаментальную науку, потому что это отстой».
Олег Тиньков, «Революция. Как построить крупнейший онлайн банк в мире»
 

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

Меня периодически спрашивают друзья из компаний: «Как там наука? Поднялась с колен? Я слышал — ситуация получше стала». Кому интересно, как Тиньков развалил мехмат что происходит в науке в разрезе работы с компаниями (этюды в багровых тонах, вечерние зарисовки из окопа автора) — добро пожаловать под кат!
Читать дальше →
Total votes 144: ↑133 and ↓11+150
Comments348

Процессный подход, или В чем проблема выгорания на самом деле?

Reading time15 min
Views11K

Кто лучше всех знает, как справляться с проблемами? От кого ждут, что он закроет своим хрупким тельцем все бреши в продукте? Тимлиды иногда напоминают собой зонтик, под которым прячется команда. Команда видит — можно особо и не стараться, потому что если что, Вася вытянет. Вася тянет всё больше, и всё начинает ехать на энергии Васи. Энергия заканчивается, и бизнес людей заменяет.

Если все едет на вашей энергии, то… энергия закончится.

Вы не будете двигаться дальше. 

Вас никому не будет жалко.

Александр Орлов, бизнес-коуч и сооснователь школы менеджеров и тимлидов «Стратоплан»  поделился на конференции TeamLead 2021 своими наблюдениями, что происходит с энергией, почему она уходит и почему приходит. Показал, какие инструменты есть для решения проблемы выгорания. Сегодняшняя статья именно об этом. Если вы предпочитаете разговорный формат — для вас видео выступления.

Читать далее
Total votes 17: ↑16 and ↓1+22
Comments9

Ваши процессы попахивают. Как это понять и что делать?

Reading time13 min
Views22K

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

Читать далее
Total votes 42: ↑40 and ↓2+55
Comments17

О чем вас не предупреждают при переходе в продакт-менеджеры

Reading time7 min
Views8.6K

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

Сегодня, как и обещала, расскажу про сложности, с которыми я столкнулась за год работы продактом и которые совсем не предвидела, соглашаясь на новую роль.

Читать далее
Total votes 14: ↑12 and ↓2+22
Comments7

ML-критерии для A/B-тестов

Reading time24 min
Views21K

Как и в большинстве компаний, наш основной инструмент для принятия решений — это A/B-тесты. Мы уделяем им большое внимание: проверяем на корректность все используемые критерии, пытаемся сделать результаты более интерпретируемыми, а также увеличиваем мощность критериев. В текущем посте я хочу рассказать, как дополнительно увеличить мощность, используя машинное обучение.

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments9

Как научиться писать статьи (для Хабра и не только)

Reading time14 min
Views30K

После прочтения вот этого поста от модераторов хабра, я к своему ужасу, увидел, что в мире есть большое количество людей, которые “не знают как правильно написать статью”.

Что может быть проще! Берёшь бумагу и ручку, или пишущую машинку, или что там у вас нынче в моде, и пишешь статью.

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

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

На самом деле знают, но почему-то превращают это знание в кучу эзотерических фактов о жизни фей в райских садах. Почему? Не знаю. Возможно потому, что сами такие люди ничего не знают о том, как что-то написать. А ведь это — достаточно просто. Посему, прошу под кат, я вам дам реальные советы по поводу того, как научиться хорошо писать интересные статьи.
Читать дальше →
Total votes 85: ↑70 and ↓15+83
Comments68

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Date of birth
Registered
Activity