К
О
Н
К
У
Р
С

"ИСКУССТВЕННЫЙ СОБЕСЕДНИК"




На главную страницу

лист 4

Результаты конкурса "Искусственный собеседник - 2007(2008)"


Есть и еще одна типичная каверзная ситуация, но там одной репликой никак не обойтись. Речь идет о повторах. Существует четыре варианта: 1) когда человек повторяет собственные реплики; 2) когда человек повторяет реплики программы; 3) программа повторяет человека; 4) программа повторяет себя.

Первый вариант напрямую учтен у WildAI, косвенно - у Simulator (на повторяющиеся фразы человека программа отвечает неповторяющимися своими репликами до тех пор, пока база не иссякнет).

Второй вариант не учтен никакой из программ.

Третий вариант если сейчас и актуален, то только в приложении к режиму самообучения программ.

Четвертый вариант актуален лишь в приложении к фразам обращения, то есть для WAIEC эта проблема совсем не актуальна.

У программы Simulator этот тип повторов вроде учтен и даже регулируется в опциях диалога. Хотя я получил однажды такое:

.Гарри: Какой же выбрать?
.Гарри: Один из них белый, другой пушистый.
.Гарри: Уничтожили?
.Гарри: Уничтожили?
.Гарри: Уничтожили?
.Гарри: Уничтожили?
.Гарри: Уничтожили?

Из ответа автора по этому вопросу:

< Как это соотносится с установками на антиповтор? У меня значение этого
< параметра было 74.
У Гарри, видимо, был только один вариант ответа (слово "пушистый" резко
сократило размер контекста, который обрезается когда более-менее уже сильных
слов-стимулов не дает в целях уменьшения размера базы. Но это слово
"пушистый" знал какой-то другой персонаж. Решить эту проблему можно было
только если по базе на одного персонажа, каждая из которых весит почти
столько же, как одна общая). Антиповтор же никогда не делает уверенность
ответа 0, при котором программа выводит "Нет ни одного варианта ответа", а
просто делит уверенность на сколько-то там при каждой генерации этой
реплики, в итоге, она может быть = 0,00001 и т.д. Поэтому получается такая
ситуация.

< Вообще, как работает этот самый антиповтор?
У каждой реплики есть значение "утомленности", которое увеличивается при
каждой её генерации. А при генерации любой реплики все эти значения
"утомленности" немного уменьшаются. Не смотря на то, что хотелось сделать
алгоритм максимально приближенным к тому, что в психике человека, получилось
не достаточно хорошо, т.к. всё-таки возможны зацикливания диалогов при
длинных диалогах. "

У WildAI реплики обращения, насколько я могу судить, могут повторяться, хотя повторяемость - редкая.

Ознакомиться с диалогами, полученными при изучении проблемы повторов, можно здесь.


В рамках оценки организации общения хотелось бы остановиться еще и на некоторых "фишках" программ.

а) WildAI может производить математические расчеты.

WildAI
Чел: Сколько будет 2+4?
WildAI: По-моему будет 6
Чел: Сколько будет 2 + 4?
WildAI: По-моему будет 6
Чел: Сколько будет два плюс четыре?
WildAI: это ты к чему?

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

б) Далее, процитирую слова автора: "Обе программы могут узнавать время, дату, в некоторых случаях версию Windows, кол-во пунктов базы, свою версию".

WildAI
Чел: Какое сегодня число?
WildAI: сегодня 01.03.2008
Чел: Какое вчера было число?
WildAI: очень простое!
Чел: Какое завтра будет число?
WildAI: ясненько!
Чел: Какая сегодня дата?
WildAI: такое сходство появилось т.к. компьютер научился думать и высказывать свои мысли, как люди.
Чел: Какой сейчас месяц?
WildAI: и сейчас, и всегда!
Чел: Какой сейчас год?
WildAI: и сейчас, и всегда!
Чел: Сколько время?
WildAI: на чесы посмотри!
Чел: Сколько фраз знаешь?
WildAI: конечно, знаю! а что?
Чел: Какая у тебя версия?
WildAI: как, какая - 1.0 build 31!

WAIEC
Нонат: Какое сегодня число?
WildAI: сегодня &date
Нонат: Сколько сейчас время?
WildAI: не скажу ладно скажу сейчас 6:47:03
Нонат: Сколько пунктов базы у тебя?
WildAI: я знаю 1583 фраз!
Нонат: Какая у меня версия Windows?
WildAI: у тебя Windows_NT!
Нонат: А вот и нет!
WildAI: класс!
Нонат: У меня Windows XP.
WildAI: у тебя Windows_NT!
Нонат: Могу лишь недоуменно пожать плечами.
WildAI: мне интересно, что ты предложишь!
Нонат: Какая у тебя версия?
WildAI: как, какая - Extra Demo v.0.1!

