Pull to refresh
6
34.1

Scientist

Send message

Нет, так не работает. Бины нужны только для двух вещей: (1) по какому ключу агрегируется статистика (просмотры, клики, заказы) и (2) как переносить её при смене цены через матрицу W. Ранжирование строится по фактической цене и накопленной статистике, а не по номеру бина. Поэтому «верхняя граница дешёвого бина» не ранжируется хуже «нижней границы дорогого» — модель видит саму цену.

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

По +5%: мы замеряли на отложенном множестве новинок — заранее зафиксированной когорте новых товаров, а не на скользящем агрегате. Эффект по сегментам разный — где‑то выше, где‑то ниже. Cold start — про то, чтобы новинки получали шанс, а не про 10× рост по каждому товару.

По «слонам» (наследование карточек, отзывы, каталог, фильтры) — это другие направления и команды, но фидбек зафиксирован.

Приветствую!

Сортировку «По рейтингу» мы не меняем — у неё своя логика. Речь шла только о ранжировании «По популярности».

По дубликатам «один товар от разных продавцов» — это про группировку карточек в выдаче, а не про порядок. Тема другой команды, но фидбек учтём, спасибо!

Привет!

Пример в статье упрощён: он показывает, как работает механика (смена цены → новый offer_id → новый контекст статистики), а не то, кто именно эту цену задаёт.

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

Добрый день!

По «очистке» истории: так делать не нужно и это не даст нужного эффекта. При смене цены или доставки вы получаете новый offer_id — это новое «состояние» товара. Старая статистика остаётся у старого offer_id. Матрица W переносит её в новое состояние с весами, зависящими от «расстояния» между бинами. Временное завышение цены и возврат обратно — это два перехода между бинами, статистика всё равно будет переноситься. Система устроена так, что таким способом «обнулить» историю нельзя.

По холодному старту: для нового товара своей истории нет. Статистика берётся от «соседей» через матрицу W:

  • если матчер нашёл тот же товар у других продавцов — перенос идёт внутри группы;

  • сейчас ведётся работа над сценарием, когда прямых аналогов нет: перенос статистики от товаров той же категории в близких ценовых и доставочных бинах.

То есть для новинок это не история самого товара, а взвешенная статистика похожих предложений (по цене и доставке).

Привет!

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

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

При одинаковой базовой цене (10 000 ₽) и одинаковой доставке соинвест меняет фактическую цену для покупателя. У продавца с 35% соинвестом цена со скидкой ниже → он попадает в более «дешёвый» price_bin → другой offer_id и другая позиция в ранжировании. То есть влияние идёт через изменение цены, а не через отдельный признак «соинвест».

Если же гипотетически оба показывают покупателю одну и ту же цену (например, соинвест не применяется или компенсируется), то при одинаковых price_bin и delivery_bin они будут в одном ценовом и доставочном сегменте. В этом случае матрица W может переносить статистику между ними внутри группы, но каждая карточка накапливает свою поведенческую историю по своему offer_id.

Information

Rating
230-th
Location
Санкт-Петербург, Санкт-Петербург и область, Россия
Works in
Registered
Activity

Specialization

Ученый по данным, ML разработчик