Кокетливый интеллект. Как научить искусственный интеллект флиртовать? - Бомбора 2 стр.


Потом алгоритм смотрит, что эти шутки в действительности должны из себя представлять. Скорее всего, он выяснит, что был в корне неправ. «Ну хорошо»,  говорит себе ИИ, после чего слегка меняет свою структуру, чтобы в следующий раз угадывать лучше. Есть ограничение на степень изменений, мы ведь не хотим, чтобы он пытался запомнить любой новый увиденный кусок текста. Но при минимальной модификации ИИ может выяснить, что если начнет производить только буквы «к» и пробелы, то окажется прав хотя бы в чем-то и где-то. После сверки с одним набором реальных шуток и одного раунда модификации представление ИИ о подобных шутках станет похоже на нечто такое:



Ну что же, это не лучшая шутка из подобных. Но, беря такой вариант за основу, ИИ смотрит на второй набор данных, потом на следующий. Каждый раз он подстраивает формулу, чтобы улучшать точность догадок.

После еще нескольких раундов, состоящих из догадок и самопроверок, искусственный интеллект усваивает несколько новых правил. Например, он догадывается, что в конце некоторых строк следует ставить вопросительный знак. Также он начинает применять гласные (в особенности букву «у») и даже пытается расставлять запятые.

нуу,

лтунуу

Кут?

внос у кг

птб оа то,


ткоуЕтнл

игр ноос

док кКе

в це

е

Как думаете, насколько те правила, что он вывел для шуток «Тук-тук, кто там?», соответствуют реальности? Кажется, он по-прежнему что-то упускает.

Если ИИ хочет приблизиться к цели и произвести на свет приемлемую шутку, ему еще нужно определиться с правилами по поводу того, в каком порядке в ней могут следовать буквы. И вновь он начинает строить догадки. Что, если после буквы «у» всегда идет буква «г»? На поверку оказывается, что догадка не очень правильная. Потом он понимает, что довольно часто после «у» встречается «к», а перед «о»  сочетание «кт». Блеск. Наконец какой-то успех. Теперь посмотрим, как выглядит, по мнению искусственного интеллекта, идеальная шутка:

Ктоук

Ктоук

Ктоук

Ктоук

Ктоук Ктоук Ктоук

Ктоук Ктоук

Ктоук

Ктоук

Ну, это не очень-то напоминает шутку «Тук-тук, кто там?»  больше похоже на куриное кудахтанье. ИИ предстоит отыскать еще несколько правил.

Он вновь изучает набор данных. Затем пытается использовать найденные сочетания букв новыми способами, выискивая примеры комбинаций, которые лучше соответствуют заданным примерам шуток.

нток докк хомк

уКуу мКток

Тук

кая Авас Тыы

кол хомм

Хамм?

Рие

ако ак, Ото и клеа

то ко- оо к АтьХпал Ько

Егоч

ткот- К окт

Тма

туу

Ктук Тук Ток Тамк

Все эти улучшения происходят всего за несколько минут. К моменту, когда я возвращаюсь к компьютеру с чашкой кофе, ИИ уже успел понять, что если начать шутку с комбинации «Тук-тук! Кто там?», то совпадений с существующими подобными шутками будет больше. И он решает следовать этому правилу всегда.

Но остальная часть формулы выводится еще довольно долго, причем ИИ часто словно бы принимается сам с собой играть в испорченный телефон:

Тук-тук!

Кто там?

Вра

Какая Диял?

Какой Нна?

Какая Ананан?

Какой Нин?

Какой Няни?

Какая Двима?

Наконец ему удается нащупать структуру шуточной формулы, но не подходящие слова:

Тук-тук!

Кто там?

Пана

Какая Лагана?

Кольке ты вам где не

Иногда он немного увлекается особо длинными ключевыми фразами.

Тук-тук!

Кто там?

Валесий

Какая?нна?

Ыши тьнан уду шенквв аксабн шуе такрещ утомцй дуб яван аолвакт хиртиуза уурнаст котекц шдсеевка озо эугойм за доен кмтакан ахелко тас чигепо ббнащ к реужмым!

Где-то дальше в ходе обучения искусственный интеллект узнает про шутку о корове без губ, она становится его любимой. Если что, это примерно такой шуточный диалог:

Тук-тук!

Кто там?

Корова без губ.

Какая корова без губ?

Корова без губ говорит: «у-у-у-у!»

ИИ считает, что наткнулся прямо-таки на юмористическую золотую жилу, и какое-то время исходит из того, что лучшая ключевая фраза в любой шутке это «у-у-у-у!»

Тук-тук!

Кто там?

Алек

Какая Аник?

Вау ку кака вам ска ска дверь в за сажас у-у у-у-у у-у-у-у у-у-у у-у у-у у-у у-у у-у-у у-у у-у у-у у-у-у у-у-у у-у-у-у у-у-у у-у-у у-у у-у у-у-у у-у-у у-у-у у-у-у у-у-у у-у у-у у-у-у у-у-у у-у-у у-у-у у-у у-у у-у у-у-у у-у-у у-у-у у-у-у

Что ж, ладно, правило он нашел. В конце концов ИИ (как мне кажется, с неохотой) начинает реже создавать ключевые фразы, опираясь на шутку про корову без губ. Но одна проблема по-прежнему остается: его диалоги как будто списаны с ситуации, когда один человек другому пытается по телефону рассказать шутку «Тук-тук, кто там?», но связь очень плохая, и временами собеседники, кажется, вообще забывают, кто из них шутник:

Тук-тук!

Кто там?

Лаша

Какой Каша?

Какой какой Каша?

Какой какой?

Тсаша и на пристани?

В итоге ИИ понимает структуру шутки и начинает составлять с формальной точки зрения правильные диалоги, однако совершенно бессмысленные. Многие из них он частично списывает из обучающей выборки.

Тук-тук!

Кто там?

Робин

Какой Робин?

Ты Робин! Гни меня и я ухожу


Тук-тук!

Кто там?

Геннадий

Какой Говядина?

Говядина тор без губ ткткто


Ирландия

Какая Ирландия?

Ирландия твои деньги, задница

И тут. Он. Вдруг. Написал. Настоящую шутку. Которую составил полностью сам, не заимствуя кусок из обучающего набора, и при этом она оказалась не только вразумительной, но и действительно смешной?

Тук-тук!

Кто там?

Алик

Какой Алик?

Алик из тук-тук шутки

Значит ли это, что ИИ внезапно начал понимать суть такого рода шуток и каламбуров на человеческом языке? Почти наверняка нет, учитывая очень скромный размер набора данных. Но свобода, которой ИИ пользовался,  свобода пастись в пространстве всех возможных символов,  позволила ему пробовать новые комбинации звуков, и оказалось, что одна из них попала в точку. Так что это скорее победа теоремы о бесконечных обезьянах[7], чем доказательство того, что ИИ скоро отнимет хлеб у стендап-комиков.

Красота решения, при котором мы позволяем ИИ создавать собственные правила, заключается в том, что этот единый подход «вот тебе данные; придумай, как их воспроизвести»  работает на большом количестве задач. Если бы я предложила алгоритму-«шутнику» другой набор данных вместо шуток типа «Тук-тук, кто там?», он приучился бы использовать именно его.

Он может придумывать названия новых видов птиц:

Юкатанская джунглевая утка

Лодкоклювая нектарница

Западный вилоклювый цветосос

Черноголовая пушистохвостка

Исландский болотный печник

Снежный стенающий цаплевый дрозд

Или новые марки парфюма:

Изысканная десятка

О-де-бофф

Лягушистый цветок

Мамкин

Санта для дам

Или даже рецепты новых блюд.


Простые глазированные моллюски

основное или первое блюдо

1 фунт курятины

1 фунт свинины, нарезанная кубиками

½ зубца чеснока, раздавить

1 чашка сельдерея, нарезанная ломтиками

1 голова (около ½ чашки)

6 столовых ложек электрического миксера

1 чайная ложка черного перца

1 луковица, кусочками

3 чашки говяжьего бульона свонда для фрукта

1 измельченная пятьдесят на пятьдесят; воды нужного количества


В сковороду объемом 3 кварты поместить лимонный сок в виде пюре и дольки лимона.

