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

Head of Data Science, Lamoda

Send message

Как работать в удовольствие: 6 практик, которые поднимают настроение команде

Level of difficultyEasy
Reading time7 min
Views16K

Привет, я Саша, продакт лид, отвечаю за развитие data-продуктов. Делать пользователей счастливее — моя работа. Но мне важно делать счастливее не только их, но и людей вокруг — коллег, с которыми мы создаем продукты. 

Внедрением практик для мотивации команды я занимаюсь более 6 лет, сначала в n1.ru, а теперь в Lamoda Tech. Сегодня хочу поделиться самыми простыми из них. Это быстрые рецепты, которыми мы пользуемся, чтобы поддержать живую, драйвовую атмосферу внутри команды, даже когда все работают в разных концах земного шара и не хотят включать камеру на созвонах.

Читать далее
Total votes 36: ↑32 and ↓4+30
Comments29

Дерево метрик — как построить, с чего начать?

Reading time3 min
Views24K

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

Дерево метрик — это декомпозированная цель компании. 

Читать далее
Total votes 7: ↑5 and ↓2+4
Comments3

Разворачиваем веб-приложение в Kubernetes с нуля

Level of difficultyEasy
Reading time31 min
Views44K

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

Всё это время для простоты разработки и отладки компоненты приложения запускались локально через Docker Compose. Но как развернуть такое приложение в настоящем продакшн-окружении? Как обеспечить горизонтальное масштабирование? Как раскатывать новые релизы без простоя? 

В этой статье мы разберёмся, как разворачивать многокомпонентное веб-приложение в кластере Kubernetes на примере его локальной реализации — minikube. Мы поднимем виртуальный кластер прямо на рабочем ноутбуке, разберёмся с основными сущностями Kubernetes, запустим и соединим между собой компоненты демо-приложения и обсудим, какие ещё возможности Kubernetes пригодятся нам в суровом энтерпрайзе. Если вы занимаетесь разработкой и слышали о Kubernetes, но ещё не имели возможности пощупать его руками — добро пожаловать под кат!

Скорее к YAML-инженерии
Total votes 38: ↑38 and ↓0+38
Comments10

Полное руководство по эффективному обучению

Reading time9 min
Views17K

Привет, Я Илья и это полное руководство по эффективному обучению. Мы рассмотрим несколько шагов по подготовке к учёбе, про сам процесс и в конце вас ждёт ряд полезных навыков и советов.

Читать далее
Total votes 17: ↑9 and ↓8+5
Comments12

Делаем современное веб-приложение с нуля

Reading time31 min
Views152K
Итак, вы решили сделать новый проект. И проект этот — веб-приложение. Сколько времени уйдёт на создание базового прототипа? Насколько это сложно? Что должен уже со старта уметь современный веб-сайт?

В этой статье мы попробуем набросать boilerplate простейшего веб-приложения со следующей архитектурой:


Что мы покроем:

  • настройка dev-окружения в docker-compose.
  • создание бэкенда на Flask.
  • создание фронтенда на Express.
  • сборка JS с помощью Webpack.
  • React, Redux и server side rendering.
  • очереди задач с RQ.
Читать дальше →
Total votes 64: ↑56 and ↓8+48
Comments125

Делаем поиск в веб-приложении с нуля

Reading time26 min
Views19K
В статье «Делаем современное веб-приложение с нуля» я рассказал в общих чертах, как выглядит архитектура современных высоконагруженных веб-приложений, и собрал для демонстрации простейшую реализацию такой архитектуры на стеке из нескольких предельно популярных и простых технологий и фреймворков. Мы построили single page application с server side rendering, поддерживающее просмотр неких «карточек», набранных в Markdown, и навигацию между ними.

В этой статье я затрону чуть более сложную и интересную (как минимум мне, разработчику команды поиска) тему: полнотекстовый поиск. Мы добавим в наш контейнерный рай ноду Elasticsearch, научимся строить индекс и делать поиск по контенту, взяв в качестве тестовых данных описания пяти тысяч фильмов из TMDB 5000 Movie Dataset. Также мы научимся делать поисковые фильтры и копнём совсем немножко в сторону ранжирования.

Читать дальше →
Total votes 22: ↑20 and ↓2+23
Comments1

Инструменты для MLOps: выбираем между вендорскими и Open Source-решениями

Reading time9 min
Views5.1K


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

