Построение роботов-поисковиков и снифферов
Самый простой вариант применения статистической лингвистики — это создание робота-странника, который в режиме
5 Заказ 105
автопилота будет лазать по ссылкам в html-документах и искать необходимого человека, анализируя тексты. В усложненном варианте можно построить систему автоматического слежения за сообщениями в html- или irc-чатах. Программа будет нацелена на отслеживание всех переговоров (дифференцируя их по участникам), анализ текстов и поиск заданных объектов. Хакер может запросто сменить IP-адрес, зайти под другим эккаунтом или ником, но изменить свой лексикон вряд ли догадается. Впрочем, подобная система легко сбивается с толку. В более продвинутых технологиях могут создаваться или сниффер, анализирующий проходящие пакеты, или вирус-шпион, путешествующий по компьютерам и анализирующий тексты для выявления заданного автора сообщений.
Построение роботов-автоответчиков
Имея готовую матрицу рассчитанных марковостей с порядком как минимум выше пятого, можно построить подобие автоответчика. Генерируется псевдослучайная последовательность с большим периодом, например, при использовании математического аппарата конечных полей Галуа. С помощью случайной последовательности матрица марковостей обращается вспять, т.е., используя значение выброшенного последовательностью случайного числа, статистический вес (вероятность появления того или иного символа, взятого из матрицы) и предысторию символа, можно высчитывать следующий символ сообщения. Такое случайное моделирование на выходе выдает осмысленный текст. Уже вполне осмысленный текст получается при обращении марковости четвертого порядка. Среднее количество символов в словах русского языка равно восьми, и марковости шестого порядка вполне достаточно для генерации осмысленного текста. Для построения программного робота, способного к диалогу, нужно усложнить анализ введением расчета корреляций (или зависимостей, выражаясь обиходным языком). Производится расчет корреляций в зависимости от отклика челове-
ка на задаваемые ему фразы. Или берется литературное произ- ведение, изобилующее диалогами, и рассчитываются корреляции в потоках сообщений вопрос — ответ. Программный робот обучается диалогу. Это можно применить для эмуляции присутствия в html-чате, ire-цепях или ICQ. Так что следует критически отнестись к тому, что собеседник выдает осмысленные, но бестолковые ответы: возможно, вы разговариваете с хорошо построенным роботом. Чтобы проверить это предположение, можно повторить вопрос, заданный собеседнику. Программа обычно зацикливается и начинает, как попугай, повторять одно
и то же в ответ на один и тот же вопрос.
■ ■ '■ ■
■■■■■.■■ '
.■■■■'
■■'■■■■■'■'■'■ .... .. ; ■..
| ■ . ■' ■ ■■ ■ :
: ' '-.,■>:
■' .. . :
ЗАКЛЮЧЕНИЕ
:,'.
Тенденции развития и совершенствования компьютерных технологий свидетельствуют о широком применении их в различных областях человеческой деятельности. Цель настоящего учебного пособия — обучить студентов эффективно применять на практике возможности информационных технологий, в том числе сети Интернет. Особенностью данного пособия является использование современных программных продуктов в области обработки лингвистических данных. В результате изучения студенты смогут самостоятельно пользоваться различными программами в этой области, а в дальнейшем установить новые программы на компьютер и изучить их возможности.
Данное пособие не исчерпывает всей сложности проблем в такой новой области знаний, как компьютерная лингвистика. Изучение этой науки тесно связано с исследованиями в области искусственного интеллекта. На этом пути предстоит сделать еще много открытий. Спектр приложений компьютерной лингвистики простирается от простейших программ обработки текста, транслитерации, проверки правописания и других до таких сложных, как программы автореферирования, поисковые системы, программы машинного перевода, программы распознавания и синтеза речи, психолингвистические программы, системы обработки естественного языка с использованием технологий нейронных сетей.
ПРИЛОЖЕНИЕ
■ |
:■-.,