Сборник 2001

СЕГМЕНТАЦИЯ СЛИТНОГО ТЕКСТА ОТ СЛИТНОЙ РЕЧИ

Димитър Петров Шишков

 

  1. 1. ВВЕДЕНИЕ

 

Перв               ый этап распознавания слитной устной речи на естественном языке (ЕЯ) – это преобразование речевых сигналов (фонем), полученных через микрофон или уже находящихся на электронном носителе, в цепочку (транскрипцию) знаков в письменной форме (графем) без пробелов и знаков препинания.

Второй, значительно более трудный и громоздкий этап – это сегментация этой цепочки на слова, а потом – на высказывания с возможной пунктуацией (первоначальная “пунктуация”, которую говорящий мог бы проставить на бумаге, возможно нельзя восстановить без его помощи).

Схему функционирования системы распознавания слитной речи можно найти в [12, с 545, рис. 1]. Настоящая работа – по той же тематике, что и [12], и тоже не будет рассматривать проблемы сегментации сигнала [10] и распознавания алофонов.

В этой работе рассматривается предложение о решении задачи первого подэтапа второго этапа – сегментация цепочки знаков, т. е. выделение возможных слов и “шумов” между ними, которые не смогли быть распознаны как слова в словаре. Предлагается делать это при помощи полного словаря, не существующего до сих пор для ЕЯ.

Работа ориентирована на (компьютерных) лингвистов, особенно когда они владеют программистким знанием и методами информационных технологий (для автора информационные технологии = компьютерная информатика). Так что алгоритм не будет описываться пошагово.

 

  1. ПОЛНЬIЙ СЛОВАРЬ ЕСТЕСТВЕННОГО ЯЗЬIКА

 

2.1. Создание [13] полного, универсального, абсолютного компьютерного словаря естественного языка (коротко Словарь) и его поддержка – огромная по объему, но рутинная государственная научно-прикладная задача. Она не требует особых научных исследований, для нее существует достаточное количество подготовленных научных кадров и ее решение – вопрос оплаты и организации большого количества специалистов. Лингвистика и ее современная подобласть – математическая (компьютерная) лингвистика, а также и современные компьютерная техника и компьютерная информатика вполне готовы к решению этой национальной задачи, стоящей перед всеми государствами и их ЕЯ.

Для речевого распознавания Словарь должен содержать все орфографически-правильные, основные слова (словоформы: леммы и их парадигмы, а не основания слов без окончаний, как делается сейчас). Однако он должен содержать в несколько раз больше слов – будем их называть неправильными словами. Это те же основные слова, но с правильным произношением, которое не соответствует орфографии (“малако”), а также и с возможным неправильным произношением (может быть, с несколькими вариантами). Отсюда Словарь должен иметь много миллионов разных по написанию и произношению (для быстрого поиска) словоформ, которые будут объединяться указателями (валенциями) к соответствующей лемме. Любая лемма именует класс словоформ (его парадигма), например, инфинитив глагола – соответствующие ему глагольные формы.

В Словаре должны находиться и все сокращения, которые произносятся по буквам (ЦК – слово цека) или как слово (ВАК).

Разумеется, все словоформы Словаря (правильные и неправильные) будут в алфавитном порядке.

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

2.2. Содержание Словаря. Словарь может иметь следующие подсловари, включенные по важности по этапам создания:

ЭТАП 1. Словарь: 1. Современных слов, в т. ч. жаргона и обидных слов, с написанием слов в различные исторические периоды до наших дней. 2. Остаревших слов. 3. Диалектных слов, старых и новых. 4. Чужих слов, вкл. и их замещение национальными синонимами. 5. Чужих слов на другом алфавите, которые встречаются в национальных текстах, в т. ч. словарь крылатых латинских слов и пословиц, как в оригинале, так и в переводе на соответствующий язык; словарь латинских терминов в ботанике, зоологии и медицине; наименования чужих институтов и фирм на национальном и чужом языке. 6. Терминологии в тысячах подобластях науки, техники и ремеслах, в т. ч. и научный жаргон. 7. Синонимов с оценкой близости (пока это очень трудно сделать). 8. Паронимов. 9. Национальных личных имен и фамилий. 10.  Иностранных личных имен и фамилий своих граждан, использованных в данном государстве, как и эти в переводной литературе с чужого, а также и в национальном языке, при том с различным написанием из-за неправильного звучания. 11. Исторических имен на национальном языке и на соответствующем чужом языке. 12. Топонимических имен, национальных и чужих, на собственном и иностранном языке, старых и новых. 13. Наименований национальных институтов. 14. Фразеологии (частичный) – твердые сочетания, идиомы, метафоры, пословицы и др., включая и научную терминологию в виде сочетания национального слова и чужого научного термина. 15. Сокращений. 16. Некоренных морфем – представок, наставок, окончаний. 17. Слогов и др.