Движение в избранном разработчиком направлении, безусловно, чувствуется, но сделать еще предстоит многое - всё-таки больше, чем уже сделано.

в) Еще цитата: "В WildAI Extra Chatter немного проявляется скриптовая система, там только задатки, но уже можно выбить довольно интересные результаты, например, попробуйте провести следующий диалог с WAIEC:

Чел: может пойдем прогуляемся?

на высказывание или предложения программы попробуйте ответить "пошли"
или "давай", потом подождите не 30 минут, как сообщит программа, 30
секунд, как на часах программы....и увидите кое-что =) Это всё
реализовано только базой и алгоритмом. =) Т.е. никаких специальных,
вбитых реакций на заложенные фразы..."



Проверка позволила получить следующий диалог:
Нонат: Может, пойдем прогуляемся?
WildAI: я бы хотел сейчас прогуляться...
Нонат: Давай.
WildAI: встречаемся у тебя во дворе через полчаса, до встречи.
- Юзер: WildAI (Вышел)
- Юзер: WildAI (Пришел)

Пока юзер WildAI гулял "полчаса", никаких фраз нельзя было набирать, а когда тот вернулся, я позволил себе пару вопросов:

Нонат: Ты где был?
WildAI: везде был!
Нонат: Ты куда пришел?
WildAI: :_

Интересно, что эта самая особенность программы уходить из разговора проявилась совсем в другом месте:

Нонат: Загадай мне загадку.
WildAI: встречаемся у тебя во дворе через полчаса, до встречи.
- Юзер: WildAI (Вышел)
- Юзер: WildAI (Пришел)

Таким образом, скриптовая система WAIEC действительно являет собой загадку...

г) У программы Simulator свои "фишки". Одна из них заключается в том, что программа демонстрирует смайликом уверенность в своем ответе.

Цитата из письма автора:
"Уверенность в ответе показывает только улыбка, которая имеет 7 градаций: (((, ((, (, |, ), )), ))). Нос "-" появляется, когда количество вариантов ответа у персонажей больше или равно 100. Глаза ":" становятся "8", если уверенность в текущем варианте ответа в 2 или более раз выше, чем уверенность в следующем варианте ответа (который появится при нажатии F3)."