Меня зовут Александр Волынский, я технический менеджер Cloud ML Platform в VK Cloud. В этой статье я сравню подходы к работе с MLOps на основе Open Source и проприетарного ПО и расскажу, какие инструменты и почему мы выбрали для Cloud ML Platform.
Читать дальше →
Total votes 42: ↑42 and ↓0+42
Comments3

Как создавать качественные ML-системы. Часть 1: каждый проект должен начинаться с плана

Reading time7 min
Views6.9K


Команда VK Cloud перевела серию из двух статей о жизненном цикле ML-проекта, проектной документации, ценности для бизнеса и требованиях. О том, как начинать с малого и быстро отказываться от слабых идей. Руководство пригодится дата-сайентистам, специалистам по машинному обучению, руководителям отделов, техническим руководителям или тем, кто хочет дорасти до этого уровня. 
Читать дальше →
Total votes 10: ↑8 and ↓2+15
Comments0

Мы создали большой диалоговый датасет

Level of difficultyEasy
Reading time8 min
Views7.8K

Те, кто когда-нибудь хотел обучить своего диалогового чат-бота, непременно сталкивались с отсутствием датасетов с адекватными диалогами. В открытом доступе, в основном, лишь наборы комментариев с Пикабу и Хабра, парсинг телеграм чатов, и диалоги из литературы. Мягко говоря, всё это "не очень". Поэтому, мы решили использовать ChatGPT для генерации подходящего датасета.

Читать далее
Total votes 5: ↑4 and ↓1+4
Comments6

Как сделать свой AnythingGPT, отвечающий на вопросы так, как вам это необходимо (Python, OpenAI Embeddings, ChatGPT API)

Level of difficultyMedium
Reading time17 min
Views17K

Всем привет! Недавно я на практике применил одно интересное решение, которое давно хотел попробовать, и теперь готов рассказать, как своими руками такое можно сделать для любой другой аналогичной задачи. Речь пойдет о создании своей кастомизированной версии ChatGPT, которая отвечает на вопросы, учитывая большую базу знаний, которая по длине не ограничивается размером промта (то есть вы бы не смогли просто добавить всю информацию перед каждым вопросом к ChatGPT). Для этого будем использовать контекстные эмбеддинги от OpenAI (для действительно качественного поиска релеватных вопросов из базы знаний) и сам СhatGPT API (для оборачивания ответов в натуральный человеческие ответы). При этом, также предполагается, что ассистент может отвечать не только на прямо указанные в Q&A вопросы, но и на такие вопросы, на которые смог бы отвечать человек, который ознакомился с Q&A. Кому интересно научиться делать простых ботов, отвечающих по большой базе знаний, добро пожаловать под кат.

Под кат
Total votes 12: ↑12 and ↓0+12
Comments15

Transformer в картинках

Reading time14 min
Views126K

В прошлой статье мы рассматривали механизм внимания (attention) – чрезвычайно распространенный метод в современных моделях глубокого обучения, позволяющий улучшить показатели эффективности приложений нейронного машинного перевода. В данной статье мы рассмотрим Трансформер (Transformer) – модель, которая использует механизм внимания для повышения скорости обучения. Более того, для ряда задач Трансформеры превосходят модель нейронного машинного перевода от Google. Однако самое большое преимущество Трансформеров заключается в их высокой эффективности в условиях параллелизации (parallelization). Даже Google Cloud рекомендует использовать Трансформер в качестве модели при работе на Cloud TPU. Попробуем разобраться, из чего состоит модель и какие функции выполняет.


Впервые модель Трансформера была предложена в статье Attention is All You Need. Реализация на TensorFlow доступна как часть пакета Tensor2Tensor, кроме того, группа NLP-исследователей из Гарварда создали гид-аннотацию статьи с реализацией на PyTorch. В данном же руководстве мы попробуем максимально просто и последовательно изложить основные идеи и понятия, что, надеемся, поможет людям, не обладающим глубоким знанием предметной области, понять данную модель.

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

Что ждёт дата-инжиниринг в 2023 году? Семь прогнозов

Reading time7 min
Views5.3K
Количество поисковых запросов по профессиям

Что таит в себе будущее дата-инжиниринга? В этой статье я поделюсь своими прогнозами на 2023 и последующие годы.

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

Кроме того, они обычно бывают упражнениями в смирении: мы пытаемся нарисовать целостную «общую картину» отрасли, стремительно эволюционирующей во множестве направлений. Попробуйте-ка найти отрасль, в которой людям сильнее нужно поддерживать актуальность своих знаний!