Здесь под словарем (т. е. подсловарем) понимается полный словарь со старой и новой орфографией. Каждое слово должно быть записано вместе со всеми своими грамматическими и семантическими атрибутами: с разделением на морфемы и слога и с означением всех возможных мест (современного) переноса в нем, т. е. с полным грамматическим описанием; с разделением слóва на словá, если это возможно; с формализованным семантическим описанием; с произношением – правильным, с местом ударения (-ий), и неправильным диалектным; с указателями к списку синонимов слова или выражений; с твердыми фразеологическими сочетаниями, в которых это слово участвует; с указателями ко всем группам (классам) слов, которые его могут следовать или предшествовать; с формализованной семантикой из толкового словаря, с указателями к другим спискам, другим атрибутам. Такой полный универсальный словарь до сих пор несделан.

ЭТАП 2. 18. Фразеологический словарь. 19. Этимологический словарь. 20. Словарь старого (древнего) национального языка с переводом на новый. 21. Формальный толковый словарь, в т. ч. научной терминологии – полная энциклопедия данного ЕЯ.

Толковый (одноязычный) словарь должен быть в основе “понимания” компьютером семантики языка. Автор считает, что словарь должен быть построен на основе аксиоматическивыбранных основных слов (без определения) при помощи компьютерно-информатической техники буутстрэпинг (самораскрутка). Примерно 2000 слов языка принимаются без определения(сложный и ответственный выбор). Эти слова – в основной форме – инфинитив; ед. ч., им. пад., и т. д. При помощи их конкатенации определяются следующие слова. А через аксиоматически выбранные слова и определенные через них определяется остальная часть лексики языка. Итак, до конца, возможно через новые уровни определения слов. Для научной терминологии, возможно, прийдется выбрать и другие основные слова, при том в данной тематической области.

ЭТАП 3. 22. Двуязычные словари: национальный – иностранный язык, и наоборот. 23. Сокращения в основных иностранных языках. 24. Энциклопедия “Государство Х”. 25. Тематические энциклопедии. 26. Общая энциклопедия мира. 27. Другие словари –обратный, рифм и т. д.

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

 

2.3. Технические, финансовые и времевые возможности для создания Словаря. Вопрос о его стоимости не может стоят ни перед каким государством. Словарь – это будущее искусственного интеллекта (ИИ), потому что только таким образом (Словарь + накопление всего человеческого опыта в виде предикатов, автоматически полученных от сканирования всей человеческой письменности) можно сделать настоящие интеллектуальные роботы с достаточной интеллигентностью. Ведь ЕЯ – это самая тонкая модель окружающего мира. Мы поэтому люди, потому что думаем и говорим на своем ЕЯ.

Вопрос об огромном содержании Словаря тоже не существен. Также как и скорость поиска в нем. Ведь все “ухищрения”: вероятность, частотность (например, относительную частоту последовательности слов), биграммы, триграммы, Марковские модели, основы в словаре (возможные окончания получаются автоматически для разных классов слов), ограниченная предметная область и т. п., до сих пор используются, потому что техника отставала от наших желаний. Сейчас она полностью подошла к новым, простым решениям в языковой области, а через 5 лет, пока мы раскачаемся, она полностью опередит все, что нам кажется сегодня фантастикой.

Для семантического анализа, однако, все-таки прийдется делать биграммы и триграммы систематическим путем: 1. Автоматически через просмотр огромного количества корпусов, как делается сейчас. Особенно просмотр поэзии, где встречаются “странные” сочетания слов, которые нам кажутся красивыми (“Выткался на озере алый свет зари. На бору со звонами плачут глухари.”). 2. Вручную при создании Словаря. Здесь надо создавать разные классы слов, которые могут стоять до или после данного слова или тоже класса слов. Вот где бы пригодилось сканирование всей письменности данного ЕЯ. Просмотр этого уникального корпуса вероятно бы выявил автоматически все возможные связи слов в данном ЕЯ и определил эти классы.

