Скотт Александер «Сортировка по спорности» Scott Alexander «Sort By Controversial» (2018)
Спасибо, что разрешили опубликовать мою историю в вашем блоге. Мейнстримные СМИ — дерьмо, да и всё равно никто не поверит.
Всё началось в сентябре 2017. Я работал в маленьком стартапе по онлайн-рекламе. Видели рекламу в Фейсбуке и Твиттере? Мы консультировали компании, как им получить максимум кликов. Этот стартап — не буду его называть — собирался добавить глубокое обучение, потому что инвесторы заваливают деньгами всё, где есть слова «глубокое обучение». Обучаем сеть предсказывать, сколько лайков получит что-нибудь на Реддите. Затем спрашиваем, сколько лайков получит другая реклама. Затем берём ту рекламу, которая получит больше всего лайков. Этот парень[1] (не я) объяснит лучше. Почему Реддит? Потому что лайки и дислайки проще, чем всякие разные реакции на Фейсбуке, а ещё сабреддиты позволяют таргетировать рекламу по демографическим группам, плюс существует архив из 1,7 миллиардов комментов[2] с Реддита, который можно скачать для обучения. Мы обучили нейросеть предсказывать количество лайков по заголовку поста на Реддите.
Любая предиктивная сеть может служить и генеративной сетью. Если вы обучите нейросеть распознавать собак, вы можете запустить её в обратную сторону и генерировать изображения собак. Если вы обучите сеть предсказывать лайки на Реддите, вы можете запустить её в обратную сторону и генерировать высоколайковые заголовки. Мы с этим поэкспериментировали, и получилось очень смешно. Не помню точную фразу, но для /r/politics это было нечто вроде: «Дональд Трамп больше не президент. Все трансгендеры — президент». Для r/technology — что-то про Илона Маска, спасающего сетевую нейтральность. Можно также генерировать заголовки с максимальным числом дислайков, но это скучно: получится что-то вроде спама о таблетках для увеличения пениса.
На Реддите есть возможность сортировать посты по спорности. Алгоритм можете посмотреть здесь[3], но в двух словах: умножаем общее количество голосов (лайки + дислайки) на баланс (отношение лайков к дислайкам или наборот, смотря что меньше), и тем самым высвечиваем посты, которые провоцируют разногласия. Спорность хорошо продаёт, поэтому мы обучили нашу сеть предсказывать и это. Проект поручили новенькой индианке с длинным именем, которую мы звали Шири, и она не смогла заставить его работать, так что наш босс Брэд послал на помощь меня. Шири протестировала сеть на большом архиве из 1,7 миллиардов комментов, и сеть сгенерировала ряд спорно звучащих гипотетических сценариев политики США. Пока всё было неплохо.
Японцы тестировали своё биологическое оружие на китайских пленниках. Институт Таскиги заражал сифилисом афроамериканцев. Мы были, может, гуманнее, а может, глупее, потому что мы испытали Резак Шири на себе. У нас был приватный внутренний сабреддит для обсуждения дел компании, потому что Брэд хотел, чтобы мы все хорошо освоили эту платформу. Проблема Шири была в том, что она протестировала нейросеть на нашем сабреддите, и она просто выдавала тривиально истинные или тривиально ложные фразы. Никакой спорности, никакого места для дискуссий. Фраза, которой мы тогда занялись, касалась одной версии дизайна нашего кода. Обойдусь без подробностей, но вообразите, что вы собрали все в мире плохие и неправильные решения, запрограммировали максимально уродливо, и затем преподнесли конечному юзеру, выставив средний палец. Резак Шири выдал в качестве максимально спорного то утверждение, что дизайн нашего продукта должен быть вот таким. Минут десять мы обсуждали, где конкретно баг, а потом Шири сказала, что не понимает, почему программа генерирует очевидно истинные утверждения.
Шири не очень хорошо знала английский, так что я решил, что это проблема коммуникации. Я поправил её. Программа выдавала очевидно ложные утверждения. Шири упёрлась. Я всё ещё думал, что она что-то путает. Я объяснил ей смысл английских слов «истинный» и «ложный». Кажется, она обиделась. Я попросил подтвердить. Вправду ли она считает, что это чудовищное программное решение, этот план скомбинировать все плохие техники дизайна и исключить возможность когда-либо исправить ошибку — правильный способ построить нашу программную базу? Шири сказала «да». Хуже того, она удивилась, что я так не считаю. Она была уверена, что мы уже делаем примерно то же самое (на самом деле нет). Она считала, что отойти от этого плана означало бы полностью всё переписать и значительно ухудшить код.
В этот момент я усомнился, что я в здравом уме, так что мы зашли в соседний кабинет к Блейку и Дэвиду. Это были старшие кодеры нашей компании, и обычно они служили голосом разума. Они разговаривали о своей собственной проблеме, но я прервал их и показал режущую фразу. Блейк ответил разумно: «Зачем ты мне суёшь этот дебильный мусор?» Но Дэвид удивился, как и Шири, и начал доказывать, что идея вполне здравая. Мы четверо начали яростно спорить. Я всё ещё думал, что Шири и Дэвид просто не поняли вопроса, хотя Дэвид был англоязычным, а вопрос — кристально ясным. Тем временем Дэвид всё сильнее выходил из себя и протестовал, что он всё понял, а Блейк и я — просто дерьмовые программисты, не понимающие базовых архитектурных решений. Он настаивал, как и Шири, что режущая фраза — это план, который уже выполняется, и что любая попытка отойти от него поломает всё. Дошло до того, что мы решили пойти к Брэду и всё выяснить.
Брэд основал нашу компанию. Не верьте газетам: не каждый техно-предприниматель — алчный антисоциальный быдлан. Но в рекламе каждый таков. И Брэд был точно таким. Он был грубым и аморальным козлом. Но он умел обворожить инвесторов, и он умел программировать, в отличие от большинства боссов. Брэд явно разозлился, что вся команда кодеров ввалилась в его офис без предупреждения, но он нас выслушал.
Дэвид пытался объяснить проблему, но неверно интерпретировал почти каждый пункт. Я не мог поверить, что он врёт только для того, чтобы предстать перед Брэдом в лучшем свете. Я его перебил. Дэвид сказал не перебивать. Блейк сказал, что если бы Дэвид не врал, нам не пришлось бы его перебивать, и всё покатилось по наклонной. Посреди этой перепалки Брэд наконец понял, о чём мы говорим, и остановил нас всех. «Ничего тупее я не слышал». Брэд подтвердил, что первоначальный план вовсе не таков, что это предложение противоречит первоначальному плану, всем правилам хорошего программирования и хорошего бизнеса. Жалкие лузеры Дэвид и Шири обвинили меня с Блейком, что мы «отравили» Брэда. Дэвид сказал, что Брэд, конечно, поддерживает нас, потому что мы с самого начала были его любимчиками. Мы загребали себе лёгкие и удобные проекты один за другим, пока он и Шири подбирали отбросы. Брэд назвал его болваном и приказал вернуться к работе. Дэвид отказался.
Эта глава истории закончилась в восемь вечера: Брэд уволил Дэвида и Шири за вопиющую некомпетентность, вопиющее отсутствие субординации и общую человеческую гнусность. Он произнёс длинную речь о том, что рискнул нанять Дэвида и Шири, хотя с самого начала знал, что они неквалифицированные никчемушники, а они каждый раз платили ему за доброту бездельем и саботажем. Он назвал их сливными бачками компании, имея в виду, что они работают на конкурентов. Сами же Дэвид и Шири назвали его боссом-абьюзером, всю компанию — разводкой для уязвимых сотрудников с целью заставить их впахивать ради личного обогащения Брэда, а нас с Блейком — его подельниками.
Было восемь вечера. Перепалка в офисе Брэда шла пять часов. В 8-01, после того как Дэвид и Шири хлопнули дверью, мы посмотрели друг на друга и подумали: твою мать, этот фильтр спорности работает.
Повторю. Ни разу за пять часов споров нам это не пришло в голову. Мы были слишком увлечены сутью вопроса — самой режущей фразой. У нас не было возможности остыть и подумать, что весь этот спор породило утверждение, созданное быть максимально спорным. Но в 8-01, когда спор закончился и мы выиграли, мы остыли и подумали: твою мать.
Тем вечером мы слишком устали, чтобы размышлять об этом, но на следующий день мы — Брэд и два оставшихся кодера — устроили совещание. Мы обсудили то, что имели. Брэд дал ему имя: Резак Шири. На каком-то мёртвом языке резак (scissor) — однокоренное слово с расколом (schism). Резак — это раскалыватель, создатель раскола. Вот что было у нас на руках. Мы решили перейти от онлайн-рекламы к супероружию. Нужно было звонить в Пентагон. Сказать им, что у нас есть программа, заставляющая людей ненавидеть друг друга. Этика? Мы были онлайн-рекламщиками; за клики мы продали бы родных бабушек сомалийским работорговцам. Эту остановку давно проехали.
Нельзя так просто позвонить в Пентагон и сказать, что у вас есть супероружие. Даже если вы из Кремниевой Долины, вам не поверят с первого слова. Но Брэд задействовал дружеские связи, и где-то через неделю после увольнения Дэвида и Шири в нашей переговорной стоял полковник из ДАРПА и спрашивал, какого хрена мы думаем, что сделали что-то важное.
Возникла проблема. Мы не могли показать полковнику режущую фразу, из-за которой уволили Дэвида и Шири. Он не работал в нашей компании и не работал в рекламе; это показалось бы ему скучным. Мы не хотели генерировать новые режущие фразы для Пентагона. Даже Брэд понимал, что если ввергнуть армию США в гражданскую войну, это плохо скажется на кликах. Наконец мы выработали план. Мы объяснили полковнику, что такое Реддит. А затем спросили, какое сообщество расколоть для него в виде демонстрации.
Он секунду подумал и сказал «Мозамбик».
Мы недооценили культурный разрыв. Когда мы попросили полковника выбрать сообщество в жертву Резаку, мы ожидали «игроков в настольные тактические игры» или «фанатов My Little Pony». Но у полковников из ДАРПА другой взгляд на мир. Он сказал «Мозамбик». Я попытался объяснить, что на Реддите всё по-другому, что это должна быть группа со своим собственным сабреддитом. Брэд перебил меня и сказал, что у Мозамбика есть сабреддит[4].