Эти возможные направления развития становятся ещё более важными, когда занимающиеся данными организации начинают оценивать и переоценивать свои приоритеты в свете экономической рецессии и когда от инвестиций в дата-инжиниринг зависит способность компании оставаться гибкой, инновационной и конкурентоспособной.
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments0

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

Reading time25 min
Views28K


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

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

Как понять при найме что продукт-менеджер хороший?

Reading time4 min
Views5.9K

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

В этой статье я расскажу о трех составляющих, которые очень активно используются в настоящее время в технологических компаниях FAANG в США для оценки продукт-менеджеров при найме.

Читать далее
Total votes 4: ↑3 and ↓1+3
Comments0

Шесть причин, почему ваши A/B-тесты не работают

Reading time18 min
Views36K

Всем привет! 

В прошлой статье, посвящённой A/B-тестированию, мы коснулись технических деталей устройства нашей A/B-платформы, которая обеспечивает нам супербыстрое распределение пользователей по вариантам. Теперь пришло время поговорить о методологии и процессе A/B-тестирования, а если точнее, то о проблемах и заблуждениях, которые могут привести к тому, что, проснувшись однажды среди ночи, вы почувствуете нестерпимую боль ниже спины от внезапного осознания очень простого факта —все проведённые вами A/B-тесты невалидны. 

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

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

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

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

Level of difficultyHard
Reading time10 min
Views4.5K


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

Структура команды Data Science: ключевые модели и роли

Reading time16 min
Views9.6K

Если вы следили за мнениями специалистов в data science и прогностической аналитики, то, скорее всего, сталкивались с рекомендациями использовать машинное обучение. Как рекомендует Джеймс Ходсон в Harvard Business Review, умнее всего будет стремиться к решению самой лёгкой задачи, а затем масштабировать процессы на более сложные операции.

Недавно мы обсуждали платформы machine-learning-as-a-service (MLaaS). Основной вывод из современных тенденций прост: машинное обучение становится более доступным для средних и мелких бизнесов, постепенно превращаясь в массовый товар. Ведущие поставщики (Google, Amazon, Microsoft и IBM) предоставляют API и платформы для выполнения основных операций ML без собственной инфраструктуры и большого опыта в data science. На первых этапах самым умным шагом будет выбор такого гибкого и экономного подхода. С ростом возможностей аналитики можно изменять структуру команды для ускорения её работы и расширения арсенала аналитики.

В этот раз мы поговорим о структуре команд data science и их сложности.
Читать дальше →
Total votes 2: ↑1 and ↓10
Comments2

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

Reading time25 min
Views20K

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

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

Читать далее
Total votes 9: ↑8 and ↓1+7
Comments18

Как построить прогноз спроса и не потерять голову

Reading time13 min
Views15K

Всем привет! Представьте себе ситуацию: ваша уютная маленькая команда Data Science занимается прогнозированием спроса для пары десятков дарксторов с помощью какого-нибудь коробочного Prophet. И в один прекрасный день к вам приходит бизнес. Бизнес садится, закидывает ногу на ногу, закуривает сигару и говорит:

«Мы хотим максимально автоматизировать закупки. Нам нужно, чтобы вы умели строить прогноз по всем товарам, старым и новым, для всех дарксторов, старых и новых. А их будет много, их будут сотни, тысячи, миллионы. А ещё у нас будет миллион видов скидок и разные типы ценообразования, и ещё куча промо-механик и конкурсов интересных. Мы хотим, чтобы прогноз обязательно адекватно на всё это реагировал». (с) Типичный Бизнес

Хорошо, думаем мы, кажется, что это звучит нетрудно… 

С этой задачи начинается моя история о прогнозе спроса в Самокате. Меня зовут Мария Суртаева, я Data Scientist и расскажу о концепции прогноза спроса, его практических задачах и роли градиентного бустинга.

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

С чего айтишнику можно начать 2023 год?

Reading time5 min
Views17K

Отдохните после 2022 года! На этом можно завершить статью.

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

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

Все ссылки в статье не являются рекламой, лишь моей субъективной рекомендацией, всегда можно поискать альтернативы ресурсов, которые подходят под ваши цели.

Читать далее
Total votes 9: ↑6 and ↓3+7
Comments21

Information

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