Словарь можно сделать сравнительно быстро. 10 000 людей (лингвистов и специалистов в разных облатях науки) смогут работать параллельно при хорошей организации и контроля проделанной работы (половина контролирует другую половину и наоборот) и завершить Словарь за год. Ведь каждый же сможет ввести например 2000 слов с полным описанием! А Словарь – коллосальное средство для национальной лингвистики и познании национальности. Компьютеризация ЕЯ – это “вложение” данного народа в компьютер.

Итак, дело только в расходах.

2.4. Неправильные слова. Обратим внимание на то, что неправильное слово с неправильным произношением не является произвольной комбинацией звуков в слове. Чаще всего или согласная не произносится, или неправильно произносится гласная. Конечно, не будем иметь предвид дефективную фонетику. Нормальный человек может сказать и молоко, и малако (в им. пад.), но не и магако. Также скажет вестник (редко) или весьник, но не и висник или как-то иначе. Так, от более коротких слов не получатся много неправильних. Только длинные слова “сгенерируют” побольше неправильных, но их, длинных слов, не так много. Так что, если все правильные словоформы не больше нескольких миллионов, Словарь не удлинится в 5-6 раз. При очень близких гигантских скоростях и это не кажется слишком много для индексно-последовательного поиска (см. ниже). Иногда неправильные слова – сильно укороченные правильные (при произношении слово укорачивается на несколько звуков). Это тоже бывает редко.

2.5. Просмотр и поиск в Словаре. Разумеется, будут приняты все меры для повышение быстродействия поиска. В том числе и ударение при произношении слов [12]. Оно дается даром, но не надо забывать, что человек может говорить столь монотонно и тогда часто будет невозможно зарегистрировать ударение. Также будут приняты во внимание естественные разделители слов или фраз, когда говорящий слегка задерживает свою речь (это может быть опасным, если он “разтягивает” или делит на части слово).

Перед поиском в Словаре для уменьшения количество вариантов (особенно для длинных слов) можно использовать процедуры в [12].

Для поиска в Словаре предлагается обычный индексно-последовательный.метод. Для нахождения всех возможных “слов” с 4-мя буквами или менее или начал слов с этими буквами (вкл.аааа, бббб или только а, только б и т. д.) надо выделить примерно 464 ~ 4,5 млн. трехбайтовых адресов, достаточных для адрессации 16 МБ “слов” (при 45-ти знаках в русской транскрипции[7] и кода для пробелов, когда слово имеет меньше 4-х букв и пробелы будут стоять в его конце). Список адресов будем называть индексом и в нем будем входить с прямым доступом через индексный регистр (с вычисляемым значением КЗ13 + КЗ22 + КЗ31 + КЗ4, где КЗi – код знака i от 0 до 45, i = 1, 2, 3 ,4). Конечно, многие из этих адресов будут пустыми – не будет таких четырехбуквенных (или менее) сочетаний. Надо потратить на это 13,5 МБ памяти. А с 5-ой буквы начнется последовательный поиск в Словаре. Можно его сократить за счет префиксов – их мало. Надо проверять не являются ли первые одна, две, три и более букв слова префиксом (или несколько префиксов). И только тогда начать индексно-последовательный поиск до 4-х букв, следующих после префикса(-ов) с нахождением адреса в индексе. Могут быть ложные следы – как-будто слово начинается префиксом(-ами), но это случайное совпадение. Тогда конец слова не найдется в словаре и это будет означать, что “префикс” не есть такой и надо начинать сначала.

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

Возможен и другой подход. Чтобы избежать множество несуществующих адресов, можно составить таблицу со всеми существующими началами слов из 1, 2, 3 и 4-х букв и их начальными адресами (адрес первого слова в Словаре, которое начинается этим буквенным сочетанием). Тогда поиск адресов будет на прямое совпадение четырех(или менее)буквенного сочетания черездихотомию (делением пополам). Длина поиска будет ~ log2n, где n – длина таблицы, т. е. не более 20 проб для 1 МВ сочетаний.

 

  1. ВЬIДЕЛЕНИЕ СЛОВ

 

