Что изучает компьютерная лингвистика
Что изучает компьютерная лингвистика
Термин «компьютерная лингвистика» в различных терминологических системах.
Подходы к определению компьютерной лингвистики через объект исследования, предмет, методы, инструментарий. Компьютерная лингвистика как наука и область исследовательских и конструкторских разработок.
Компьютерная лингвистика в ряду других лингвистических дисциплин, ее цели и задачи.
Предмет и объект компьютерной лингвистики.
Компьютерная лингвистика как учебный предмет для филологических и математических специальностей.
Основные центры изучения компьютерной лингвистики.
Образовательные ресурсы по компьютерной лингвистике.
З ачем лингвисту компьютер
Светлана Тимошенко из Лаборатории компьютерной лингвистики ИППИ РАН.
Термин «компьютерная лингвистика»
Компьютерная лингвистика ( КЛ ) имеет множество различных дефиниций и определений.
направление в лингвистике, связанное с получением новой информации о тексте, речи и языке в целом с использованием компьютеров, математических методов и методов информационного моделирования
о бласть знаний, решающая проблемы общения человека и компьютера на естественном языке
набор задач, которые мы можем решить, обрабатывая языки, тексты, созданные на определенном языке, при помощи компьютера
область Искусственного Интеллекта, занимающаяся компьютерным моделированием владения языком и решением прикладных задач автоматической обработки текстов и звучащей речи
Для эффективной ориентации в этом множестве: необходимо различать термины «определение» и «дефиниция» и знать научное значение лексемы «термин». См. Понятие термина
Многообразие дефиниций и определений концепта «компьютерная лингвистика» объясняется тем, что он рассматривается с позиции разных терминосистем.
Можно выделить три уровня понимания компьютерной лингвистики, как области человеческой деятельности (со своими терминологическими системами):
На научно-математическом уровне компьютерная лингвистика рассматривается как область формализации и математического моделирования феноменов как естественного, так и искусственных (формальных) языков.
На инженерном уровне компьютерная лингвистика рассматривается как область алгоритмизации и автоматизации обработки формально-математических моделей языковых феноменов, воплощения их в информационно-технологические комплексы (программные и аппаратные).
На прикладном уровне компьютерная лингвистика рассматривается как область применения современных информационных сервисов, средств и систем к языковым феноменам (порождение, анализ, обработка устных и письменных текстов).
Теория и практика в компьютерной лингвистике
Владимир Селегей, директор по лингвистическим исследованиям компании ABBYY, заведующий кафедрами компьютерной лингвистики в РГГУ и МФТИ, председатель Оргкомитета ведущей российской конференции по компьютерной лингвистике «Диалог».
Подходы к определению компьютерной лингвистики
Определить компьютерную лингвистику можно попробовать определить на основе различных видов определений:
Реальных (раскрывающих существенные признаки самого предмета, отвечающих на вопрос, что представляет собой тот или иной предмет),
Номинальных (раскрывающих значение термина, вводимого для обозначения предмета; отвечающих на вопрос, что обозначает то или иное слово или выражение),
Явных (в которых выражаются существенные признаки определяемого предмета и имеющие вид Dfd = Dfn:
Генетических (указывают на происхождение предмета, на способ его образования. Неявные определения
Неявных (в котором содержание понятия выводится из отношения к другим понятиям):
Контекстуальных (определяющих через контекст (пространство имен, языковое окружение)).
Остенсивных (путём указания на определяемый предмет).
Аксиоматических (в которых содержание понятий задается системой аксиом, в которых это понятие встречается).
Компьютерная лингвистика, как область деятельности, включает в себя основные структурные компоненты деятельности и может быть определена относительно любого их них:
цели (задач) деятельности
Это отражается в различных дефинициях компьютерной лингвистики:
направление в прикладной лингвистике, ориентированное на использование компьютерных инструментов для моделирования функционирования языка
д еятельность по формализации знаний о естественном языке на разных его уровнях с целью использования в компьютерных технологиях
набор задач, которые мы можем решить, обрабатывая языки, тексты, созданные на определенном языке, при помощи компьютера
междисциплинарная ветвь лингвистики, занимающаяся моделированием языка с использованием компьютеров
направление в лингвистике, связанное с получением новой информации о тексте, речи и языке в целом с использованием компьютеров, математических методов и методов информационного моделирования.
Компьютерная лингвистика как дисциплина
Борис Орехов, Центр цифровых гуманитарных исследований НИУ ВШЭ
КЛ в ряду лингвистических дисциплин
Связь компьютерной лингвистики с другими областями проблематична:
Татевосов Сергей Георгиевич (доктор фил. наук, профессор кафедры теоретической и прикладной лингвистики МГУ имени М.В. Ломоносова) :
Одна из самых болезненных проблем современной лингвистики состоит в том, что статус лингвистики как единой науки в настоящее время весьма проблематичен.
В действительности существует три разных лингвистики – теоретическая, описательная, прикладная.
Большинство тех, кто называет себя лингвистами, трудится в рамках одного из этих направлений и недоуменно взирает на происходящее внутри других.
Т ри лингвистики устроены как три различные науки, с собственной терминологией и даже с собственной теорией. Лингвистика, кажется, единственная наука, устроенная подобным образом.
Разрыв между теорией и практикой не преодолен; напротив, возникновение компьютерной лингвистики разделило лингвистов на тех, кто остался в русле теоретической лингвистики и тех, кто ушел в новую науку.
Вместе с тем, компьютерная лингвистика использует результаты и достижения других лингвистических направлений и сама оказывает влияние как на п рикладную лингвистику, так и на теоретическ ую лингвистик у (и нормативную (предписательную, прескриптивную), и дескриптивную, описывающую).
Предмет и объект КЛ
Объектом компьютерной лингвистики является язык.
Однако, развитие компьютерной лингвистики проблематизировало сам концепт «естественный язык» и включило в проблемное поле все множество искусственных языков (в том числе компьютерных).
Определение границ предметной области такого научного направления как «Компьютерная лингвистика» проблематично в связи с отсутствием стабильного объективного предмета этого определения.
Н азвание «Computational Linguistics» ( в ычислительная лингвистика) утвердилось в 60-70 гг. за областью использовани я статических методов в языкознании.
В СССР в 70-х годах получил распространение родственный термин «Математическая лингвистика». В связи с развитием компьютерных технологий и их активным приложениям в лингвистических задачах, этот термин как название области исследовательской деятельности трансформировался, и она получила более четкое определение «Компьютерная лингвистика».
На официальном сайте Association for Computational Linguistics (ACL) дается общее определение :
С точки зрения западного подхода основным направлением компьютерной лингвистики является Natural Language Processing (Автоматическая обработка естественного языка и речи).
При анализе документов (архивов конференций, содержания базовых сайтов) Ассоциации Компьютерной лингвистики COLING было отмечено, что западные лингвисты включают следующие прикладные направления в область компьютерной лингвистики:
Computational Morphology and Syntax (Компьютерная морфология и синтаксис).
NLP (Автоматическая обработка языка и речи).
Digital Libraries (Электронные библиотеки).
Information Extraction (Извлечение информации).
Information Retrieval (Информационный поиск).
Knowledge Representation and Semantics (Представление знаний и семантика).
Machine Translation (Машинный перевод).
Speech Processing (Распознавание и синтез речи).
Statistical Language Processing (Статистическая обработка языка).
Summarization (Реферирование и аннотирование).
Ю.Н. Марчук определяет компьютерную лингвистику как «лингвистические основы информатики», что собственно предполагает решение задач, связанных с разработкой и использованием искусственных языков, обеспечивающих общение человека с компьютером.
Компьютерная лингвистика как учебный предмет
Компьютерная лингвистика первоначально вводилась как учебный предмет для математических специальностей и рассматривалась с точки зрения инструментария математического моделирвоания и алгоритмизации полученных моделей.
Проблема определения границ предметной области актуализировалась перед разработчиками программ учебных дисциплин в области прикладной и компьютерной лингвистики для гуманитарных специальностей.
Разработчики программы курса МГЛУ (Московского го. лингвистического университета) основное внимание уделяют компьютерному моделированию естественного языка в решении задач искусственного интеллекта, фундаментальным принципам моделирования языка, т.е. направлениям, которые связаны с моделированием общения человека и компьютера.
Разработчики программы курса в МГУ выделяют такие задачи и направления, как проблемы лингвистического обеспечения современных автоматизированных информационных систем, автоматическую обработку естественного языка, создание словарных и текстовых процессоров.
Основными направлениями, рассматриваемыми в курсе компьютерной лингвистики в РГ Г У являются: информационный поиск, машинный перевод, терминология, терминоведение, терминография, компьютерная лексикография, распознавание и синтез речи, проблемы обучения языку с помощью компьютера. Программа этого университета наиболее близка программе Ульяновского государственного технического университета.
Н а практике часто к компьютерной лингвистике относят практически все, что связано с использованием компьютеров в языкознании, в связи с чем и происходит путаница задач с практическими решениями.
Таким образом, при определении границ предметной области компьютерной лингвистики необходимо более четко разграничивать 2 точки зрения:
АВТОМАТИЧЕСКОЙ ОБРАБОТКИ ЯЗЫКА (Language Processing), что будет включать задачи анализа и моделирования языковой структуры, а именно:
графематический/фонематический анализ языка;
морфологический анализ;
лексико-грамматический анализ языка;
синтаксический анализ, или парсинг;
анализ и моделирование семантической структуры;
задача синтеза языковых элементов, в т.ч. генерация текстов;
автоматическая лингвостатистика.
ПРИКЛАДНЫЕ НАПРАВЛЕНИЯ КОМПЬЮТЕРНОЙ ЛИНГВИСТИКИ, а именно:
машинный перевод;
распознавание и синтез речи;
разработка и использование искусственных языков, в том числе языков программирования, языков информационных систем;
компьютерная лексикография и терминография;
лингвистические основы информационного поиска;
автоматическое индексирование, реферирование и классификация текстов;
автоматический контент-анализ и авторизация текстов;
гипертекстовые технологии представления текста;
корпусная лингвистика;
компьютерная лингводидактика.
Центры изучения и образовательные ресурсы по КЛ
Журнал ACL, Компьютерная лингвистика, является основным форумом для исследования в области компьютерной лингвистики и обработки естественного языка. С 1988 журнал был издан для ACL MIT Press.
Кафедра компьютерной лингвистики была открыта в Институте лингвистики РГГУ в 2011 году при участии компании ABBYY и поддержке российского отделения IBM. Кафедра готовит профессиональных лингвистов, способных эффективно работать в области разработки инновационных языковых компьютерных технологий. С 2012 года кафедра будет осуществлять подготовку магистрантов по программе «Компьютерная лингвистика» направления «Фундаментальная и прикладная лингвистика».
NLPub — каталог ресурсов для обработки естественного языка.
Школа лингвистики Высшей школы экономики
ScienceHub #06: Компьютерная лингвистика
Продолжая поездки по лабораториям ученых, мы попали в компанию ABBYY, и побеседовали с Анатолием Старостиным, руководителем группы семантического анализа и преподавателем кафедры «Компьютерная лингвистика» в МФТИ. Он рассказал о работе своей группы, направлениях компьютерной лингвистики в ABBYY и кто такие онтоинженеры.
Для начала нужно определиться с терминологией. Итак, компьютерная лингвистика – это наука, с одной стороне, о языке, а с другой стороны – о том, как работать с языком (не всегда естественным) с помощью компьютерных методов. Это наука, возникшая на стыке лингвистики и computer science. Компьютерная лингвистика под разными углами рассматривает естественный, формальный язык. В центре этой науки понятие языка, которое можно рассматривать с разных сторон. Его можно рассматривать, например, формально. Есть еще такая область, как математическая лингвистика, она возникла раньше компьютерной и представляет собой раздел математики, в котором есть свои теоремы, доказательства, формальные объекты.
В компьютерной лингвистике важно, что всегда в центре стоит практическая конкретная задача, которую нужно решить. Например, синтаксический автоматический анализ, машинный перевод, распознавание речи.
Что такое синтаксический анализ: когда есть стандартная для школьников задача – определить, где в предложении какие члены, какие слова главные, а какие – подчиненные, но сделать это без участия человека, автоматическим способом. Для этого у компьютера на входе есть цепочка символов, которую нужно правильно проинтерпретировать, разбить на слова, связать их между собой и построить синтаксическое дерево. Так как структура предложения естественного языка – древесная, и это понятный факт из обычной, не компьютерной лингвистики.
Омоним как проблема
Основной трудностью в синтаксическом анализе является проблема омонимии, когда два слова одинаково пишутся, но имеют разное значение, в этом случае машина должна понять, что именно имеется в виду.
Анатолий Старостин: «Омонимия возникает и на следующих уровнях. Например, когда мы пытаемся понять, как слова связаны друг с другом, есть типичный пример предложения, который всегда приводят: «Эти типы стали есть на складе». В этом предложении все виды омонимии представлены. С одной стороны, мы слышим, что какие-то люди начали питаться на складе, а с другой стороны, что на складе есть разные типы металла. Это типы стали? Или типы начали? Эта омонимия слышна. И если рисовать синтаксические деревья, то в одном случае сказуемым является слово «стали» (то есть форма глагола «стать»), а в другом случае сказуемым является слово «есть». Соответственно, если нарисовать два дерева, они будут разными. Это пример синтаксической омонимии».
Проблема в том, как автоматическим способом считывать контекст предложения и решать омонимы. Это одно из направлений в компьютерной лингвистике.
История
Компьютерная лингвистика как направление возникла в середине XX века. И первой задачей стразу стало сильно амбициозное по тем временам желание создать программу по автоматического перевода текста. При этом надо помнить, что компьютеры не отличались мощностью. И со временем люди пришли к осознанию того, насколько сложна эта задача.
Одновременно с этим было популярно направление, которое называется искусственный интеллект. Люди хотели, чтобы компьютер решал интеллектуальные задачи. Хотя искусственный интеллект – это более широкая область, чем компьютерная лингвистика, обработка естественного языка рассматривалась как его часть.
А. С. :«В какой-то момент был бум методов машинного обучения. Он случился, когда люди поняли, что с помощью методов математической статистики и специальных алгоритмов можно делать так, чтобы компьютер достаточно точно воспроизводил какое-то интеллектуальное поведение человека. Могу привести пример задачи, которая по сей день очень актуальна. Это задача нахождения в текстах именованных сущностей, когда нужно найти в тексте все упоминания персон или все упоминания организаций. Оказывается, что эту задачу можно решать аналитически (писать правила, сложные алгоритмы). А можно решать эту задачу другим образом, взяв пачку текстов, разметить в ней руками, где персоны, а где организации. После этого дать ее компьютеру, сказать: «Посмотри, в этих текстах персоны здесь, а организации – здесь». И с помощью методов научного обучения компьютер может впитать в себя это знание. И на других текстах, которые он до этого еще не видел, это повторить с довольно высокой точностью. То есть, он возьмет другой текст, которого он еще раньше не читал, и по аналогии с теми текстами угадает, где там упоминание персон, где – организаций. В этот момент он, естественно, воспользуется некоторыми признаками, которые он сам выучил. Эти признаки: большие буквы, какие-то морфологические формы. Есть разные зацепки и крючки, которые в тексте на самом деле есть. Мы читаем, понимаем, что это персона. А на самом деле персона обычно употребляется в таких-то контекстах. Мы даже этого не знаем. А компьютер с помощью метода машинного обучения может в себя впитать эти контексты и воспроизвести. Когда люди это поняли, возникло очень много приложений на базе машинного обучения. Методы машинного обучения сегодня очень существенная часть компьютерной лингвистики применительно к задачам анализа текстов с разных сторон. С помощью машинного обучения решается очень много разных задач».
Профессия «компьютерный лингвист»
Есть несколько основных профессий, использующихся для компьютерной лингвистики. Одна профессия – это программист. Другое дело, что обычно все программисты приходят работать недоученными, и их нужно доучивать. Но нужны и лингвисты, потому что они носители знаний о естественном языке. Лингвисты, попадая в зону компьютерной лингвистики, тоже должны получить новые знания, стать более структурными и формальными для работы в Computer science.
А. С.: «Компьютерная лингвистика предполагает сотрудничество лингвистов и программистов. И они идут друг другу навстречу. Программисты, которые занимаются компьютерной лингвистикой, поскольку они описывают объект, должны в нем разобраться. Любой программист, например, у нас (в ABBYY), понимает, что такое синтаксическое дерево, понимает, как слова связываются друг с другом, много знает о лингвистике, понимает, что такое род, число, падеж. И у нас в ABBYY в чистом виде делают специальные уровни абстракции. То есть, для лингвистов создают какие-то формальные языки, среды, внутри которых они работают, и которые приближены к их взгляду на мир. Они приближены к языку, естественно. И лингвисты варятся в этих средах. Но при этом все равно они хорошо знают, что здесь они сейчас напишут такое-то правило. И это правило будет подхвачено таким-то алгоритмом и так-то использовано. Такие представления у лингвистов есть. Без этого они не смогли бы работать. Подготовка лингвистов с оглядкой на компьютерную лингвистику существенно влияет и на самих лингвистов. Более или менее современные лингвисты сегодня (если говорить о людях, которые занимаются естественным языком, пишут теоретические работы об этом), давно перешли на представления о компьютерных методах».
Онтоинженеры в ABBYY
Базовый лингвистический компонент, который является фундаментом технологии Compreno, разрабатывают в ABBYY последние много лет. Это программа, которая строит семантико-синтаксические деревья.
Используя базовую прослойку, которая любое предложение на естественном языке превращает в семантико-синтаксическое дерево, можно решать более высокоуровневые задачи. В частности извлечение информации. Это разные аббревиатуры, в основном англоязычные, но они все имеют и русские аналоги. Собственно это комплекс задач вокруг анализа информации. Если на входе есть текст, то нужно его определенным образом проинтерпретировать. Этим Анатолий и занимается в своей группе в ABBYY.
А.С.: «Если говорить чуть детальней, что значит определенным образом проинтерпретировать и что-то извлечь? Задачи изучения информации всегда ставятся следующим образом. Первым делом описывается модель предметной области. То есть, мы всегда знаем, какую задачу мы решаем. И формально это фиксируем. Эта модель предметной области еще называется онтологией. Мы заранее рисуем, что нас интересуют, к примеру, персоны: организации, факты работы персон в организациях. Или нас интересуют локации: факты расположения организаций в локациях. То есть, мы рисуем концептуальную схему предметной области. И под призмой этой концептуальной схемы рассматриваем текст. То есть нам нужно из текста извлечь не всю информацию, которая есть в тексте (что было бы абсолютно неопределенно, потому что в любом тексте очень много разной информации). Нам нужно извлечь только ту информацию, которая укладывается в полочки, которые мы себе заранее нарисовали. Так ставятся задачи изучения информации».
Сами онтологии бывают очень разные, обычно они тематические. Это может быть онтология медицины, бизнеса, это может быть онтология спорта. Всегда сначала описывается онтология. Дальше начинается разработка. Это делают специальные люди, которые называются онтоинженерами.
Онтоинженеры — хороший пример симбиоза лингвиста и программиста, обычно, это выпускники математических вузов, потому что они должны хорошо концептуализировать действительность, разбивать задачи на подзадачи, понимать, где какие сущности, как они связаны. С другой стороны, они должны хорошо представлять себе, что такое семантико-синтаксические деревья, то есть иметь лингвистические знания.
А. С.: «Онтоинженеры садятся и на высокоуровневом языке пишут правила. На входе этот язык получает семантико-синтаксические деревья, а на выходе порождает концептуальный граф соответствующей модели предметной области. Простой пример, у вас в компании есть персоны, организация и факты работы. И у вас есть предложение «Вася работает в ABBYY». Программа должна извлечь персону «Вася» (то есть конкретный экземпляр концепта персоны), извлечь организацию ABBYY (конкретный экземпляр концепта организация) и понять, что эти два экземпляра связаны между собой отношением работы. Это типичный пример извлечения информации. Сложность здесь в том, что в естественном языке один и тот же концепт можно выражать очень разными способами. Это всегда огромное многообразие способов сказать одно и то же. Можно сказать: «Вася сотрудник ABBYY». Можно сказать: «Вася работает в ABBYY». Можно сказать: «Вася был уволен из ABBYY», и это все равно будет значит, что он когда-то был сотрудником. Можно сказать: «Вася работает в ABBYY на полставки». Все эти фразы надо понять и свести к общему знаменателю. Вот задача извлечения информации в модельном виде».
Если подытожить, что можно сказать, что компьютерная лингвистика становится инструментом извлечения информации оттуда, откуда раньше ее не могли извлечь.
А.С. :«Если кто-то положил в структурированную базу данных, мы взять можем, потому что они структурированы. Надо только разобраться в формате, то есть в том, как они их выложили. А если это написано текстом, то, казалось бы, это может понять только человек. Оказывается, что с помощью таких методов можно написать программы, которые поймут вместо человека. Это, грубо говоря, конвертеры неструктурированной информации в структурированную. Вот что мы создаем в рамках моей группы в ABBYY».
Все то же самое, но в видео формате можно узнать здесь.
КОМПЬЮТЕРНАЯ ЛИНГВИСТИКА
КОМПЬЮТЕРНАЯ ЛИНГВИСТИКА, направление в прикладной лингвистике, ориентированное на использование компьютерных инструментов – программ, компьютерных технологий организации и обработки данных – для моделирования функционирования языка в тех или иных условиях, ситуациях, проблемных сферах и т.д., а также вся сфера применения компьютерных моделей языка в лингвистике и смежных дисциплинах. Собственно, только в последнем случае и идет речь о прикладной лингвистике в строгом смысле, поскольку компьютерное моделирование языка может рассматриваться и как сфера приложения информатики и теории программирования к решению задач науки о языке. На практике, однако, к компьютерной лингвистике относят практически все, что связано с использованием компьютеров в языкознании.
Как особое научное направление компьютерная лингвистика оформилась в 1960-е годы. Русский термин «компьютерная лингвистика» является калькой с английского computational linguistics. Поскольку прилагательное computational по-русски может переводиться и как «вычислительный», в литературе встречается также термин «вычислительная лингвистика», однако в отечественной науке он приобретает более узкое значение, приближающееся к понятию «квантитативной лингвистики». Поток публикаций в этой области очень велик. Кроме тематических сборников, в США ежеквартально выходит журнал «Компьютерная лингвистика». Большую организационную и научную работу проводит Ассоциация по компьютерной лингвистике, которая имеет региональные структуры (в частности, европейское отделение). Каждые два года проходят международные конференции по компьютерной лингвистике – COLING. Соответствующая проблематика обычно бывает широко представлена также на различных конференциях по искусственному интеллекту.
Инструментарий компьютерной лингвистики.
Компьютерная лингвистика как особая прикладная дисциплина выделяется прежде всего по инструменту – т.е. по использованию компьютерных средств обработки языковых данных. Поскольку компьютерные программы, моделирующие те или иные аспекты функционирования языка, могут использовать самые различные средства программирования, то об общем понятийном аппарате компьютерной лингвистики говорить вроде бы не приходится. Однако это не так. Существуют общие принципы компьютерного моделирования мышления, которые так или иначе реализуются в любой компьютерной модели. В их основе лежит теория знаний, первоначально разрабатывавшаяся в области искусственного интеллекта, а в дальнейшем ставшая одним из разделов когнитивной науки. Важнейшими понятийными категориями компьютерная лингвистика являются такие структуры знаний, как «фреймы» (понятийные, или, как принято говорить, концептуальные структуры для декларативного представления знаний о типизированной тематически единой ситуации), «сценарии» (концептуальные структуры для процедурного представления знаний о стереотипной ситуации или стереотипном поведении), «планы» (структуры знаний, фиксирующие представления о возможных действиях, ведущих к достижению определенной цели). Тесно связано с категорией фрейма понятие «сцена». Категория сцены преимущественно используется в литературе по компьютерной лингвистике как обозначение концептуальной структуры для декларативного представления актуализованных в речевом акте и выделенных языковыми средствами (лексемами, синтаксическими конструкциями, грамматическими категориями и пр.) ситуаций и их частей.
Определенным образом организованный набор структур знаний формирует «модель мира» когнитивной системы и ее компьютерной модели. В системах искусственного интеллекта модель мира образует особый блок, в который в зависимости от выбранной архитектуры могут входить общие знания о мире (в виде простых пропозиций типа «зимой холодно» или в виде правил продукций «если на улице идет дождь, то надо надеть плащ или взять зонтик»), некоторые специфические факты («Самая высокая вершина в мире – Эверест»), а также ценности и их иерархии, иногда выделяемые в особый «аксиологический блок».
Большинство элементов понятий инструментария компьютерной лингвистики омонимично: они одновременно обозначают некоторые реальные сущности когнитивной системы человека и способы представления этих сущностей, используемые при их теоретическом описании и моделировании. Иными словами, элементы понятийного аппарата компьютерной лингвистики имеют онтологический и инструментальный аспекты. Например, в онтологическом аспекте разделение декларативных и процедурных знаний соответствует различным типам знаний, имеющимся у человека – так называемым знаниям ЧТО (декларативным; таково, например, знание почтового адреса какого-либо NN), с одной стороны, и знаниям КАК (процедурным; таково, например, знание, позволяющее найти квартиру этого NN, даже не зная ее формального адреса) – с другой. В инструментальном аспекте знание может быть воплощено в совокупности дескрипций (описаний), в наборе данных, с одной стороны, и в алгоритме, инструкции, которую выполняет компьютерная или какая-либо другая модель когнитивной системы, с другой.
Направления компьютерной лингвистики.
Сфера КЛ весьма разнообразна и включает такие области, как компьютерное моделирование общения, моделирование структуры сюжета, гипертекстовые технологии представления текста, машинный перевод, компьютерная лексикография. В узком смысле проблематика КЛ часто связывается с междисциплинарным прикладным направлением с несколько неудачным названием «обработка естественного языка» (перевод английского термина Natural Language Processing). Оно возникло в конце 1960-х годов и развивалось в рамках научно-технологической дисциплины «искусственный интеллект». По своей внутренней форме словосочетание «обработка естественного языка» охватывает все области, в которых компьютеры используются для обработки языковых данных. Между тем в практике закрепилось более узкое понимание этого термина – разработка методов, технологий и конкретных систем, обеспечивающих общение человека с ЭВМ на естественном или ограниченном естественном языке.
Бурное развитие направления «обработки естественного языка» приходится на 1970-е годы, что было связано с неожиданным экспоненциальным ростом количества конечных пользователей ЭВМ. Поскольку обучение языкам и технологии программирования всех пользователей невозможно, возникла проблема организации взаимодействия с компьютерными программами. Решение этой проблемы коммуникации шло по двум основным путям. В первом случае предпринимались попытки адаптации языков программирования и операционных систем к конечному пользователю. В результате появились языки высокого уровня типа Visual Basic, а также удобные операционные системы, построенные в концептуальном пространстве привычных человеку метафор – ПИСЬМЕННЫЙ СТОЛ, БИБЛИОТЕКА. Второй путь – разработка систем, которые позволяли бы взаимодействовать с ЭВМ в конкретной проблемной области на естественном языке или каком-то его ограниченном варианте.
Архитектура систем обработки естественного языка в общем случае включает блок анализа речевого сообщения пользователя, блок интерпретации сообщения, блок порождения смысла ответа и блок синтеза поверхностной структуры высказывания. Особой частью системы является диалоговый компонент, в котором зафиксированы стратегии ведения диалога, условия применения этих стратегий, способы преодоления возможных коммуникативных неудач (сбоев в процессе общения).
Среди компьютерных систем обработки естественного языка обычно выделяются вопросно-ответные системы, диалоговые системы решения задач и системы обработки связных текстов. Изначально вопросно-ответные системы стали разрабатываться как реакция на плохое качество кодировки запросов при поиске информации в информационно-поисковых системах. Поскольку проблемная область таких систем была сильно ограничена, это несколько упрощало алгоритмы перевода запросов в представление на формальном языке и обратную процедуру преобразования формального представления в высказывания на естественном языке. Из отечественных разработок к программам такого типа относится система ПОЭТ, созданная коллективом исследователей под руководством Э.В.Попова. Система обрабатывает запросы на русском языке (с небольшими ограничениями) и синтезирует ответ. Блок-схема программы предполагает прохождение всех этапов анализа (морфологического, синтаксического и семантического) и соответствующих этапов синтеза.
Диалоговые системы решения задач, в отличие от систем предшествующего типа, играют в коммуникации активную роль, поскольку их задача заключается в том, чтобы получить решение проблемы на основе тех знаний, которые представлены в ней самой, и той информации, которую можно получить от пользователя. Система содержит структуры знаний, в которых фиксируются типичные последовательности действий для решения задач в данной проблемной области, а также сведения о необходимых ресурсах. Когда пользователь задает вопрос или ставит определенную задачу, активизируется соответствующий сценарий. Если какие-то компоненты сценария пропущены или отсутствуют какие-то ресурсы, система выступает инициатором коммуникации. Так работает, например, система SNUKA, решающая задачи планирования военных операций.
Системы обработки связных текстов довольно разнообразны по структуре. Их общей чертой можно считать широкое использование технологий представления знаний. Функции систем такого рода заключаются в понимании текста и ответах на вопросы о его содержании. Понимание рассматривается не как универсальная категория, а как процесс извлечения информации из текста, определяемый конкретным коммуникативным намерением. Иными словами, текст «прочитывается» только с установкой на то, что именно потенциальный пользователь захочет узнать о нем. Тем самым и системы обработки связных текстов оказываются отнюдь не универсальными, а проблемно-ориентированными. Типичными примерами систем обсуждаемого типа могут служить системы RESEARCHER и TAILOR, образующие единый программный комплекс, позволяющий пользователю получить информацию из рефератов патентов, описывающих сложные физические объекты.
Важнейшим направлением компьютерной лингвистики является разработка информационно-поисковых систем (ИПС). Последние возникли в конце 1950-х – начале 1960-х годов как ответ на резкое возрастание объемов научно-технической информации. По типу хранимой и обрабатываемой информации, а также по особенностям поиска ИПС разделяются на две больших группы – документальные и фактографические. В документальных ИПС хранятся тексты документов или их описания (рефераты, библиографические карточки и т.д.). Фактографические ИПС имеют дело с описанием конкретных фактов, причем не обязательно в текстовой форме. Это могут быть таблицы, формулы и другие виды представления данных. Существуют и смешанные ИПС, включающие как документы, так и фактографическую информацию. В настоящее время фактографические ИПС строятся на основе технологий баз данных (БД). Для обеспечения информационного поиска в ИПС создаются специальные информационно-поисковые языки, в основе которых лежат информационно-поисковые тезаурусы. Информационно-поисковый язык – это формальный язык, предназначенный для описания отдельных аспектов плана содержания документов, хранящихся в ИПС, и запроса. Процедура описания документа на информационно-поисковом языке называется индексированием. В результате индексирования каждому документу приписывается его формальное описание на информационно-поисковом языке – поисковый образ документа. Аналогичным образом индексируется и запрос, которому приписывается поисковый образ запроса и поисковое предписание. Алгоритмы информационного поиска основаны на сравнении поискового предписания с поисковым образом запроса. Критерий выдачи документа на запрос может состоять в полном или частичном совпадении поискового образа документа и поискового предписания. В ряде случаев пользователь имеет возможность сам сформулировать критерии выдачи. Это определяется его информационной потребностью. В автоматизированных ИПС чаще используются дескрипторные информационно-поисковые языки. Тематика документа описывается совокупностью дескрипторов. В качестве дескрипторов выступают слова, термины, обозначающие простые, достаточно элементарные категории и понятия проблемной области. В поисковый образ документа вводится столько дескрипторов, сколько различных тем затрагивается в документе. Количество дескрипторов не ограничивается, что позволяет описать документ в многомерной матрице признаков. Часто в дескрипторном информационно-поисковом языке налагаются ограничения на сочетаемость дескрипторов. В этом случае можно говорить о том, что информационно-поисковый язык обладает синтаксисом.
Одна из первых систем, работавших с дескрипторным языком, была американская система УНИТЕРМ, созданная М.Таубе. В качестве дескрипторов в этой системе функционировали ключевые слова документа – унитермы. Особенность этой ИПС заключается в том, что изначально словарь информационного языка не задавался, а возникал в процессе индексирования документа и запроса. Развитие современных информационно-поисковых систем связано с разработкой ИПС бестезаурусного типа. Такие ИПС работают с пользователем на ограниченном естественном языке, а поиск осуществляется по текстам рефератов документов, по их библиографическим описаниям, а часто и по самим документам. Для индексирования в ИПС бестезаурусного типа используются слова и словосочетания естественного языка.
К области компьютерной лингвистики в определенной степени могут быть отнесены работы в области создания гипертекстовых систем, рассматриваемых как особый способ организации текста и даже как принципиально новый вид текста, противопоставленный по многим своим свойствам обычному тексту, сформированному в гутенберговской традиции книгопечатания. Идея гипертекста связывается с именем Ванневара Буша – советника президента Ф.Рузвельта по науке. В.Буш теоретически обосновал проект технической системы «Мемекс», которая позволяла пользователю связывать тексты и их фрагменты по различным типам связей, преимущественно по ассоциативным отношениям. Отсутствие компьютерной техники сделало проект труднореализуемым, поскольку механическая система оказалась чрезмерно сложной для практического воплощения.
Идея Буша в 1960-е годы получила второе рождение в системе «Ксанаду» Т.Нельсона, которая уже предполагала использование компьютерной техники. «Ксанаду» позволял пользователю прочитывать совокупность введенных в систему текстов различными способами, в различной последовательности, программное обеспечение давало возможность как запоминать последовательность просмотренных текстов, так и выбирать из них практически любой в произвольный момент времени. Множество текстов со связывающими их отношениями (системой переходов) было названо Т.Нельсоном гипертекстом. Многие исследователи рассматривают создание гипертекста как начало новой информационной эпохи, противопоставленной эре книгопечатания. Линейность письма, внешне отражающая линейность речи, оказывается фундаментальной категорией, ограничивающей мышление человека и понимание текста. Мир смысла нелинеен, поэтому сжатие смысловой информации в линейном речевом отрезке требует использования специальных «коммуникативных упаковок» – членение на тему и рему, разделение плана содержания высказывания на эксплицитные (утверждение, пропозиция, фокус) и имплицитные (пресуппозиция, следствие, импликатура дискурса) слои. Отказ от линейности текста и в процессе его представления читателю (т.е. при чтении и понимании) и в процессе синтеза, по мнению теоретиков, способствовал бы «освобождению» мышления и даже возникновению его новых форм. См. также СЕМАНТИКА.
В компьютерной системе гипертекст представлен в виде графа, в узлах которого находятся традиционные тексты или их фрагменты, изображения, таблицы, видеоролики и т.д. Узлы связаны разнообразными отношениями, типы которых задаются разработчиками программного обеспечения гипертекста или самим читателем. Отношения задают потенциальные возможности передвижения, или навигации по гипертексту. Отношения могут быть однонаправленными или двунаправленными. Соответственно, двунаправленные стрелки позволяют двигаться пользователю в обе стороны, а однонаправленные – только в одну. Цепочка узлов, через которые проходит читатель при просмотре компонентов текста, образует путь, или маршрут.
Компьютерные реализации гипертекста бывают иерархическими или сетевыми. Иерархическое – древовидное – строение гипертекста существенно ограничивает возможности перехода между его компонентами. В таком гипертексте отношения между компонентами напоминают структуру тезауруса, основанного на родо-видовых связях. Сетевой гипертекст позволяет использовать различные типы отношений между компонентами, не ограничиваясь отношениями «род – вид». По способу существования гипертекста выделяются статические и динамические гипертексты. Статический гипертекст не меняется в процессе эксплуатации; в нем пользователь может фиксировать свои комментарии, однако они не меняют существо дела. Для динамического гипертекста изменение является нормальной формой существования. Обычно динамические гипертексты функционируют там, где необходимо постоянно анализировать поток информации, т.е. в информационных службах различного рода. Гипертекстовой является, например, Аризонская информационная система (AAIS), которая ежемесячно пополняется на 300–500 рефератов в месяц.
Отношения между элементами гипертекста могут изначально фиксироваться создателями, а могут порождаться всякий раз, когда происходит обращение пользователя к гипертексту. В первом случае речь идет о гипертекстах жесткой структуры, а во втором – о гипертекстах мягкой структуры. Жесткая структура технологически вполне понятна. Технология организации мягкой структуры должна основываться на семантическом анализе близости документов (или других источников информации) друг к другу. Это нетривиальная задача компьютерной лингвистики. В настоящее время широко распространено использование технологий мягкой структуры на ключевых словах. Переход от одного узла к другому в сети гипертекста осуществляется в результате поиска ключевых слов. Поскольку набор ключевых слов каждый раз может различаться, каждый раз меняется и структура гипертекста.
Технология построения гипертекстовых систем не делает различий между текстовой и нетекстовой информацией. Между тем включение визуальной и звуковой информации (видеороликов, картин, фотографий, звукозаписей и т.п.) требует существенного изменения интерфейса с пользователем и более мощной программной и компьютерной поддержки. Такие системы получили название гипермедиа, или мультимедиа. Наглядность мультимедийных систем предопределила их широкое использование в обучении, в создании компьютерных вариантов энциклопедий. Существуют, например, прекрасно выполненные CD-ромы с мультимедийными системами по детским энциклопедиям издательства «Дорлин Киндерсли».
В рамках компьютерной лексикографии разрабатываются компьютерные технологии составления и эксплуатации словарей. Специальные программы – базы данных, компьютерные картотеки, программы обработки текста – позволяют в автоматическом режиме формировать словарные статьи, хранить словарную информацию и обрабатывать ее. Множество различных компьютерных лексикографических программ разделяются на две больших группы: программы поддержки лексикографических работ и автоматические словари различных типов, включающие лексикографические базы данных. Автоматический словарь – это словарь в специальном машинном формате, предназначенный для использования на ЭВМ пользователем или компьютерной программой обработки текста. Иными словами, различаются автоматические словари конечного пользователя-человека и автоматические словари для программ обработки текста. Автоматические словари, предназначенные для конечного пользователя, по интерфейсу и структуре словарной статьи существенно отличаются от автоматических словарей, включенных в системы машинного перевода, системы автоматического реферирования, информационного поиска и т.д. Чаще всего они являются компьютерными версиями хорошо известных обычных словарей. На рынке программного обеспечения имеются компьютерные аналоги толковых словарей английского языка (автоматический Вебстер, автоматический толковый словарь английского языка издательства Коллинз, автоматический вариант Нового большого англо-русского словаря под ред. Ю.Д.Апресяна и Э.М.Медниковой), существует и компьютерная версия словаря Ожегова. Автоматические словари для программ обработки текста можно назвать автоматическими словарями в точном смысле. Они, как правило, не предназначены для обычного пользователя. Особенности их структуры, сфера охвата словарного материала задаются теми программами, которые с ними взаимодействуют.
Компьютерное моделирование структуры сюжета – еще одно перспективное направление компьютерной лингвистики. Изучение структуры сюжета относится к проблематике структурного литературоведения (в широком смысле), семиотики и культурологии. Имеющиеся компьютерные программы моделирования сюжета основываются на трех базовых формализмах представления сюжета – морфологическом и синтаксическом направлениях представления сюжета, а также на когнитивном подходе. Идеи о морфологическом устройстве структуры сюжета восходят к известным работам В.Я.Проппа (см.) о русской волшебной сказке. Пропп заметил, что при обилии персонажей и событий волшебной сказки количество функций персонажей ограничено, и предложил аппарат для описания этих функций. Идеи Проппа легли в основу компьютерной программы TALE, моделирующей порождение сюжета сказки. В основу алгоритма программы TALE положена последовательность функций персонажей сказки. Фактически функции Проппа задавали множество типизированных ситуаций, упорядоченных на основе анализа эмпирического материала. Возможности сцепления различных ситуаций в правилах порождения определялись типичной последовательностью функций – в том виде, в котором это удается установить из текстов сказок. В программе типичные последовательности функций описывались как типовые сценарии встреч персонажей.
Теоретическую основу синтаксического подхода к сюжету текста составили «сюжетные грамматики», или «грамматики повествования» (story grammars). Они появились в середине 1970-х годов в результате переноса идей порождающей грамматики Н.Хомского на описание макроструктуры текста. Если важнейшими составляющими синтаксической структуры в порождающей грамматике были глагольные и именные группы, то в большинстве сюжетных грамматик в качестве базовых выделялись экспозиция (setting), событие и эпизод. В теории сюжетных грамматик широко обсуждались условия минимальности, то есть ограничения, определявшие статус последовательности из элементов сюжета как нормальный сюжет. Оказалось, однако, что чисто лингвистическими методами это сделать невозможно. Многие ограничения носят социокультурный характер. Сюжетные грамматики, существенно различаясь набором категорий в дереве порождения, допускали весьма ограниченный набор правил модификации повествовательной (нарративной) структуры.
В начале 1980-х годов одной из учениц Р.Шенка – В.Ленерт в рамках работ по созданию компьютерного генератора сюжетов был предложен оригинальный формализм эмоциональных сюжетных единиц (Affective Plot Units), оказавшийся мощным средством представления структуры сюжета. При том, что он был изначально разработан для системы искусственного интеллекта, этот формализм использовался в чисто теоретических исследованиях. Сущность подхода Ленерт заключалась в том, что сюжет описывался как последовательная смена когнитивно-эмоциональных состояний персонажей. Тем самым в центре внимания формализма Ленерт стоят не внешние компоненты сюжета – экспозиция, событие, эпизод, мораль, – а его содержательные характеристики. В этом отношении формализм Ленерт отчасти оказывается возвращением к идеям Проппа.
К компетенции компьютерной лингвистики относится и машинный перевод, переживающий в настоящее время второе рождение.
Попов Э.В. Общение с ЭВМ на естественном языке. М., 1982
Садур В.Г. Речевое общение с электронно-вычислительными машинами и проблемы их развития. – В кн.: Речевое общение: проблемы и перспективы. М., 1983
Баранов А.Н. Категории искусственного интеллекта в лингвистической семантике. Фреймы и сценарии. М., 1987
Кобозева И.М., Лауфер Н.И., Сабурова И.Г. Моделирование общения в человеко-машинных системах. – Лингвистическое обеспечение информационных систем. М., 1987
Олкер Х.Р. Волшебные сказки, трагедии и способы изложение мировой истории. – В кн.: Язык и моделирование социального взаимодействия. М., 1987
Городецкий Б.Ю. Компьютерная лингвистика: моделирование языкового общения. – Новое в зарубежной лингвистике. Вып. XXIV, Компьютерная лингвистика. М., 1989
Маккьюин К. Дискурсивные стратегии для синтеза текста на естественном языке. – Новое в зарубежной лингвистике. Вып. XXIV, Компьютерная лингвистика. М., 1989
Попов Э.В., Преображенский А.Б. Особенности реализации ЕЯ-систем. – Искусственный интеллект. Кн. 1, Системы общения и экспертные системы. М., 1990
Преображенский А.Б. Состояние развития современных ЕЯ-систем. – Искусственный интеллект. Кн. 1, Системы общения и экспертные системы. М., 1990
Субботин М.М. Гипертекст. Новая форма письменной коммуникации. – ВИНИТИ, Сер. Информатика, 1994, т. 18
Баранов А.Н. Введение в прикладную лингвистику. М., 2000