Добавить овощи, добавить курицу в соус, хорошо перемешивая лук и добавляя. Добавить лавровый лист, красный перец, медленно накрыть крышкой и кипятить под крышкой на малом огне 3 часа. Добавить картофель и морковь в кипящий бульон. Подогревать, пока соус не закипит. Подавать с пирожками.

Если вшивые кусочки приготовили десерты, и готовить над воком.

Замораживать до получаса, украсив.

На 6 персон.

ПОЗВОЛЬТЕ ИИ ОБО ВСЕМ ДОГАДАТЬСЯ

Получив в распоряжение набор шуток «Тук-тук, кто там?» и никаких инструкций вообще, ИИ сумел открыть массу правил, которые в противном случае мне пришлось бы вводить в программу вручную. Некоторые из них я бы ни за что не додумалась программировать, а о существовании других даже не подозревала, например, правила «о превосходстве шутки про корову без губ».

Именно этот фактор и делает системы, основанные на искусственном интеллекте, привлекательными для решения задач, особенно в тех случаях, когда правила действительно сложны или покрыты мраком. Например, ИИ часто используют для распознавания визуальных образов это удивительно сложная область, где пасуют обыкновенные компьютерные программы. Хотя большинство из нас легко узнают на картинке кошку, сформулировать правила, определяющие, как же выглядит кошка, по-настоящему трудно. Стоит ли нам сообщить программе, что у кошки два глаза, один нос, два уха и хвост? Но эти признаки точно так же указывают и на мышь, и на жирафа. А что, если кошка на картинке свернулась в клубок или ее голова повернута вбок? Записать правила для обнаружения на фотографии даже одного-единственного глаза и то очень непросто. Но ИИ может просмотреть десятки тысяч изображений кошек и составить правила, по которым будет верно опознавать кошку в большинстве случаев.

Иногда ИИ лишь небольшая часть программы, в остальном представляющей собой основанный на правилах сценарий. Возьмем в качестве примера программу, которая позволяет клиентам банка по телефону получать информацию о состоянии счета. ИИ для распознавания голоса переводит произнесенные человеком звуки в действие выбор вариантов из голосового меню, но за список пунктов, доступных каждому клиенту, и за определение того, какой счет ему принадлежит, отвечают правила, заданные программистом.

Другой вариант это когда программа первым пускает в бой ИИ, но когда у того возникают трудности, контроль над ситуацией переходит к людям; такой подход называется псевдо-ИИ. Так работают чаты пользовательской поддержки. Если ваши фразы сбивают бота с толку или если бот понимает, что вы начинаете злиться, вас переводят в диалог с человеком. (И этому человеку теперь придется иметь дело с ничего не понимающим и/или разозленным клиентом возможно, лучше бы открыть опцию «говорить с живым человеком» не только для клиента, но и для работника.) Современные беспилотные автомобили устроены похожим образом человеку-водителю всегда надо быть готовым принять управление, если ИИ перенервничает.

Кроме того, искусственный интеллект замечательно проявляет себя в стратегических играх наподобие шахмат в них мы в точности знаем, как описать все возможные ходы, ноне способны вывести формулу, которая подскажет, какой следующий ход будет наилучшим. В шахматах из-за количества вариантов ходов и сложности игрового процесса даже гроссмейстер не в состоянии сформулировать жесткие правила для предсказания того, какой ход окажется лучшим в той или иной ситуации. А самообучающийся алгоритм может сам с собой сыграть миллионы тренировочных партий больше, чем сыграет за всю жизнь самый умный и упорный гроссмейстер,  чтобы выработать правила, которые будут приводить его к победе. И поскольку ИИ обучается без явных инструкций, иногда он находит очень необычные и оригинальные стратегии. Иной раз чрезмерно оригинальные.

Если вы не скажете ИИ, какие ходы допустимы, он может отыскать странные лазейки и злоупотребить ими, лишив игру смысла. Например, в 1997 году группа программистов создавала алгоритмы, которые удаленно играли в крестики-нолики друг против друга на бесконечно большом поле. Один из программистов, вместо того чтобы разработать основанную на правилах стратегию, позволил ИИ самостоятельно формировать подход к игре. Внезапно этот ИИ стал побеждать во всех матчах. Его стратегия заключалась в том, чтобы делать ход где-то очень-очень далеко.