3.1. ПРИНЦИПЫ

  1. Многовариантность выделения слов в основной цепочке знаков транскрипции. Она очевидна. Ее можно разрешать только через семантику – может ли последовательность выделенных слов быть правильной структурой рассматриваемого ЕЯ.

Многовариантность может появиться из-за того, что некоторые более длинные слова можно поделить на два, три и т. д. других слов. Но это будет редкий случай, когда, допустим, слово можно поделить на три слова и их последовательность может быть частью какого-то утверждения. Это надо устанавливать еще при создании Словаря, когда длинное слово надо, если это так, расщеплять на слова и тогда сразу отмечать могут ли из них первое и второе; первое, второе и третье; второе и третье слово быть частью утверждения (быть существующей биграммой или триграммой в языке).

Еще реже случай, когда длинное слово делится на слова разными способами. Мы не будем рассматривать этот вопрос. Только при семантическом анализе будет возможно обнаружить “неправильную” для смысла текущего высказывания пару или тройку слов. Например, слово

парадокс =   па  рад  о  к  сом,   па  рад  окс  ом,   па  рад  оксом;

пар  ад  о  к  сом,   пар  ад  окс  ом,   пар  ад  оксом;

парад  о  к  сом,     парад  окс  ом,     парад  оксом.

парад’ членится на 2 пары ‘па-рад’ и ‘пар-ад’, а ‘ОКСом – на одну тройку ‘о-к-сом’ и одну пару ‘ОКС’ и ‘ом’. Всего 3 х 3 = 9 членений. Здесь даже есть членение на две петерки слов, всего 10 возможных слов в 10-ти буквах! ОКС – Отдел Капитального Строительства, ом – единица для сопротивления в электичестве, па – танцевальный термин, сом – рыба. Семантический анализ сразу покажет, что в русском языке эти членения невозможны – останется только ’парадоксом’. В этом случае в Словаре должно быть сказано, что членение всего слова невозможно, но все таки все возможные членения надо указать для случая подходящих слов перед членением или после него (например, ‘этот парад’, а ‘оксом’ – шум, который может быть распознан как шум только после семантики).

Другой возможный случай многозначности – двое соседних слов (которые не объединяются в одно длинное) можно сначала слить, а потом расщепить на другие два, совершенно разные слова (например, конец первого переходит к второму или первое слово “захватывает” начало второго). Все эти случаи должны быть “известны” Словарю (биграммы с одинаковой общей длиной и последовательно одинаковым знаковым составом). Отметим, что при выполнении алгоритма (см. ниже) будут найдены все возможные первые слова из этой пары, а после фиксации первого слова – и все вторые.

  1. Использование текущей цепочки (из той, которая сегментируется) и текущего окна. Основная статическая цепочка знаков транскрипции для сегментации никогда не бывает текущей, кроме как если она содержит очень мало знаков (~ 20). Если распознавание слитной речи динамическое, т. е. в режиме on-line, вообще нет основной статической цепочки. Есть только одна основная, которая все время наращивается за счет “новой” речи. Текущая цепочка знаков содержит только те последовательные знаки из основной, которые в этом моменте ищутся как слово в Словаре, а текущая цепочка шума – те, которые выделены (знак за знаком) в виде шума (см. ниже). Окно – это список одного варианта последовательно выделенных слов до шума или конца речи (это еще не означает, что данное окно принадлежит данному ЕЯ). Окно может содержать и текущую цепочку одного шума произвольной длины. Создание окон – динамический процесс.

