Компьютерный юмор

Компьютерный юмор — направление в рамках компьютерной лингвистики и искусственного интеллекта, в котором используются компьютеры для изучения и моделирования юмора. Это сравнительно молодая область исследований: первая специализированная конференция по компьютерному юмору состоялась в 1996 году[1].

Первая «компьютерная модель чувства юмора» была предложена И. М. Сусловым в 1992 году[2]. Исследование схемы общего процесса обработки информации показало возможность специфического «сбоя», обусловленного необходимостью быстрого устранения из сознания ложной версии. Такого рода сбой отождествляется с психологическим эффектом юмора и соответствует теории разрешения противоречий. В биологических системах чувство юмора неизбежно развивается в ходе эволюции, поскольку его биологическая функция состоит в ускорении передачи обработанной информации в сознание и более эффективном использовании ресурсов мозга. Реализация этого алгоритма в искусственных нейронных сетях[3] подтверждает гипотезу Герберта Спенсера относительно механизма смеха: удаление ложной версии соответствует «обнулению» участка нейронной сети, а избыточная энергия нейронов сбрасывается в двигательную кору мозга, вызывая мышечные сокращения.

Практическая реализация этого алгоритма требует обширных баз данных[4]. Впоследствии в этом направлении не было создано полноценной реализации, и дальнейшие исследования приобрели специализированный характер.

Искусственный интеллект и компьютерный юмор

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

В литературе имеется значительное число исследований по лингвистике юмора, а также по семантическим и прагматическим теориям юмора[5][6][7]; однако большинство работ не были достаточно формализованы для непосредственного использования при моделировании компьютерного юмора. Вклад в формализацию анекдотов с принудительной интерпретацией был внесён Ричи (2002)[8].

В сообществе по искусственному интеллекту большинство исследователей юмора занимались скорее теоретическими рассуждениями[9][10]. Марвин Минский делал предварительные замечания о том, как юмор можно рассматривать с точки зрения искусственного интеллекта или когнитивистики, развивая идеи Зигмунда Фрейда о том, что юмор — способ обойти внутренние ментальные «цензоры», контролирующие мысли и чувства. Уцсуми (1996) предложил логический анализ иронии, однако работа не была реализована[11]. Де Пальма и Вайнер (1992) занимались эпистемологической репрезентацией загадок[12]. Эфрат (1990) создал программу, способную разбирать ограниченный круг двусмысленных предложений и находить альтернативные юмористические интерпретации[13]. Меле (2002) предложил формализацию, основанную на когнитивном подходе (модель вера-желание-намерение), различая «реальный» и «фиктивный» юмор[14].

Один из наиболее масштабных проектов по созданию прототипа компьютерного юмора был реализован Бинстедом и Ричи (1997)[15]. Они создали формальную модель синтаксических и семантических закономерностей, лежащих в основе простейших типов каламбурных загадок, где используется фонетическая амбиграмма. Основные механизмы построения фонетической двусмысленности включают замену слогов, подстановку слов и метатезу.

Большинство компьютерных подходов так или иначе связаны с теорией несоответствия (инконгруэнтности)[5][16]. Эта теория опирается на элемент неожиданности: юмор возникает из конфликта между ожидаемым и настоящим развитием событий в шутке, что объясняет наличие двусмысленности и игры смыслов. В последние годы проводились специализированные семинары по компьютерному юмору, способствовавшие консолидации исследований. В 2001 году Ричи опубликовал обзор современного состояния темы[17].

Генераторы шуток

Генерация каламбуров

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

Простые прототипы генерации каламбуров появились в начале 1990-х годов[18], они базировались на программе VINCI для генерации естественного языка. Одним из таких примеров стала разработанная в 1994 году Джейп (англ. Joke Analysis and Production Engine, JAPE) Грэмом Ричи и Кимом Бинстедом, предназначенная для создания вопросно-ответных каламбуров на основе общего, неюмористического словаря[19]. Примеры, сгенерированные JAPE:

В: Чем отличаются листья от машины?
О: Одни ты подметаешь (brush) и сгребаешь (rake), а на другой — спешишь (rush) и тормозишь (brake).
В: Как называется необычный рынок?
О: Странный базар (bizarre bazaar).

Со временем подход совершенствовался. В 2007 году был описан генератор шуток STANDUP, реализованный на языке Java[20].[21] STANDUP тестировался на детях с нарушениями коммуникативных функций, в том числе с детским церебральным параличом, для анализа пользы при обучении языку. Название проекта расшифровывается как System To Augment Non-speakers' Dialog Using Puns. Участники эксперимента с воодушевлением воспринимали «языковое поле» и показывали заметный прогресс в ряде тестов[20][22].

Распознавание шуток

В 2011 году Киддон и Брун разработали статистический алгоритм машинного обучения для определения, содержит ли фраза двусмысленную интенцию типа «that’s what she said» (с англ. «как бы сказала она»)[23]. Существует открытое программное обеспечение — система TWSS, реализующая этот подход[24].

Тейлор и Мазлак создали программу для распознавания шуток в жанре «тук-тук»[25]. Такого рода исследование важно для анализа взаимодействия «человек—компьютер»[26].

В 2006 году Михалцеа и Страппарава описали ряд методов машинного обучения для автоматической классификации текстов на «юмористические» и «неюмористические»[27].

Такизава с соавторами (1996) сообщили о программе для обнаружения каламбуров на японском языке[28].

Применения

Известно, что люди зачастую взаимодействуют с компьютерами так же, как с другими людьми, — включая проявления личности, вежливость, лесть и внутригрупповой фаворитизм. Поэтому отдельно исследуется роль юмора во взаимодействии человек—компьютер. В частности, выдвигалась идея использовать гуморные элементы в интерфейсах пользователя, чтобы повысить эффективность коммуникации[17][29][30].

Крейг МакДона создал Mnemonic Sentence Generator, который превращал пароли в комические предложения. Согласно теории несоответствия, такие бессмысленные, но забавные фразы легче запоминать. Например, пароль AjQA3Jtv преобразуется в фразу «Arafat joined Quayle’s Ant, while TARAR Jeopardized thurmond’s vase» (с англ. «Арафат присоединился к муравью Куэйла, а TARAR подверг опасности вазу Термонда»)[31].

Связанные исследования

Джон Аллен Паулос известен своими работами по математическим основам юмора[32]. В книге «Mathematics and Humor: A Study of the Logic of Humor» («Математика и юмор: исследование логики юмора») Паулос показывает общие структуры между юмором и формальными науками (математика, лингвистика) и строит математическую модель шуток, основанную на теории катастроф.

Примечания

Литература

  • Computational humor, Binsted, K.; Nijholt, A.; Stock, O.; Strapparava, C.; Ritchie, G.; Manurung, R.; Pain, H.; Waller, A.; O’Mara, D. // IEEE Intelligent Systems, том 21, № 2, 2006, с. 59-69, DOI: 10.1109/MIS.2006.22.
  • O. Stock, C. Strapparava, A. Nijholt (ред.) «The April Fools' Day Workshop on Computational Humour». Proceedings of Twente Workshop on Language Technology 20 (TWLT20), ISSN 0929-0672, ITC-IRST, Тренто, Италия, апрель 2002, 146 с.