Нет, так не работает. Бины нужны только для двух вещей: (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
Санкт-Петербург, Санкт-Петербург и область, Россия
Нет, так не работает. Бины нужны только для двух вещей: (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.