Окна будут разной длины и будут содержать последовательность выделенных слов из цепочки знаков. Они будут иметь и перекрестные ссылки к другим, параллельно созданным с ними окнами. После установления шума, окно со словами закрывается, открывается окно текущего шума, пока оно не будет закрыто, потом открывается новое “нормальное” окно и начинается поиск в Словаре текущей цепочки. Так, начальная цепочка будет преобразовываться в последовательность окон с выделенными словами, разделенных окнами шумов (одно обычное окно со словами, одно окно с шумом и т. д.). Когда будет привлечена семантика, можно будет искать схожесть (аналогию) каждого шума с подходящим по смыслу словом, которое было “исковеркано” и перешло в шум. Тогда надо ввести понятие расстояния между словами одинаковой длины.

  1. Важный параметр ЕЯ. nmax – максимальная длина слова в данном ЕЯ. Если цепочка знаков в текущей цепочке длиной в nmax не распознана как слово в Словаре, будем говорить, что попали в тупик и есть шум. nmax – очень большое для немецкого языка, в котором используется слияние слов, и около 20 для большинства языков. Иногда бывают очень длинные имена. Говорять, что в Ирландии (это тоже английский язык) есть название городишка в 104 букв! Такое может быть в любом языке, но эти “неприлично” длинные слова будут искаться на полный перебор в отдельной, очень маленькой части Словаря. Просто их первые 20 букв будут находиться в Словаре как слово, но с концом.
  2. Выделение шума из строки. Шум – это начало связанной части текущей цепочки длины nmax, которую нельзя найти как слово в Словаре. Шум может иметь неограниченную длину (например, из-за длительного шипения). Это несколько поседовательных знаков, которые неправильно распознаны еще на техническом стадии (нераспознанный сегмент слитного текста). Это не означает, что вся эта связанная часть – шум. Можно с уверенностью сказать, что только ее первый знак не является началом слова. Этот знак надо выделить как начало цепочки шума в текущее окно шума, а текущее окно с выделенными словами закрыть и сохранить. Потом надо сдвинуться вправо на один знак по текущей сегментируемой цепочке и начать поиск – это будет начало новой текущей цепочки. При поиске или получится слово в Словаре или снова тупик и в текущее окно шума засылается второй знак шума. Если, однако, получится слово, текущее окно шума закрывается и вставляется после предидущего обычного, нормально закрытого окна с выделеными словами. Найденное слово становится первым в новом окне.

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

3.2. АЛГОРИТМ

Алгоритм выделения слов характеризуется наращиванием текущей цепочки (за счет знаков основной цепочки) и поиска только вперед в Словаре через равномерное увеличение (на один знак) длины текущей цепочки до nmax вкл.

Он связан с получением дерева с вершинами ‘окно с выделенными словами – окно с шумом’.

Образуется первая текущая цепочка. Она содержит первый знак основной цепочки знаков. Если он не слово, добавляем второй знак основной цепочки и снова ищем и т. д. пока или достигнем длину nmax и тупик (не найдем слово – тогда первый знак начало шума), или найдем слово длиной m, 1 ≤ mnmax. Не останавливаясь, продолжаем поиск дальше. Текущая цепочка (если это возможно) становится длиной m + 1, m + 2 и т. д. до nmax, прибавляя следующие знаки основной цепочки к текущей – процедура наращивания длины. Отыскиваем новые слова с самого начала первой текущей цепочки, пока не достигнем тупика. Теперь уже могли быть найдены несколько возможных “первоначальных” слов основной цепочки с увеличивающимися длинами. Проявилась многовариантность. Каждое из этих слов – начало “первых” окон основной цепочки. Процедура выделения слов рекурсивна и повторяется для всех открытых окон.

Возможно, самое длинное из этих слов можно разделить на подслова, при том первое из них мы уже нашли, а второе – наверняка нет. Тогда второе входит в окно первого слова и над вторым проделывается процедура наращивания длины, но начиная с его первого знака (второго слова). Это означает, что второе слово снова будет найдено, но, может быть, и несколько более коротких, которые “в нем”, и более длинных, “в которых” оно и т. д. до тупика. Из-за рекурсии ветвление дерева продолжается.

Кажется, что дерево будет возрастать очень быстро и произойдет комбинаторный взрыв даже для возможностей будущей техники. Это просто не так. Дерево почти не будет ветвиться. При том семантический анализ будет включаться сразу после выделения любого слова (параллельность процесса на параллельных процессорах в компьютерной системе) и будет “отбрасывать” почти все ветьви дерева, кроме одной – правильной. Хотя надо думать и о двусмысленности человеческой речи, когда и семантически будет трудно разобраться (только в смысле даже очень большого контекста).

При закрытии нормальных окон выделенные слова будут “переводиться” на нормальную запись (если они неправильны). Фактически это произойдет раньше – еще при нахождении словоформы в Словаре образуется пара ‘словоформа – лемма’, лемма всегда “правильное” слово.

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

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

 

  1. ЗАКЛЮЧЕНИЕ