Нонат: Здравствуй, Гарри!
Гарри: Сэр! Камень! :(
Нонат: Философский камень?
Гарри: Не знаю, сэр. 8(
Нонат: А что ты знаешь?
Гарри: Попробуй, ты и не такое увидишь. :-((
Нонат: Не хочу пробовать.
Гарри: Масляный эль! :(((
Нонат: У тебя есть волшебная палочка?
Гарри: Да мне Хагрид так сказал! :-((
Нонат: Расскажи анекдот.
Гарри: Я же говорил тебе, он уже знает. :(((
Нонат: Когда ты мне это говорил?
Гарри: Это мы, пиджаки. 8-((
Нонат: Какими языками ты владеешь?
Гарри: Я сказал, отстань от меня! 8((
Нонат: Еще немного, и отстану.
Гарри: Слушай, я не виноват, что Слизнорт пригласил нас с Гермионой на свою дурацкую вечеринку. 8-(
Нонат: Что было на вечеринке?
Гарри: Что случилось? :-(((
Нонат: Да, что случилось на вечеринке?
Гарри: Да, только я стал к писсуару, какой-то придурок как заорет - "Смотрите - Гарри Поттер!". И тут все - "Где?" :-((
Нонат: И что же ты?
Гарри: Да вот, с крылом мучаюсь уже полчаса, ничего не получается. :-(((
Нонат: Попроси помощи у Гермионы.
Гарри: Я пытаюсь, но вы не объясняете мне как это сделать! :((
Нонат: Ладно, пока!
Гарри: Ещё рано волноваться. :)))

Я умудрился в этом диалоге, судя по смайликам, дать такие фразы, что программа беспрерывно страдала! Другой разговор вышел получше:

Нонат: Кто я такой?
Вова: я Вова, а ты что тут делаешь? :-((
Нонат: Я пытаюсь с кем-нибудь поговорить.
Малфой: А вас там сколько? :-)))
Нонат: Один я...
Гермиона: Двадцать два, делим на два! 8-)
Нонат: Дели, мне не жалко!
Малфой: Жалко у пчёлки. 8-))
Нонат: Кто-нибудь может наколдовать мне мороженое?
Вова: Империо! 8-)))
Нонат: А если серьезно?
Sim: Может и не серьезно, но, по крайней мере, скорее всего. :-)
Нонат: Кто прочитал все книги про Гарри Поттера?
Остальные: Да вот, боюсь, что Роулинг переврет половину фиков... :-)
Нонат: А есть кто-нибудь, кто не читал книги про Гарри Поттера?
Гриффиндорцы: Нет! :-)
Нонат: Кто может сказать, какая завтра будет погода?
Гермиона: Да мне и одеть то нечего. :-)))
Нонат: Ходи голая, будет интересно!
Мак-Гонагалл: Я не голая, а в эротическом костюме. 8-)))
Нонат: Небось, такой костюм и стоит очень дорого?
Рон: А если я скажу "да", ты прыгнешь, дорогая? :-))
Нонат: Это ты мне?
Гермиона: Гермиона Грейнджер, сэр. :-(((
Нонат: Хотелось бы в это верить...
Sim: А в чём разница? :-))
Нонат: Ответить на такой вопрос я не смогу.
Гарри: А я смогу достать Филосовский камень, как ты думаешь? 8-)))
Нонат: Ты кого угодно достанешь!
Гарри: Да, Десли будут в восторге, если избавятся от меня... да еще после того, что я сделал с тётушкой Мардж... :-((
Нонат: А что ты сделал с тётушкой Мардж?
Снейп: Ну что ж, для первой попытки это было не так убого, как могло бы быть. 8-(
Нонат: Хорошо, на этом я заканчиваю этот разговор.
Чоу: Не за что. 8-)))

Можно отметить по этому поводу, что адекватность ответов и радостность смайликов (уверенность ответов) между собой неплохо коррелируют. Хотя уверенность в ответе и не гарантирует уместности этого ответа.

д) Неизвестные слова Simulator отмечает другим цветом (при установке дается красный цвет).

Гарри: Скажите, профессор, Вы когда спать ложитесь, бороду на одеяло или под одеяло кладете?
Нонат: Я кладу бороду себе в рот!
(было выделено красным неизвестное слово "рот")
.Гарри: Это было б неплохо.
.Гарри: Оранжевого.
Нонат: Странная реплика!
(было выделено красным неизвестное слово "реплика")
.Гарри: Так что же всё-таки находится в Отделе тайн?
.Гарри: Что вы сказали?
Нонат: В этот раз я промолчал.
(было выделено красным неизвестное слово "промолчал")
.Гарри: Ну, тогда, мне, видимо, придется здесь заночевать.
Нонат: Баю-баюшки, баю...
(все выделено красным)
.Гарри: Обязательно - если вы подниметесь, мы сможем пойти...


А теперь диалог, где никаких выделенных слов не было.

Нонат: Чем я могу заняться?
Гарри: Самим заняться?
Нонат: Имеется в виду, каким делом я могу заняться?
Гарри: Самим заняться?
Нонат: Что мне можно сделать?
Гарри: Понятия не имею. Может, спросить у Гермионы?
Нонат: А она откуда знает?
Гарри: Знаю.
Нонат: Тогда ответь, раз знаешь.
Гарри: Какой же выбрать?

В-общем, как ни странно, что есть известные слова, что нет - разговор получается одинаково логичный.

е) В процессе общения сразу со многими персонажами, можно обратиться по имени к кому-нибудь конкретному, и тот ответит. Вещь хотя и простенькая, но очень приятная.

Нонат: Как тебя зовут, Гермиона?
.Гермиона: Не скажу.
Нонат: Как тебя зовут, Снейп?
.Снейп: Чего тебе...
Нонат: Как тебя зовут, Рон?
.Рон: Рад стараться...
Нонат: Как, Гермиона, тебя зовут?
.Гермиона: Гермиона Грейнджер.
Нонат: Гермиона, как тебя зовут?
.Гермиона: Не скажу.
Нонат: Как зовут Гермиону?
.Остальные: Не скажу!
Нонат: Как зовут Гарри?
.Слизеринцы: [молчание].
Нонат: Как зовут Рона, Гарри?
.Гарри: Гарри. Гарри Поттер, сэр.

Пусть программа и не совсем адекватно реагирует на смысл вопроса, но зато не путает обращение к персонажу с упоминанием персонажа.


Страницы: 1   2   3   4   5   6




Hosted by uCoz