TGViewer
Channel Public Channel
Канал Доброго Вани | Data Science и Продуктики

Канал Доброго Вани | Data Science и Продуктики

@pleshakovsky

Самый добрый канал про DataScience, ML, техпред, хакатоны и про много чего еще 🥰

Реклама -> @Pleshakovski
Выступить на вашей площадке с докладом -> @Pleshakovski
Сотрудничество и любые другие вопросы -> @Pleshakovski
Subscribers
1.7K
Photos
555
Videos
26
Links
126

Showing posts older than #991 · Back to latest

Older Posts 19 shown
Post #990 1.4K
😎 Друзья, сегодня буду на этой конфе https://dev.go.yandex/events/day-night

Кто еще идет? Пишите, найдемся. На ML дебаты сходим ;)
  • ❤ 5
  • 🔥 3
  • 🐳 1
  • 😇 1
Post #986 2.41K
Вы, наверное, задаетесь вопросом, куда пропал админ?

Решил немного переключиться на контент. Вместе с AI4Dev записали лекцию-введение в Рекомендательные системы с QA. Рассказал про:

🔵 Типы задач в RecSys с примерами
🔵 Метрики оффлайна и онлайна
🔵 Алгоритм построения пайплайна рекомендательной системы
🔵 Будущее RecSYS
🔵 QA

Ролик уже доступен на Ютубе и ВК. Приятного просмотра!

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

А я пошел готовить пост про рекомендации музыки по результатам опроса. Совсем мало изучал RecSys в музыке, но буду исправляться 😎
Telegram AI4Dev — AI for Development Что надо знать, чтобы остаться востребованным ИТ специалистом в мире с LLM? • Обзоры продуктов, фреймворков и способы взаимодействия с LLM для разработки софта • Реальные кейсы, pet и бизнес проекты с LLM • Публичные лекции В будущее берут не всех!
  • 🔥 10
  • ❤ 6
  • 👍 1
Post #984 2.35K
Канал Доброго Вани | Data Science и Продуктики 🤨 Что-то давненько я ничего про собесы не писал. Как там вообще дела, работяги? Собеситесь? Ставьте сразу кита 🐳, кто уже сменил место работы в 2026) Решил сегодня в очередной раз пару слов на вентилятор накинуть про собеседования, а точнее про основные…
Post #983 2.12K
🚀 Друзья, вашему вниманию наш совместный пост с админом канала РИСЕРЧОШНАЯ — Даней. Кто не знает, Даня работает DLE в WB Tech и уже несколько лет занимается рекомендациями, а на его канале есть много полезной информации о RecSys.

Так о чем же сегодня пойдет речь? Сегодня мы разберем одну из самых культовых статей в RecSys — PinRec!

🔵 PinRec — генеративный ретривер (первая ступень рекомендательного пайплайна) от Pinterest. Они всегда выпускают отличные статьи где и про прод расскажут, и науку проверят.

В последнее время большинство генеративных моделей это навороченные two-tower архитектуры с causal masking. Кстати, подробнее про two-tower был большой пост, для лучшего понимания этого поста рекомендую ознакомиться!

Так вот в Pinterest вместо привычного two-tower взяли GPT-2 декодер, который по истории взаимодействий генерирует не вероятности конкретных ID, а эмбеддинги в едином латентном пространстве. Далее при помощи этих эмбеддингов мы извлекаем ближайшие айтемы из заранее построенного HNSW-индекса (или другого инструмента приближенного поиска).

Классический подход с генерацией ID требует огромного softmax, что дорого и шумно. Тут же модель генерирует эмбеддинги напрямую, избегая лишнего слоя вероятностей и значительно ускоряя инференс.

Все входные данные (пины (=айтемы) и поисковые запросы) представлены не дискретными ID-токенами, а реальными эмбеддингами в общем пространстве. Для этого запросы кодируются уже готовыми OmniSearchSage-векторами, а пины — комбинацией графовых PinSage-эмбеддингов и обучаемой hash-ID таблицей. Далее эмбеддинги проходят небольшие per-type MLP (для каждого типа действий — свой MLP) и нормализуются. Модель обучается стандартным sampled softmax, с logQ-коррекцией для борьбы с популярными негативами.

🔵 Забавный факт, что в pinterest отказались от semantic ID (о нем будет отдельный пост). Потому что это приводит к семантическому коллапсу: похожие пины теряют различимость, “слипаясь” в схожие направления в пространстве.