Предлагаемая сегментация цепочки знаков, полученных от слитной устной речи, вполне возможна при наличии мощной компьютерной техники в самом близком будущем (необходимый объем памяти и быстродействие). Создание Словаря – вполне реальная задача сегодняшнего дня. Он не только нужен для распознавания речи, сканирования всей человеческой письменности, выделения в виде предикатов всего человеческого опыта, но и будет абсолютной основой для всех возможных экспериментов с ЕЯ. Разумеется, после “первого” построения Словаря государство должно создать организацию, которая будет все время изменять Словарь, например, Отделение национальных языков при Совете Министров.

Через не более 10 лет объем одного диска будет таким огромным, что, например, на нескольких дисках (CD-ROM) можно будет записать все содержимое национальной, университетских и других специализированных библиотек, весь государственный архив, тем более рассматриваемый национальный Словарь. Все письменные материалы и Словарь будут защищены на рынке.Сначала они будут иметь высокую рыночную цену. В близком будущем любые компьютерные данные будут полностью и всюду защищены от присвоения, т. е. от так называемого “пиратства“ в этой области. Позднее эта цена упадет и книжное национальное богатство станет доступным на электронных носителях для каждого гражданина соответствующего государства, а также и для всех иностранцев и исследователей, которые знают и пользуются этим языком.

Скорость получения цепочки знаков и выделения слов будет столь высока, что текущая цепочка никогда не будет очень длинной. Она будет содержать только несколько или несколько десятков знаков. Когда очень скоро быстродействие дойдет до невероятных размеров, программа распознавания слитной речи, вкл. и семантику, просто будет “ждать” говорящего и распознавание речи будет в настоящем режиме on-line. Не исключено, что для каждого говорящего в данном моменте можно будет определить “расстояние” во времени между фразами, что сильно облекчит распознавание речи.

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

 

Теперь надо думать о семантике языка – основа всего в ИИ.

 

ЛИТЕРАТУРА

 

  1. Internet пресс-конференция / Infoart Stars   http://www.aha.ru/congress/chat/yan/index.htm
  2. Kanevsky D., Monkowski M., Sedivy J. Large vocabulary speaker-independent continuous speech recognition in Russian language // SPECOM ’96, International Workshop SPEECH AND COMPUTER, St.-Petersburg, Russia, October 28-31, 1996.
  3. Rabiner L. R., Juang B.-H. Fundamentals of Speech Recognition. Prentice Hall PTR, 1993. 507 p.
  4. Аванесов Р. И. Фонетика современного русского литературного языка. – М.: Изд-во МГУ, 1956. – 240 с.
  5. Бабий Л. В., Винцюк Т. К. Робастные алгоритмы распознавания речи // Автоматическое распознавание слуховых образов. Тезисы докладов 16-го всесоюзного семинара (АРСО-16). – Москва, 1991.
  6. Винцюк Т. К. Анализ, распознавание и интерпретация речевых сигналов. – Киев: Наукова думка, 1987. – 262 с.
  7. Грабовая В. А., Федоров Е. Е, Шелепов В. Ю. О системе компьютерного распознавания русской речи с автоматическим построением эталонов // Искусственный интеллект. – 2000 – № 1, С. 76-81.
  8. Дорохин О. А., Засыпкин А. В., Червин Н. А., Шелепов В. Ю. О некоторых подходах к проблеме компьютерного распознавания устной русской речи // VII Международная конференция “Знание – диалог – решение (KDS ’97)”. Сб. научных трудов. – Ялта, 1997. – Т. 1. – С. 234-240.
  9. Дорохин О. А., Федоров Е. Е, Шелепов В. Ю. Некоторые подходы к пофонемному распознаванию русскоий речи и распознаванию больших словарей // Искусственный интеллект. – 1999 – № 2, С. 329-333.
  10. Дорохин О. А., Старушко Д. Г., Федоров Е. Е., Шелепов В. Ю. Сегментация речевого сигнала. // Искусственный интеллект. – 2000 – № 3, С. 450-458.
  11. Зализняк А. А. Грамматический словарь русского словаря. Словоизменение. Около 100000 слов. – Москва: Русский язык, 1977. – 880 с.
  12. Саввина Г. В. Распознавание ключевых слов в потоке слитной речи. // Искусственный интеллект. – 2000 – № 3, С. 543-551.
  13. Шишков Д. П. Компьютeризация естественных языков // VIII международная конференция “Знание – диалог – решение (KDS ’99)”. – Кацивели, Крым, Украина. Сб. научных трудов. // Специальный выпуск журнала Искусственный интеллект. – 1999 – № 2, С. 280-290.