Размер нового игрового поля оказывался настолько большим, что компьютер оппонента, пытаясь его у себя воспроизвести, исчерпывал ресурсы оперативной памяти и падал с ошибкой, так что ему засчитывалось техническое поражение[8]. У большинства программистов, работающих с ИИ, есть в запасе похожие истории о том, как алгоритмы удивляли их тем, что находили неожиданные решения. Иногда такие решения гениальны, а иногда создают проблемы.



Самое основное, в чем нуждается ИИ, это конкретная цель и набор данных для обучения. Получив их, он начинает гонку, и неважно, какова цель: принять решение о выдаче кредита, как это делает специалист-человек, предсказать, приобретут ли покупатели определенный носок, добиться максимального счета в видеоигре или же заставить робота преодолеть наибольшее расстояние. В каждом случае ИИ методом проб и ошибок изобретает правила, которые позволят ему добиться цели.

ИНОГДА ЕГО ПРАВИЛА ПЛОХИ

Бывает, что правила, прекрасно помогающие ИИ находить решение, оказываются основаны на неверных предположениях. Например, некоторые из самых причудливых экспериментов я проделывала с продуктом компании Microsoft для распознавания образов, который подбирал теги и описание для загружаемого изображения. Как правило, этот алгоритм правильно распознает предметы: узнает облака, поезда метро или даже ребенка, выполняющего ловкие трюки на скейтборде. Но однажды мое внимание привлекло нечто странное в результатах его работы: ИИ ставил тег «овцы» картинкам, где определенно не было никаких овец. Я изучила проблему и выяснила, что алгоритм видел овец на сочно-зеленых полях вне зависимости от того, были они там на самом деле или нет. Почему же столь специфическая ошибка всплывала вновь и вновь? Возможно, во время обучения этому ИИ в основном показывали овец, находящихся на таких вот полях, и он не понял, что заголовок «овцы» относится к животным, а не к полям. Другими словами, искусственный интеллект смотрел не туда. И, конечно же, когда я показывала ему овец, которые не паслись на пышных пастбищах, он чаще всего ошибался. Овец в автомобилях он обычно помечал как собак или кошек. Овцы в жилых помещениях у него также становились собаками или кошками, то же самое происходило с ягнятами, которых кто-нибудь держал на руках. А овцы на привязи распознавались как собаки. Такие же проблемы у ИИ были с козами: если он видел козу, залезшую на дерево (они так иногда делают), то считал, что это жираф (другой похожий алгоритм называл коз птицами).



Я не знаю точно, но догадываюсь, что ИИ руководствовался правилами вроде «зеленая трава = овцы» и «нечто шерстяное в машине или на кухне = кошки». Они отлично ему служили во время обучения, но подвели, когда ИИ столкнулся с реальным миром и головокружительным разнообразием связанных с овцами ситуаций.



Подобные ошибки обучения характерны для распознающих образы ИИ. Но последствия этих ошибок могут оказаться серьезными. Одна команда в Стэнфордском университете как-то тренировала искусственный интеллект определять разницу между изображениями здоровой кожи и кожи, пораженной раком. Однако после завершения тренировки ученые обнаружили, что нечаянно создали ИИ, определяющий наличие на фотографии линеек, потому что многие раковые опухоли, изображения которых оказались в их наборе, были сфотографированы с приложенной для масштаба линейкой[9].

КАК ВЫЯВИТЬ ПЛОХОЕ ПРАВИЛО

Зачастую нелегко понять, когда ИИ делает ошибки. Мы не задаем для него правила, искусственный интеллект создает их самостоятельно, причем не записывает на бумаге и не объясняет понятным языком, как мог бы сделать человек. Вместо этого ИИ производит сложные взаимозависимые изменения своей внутренней структуры, превращая универсальную основу в нечто, хорошо приспособленное для решения конкретной задачи. Это всё равно что взять кухню, полную разных ингредиентов, и на выходе получить печенье. Правила могут принять вид связей между клетками виртуального мозга или генов виртуального организма. Они могут оказаться сложными и распределенными, могут странным образом переплетаться. Изучение внутренней структуры ИИ во многом напоминает изучение мозга или экосистемы и не нужно быть нейробиологом или экологом, чтобы понять, насколько сложными они могут быть.

Назад Дальше