Авторы используют уже известный для многих трюк — Сount-Min Sketch, который приближает распределение к реальному. Представим, что у нас есть Клики пользователей, Заказы и другие действия в отношении миллионов айтемов. Хранить точные счётчики слишком дорого по памяти, а Count-Min Sketch позволяет считать частоты быстро и компактно, жертвуя точностью.

Ещё один важный трюк — outcome-conditioned генерация (генерация, условленная на целевое действие пользователя). Вместо сложного RL-обучения, они просто подают дополнительный эмбеддинг (например, “клик” или “репин” (сохранение пина)) на позднем связывании в голову декодера. Так генерация становится контролируемой, позволяя задать заранее соотношение целевых действий на инференсе.

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

🔵 По результатам авторов, предложенные решения заметно превосходят SASRec, TIGER и PinnerFormer по recall@10 на всех основных поверхностях Pinterest. Сама модель внедрена как один из кандидатогенераторов.

Outcome-conditioning позволяет управлять типом целевых действий, улучшая recall нужных действий до 6%.

Windowed multi-token генерация снижает латентность (время задержки от запроса до получения результата) в 10 раз и даёт на 16% выше recall с одновременным повышением уникальности выдачи.

Было интересно? Тогда поддержите этот пост реакций и подпиской на РИСЕРЧОШНУЮ, мы с Даней старались 🙏
  • 🔥 8
  • 👍 5
  • ❤ 2
Post #982 1.58K
Вчера первый раз в жизни решал кейс 🥰

Второй семестр в ЦУ пока что радует
  • 🔥 18
  • 💅 4
  • 🤯 2
Post #981 2.14K
🤨 Что-то давненько я ничего про собесы не писал.

Как там вообще дела, работяги? Собеситесь? Ставьте сразу кита 🐳, кто уже сменил место работы в 2026)

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

🔵Алгоритмическая секция
Все говорят, что этот этап позволяет в режиме реального времени оценить уровень кодинга кандидата, но мне лично непонятно, как выучивание 20-30 базовых функций может отражать скилл. Тем не менее, это по-прежнему качественный отсеиваитель джунов на миддловские позиции. Кстати, все типовые задачи на алгоритмы можно найти тут. Сохраняем и не теряем.

🔵МЛ+код
На этом этапе предстоит пораскинуть мозгами и вспомнить, как писать foo(a, b): return a+b. А если серьезно, то, обычно, кандидату предстоит порассуждать о каких-то базовых мл-алгоритмах (линрег, деревья, бустинги, нейронки и тп), порешать задачки из теорвера, написать что-то вроде градиентного спуска, решающего пня, итеративного решения уравнения и поотвечать на вопросики об МЛе... А для подготовки к этой секции я завел рубрику #вопросы_с_собесов, читаем!

🔵МЛСД - ML System Design
А вот этот кабан уже для искушенных мидлов и синьоров (джуны, слушайте и запоминайте). На этой секции вам предложат какой-нибудь кейс (например, реализация ленты Продукты для вас в интернет-магазине Гошан). Что хочет услышать собеседующий? Да практически всё: какие данные, какой бейзлайн, какой пайплайн, какие оффлайн и онлайн метрики, какой дизайн АБ, что по времени и ресурсам... Здесь-то и раскрывается глубина вашего погружения в индустрию.

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

Давайте завезем сердец и я разберу какой-нибудь МЛСД-кейс из RecSys 😏
GitHub LeetCode/README.md at main · VanjaRo/LeetCode Preparing for Yandex technical interview. Contribute to VanjaRo/LeetCode development by creating an account on GitHub.
  • ❤ 35
  • 🐳 15
  • 🔥 5
  • 🕊 1
Post #979 2.07K
👀 n8n

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

КАПИИЦ ТЫ ДРЕВНИЙ N8N УЖЕ БАЯН - предвижу я ваши мысли. Знаете что? Капец эти агенты умные стали. Ну реально, за один час собирается тг-бот со 100500 ии-агентами. Я вчера бахнул простенького бота без памяти с парсером сайта погоды, но это заняло полчаса и 0 строчек кода всего.

Я помню, было время, когда году так в 2022 я ковырял тг-бота с рекомендациями фильмов с кинопоиска (ну и с парсером, соответственно). Уйму времени угрохал. А сколько времени ушло на прототипы для моих проектов?...

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

