Этика рекомендательных систем от философа-computer scientist’а Erich Prem.
Первая мини-история была следующая: в Америке есть популярный супермаркет Target, который раньше рассылал людям по домам спец предложения, скидки и все такое. В target’е решили, что хорошая идея — делать спец предложения для беременных женщин. Соответственно, в дом, в котором жила со своими родителями 16-летняя девочка, начали постоянно приходить такие спецпредложения (для этой девочки). В один момент отец совсем возмутился, ворвался в target, выразил свое недовольство. А потом оказалось, что она реально была беременна, просто он не знал =)
Дальше был пример, который я тоже люблю приводить — про Тиндер. Что по сути в дейтингах самая успешная рекомендация — это та, после которой пользователю дейтинг больше не нужен :) А это платформе совсем невыгодно, ей нужно растить пользовательскую базу, иначе деньги не заработать. Соответственно, платформе выгодней рекомендовать вам какие-то частичные “матчи”, которые полностью проблему большинства юзеров не решают.
Также обсуждались чат боты. Во-первых, известный случай, когда подросток совершил суицид, чтобы “воссоединиться” с ботом (который, по-моему ролеплеил Денерис Таргариен из игры престолов). Во-вторых, обсуждали должен ли чатбот выдавать инструкцию по созданию бомбы или нет.
Также был следующий фундаментальный кусочек: Erich кратко рассказал про философию Канта (про категорический императив), что в его понимании высшая ценность — это человеческая автономность (читай личная свобода). И затем противопоставил его утилитаризму (которым часто по его мнению руководствуются инженеры). Рассказал такой пример — если пять человек попадут в аварию, и одному из них нужна будет новая почка, другому печень, третьему сердце и так далее, при этом один из них останется абсолютно здоров (отделается сломанной рукой), то с точки зрения утилитаризма нужно органы этого здорового человека пожертвовать остальным. Но мы так не делаем, потому что тогда люди перестанут приходить в больницы со сломанной рукой :)
В его понимании многие вопросы вида “что можно, а что нельзя” сводятся к этому противостоянию философий — считаем ли мы, что личная свобода это самое важное, либо же мы пытаемся максимизировать какое-то общее благо (то есть смотрим на вещи утилитарно).
Отдельные мысли: моральные ценности очень сильно зависят от общества, времени, контекста; что рассматривать человека как какую-то цифровую сущность — это очень сильное упрощение, которое не учитывает существенную часть человеческих чувств и эмоций; что использовать engagement как прокси к чему-то хорошему и полезному для человека опасно. Что противоположностью автономии является манипуляция, контроль.
Упомянул интересный термин — Dark Patterns. Это когда приложение дизайнится таким образом, чтобы побудить пользователя делать не самые полезные для него вещи (например, покупать что-то не целесообразно дорогое).
Последнее — была интересная история про Rene Carmille, которого Erich считает образцовым computer scientist’ом, применявшим свои навыки во благо. Что равняться надо на таких людей, а не на Цукербергов / Илонов Масков. Вроде бы Рене был статистом и работал над машинами, помогавшими идентифицировать людей. Когда немцы захватили Францию, он так хакнул эти машины, чтобы нельзя было выявлять евреев. Таким образом он спас тысячи людей. Но сам, к сожалению, плохой участи не избежал :(
Еще кратко упомяну лекцию про accessibility и inclusion. Вообще Вена — очень доступный город. Например, здесь свободно передвигаются люди на колясках. И лекция была про то же самое — что мы можем сделать с рекомендательными системами, чтобы обеспечить доступ к ним для всех. В Европе не так давно (в июне) приняли акт, по которому все рекомендательные системы обязаны это делать.
Я может быть еще напишу отдельный пост про впечатления от Вены, но в целом — уже впереди сам RecSys! :)
Первая мини-история была следующая: в Америке есть популярный супермаркет Target, который раньше рассылал людям по домам спец предложения, скидки и все такое. В target’е решили, что хорошая идея — делать спец предложения для беременных женщин. Соответственно, в дом, в котором жила со своими родителями 16-летняя девочка, начали постоянно приходить такие спецпредложения (для этой девочки). В один момент отец совсем возмутился, ворвался в target, выразил свое недовольство. А потом оказалось, что она реально была беременна, просто он не знал =)
Дальше был пример, который я тоже люблю приводить — про Тиндер. Что по сути в дейтингах самая успешная рекомендация — это та, после которой пользователю дейтинг больше не нужен :) А это платформе совсем невыгодно, ей нужно растить пользовательскую базу, иначе деньги не заработать. Соответственно, платформе выгодней рекомендовать вам какие-то частичные “матчи”, которые полностью проблему большинства юзеров не решают.
Также обсуждались чат боты. Во-первых, известный случай, когда подросток совершил суицид, чтобы “воссоединиться” с ботом (который, по-моему ролеплеил Денерис Таргариен из игры престолов). Во-вторых, обсуждали должен ли чатбот выдавать инструкцию по созданию бомбы или нет.
Также был следующий фундаментальный кусочек: Erich кратко рассказал про философию Канта (про категорический императив), что в его понимании высшая ценность — это человеческая автономность (читай личная свобода). И затем противопоставил его утилитаризму (которым часто по его мнению руководствуются инженеры). Рассказал такой пример — если пять человек попадут в аварию, и одному из них нужна будет новая почка, другому печень, третьему сердце и так далее, при этом один из них останется абсолютно здоров (отделается сломанной рукой), то с точки зрения утилитаризма нужно органы этого здорового человека пожертвовать остальным. Но мы так не делаем, потому что тогда люди перестанут приходить в больницы со сломанной рукой :)
В его понимании многие вопросы вида “что можно, а что нельзя” сводятся к этому противостоянию философий — считаем ли мы, что личная свобода это самое важное, либо же мы пытаемся максимизировать какое-то общее благо (то есть смотрим на вещи утилитарно).
Отдельные мысли: моральные ценности очень сильно зависят от общества, времени, контекста; что рассматривать человека как какую-то цифровую сущность — это очень сильное упрощение, которое не учитывает существенную часть человеческих чувств и эмоций; что использовать engagement как прокси к чему-то хорошему и полезному для человека опасно. Что противоположностью автономии является манипуляция, контроль.
Упомянул интересный термин — Dark Patterns. Это когда приложение дизайнится таким образом, чтобы побудить пользователя делать не самые полезные для него вещи (например, покупать что-то не целесообразно дорогое).
Последнее — была интересная история про Rene Carmille, которого Erich считает образцовым computer scientist’ом, применявшим свои навыки во благо. Что равняться надо на таких людей, а не на Цукербергов / Илонов Масков. Вроде бы Рене был статистом и работал над машинами, помогавшими идентифицировать людей. Когда немцы захватили Францию, он так хакнул эти машины, чтобы нельзя было выявлять евреев. Таким образом он спас тысячи людей. Но сам, к сожалению, плохой участи не избежал :(
Еще кратко упомяну лекцию про accessibility и inclusion. Вообще Вена — очень доступный город. Например, здесь свободно передвигаются люди на колясках. И лекция была про то же самое — что мы можем сделать с рекомендательными системами, чтобы обеспечить доступ к ним для всех. В Европе не так давно (в июне) приняли акт, по которому все рекомендательные системы обязаны это делать.
Я может быть еще напишу отдельный пост про впечатления от Вены, но в целом — уже впереди сам RecSys! :)
❤24👍9🔥4
ACM RecSys’25, день первый.
1. Больше всего времени я провёл на воркшопе СONSEQUENCES’25. Происхождение названия:
В рамках воркшопа был очень хороший туториал про бандитов для рексистем “Practical Bandits: An Industry Perspective” от авторов из Booking, Netflix, Spotify, Amazon. На ютубе есть запись одноименного туториала с WWW’23. Она двухлетней давности, зато в три раза больше по длительности. Что было на сегодняшнем туториале:
Дали определение контекстуальных бандитов, рассказали про минусы on-policy подходов, рассказали про off-policy методы (про importance weighting, cIPS, SNIPS, DR, etc). Сказали, что on-policy — это “optimism in the face of uncertainty”, что мы выбираем действия, в которых не уверены, надеясь на лучший исход; и что off-policy — это наоборот пессимизм :)
Также сказали, что нужно рандомизировать данные, добавлять рандом к текущей продовой политике (если она детерминированная). Был рассказ про различные способы рандомизации (epsilon-greedy, софтмакс-сэмплирование, упомянули Thompson sampling, сказали прочитать статью Olivier Jeunen с этого рексиса — видимо, вот эту). Также было чуть-чуть про Plaсkett-Luce и Гумбеля. И была байка про то, как с помощью control variates авторы из Амазона диагностировали у себя багу в функционале “Play music” Алексы, что у них часть фидбека не доезжала до модели.
Еще я впервые услышал термин “symbiosis bias”. Так докладчики назвали эффект, когда все тестируемые алгоритмы используют весь трафик для обучения, и из-за этого сравнение становится некорректным. В такой ситуации всегда будет выигрывать более жадная политика, в которой меньше эксплорейшна. Из-за похожей логики мы не можем и в обычном A/B нормально замерять эффект от эксплорейшна. По крайней мере, без таких титанических усилий, как в статье от Google DeepMind Long-Term Value of Exploration.
Еще был кусочек про то, как работать с очень большими пространствами действий.
Я, собственно, очень поверхностно перечислил про что был туториал, если заинтересовал — призываю посмотреть ту самую трехчасовую версию с WWW’23. Лекция этого года тоже наверняка станет доступна, но вероятно не скоро.
Вдогонку, если вас заинтересовала тема counterfactual learning’а, то есть еще один клёвый трехчасовой туториал от Yuta Saito и Thorsten Joachims с RecSys’21 (тык) — подробный рассказ про всевозможные off-policy методы для бандитов.
2. Также уже состоялась первая постерная сессия, на которой были статьи с того же воркшопа CONSEQUENCES. Выделю одну статью — Unidentified and Confounded? Understanding Two-Tower Models for Unbiased Learning to Rank. Пользователи чаще кликают на верхние позиции выдачи из-за position bias’а, и один из способов это побороть — это обучить совместно сумму “bias-башни” и основной модели. Bias-башня при этом на входе использует только позиционные данные, а основная модель их наоборот игнорирует. При обучении используем обе башни, при применении bias-башню отбрасываем. В идеале bias-башня перетягивает на себя весь позиционный bias.
Пару лет назад Google Research в статье Towards Disentangling Relevance and Bias in Unbiased Learning to Rank подсветили следующую проблему — так как позиция в выдаче коррелирует с релевантностью (обычно мы определяем позицию, отранжировав по релевантности), то “bias-башня” начинает перетягивать на себя полезный сигнал, отражающий релевантность. Из-за этого основная модель, которую мы применяем в проде, часть сигнала про релевантность теряет. Чтобы это побороть, предложили использовать дропаут скора bias-башни, или вообще использовать gradient reversal.
Так вот — автор вышеупомянутой статьи утверждает, что они не правы. Что у них неправильные симуляции, и вообще все работает по-другому (а как — читайте в его статье). А еще он процитировал наш старый препринт про трансформер в Маркете :)
1. Больше всего времени я провёл на воркшопе СONSEQUENCES’25. Происхождение названия:
An increasing amount of research understands recommender systems as a decision-making problem, instead of a pure prediction problem. Indeed, this view of the recommendation task makes it clear that recommendation decisions on real-world platforms have consequences.
В рамках воркшопа был очень хороший туториал про бандитов для рексистем “Practical Bandits: An Industry Perspective” от авторов из Booking, Netflix, Spotify, Amazon. На ютубе есть запись одноименного туториала с WWW’23. Она двухлетней давности, зато в три раза больше по длительности. Что было на сегодняшнем туториале:
Дали определение контекстуальных бандитов, рассказали про минусы on-policy подходов, рассказали про off-policy методы (про importance weighting, cIPS, SNIPS, DR, etc). Сказали, что on-policy — это “optimism in the face of uncertainty”, что мы выбираем действия, в которых не уверены, надеясь на лучший исход; и что off-policy — это наоборот пессимизм :)
Также сказали, что нужно рандомизировать данные, добавлять рандом к текущей продовой политике (если она детерминированная). Был рассказ про различные способы рандомизации (epsilon-greedy, софтмакс-сэмплирование, упомянули Thompson sampling, сказали прочитать статью Olivier Jeunen с этого рексиса — видимо, вот эту). Также было чуть-чуть про Plaсkett-Luce и Гумбеля. И была байка про то, как с помощью control variates авторы из Амазона диагностировали у себя багу в функционале “Play music” Алексы, что у них часть фидбека не доезжала до модели.
Еще я впервые услышал термин “symbiosis bias”. Так докладчики назвали эффект, когда все тестируемые алгоритмы используют весь трафик для обучения, и из-за этого сравнение становится некорректным. В такой ситуации всегда будет выигрывать более жадная политика, в которой меньше эксплорейшна. Из-за похожей логики мы не можем и в обычном A/B нормально замерять эффект от эксплорейшна. По крайней мере, без таких титанических усилий, как в статье от Google DeepMind Long-Term Value of Exploration.
Еще был кусочек про то, как работать с очень большими пространствами действий.
Я, собственно, очень поверхностно перечислил про что был туториал, если заинтересовал — призываю посмотреть ту самую трехчасовую версию с WWW’23. Лекция этого года тоже наверняка станет доступна, но вероятно не скоро.
Вдогонку, если вас заинтересовала тема counterfactual learning’а, то есть еще один клёвый трехчасовой туториал от Yuta Saito и Thorsten Joachims с RecSys’21 (тык) — подробный рассказ про всевозможные off-policy методы для бандитов.
2. Также уже состоялась первая постерная сессия, на которой были статьи с того же воркшопа CONSEQUENCES. Выделю одну статью — Unidentified and Confounded? Understanding Two-Tower Models for Unbiased Learning to Rank. Пользователи чаще кликают на верхние позиции выдачи из-за position bias’а, и один из способов это побороть — это обучить совместно сумму “bias-башни” и основной модели. Bias-башня при этом на входе использует только позиционные данные, а основная модель их наоборот игнорирует. При обучении используем обе башни, при применении bias-башню отбрасываем. В идеале bias-башня перетягивает на себя весь позиционный bias.
Пару лет назад Google Research в статье Towards Disentangling Relevance and Bias in Unbiased Learning to Rank подсветили следующую проблему — так как позиция в выдаче коррелирует с релевантностью (обычно мы определяем позицию, отранжировав по релевантности), то “bias-башня” начинает перетягивать на себя полезный сигнал, отражающий релевантность. Из-за этого основная модель, которую мы применяем в проде, часть сигнала про релевантность теряет. Чтобы это побороть, предложили использовать дропаут скора bias-башни, или вообще использовать gradient reversal.
Так вот — автор вышеупомянутой статьи утверждает, что они не правы. Что у них неправильные симуляции, и вообще все работает по-другому (а как — читайте в его статье). А еще он процитировал наш старый препринт про трансформер в Маркете :)
❤29👍6🔥2✍1
Я простоял у постера 7 часов. Людей было очень много! Кто-то даже подходил со словами, что уже прочитал статью до конференции. В целом я очень доволен, больше рассказывать сегодня нечего :)
Пожалуй, пока для меня это самый крутой момент конференции. Теперь цель — повторить =)
Было довольно забавно говорить ребятам из Гугла что-то в духе “у вас logQ коррекция устарела” :)
Пожалуй, пока для меня это самый крутой момент конференции. Теперь цель — повторить =)
Было довольно забавно говорить ребятам из Гугла что-то в духе “у вас logQ коррекция устарела” :)
4🔥93❤19👍7😁1