Опубликовано в журнале Новый Мир, номер 4, 2006
“Механический турок”
«Турок” и человек. Осенью 2005 года компания “Amazon” — крупнейший магазин, занимающийся розничной торговлей через Интернет, — запустила службу, названную довольно неожиданно: “Mechanical Turk” (“Механический турок”). Служба представляет собой биржу, где разработчики могут размещать небольшие практические задачи, составляющие часть более крупных проектов. Служба названа в честь шахматного автомата, “изобретенного” в 1769 году Вольфгангом фон Кемпеленом (Wolfgang von Kempelen). Шахматная “машина” побеждала многих соперников благодаря тому, что в ней прятался живой шахматист. Служба “Amazon” тоже намерена использовать способности человека для решения большого числа мелких задач, с которыми компьютер не справляется вовсе или справляется весьма посредственно, а человек — очень легко. Таких задач сегодня очень много.
Вице-президент “Amazon” Адам Зелипски (Adam Selipsky) так описал цели проекта: “Существуют вещи, которые человек делает лучше компьютеров. „Mechanical Turk” позволяет разработчикам и организациям, по существу, встроить в программное обеспечение человеческий интеллект”. В качестве примера он привел функцию “желтые страницы” поисковой службы “Amazon A9”. Эта служба предлагает пользователям фотографии, например, пиццерий, находящихся поблизости от того места, которое они указали поисковой системе. Просить компьютер выбрать лучший снимок из нескольких (иногда многих) предложенных изображений бесполезно. Зато человек принимает такое решение в считанные секунды.
Технологически “Механический турок” должен работать так. Задачи, предлагаемые на этой площадке, могут решаться за считанные секунды или минуты, а уровень оплаты составляет 3 — 5 центов. Но разработчики считают, что даже при такой скромной оплате со временем тот, кто помогает выбирать изображения для А9, сможет заработать: нужно только набить руку, чтобы процесс отладился и автоматизировался. Конечно, “Amazon” надеется, что площадка принесет прибыль и ей самой. Компания будет брать 10 процентов за посредничество между разработчиками и теми, кто берется решать их задачи. Работать можно в любое время и выбирать любые из тысяч заданий на свой вкус. После выбора задания оно закрепляется за исполнителем на срок от одного часа до нескольких суток. Оплата осуществляется сразу после того, как ответ будет проверен, — для этого требуется как минимум несколько часов. Опубликовать собственные задачи для “Механического турка” может любой разработчик. Достаточно оплатить регистрацию. Результаты труда “Механического турка” можно использовать, например, в собственных интернет-сервисах. Для этого предназначены открытые программные интерфейсы “Mechanical Turk API”. Например, “Механического турка” можно использовать в системах распознавания изображений для предварительной классификации материала и для обучения компьютерных систем распознавания образов.
Вычислительная мануфактура барона де Прони. Ссылка на шахматный автомат прозрачно намекает на некоторую экзотичность предложенного сервиса, но название кажется несколько неточным: это сравнение уводит в сторону от сущности того, что предложили разработчики “Amazon”. Задача, которую решал шахматист, спрятанный в ящике, украшенном тюрбаном (потому и “турок”), сложна, и справиться с ней любой человек с улицы не мог: здесь нужен был мастер игры в шахматы, к тому же человек маленького роста — иначе он не мог бы спрятаться в “машине”. И как раз с задачей игры в шахматы сегодня компьютер справляется очень хорошо — едва ли не лучше человека.
Гораздо интереснее сравнить проект, предлагаемый “Amazon”, с идеей “вычислительной мануфактуры”, которую предложил барон Гаспар де Прони, вычислитель при французском правительстве с 1791 и до начала XIX века. Он перенес на вычислительный процесс идею разделения труда.
Правительство Франции решило существенно улучшить логарифмические и тригонометрические таблицы. Эту работу и поручили барону де Прони. Он распределил исполнителей по трем уровням: высшую ступень занимали выдающиеся математики, среди них были Адриен Лежандр и Лазарь Карно. Они готовили математическое обеспечение — по существу, писали “программы”. На втором уровне стояли образованные “технологи”, которые организовывали рутинный процесс вычислительных работ. Последними в этой структуре были вычислители. От них требовалось только умение аккуратно складывать и вычитать.
И. С. Дмитриев в своей статье “„Союз ума и фурий”: ученые в эпоху Французской революции” <http://magazines.russ.ru/nlo/2005/73/dmi1.html> так описывает работу де Прони: “…два десятка „калькуляторов” заполняли семнадцать томов elephant folio логарифмических и тригонометрических таблиц, кои, как было сказано в правительственной инструкции — работа велась по заказу правительства кадастровым управлением (Bureau du Cadastre), созданным в 1791 г. и возглавлявшимся упомянутым де Прони, — „не только не оставляли желать ничего лучшего в отношении точности, но также представляли собой самый грандиозный и величественный памятник искусству вычисления, который когда-либо сооружался или задумывался”. Создание этих невиданных таблиц задумывалось как часть мероприятий по составлению земельного кадастра Франции. Но по разным причинам (незавершенность исследований по разработке метрической системы мер, недостаточное финансирование) дело затягивалось. Кроме того, хваленая беспрецедентная точность была, как признавал сам Прони, в то время никому не нужна (уж во всяком случае, в кадастровых и многих иных практических работах). Наконец, таблицы были неудобны в пользовании, поскольку предполагали деление прямого угла не на привычные 90, а на „революционные 100 градусов”, а каждый градус — на 100 столь же революционных минут, поскольку по первоначальному замыслу введение метрической системы предусматривало децимализацию всех величин, в том числе угловых градусов и единиц времени”.
Главная заслуга де Прони заключается в том, что он сумел организовать вычислительный процесс. Ему удалось свести сложные задачи к набору рутинных операций благодаря четкой системе контроля и хорошо отлаженным “межпроцессорным интерфейсам”. Этот подход к вычислениям использовался очень долго — именно так рассчитывали первые ядерные бомбы. Идеи де Прони и подтолкнули Чарльза Беббиджа к созданию первой в истории вычислительной машины.
Торжество закона. То, что первые вычислительные мануфактуры возникли именно во Франции времен революции, совершенно не случайно. Ученым — математикам, физикам, астрономам — казалось, что процессы мышления полностью предопределены и принципиально сводимы к законам природы (по существу, к единственному закону — всемирного тяготения) и очень скоро удастся исчерпывающе объяснить природу разума и чувств. Мир кажется сложным, но на самом деле он представляет собой движение атомов в поле тяготения. Проблема только в том, что этих атомов достаточно много (почему-то никого не пугало, что частиц может оказаться бесконечно много). А значит, нужно научиться разделять мир на атомы (а процессы мышления — на элементарные операции), считать эти атомы (и исчислять операции) и прояснять отношения отдельных объектов друг с другом.
И. С. Дмитриев приводит многочисленные примеры такого предельно рационалистического мировоззрения: “Для Кондильяка, Д’Аламбера, Кондорсе и многих других философов XVIII столетия мышление представляло собой своего рода комбинаторное исчисление <…> подобно тому как арифметика была „искусством комбинирования [численных] отношений”. Сила ума — искусного калькулятора — выражалась прежде всего в его способности расчленять, сопоставлять и рекомбинировать идеи согласно определенным правилам. „Мы, в сущности, не создаем идей, — убеждал читателей Кондильяк, — а лишь комбинируем путем сочетания и расчленения те идеи, которые мы получаем через органы чувств. Изобретательность состоит в умении делать новые сочетания”. И поскольку „здравый смысл, ум, разум и их противоположности происходят одинаково из одного и того же начала, коим является связь идей друг с другом”, связь, „которая порождена применением знаков”, то посредственность, талант и гений отличаются не, так сказать, качественно, а лишь по степени владения искусством сочетания (комбинаторики) идей, что в свою очередь зависит от степени развития языка (и вообще знаковых систем), которую застает данный индивид или данная нация в данную эпоху <…> и от степени умственного развития индивида, чему способствует правильное обучение, то есть обучение, следующее „урокам, которые дает нам природа””.
Если все законы природы редукционизм последовательно сводит к движению атомов по законам всемирного тяготения, то все мыслительные процессы должны быть сводимы к арифметическим простейшим вычислениям. Эти операции элементарны, но их много, а значит, необходимо научиться управляться с огромными количествами элементарных операций. На самом деле это в точности философское обоснование информационного мира, того мира вычислительных машин, в котором мы живем сегодня. Другое дело, насколько это обоснование корректно.
Но Дмитриев обращает внимание на очень важный момент в состоянии науки и философии рубежа XVIII и XIX веков: “Калькуляция не стала еще монотонной, утомительной подсобной работой, обыденной и автоматической <…> Гигантская вычислительная работа служила предметом восхваления и вызывала почтительное изумление”.
Предметом такого “восхваления и изумления” была и работа де Прони.
“Глобальный разум” — шаг за шагом. “Amazon” предлагает схему, очень похожую на вычислительный процесс, реализованный де Прони. В этом процессе человек, имеющий доступ к Интернету, используется как вычислительный ресурс для выполнения простых операций. Использовать для распределенных вычислений компьютеры, подключенные к Сети, получается сегодня уже достаточно хорошо. Эта технология называется “метакомпьютинг”, и присоединиться к распределенным вычислениям может любой пользователь Интернета. На компьютер пользователя устанавливается вычислительный модуль, который работает в то время, когда процессор свободен (а он у нормальной офисной машины всегда свободен процентов на 95). Этот модуль, произведя свою долю вычислений, потом сбрасывает результаты по Интернету на центральную машину и получает от нее новое задание. Роль такого модуля и выполняет в схеме, предложенной “Amazon”, сам пользователь. “Amazon” фактически исходит из того, что вычислительный ресурс человека, выходящего в Сеть, тоже занят не более чем на 90 процентов, так почему бы не использовать его для общего блага?
Разработчики пока сами не очень хорошо представляют, к чему приведет их обращение к “глобальному разуму”. Но не исключено, что по мере развития сервиса “Amazon Mechanical Turk” (или других аналогичных начинаний) удастся на реальных, решаемых сегодня задачах выделить “рутинные”, то есть очень простые операции, подобные тем, которые удалось выделить в процессе вычисления Чарльзу Беббиджу. Если будут определены “рутинные” операции, используемые в решении новых классов задач (распознавание, первичная классификация, ранжирование, реферирование, описание товара), на этих “рутинных” операциях можно будет сосредоточить усилия и, возможно, часть из них удастся автоматизировать. Тогда выделится класс еще более трудноразрешимых задач, которые опять придется передоверить человеку. И так — шаг за шагом. Этот путь вполне может привести к успеху, тем более первый шаг уже сделан — считают компьютеры гораздо лучше людей-вычислителей. Может быть, на следующем шаге они научатся столь же хорошо распознавать самых красивых девушек?
А может быть, все закончится ничем, как у де Прони или у Беббиджа. Таблицы де Прони пылятся в музее, а аналитическая машина Чарльза Беббиджа была построена только в 1991 году. К двухсотлетию со дня рождения ученого сотрудники лондонского Музея науки воссоздали машину по его чертежам. Она весит более двух с половиной тонн. В 2000 году был построен еще и принтер Беббиджа. Он весит три с половиной тонны. Оба устройства превосходно работают — в расчетах Беббиджа было найдено всего две ошибки.
Но даже если “Amazon Mechanical Turk” и не приведет к революционным прорывам и открытиям, кто-то заработает себе на пиво, что тоже неплохо.