Вобщем, если у вас найдется минутка на выходных, затестите сами. Это очень прикольный опыт. Может быть, даже закрою пару своих рутинных задачек с этой штукой. Давайте еще опрос сделаю по n8n, очень интересно посмотреть
  • ❤ 9
  • 💅 6
  • 👍 2
Post #978 1.9K
📕 Недавно ко мне пришел подписчик с вопросом: "А как мне вкатиться в ДС?". Одна из вещей, которые я рекомендую новичкам, — это участие в контестах, кейсах, хакатонах, митапах и конференциях. На предложенный вариант подписчик спросил: "А где искать актуальные соревы? Где можно найти перечень ближайших событий?"

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

🧑‍💻 Первый канал @iteventsrus . Это незаменимый источник вебинаров, конференций - и вообще всех интересных событий в нашей области. Периодически заглядываю сюда в поиске интересных митапов.

🤑 Второй — @hackathonsrus. Незаменимая база хакатонов, контестов и соревнований (в том числе по ML/DS/AI). Было время, когда ни один мой день не обходился без скроллинга сорев в этом канале.

Вобщем, рекомендую всем, кто ищет интересные события в области ИТ!
  • ❤ 11
  • 🗿 4
  • 🔥 3
  • 👍 2
  • 👎 1
  • 🤬 1
Post #977 1.83K
Слово дня: LogКукарекция
  • 😁 11
  • ❤ 3
  • 💅 3
Post #976 2.11K
Продолжаем говорить про Next Item Prediction — сегодня про SASRec

В прошлом посте мы поставили задачу Next Item Prediction (NIP). Теперь давайте разбирать первый «классический» подход, который обычно открывает эту тему — SASRec (Self-Attentive Sequential Recommendation).

Как всегда, держим в голове маркетплейс и нашу матрицу U × D, где у каждого пользователя есть последовательность из последних D действий.

💡 Идея SASRec в двух словах

SASRec — это Transformer-only модель, которая использует self-attention, чтобы понять, какие прошлые действия пользователя важны для предсказания следующего айтема. Ключевая мысль простая: не все предыдущие покупки одинаково полезны. Купил чехол для iPhone год назад — сомнительно, что это важно сейчас. Купил айфон вчера — совсем другое дело.

🧱 Из чего состоит SASRec

Разберём по шагам.

1️⃣ Embedding-слой

Каждый айтем Item_i кодируется в эмбеддинг размерности H, раскладывающийся на

Item Embedding
Positional Embedding (очень важно!)

Почему позиция важна? Потому что последовательности:

iPhone → Чехол и Чехол → iPhone — это вообще разные истории.

На выходе получаем тензор размера: U × D × H

2️⃣ Masked Self-Attention

SASRec использует causal masking, то есть при предсказании айтема на позиции t модель не видит будущие позиции t+1, t+2, ... Иначе был бы читинг. Self-attention отвечает на вопрос, на какие прошлые айтемы стоит обратить внимание, чтобы угадать следующий?

Формально — обычный Transformer Encoder:
• Multi-Head Attention
• Residual connections
• LayerNorm

Без энкодер-декодер истории, всё строго sequential.

3️⃣ Предсказание Next Item

Для каждой позиции t модель пытается предсказать айтем t+1.

На практике чаще всего:

• берем последнюю позицию
• сравниваем её эмбеддинг со всеми M айтемами
• считаем softmax или sampled softmax
• обучаемся максимизировать вероятность правильного следующего айтема.

🧊 Что с холодными пользователями?

SASRec спокойно работает с паддингами:

• паддинги маскируются
• attention их просто игнорирует

Но важно понимать: SASRec — это purely sequential модель. Что это значит?

Если у пользователя 0 или 1 действие, сигнал слабый.
Для совсем холодного старта чаще приходится:
• добавлять популярные айтемы
• комбинировать с non-personalized логикой

👍 Почему SASRec так популярен

✔ Простая и понятная архитектура
✔ Отлично ловит long-range зависимости (по крайней мере, так было в 2018 🤷‍♂️)
✔ Хорошо масштабируется на большое число айтемов

Не зря его до сих пор используют как точку отсчета почти во всех статьях про NIP.

👀 Ограничения, о которых важно помнить

✖ Нет bidirectional-контекста (в отличие от BERT4Rec)
✖ Не использует user features
✖ Плохо решает cold start без костылей
✖ Использует только позтивные действия в истории пользователя (в то время, как негативные действия могут быть полезны для понимания контекста, что отображено в статьях про Аргус). Так например, для онлайн-кинотеатра мы будем использовать только историю просмотра, хотя могли бы учитывать и те фильмы, от просмотра которых юзер отказался.

Но как первый серьезный Transformer для рекомендаций — это абсолютная классика

Изображение взято из статьи на Хабре
  • ❤ 4
  • 😁 4
  • 🔥 1
  • 🤯 1
Post #975 1.66K
Традиционный QA с админом объявляется открытым в 2026!

Любые ваши вопросы (желательно содержательные), идеи по рубрикам, обратная связь по каналу — и вообще всё, что вы хотите мне сказать.

Постараюсь ответить на всё в комментариях под этим постом. Давайте общаться!

Присылайте сюда 👉 t.me/questianonbot?start=1397630247c
Telegram Анонимные вопросы Напиши мне анонимно!
  • 🔥 7
  • ❤ 2
  • 👍 2
Post #973 2.01K
💕 Предлагаю долго не размусоливать — и сразу с корабля на бал. Как-то так вышло, что до сих пор на этом канале мы не говорили о задаче и подходах к Next Item (Action) Prediction.

Как обычно, будем обсуждать всё в контексте маркетплейса. Пусть, для определенности, у нас есть User_1, который купил товары Item_1, Item_2, ..., Item_N. Мы хотим по этой цепочке спрогнозировать Item_N+1, который пользователь с наибольшей вероятностью приобретет следующим.

✏️ Важные замечания:
• Количество Item ограничено. Да, на маркетплейсе могут появляться новые товары, но мы будем считать, что асортимент внутри дня меняется незначительно. Допустим, что всего у нас M айтемов.
• Пользователи могут быть "Холодными" — то есть с короткой историей. Например, пользователь зарегистрировался только вчера и еще не успел купить ни одного товара. Пусть, на момент построения модели у нас U уникальных пользователей.

Очевидно, что у пользователей может быть как короткая, так и длинная история взаимодействий. Однако при обучении нейросети на Next Item Prediction все вектора пользователей (последовательность их действий) должны быть одинаковой длины (назовем ее D).

✏️ Сделаем следующее:
• У пользователей со слишком длинной историей оставим только последние D действий
• У пользователей с длиной истории меньшей, чем D, оставим все действия и дополним их "Паддингами" (то есть нулями). Для D=5 у нас может получиться история юзера "0, 0, Item_X, Item_Y, Item_Z".

Таким образом, для каждого из U пользователей мы хотим выбрать один из M товаров, который те захотят приобрести. При этом для каждого пользователя мы имеем его вектор длины D — для всех пользователей получится матрица размера U x D (см фото).

🌼 Такс, задачу мы поставили. Осталось поговорить только про методы решения — SasRec, Bert4Rec, Pinnerformer, Argus. Но о них уже в следующий постах

Изображение взято из статьи на Хабре
  • 👍 8
  • ❤ 7
  • 👎 3
  • 🔥 3
Post #970 2K
🍭 Продолжаем подводить итоги года!

Итак, за этот скромный год канал вырос с 550 подписчиков до 1350 - почти в 2.5 раза. И это только начало!

🎄 Ну а краткую сводочку я подготовил в двух редакциях. В одной (tgstat) статистики посчитаны без картиночных вложений к постам, а в другой — с ними. Я рад, что ЛЛМ отобразила реальное текущее позиционирование канала: МЛ+продуктики+кусочки моей жизни — пазл сложился так, как я и задумывал (всё-таки у КДВ должно быть лицо, моё лицо 👀)

Больше всего реакций:
Как мы защитили диплом
Плод моих трудов в бакалавриате
Как меня развели мошенники

А больше всего просмотров неожиданно набрал мем про ГПУ

🎁 Давайте поздравим друг друга с Наступающим, поставив 🍾 под этим постом?
  • 🍾 18
  • 🔥 5
  • ❤ 4
  • 👍 1
  • 👎 1
Post #969 2K
❤️ Прошел практически год с моего увольнения и прихода в Яндекс.

Как вы знаете, Маркет, Лавка, Браузер, Еда, Такси, Алиса, Диск, Карты, Музыка, Недвижимость, Кинопоиск, Афиша, Телемост, Переводчик (пальцы устали печатать) и многое другое — это все Яшечка.

🐦 Все эти сервисы создают люди, талантливые и неповторимые в своих лучших чертах.

За этот год я познакомиться с десятками крутых ребят. Выяснилось, что многие ведут свои каналы — и так родилась на свет самая яндексовая папка каналов from YNDX .

✨ Ребята вещают об аналитике, МЛе, продуктах — и других темах. Вобщем рекомендую изучить каналы и экспертизу ребят, даже если на новогодние праздники уже слишком плотный график 😜
  • ❤ 16
  • 🔥 14
  • 💘 7
  • 👎 4
Post #968 1.74K

This post (sticker, poll or similar) has no web preview. Open in Telegram

  • ❤ 21
  • 🔥 10
  • 🍾 5
  • 👍 1
  • 👏 1
Post #967 1.88K
🍭 Праздник к нам приходит, праздник к нам приходит.. Админ КДВ подводит итоги года!

💕 В этом году я сменил место работы и с головой ушел в рекомендации в Яндекс Маркете. Поэтому много писал о ранжировании и рекомендашках. Очень важный пост про индексы, про основные подходы в рекомендашках, про BERT в RecSys.

О причинах смены места работы тоже, кстати, пост есть)

💕 Я окончил бакалавриат в МИСИС и поступил в Магистратуру Центрального Университета на Продуктовый менеджмент. Всем абитуриентам рекомендую почитать про мои первые впечатления.

А в этом посте сравнил магистратуры в ЦУ, Вышке и МИСИС. Будет полезно всем будущим магистрам!

Я обожаю путешествия, и в этом году 2 недели провел в стране, в которой давно хотел оказаться (а еще в Грузии и Китае). Серия постов про Японию 🇯🇵

✨ Год получился очень насыщенным и интересным! А в следующих постах подведем итоги канала
  • 🔥 19
  • ❤ 6
  • 🎉 3
  • 💅 2
Post #966 1.34K

Forwarded from Ebout Data Science | Дима Савелко

Как торговаться на собесах 🍑

Если вы получили оффер и вам уже сказали какую ЗП вы будете получать, то не торопитесь его принимать. Вы можете спокойно за несколько секунд зарабатотать 30% к своей ЗП, а то и более.

Зачем торговаться?
Давайте включим простую математику, если вам предложили ЗП в 300к, а вы сторговали ЗП на 360к, 360к - 300к = 60к в месяц вы сторговали, 60к*12 месяцев = 720к, вы за несколько минут заработали 720к в разрезе года, вы просто СЛОН 🐘
Именно так у меня было с СамокатTech 🥳

Почему можно торговаться?
1️⃣ Берём большие цифры, то есть если все в среднем будут просить больше по рынку, то работодателю ничего не остаётся кроме того, как повысить заработную плату и нанимать людей, ведь вакансии надо закрывать, а фичи пилить 👷
2️⃣ К тому же бизнес зачастую имеет средства для повышения ЗП, особенно большие компании 😁
3️⃣ Ну и мы живём в той стране, в которой инфляцию нужно обгонять каждый год, а если вы не будете этого делать, то будете падать в благах, если ваша ЗП не будет меняться 👀
4️⃣ Офферы не отзывают, если вы попросите больше ЗП, запомните фразу: "Как компания ищет лучшего кандидата, так и кандидат ищет лучшего работодателя" 👁

Алгоритм торговли 💪
Допустим вам дали оффер с ЗП, тогда вы пишите следующее:
"Да, возращаюсь с ответом. Только вот другая компания Y сделал оффер X минут назад. У вас и у них хорошие команды и задачи. Но есть финансовый момент, что они предложили мне на Z$ больше. И выбор мой усложняется. <тут описываешь почему тебя компания зацепила>. Можете ли вы сделать что-нибудь по этому, чтобы облегчить мой выбор?"

И тогда с большой долей вероятности к вам могут прийти с повышенным оффером, и да это можно делать даже тогда, когда у вас нет второго оффера, но это ваш выбор... 🤡

В своём @eboutdatascience я помогаю увеличить шанс получения самого жирного оффера: гайды по собесами, по торгам, по техничкам, по резюме, разборы живых собесов, говорю про менталку и то, как устроен найм в целом
  • ❤ 6
  • 👍 2
  • 🔥 1
  • 😈 1
  • 💅 1
  • 🗿 1
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →