Автоматическое извлечение именованных сущностей из текста
NAMED ENTITIES FROM THE TEXT AUTOMATIC EXTRACTION

ПРЕДПОСЫЛКИ СОЗДАНИЯ ИЗОБРЕТЕНИЯ
[0001] Системы распознавания именованных сущностей (NER) обычно основаны на инструментах анализа текста более широкого назначения. Глубина анализа может изменяться от поверхностного лексико-морфологического анализа до интеграции системы NER с парсером (синтаксическим анализатором) текста. Используемые способы NER можно разделить на две основные категории: способы, основанные на правилах, и способы, в которых используется обучение машины.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0002] На Фиг. 1А показаны операции обучения с использованием размеченного обучающего корпуса согласно одной из возможных реализации изобретения.
[0003] На Фиг. 1В приведено схематическое представление обученной модели согласно одной из возможных реализации изобретения.
[0004] На Фиг. 1C показаны операции для применения обученной модели к «новому» неразмеченному корпусу согласно одной из возможных реализации изобретения.
[0005] Фиг. 2 представляет собой схему, иллюстрирующую языковые описания согласно одной из возможных реализации изобретения.
[0006] Фиг. 3 представляет собой схему, иллюстрирующую морфологические описания согласно одной из возможных реализации изобретения.
[0007] Фиг. 4 представляет собой схему, иллюстрирующую синтаксические описания согласно одной из возможных реализации изобретения.
[0008] Фиг. 5 представляет собой схему, иллюстрирующую семантические описания согласно одной из возможных реализации изобретения.
[0009] Фиг. 6 представляет собой схему, иллюстрирующую лексические описания согласно одной из возможных реализации изобретения.
[0010] Фиг. 7 иллюстрирует основные этапы разбора каждого предложения в текстовом корпусе согласно одной из возможных реализации изобретения.
[0011] На Фиг. 7А показана последовательность структур данных, построенных в ходе процесса анализа согласно одной из возможных реализации изобретения.
[0012] На Фиг. 8 приведен вариант семантического и синтаксического разбора английского предложения согласно одной из возможных реализации изобретения (Передложение, названия семантический классов и идентификаторов поверхностных и глубинных позиций не переведены на русский язык. Это предложение, как и названия семантических классов и поверхностных и глубинных позиций носят иллюстративный характер и не являются частью заявки.)
[0013] На Фиг. 9 показан пример вычислительного средства, которое можно использовать согласно одной из возможных реализации изобретения.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
Описываются системы, машиночитаемые носители и методы извлечения токенов из неразмеченного текстового корпуса. Создание набора атрибутов для каждого токена основано по меньшей мере на глубинном семантико-синтаксическом анализе. Множество атрибутов включает в себя лексические, синтаксические и семантические атрибуты. Выбор подмножества атрибутов для каждого токена. Получение атрибутов классификатора и категорий на основании обученной модели, в которой атрибуты классификатора связаны с одной или несколькими категориями. Сравнение подмножества атрибутов каждого токена с атрибутами классификатора. Классификация каждого токена не менее, чем по одной категории на основе сравнения. Создание размеченного текста на основе отнесенных к категориям токенов.
ПОДРОБНОЕ ОПИСАНИЕ
[0014] Изобретение относится к системам и способам создания онтологии и семантических описаний, в частности, к извлечению именованных сущностей (например, имен собственных) из неструктурированных текстов. Отдельной задачей извлечения информации является распознавание именованных сущностей (NER). Эта задача заключается в определении границ именованных сущностей (NE) в тексте и присвоении каждой сущности категории, как правило, из конечного множества категорий. Эффективные методы такого рода необходимы для разработки программных приложений и при решении большого количества задач обработки естественного языка и задач анализа документов, таких как машинный перевод, семантическое индексирование, семантический поиск, включая, помимо прочего, следующее: многоязычный семантический поиск, извлечение фактов, анализ отношений, классификация документов, поиск похожих документов, обобщение, анализ больших объемов данных, электронное обнаружение (eDiscovery) и т.д. Глубинный анализ текста открывает новые возможности для создания систем NER.
[0015] Для каждого лексического токена, сформированного семантическим анализатором текста, например парсером Compreno, определяется широкий набор признаков, который может использоваться для разработки систем, основанных на использовании правил. Однако для разработки правил требуется много времени. Использование статистических методов (при предоставлении доступа к достаточному объему данных) может значительно снизить трудоемкость решения определенных задач. В настоящем изобретении к NER применяется статистический подход с использованием результатов семантического анализатора текста в качестве исходных данных.
[0016] Под именованными сущностями понимают уникальные имена, включающие следующие имена, но не ограничиваясь ими: географические названия (например, страны, населенные пункты, улицы), имена и фамилии персон, названия организаций или компаний и событий (например, памятные дни, праздники и т.д.). Поскольку именованные сущности могут быть не включены в словарь, не все именованные сущности могут быть распознаны с помощью словаря. Распознавание именованных сущностей, помимо прочего, может включать в себя выявление именованных сущностей в неструктурированном тексте, установление границ, определения референциальных связей и отнесение каждой именованной сущности к соответствующей категории. Назначенные категории могут выбираться, например, из конечного множества категорий.
[0017] Задачу выделения именованных сущностей можно разделить на две подзадачи: обнаружение именованных сущностей и классификация обнаруженных именованных сущностей. Кроме того, можно оценивать качество распознавания и классификации именованных сущностей. [0018] Референции, из которых извлекаются именованные сущности и по которым они классифицируются, могут быть аннотированы. Например, аннотация может давать размеченное представление референции. Например, исходное предложение «Adams and Platt are both injured and -will miss England's opening World Cup qualifier against Moldova on Sunday.» может породить следующее размеченное (т.е. аннотированное) представление:
[0019] <PER>Adams</PER> and <PER>Platt</PER> are both injured and will miss <LOC>England</LOC's opening <EVENT>World Cup</EVENT> qualifier against<LOC>Moldova</LOC> on <DAY>Sunday</DAY>.
[0020] Таким образом, теги <PER> и </PER> могут использоваться для обозначения персон, в частности, физических лиц, теги <LOC> и </LOC> могут обозначать геолокации, теги <EVENT> и </EVENT> могут отмечать события, а теги <DAY> и </DAY> могут определять и отмечать даты. Новые теги добавляются, если множество категорий классификации расширяется. В другом примере квалифицирующие теги могут добавляться в дополнение к тэгам категорий. Например, тег EVENT (событие) может, помимо прочего, включать такие квалификаторы, как: спортивное мероприятие, юбилей, премьера, выпуск фильма в прокат, представление, выпуск продукта и т.д. Тег PER (персоны) может, помимо прочего, включать такие квалификаторы, как: политик, знаменитость, писатель, художник и т.д. Тег LOC (местоположение) может, помимо прочего, включать такие квалификаторы, как: континент, страна, столица, город, улица и т.д.
[0021] В одном из вариантов осуществления экстрактор может быть обучен с использованием размеченного корпуса. Размеченный корпус может представлять собой предварительно аннотированный исходный текст, как в примере, приведенном выше. Исходный текст может содержать несколько категорий. Например, он может содержать категории персоны (PER), организации (ORG), геолокации (LOC), прочие именованные сущности (MISC), а также какие-то другие категории. Может создаваться другой набор исходных категорий, а в исходном тексте могут содержаться дополнительные категории. Используемые категории могут иметь разный охват, они могут содержать подкатегории. Например, категория геолокации может разбиваться на несколько подкатегорий: государства, населенные пункты, реки, горные массивы и т.д.
[0022] На Фиг. 1А показаны операции, используемые для обучения парсера с использованием размеченного текстового корпуса 101. Тексты используемого для обучения корпуса (101) разбиты на токены, и каждому токену может присваиваться та или иная категория в зависимости от тега, присвоенного этому токену. Размеченный корпус может быть подвергнут глубокому семантико-синтаксическому анализу (этап 102) без учета существующей разметки. Глубокий семантико-синтаксический анализ может сформировать атрибуты для слов, которые первоначально помечены выбранными категориями. Эти атрибуты можно сравнить с существующей разметкой (этап 103). Сравнение атрибутов с существующей разметкой можно использовать для определения того, какие атрибуты присущи объектам в данной категории.
[0023] Глубокий семантико-синтаксический анализ размеченного корпуса (этап 102) дает довольно большую выборку значений лексических, синтаксических и семантических атрибутов для каждого токена. Подмножество этих значений можно использовать при формировании признаков для классификации. В дополнение к использованию лексических признаков для классификации, синтаксические и семантические признаки также могут быть использованы для классификации. В некоторых вариантах осуществления доступность необходимых лингвистических описаний для выбранного языка может быть условием использования парсера. Необходимые лингвистические описания могут включать, помимо прочего: лексические описания, морфологические описания, синтаксические описания и семантические описания.
[0024] Можно оценить качество распознавания и классификацию именованных сущностей. Способ оценки может быть выбран заранее, например, путем настройки конфигурации парсера или по выбору пользователя парсера. Например, известный метод CoNNL обеспечивает как точность классификации, так и точность определения границ. Границы следует понимать как границы имен (например, для названия, состоящего из нескольких слов).
[0025] В одном из вариантов осуществления именованные сущности с корректно определенными границами и категориями могут быть использованы для расчета точности, полноты и F-меры. Например, точность Р и полноту R можно вычислить следующим образом:
, где число объектов равно число объектов общему количеству объектов, которые были записаны в системе, т.е. лексическим значениям, содержащимся в семантической иерархии. Эта оценка также включает в себя F-меру:
.
В другом варианте осуществления также может использоваться следующая формула:
, где β выбирается в зависимости от каждой конкретной задачи.
[0026] Множество признаков классификации может формироваться (этап 104) на основании результатов сравнения наборов признаков. Для сравнения может использоваться методология оценки NER, основанная на измерении показателей точности, полноты и F-меры. При сравнении могут применяться интегральные оценки F-меры. Интегральная оценка F-меры может быть получена путем микроусреднения по всем категориям.
[0027] В одном варианте осуществления набор признаков классификации может быть получен в процессе обучения с помощью размеченного корпуса. Полученное множество признаков классификации может быть использовано для обучения (105) модели именованных сущностей. Результатом является обученная модель (этап 106).
[0028] На Фиг. 1В приведено схематическое представление обученной модели в соответствии с одним вариантом осуществления. Обученная модель представляет собой совокупность множества признаков (111) с соответствующими весами (112), относящимися к категориям классификации (113). Помимо прочего могут использоваться дополнительные модели, такие как: модели условных случайных полей (CRF), скрытые марковские модели (НММ), марковские модели максимальной энтропии (МЕММ) и другие схожие варианты обучающих моделей.
[0029] В одном варианте осуществления можно использовать «внешние» списки именованных сущностей. В другом варианте осуществления «внешние» списки именованных сущностей не используются, что позволяет оценить парсер в «чистой» форме. Если «внешние списки» не используются, то опубликованные значения F-меры, которые были получены исследователями без использования внешних списков, могут быть выбраны для сравнения с результатами. Все использованные признаки являются локальными, то есть рассматривается только текущий токен, его ближайший линейный и контекст дерева, а также родительский токен (например, согласно дереву разбора), который в тексте может быть находиться на существенном расстоянии. Также могут использоваться синтаксические и семантические параметры, выбранные в процессе синтаксического анализа.
[0030] В еще одном варианте осуществления могут использоваться нелокальные признаки и внешние данные; нелокальные признаки и внешние данные могут включать в себя, например, то, всегда ли токен задается в нижнем регистре, тегирован ли данный токен в каком-либо другом месте в наборе документов, включен ли данный токен во внешнюю базу данных и т.д.
[0031] На Фиг. 1C иллюстрируются операции для применения обученной модели к «новому» неразмеченному корпусу (121) согласно одной из возможных реализации изобретения. Неразмеченный корпус также подвергается глубокому семантико-синтаксическому анализу (122), в ходе которого для каждого токена определяется достаточно большое множество значений лексических, синтаксических и семантических атрибутов. Подробное описание семантико-синтаксического анализа (122) приведено в патенте США №8,078,450; он характеризуется использованием широкого диапазона лингвистических описаний, в том числе значений лексических, морфологических, синтаксических и семантических категорий, которые извлекаются (т.е. обнаруживаются) в ходе анализа. Определенное подмножество лингвистических описаний, включая лексические признаки, синтаксические признаки и семантические признаки, может использоваться для формирования признаков классификатора. Описание множества упомянутых лингвистических описаний и деталей отдельных этапов семантико-синтаксического анализа приведено ниже.
[0032] Фиг. 2 представляет собой схему, иллюстрирующую языковые описания (210) согласно одной из возможных реализации изобретения. Языковые описания (210), помимо прочего, могут включать следующее: морфологические описания (201), синтаксические описания (202), лексические описания (203) и семантические описания (204), а также взаимосвязь между языковыми описаниями. Морфологические описания (201), лексические описания (203), а также синтаксические описания (202) могут зависеть от конкретного языка. Каждое из языковых описаний (210) может быть создано для каждого исходного языка и в совокупности языковые описания представляют собой модель исходного языка. Однако семантические описания (204) могут быть независимыми от языка и используются для описания независимых от языка семантических признаков различных языков и построения независимых от языка семантических структур.
[0033] Как показано на Фиг. 2, морфологические описания (201), лексические описания (203), синтаксические описания (202), а также семантические описания (204) связаны между собой. На Фиг. 2 лексические описания (204) и морфологические описания (201) связаны при помощи связи (221), показывающей, что указанное лексическое значение в лексическом описании (230) имеет морфологическую модель, описывающую возможные грамматические значения для указанного лексического значения. Например, одно или несколько грамматических значений могут быть представлены различными наборами граммем в грамматической системе морфологических описаний (101).
[0034] Кроме того, как показано связью (222), заданное лексическое значение в лексических описаниях (203) также может иметь одну или несколько поверхностных моделей, соответствующих синтаксическим описаниям (202) для данного лексического значения. Как показано связью (223), лексические описания (203) могут быть связаны с семантическими описаниями (204). Таким образом, лексические описания (203) и семантические описания (204) могут быть объединены в «лексико-семантические описания», например, в лексико-семантический словарь.
[0035] Связь (224) показывает отношение между синтаксическими описаниями (240) и семантическими описаниями (204). Например, диатезы (417) синтаксических описаний (202) можно рассматривать как «интерфейс» между зависящими от языка поверхностными моделями и независимыми от языка глубинными моделями (512) семантического описания (204).
[0036] Фиг. 3 представляет собой схему, иллюстрирующую морфологические описания согласно одной из возможных реализации изобретения. Компоненты морфологических описаний (201), помимо прочего, включают: описание словоизменения (310), грамматическую систему (320), и описания словообразования (330), и т.п. Грамматическая система (320) представляет собой набор грамматических категорий, включая, помимо прочего: «часть речи», «падеж», «пол», «число», «лицо», «рефлексивность», «время», «вид» и т.д. и их значения (далее - «граммемы»), включая, например, прилагательное, существительное, глагол, именительный, винительный и родительный падежи, женский, мужской и средний род и т.д.
[0037] Описание словоизменения (310) описывает, как может изменяться основная форма слова в зависимости, например, от падежа слова, пола, числа, времени и т.д. и в широком смысле оно может включать или описывать все возможные формы этого слова. Описание словообразования (330) описывает, какие новые слова могут быть созданы с участием этого слова (например, в немецком языке имеется очень много сложных слов). Граммемы являются единицами грамматической системы (320), что показано с помощью связи (222) и связи (324) на Фиг. 3. Граммемы могут использоваться, например, для построения описания словоизменения (310) и описания словообразования (330).
[0038] В одном варианте осуществления модель составляющих используется для установления синтаксических отношений между элементами исходного предложения. Составляющая может содержать непрерывную группу слов, причем в предложении составляющая рассматривается как единая сущность. Составляющая имеет некоторое слово в качестве ядра, и может включать в себя дочерние составляющие на более низких уровнях. Дочерняя составляющая является зависимой составляющей, и может быть прикреплена к другим составляющим (как родительским составляющим) для построения синтаксических описаний (202) исходного предложения.
[0039] Фиг. 4 иллюстрирует синтаксические описания. Компоненты синтаксических описаний (202), помимо прочего, могут включать: поверхностные модели (410), описания поверхностных позиций (420), описания референциального и структурного контроля (430), описания управления и согласования (440), описания недревесного синтаксиса (450), а также правила анализа (460). Синтаксические описания (202) могут использоваться для построения возможных синтаксических структур исходного предложения на данном исходном языке с учетом свободного линейного порядка слов, недревесных синтаксических явлений (например, координация, эллипсис и т.д.), референциальные отношения и другие отношения.
[0040] Поверхностные модели (410) представлены в виде агрегатов одной или нескольких синтаксических форм («синтформ» (412)), чтобы описать возможные синтаксические структуры предложений которые включены в синтаксическое описание (202). Лексические значения языка связаны с его поверхностными (синтаксическими) моделями (410), представляющими собой модели составляющих, которые могут быть построены, если данное лексическое значение играет роль «ядра». Поверхностные модели (410), представленные «синтформами» (412), могут включать лексическое значение, которое играет роль «ядра» и может дополнительно включать набор поверхностных позиций (415) его дочерних составляющих, описание линейного порядка (416), диатезы (417), грамматические значения (414), описания управления и согласования (440), коммуникативные описания (480) и др., по отношению к ядру составляющей.
[0041] Описания поверхностных позиций (420) как часть синтаксических описаний (202) используются для описания общих свойств поверхностных позиций (415), которые используются в поверхностных моделях (410) различных лексических значений в исходном языке. Поверхностные позиции (415) могут использоваться для выражения синтаксических отношений между составляющими предложения. Примеры поверхностных позиций (415) могут включать в себя среди прочего «subject» (подлежащее), «object_direct» (прямое дополнение), «object_indirect» (косвенное дополнение), «relative clause» (определительное придаточное предложение).
[0042] В процессе синтаксического анализа модель составляющей использует несколько поверхностных позиций (415) дочерних составляющих и описания их линейного порядка (416) и описывает грамматические значения (414) возможных заполнителей этих поверхностных позиций (415). Диатезы (417) представляют соответствия между поверхностными позициями (415) и глубинными позициями (514) (как показано на Фиг. 5). Диатезы (417) представлены связью (224) между синтаксическими описаниями (202) и семантическими описаниями (204). Коммуникативные описания (480) описывают коммуникативный порядок в предложении.
[0043] Синтаксические формы («синтформы») (412) представляют собой множество поверхностных позиций (415) с описаниями их линейного порядка (416). Одна или несколько составляющих, возможных для лексического значения словоформы в исходном предложении, могут быть представлены синтаксическими поверхностными моделями (410). Каждая составляющая рассматривается как реализация модели составляющей посредством выбора соответствующей синтформы (412). Выбранные синтформы (412) представляют собой множества поверхностных позиций (415) с указанным линейным порядком. Каждая поверхностная позиция в синтформе может иметь грамматические и семантические ограничения на свои заполнители.
[0044] Описание линейного порядка (416) представлено в виде выражений линейного порядка, которые строятся, чтобы отразить последовательность, в которой различные поверхностные позиции (415) могут встречаться в предложении. Выражения линейного порядка могут включать имена переменных, названия поверхностных позиций, круглые скобки, граммемы, оценки, оператор «или», и т.д. Например, описание линейного порядка простого предложения «Boys play football» (мальчики играют в футбол), можно представить в следующем виде «subject core object_direct» (подлежащее ядро прямое_дополнение), где «subject» (подлежащее) и "object_direct" (прямое_дополнение) - названия поверхностных позиций (415), соответствующие порядку слов. Заполнители поверхностных позиций (415) присутствуют в предложении том же порядке, что и соответствующие символы в выражениях линейного порядка.
[0045] Различные поверхностные позиции (415) могут располагаться в отношении строгого или нестрогого линейного порядка в синтформе (412). Например, в одном варианте осуществления круглые скобки можно использовать для задания строгого линейного порядка между поверхностными позициями (415). Например, SurfaceSlot1 SurfaceSlot2 или (SurfaceSlot1 SurfaceSlot2) означает, что обе поверхностные позиции расположены в выражении линейного порядка, но возможен только один порядок этих поверхностных позиций относительно друг друга такой, что SurfaceSlot2 следует после SurfaceSlot1.
[0046] Квадратные скобки можно использовать для построения выражений линейного порядка и описания нестрогого линейного порядка между различными поверхностными позициями (415) синтформы (412). Например, в выражении [SurfaceSlot1 SurfaceSlot2] обе поверхностных позиции принадлежат одному и тому же выражению линейного порядка, но порядок их следования относительно друг друга не является существенным.
[0047] Выражения линейного порядка для описания линейного порядка (416) могут содержать грамматические значения (414), выраженные граммемами, при этом соответствующие дочерние составляющие должны удовлетворять этим грамматическим значениям. Кроме того, два выражения линейного порядка могут быть соединены оператором | ("ИЛИ"). Например: (Subject Core Object) | [Subject Core Object]. (Подлежащее ядро дополнение) [Подлежащее ядро дополнение]
[0048] Коммуникативные описания (480) описывают порядок слов в синтформе (412) с точки зрения коммуникативных актов, которые должны быть представлены в виде выражений коммуникативного порядка, которые похожи на выражения линейного порядка. Описание управления и согласования (440) содержит правила и ограничения для грамматических значений присоединяемых составляющих, которые учитываются при синтаксическом анализе.
[0049] Описания синтаксиса для структур не в виде деревьев (450) связаны с обработкой различных лингвистических явлений, таких как эллипсис и координация, они используются при преобразованиях синтаксических структур, которые создаются на различных этапах анализа в соответствии с вариантами осуществления настоящего изобретения. Описания синтаксиса для структур не в виде деревьев (450) включают описание эллипсиса (452), описание координации (454) и описание референциального и структурного контроля (430) и др.
[0050] Правила анализа (460), как часть синтаксических описаний (202), могут включать, помимо прочего, следующие правила: правила вычисления семантем (462) и правила нормализации (464). Несмотря на то, что правила анализа (460) используются на этапе семантического анализа, правила анализа (460) обычно описывают свойства конкретного языка, и они связаны с синтаксическими описаниями (202). Правила нормализации (464) могут использоваться в качестве правил трансформации для описания трансформации семантических структур, которые могут различаться в разных языках.
[0051] Фиг. 5 представляет собой схему, иллюстрирующую семантические описания согласно одной из возможных реализации изобретения. Компоненты семантических описаний (204) не зависят от языка, они могут включать, помимо прочего: семантическую иерархию (510), описания глубинных позиций (520), систему семантем (530) и прагматические описания (540).
[0052] Семантическая иерархия (510) состоит из семантических понятий (семантических сущностей), называемых семантическими классами, расположенных согласно иерархическим отношений родительский - дочерний класс в виде дерева. Дочерний семантический класс может наследовать большинство свойств своего прямого родителя и все унаследованные семантические классы. Например, семантический класс SUBSTANCE (вещество) является дочерним для семантического класса ENTITY (сущность) и родителем для семантических классов GAS (газ), LIQUID (жидкость), METAL (металл), WOOD_MATERIAL (дерево) и т.д.
[0053] Каждый семантический класс в семантической иерархии (510) сопровождается его глубинной моделью (512). Глубинная модель (512) семантического класса представляет собой множество глубинных позиций (514), которые отражают семантические роли дочерних составляющих в различных предложениях с объектами семантического класса в качестве ядра родительской составляющей, и возможных семантических классов в качестве заполнителей глубинных позиций. Глубинные позиции (514) выражают семантические отношения, в том числе, например, «agent» (агенс), «addressee» (адресат), «instrument» (инструмент), «quantity» (количество) и т.д. Дочерний семантический класс наследует и уточняет глубинную модель (512) родительского семантического класса.
[0054] Описания глубинных позиций (520) используются для описания общих свойств глубинных позиций (514) и отражения семантических ролей дочерних составляющих в глубинных моделях (512). Описания глубинных позиций (520) также могут содержать грамматические и семантические ограничения для заполнителей глубинных позиций (514). Свойства и ограничения глубинных позиций (514) и их возможных заполнителей очень похожи и часто идентичны в различных языках. Поэтому глубинные позиции (514) могут быть независимыми от языка.
[0055] Система семантем (530) представляет собой множество семантических категорий и семантем, которые представляют значения семантических категорий. Например, грамматическую семантическую категорию «DegreeOfComparison» (степень сравнения) можно использовать, чтобы описать степень сравнения прилагательных, и ее семантемами могут быть, например, среди прочих, «Positive» (Положительное), «ComparativeHigherDegree» (сравнительная степень), «SuperlativeHighestDegree» (превосходная степень). Другой пример: семантическая категория «RelationToReferencePoint» (Отношение к референциальной точке) может быть использована для описания порядка до референциальной точки отсчета, или после нее, и ее семантемами могут быть "Previous" (Предыдущая), "Subsequent" (Последующая), соответственно, а порядок может быть пространственным или временным в широком смысле для анализируемых слов. Еще один пример: семантическая категория "EvaluationObjective" (Объективная оценка) может использоваться для описания объективной оценки, такой как «Bad» (плохой), «Good» (хороший) и т.д.
[0056] Системы семантем (530) включают независимые от языка семантические атрибуты, которые выражают не только семантические характеристики, но также и стилистические, прагматические и коммуникативные характеристики. Некоторые семантемы можно использовать для выражения атомарного значения, которое находит регулярное грамматическое или лексическое выражение в языке. По своему назначению и использованию систему семантем (530) можно разделить на различные виды, включая, помимо прочего: грамматические семантемы (532), лексические семантемы (534) и классифицирующие грамматические (например, дифференцирующие) семантемы (536).
[0057] Грамматические семантемы (532) могут описывать грамматические свойства составляющих и используются при преобразовании синтаксического дерева в семантическую структуру. Лексические семантемы (534) могут описывать конкретные свойства объектов (например, «быть плоским» или «быть жидкостью»), их можно использовать в описаниях глубинных позиций (520) в качестве ограничения заполнителей глубинных позиций (например, для глаголов «облицевать» и «залить», соответственно). Классифицирующие грамматические (дифференцирующие) семантемы (536) выражают отличительные свойства объектов внутри одного семантического класса. Например, в семантическом классе HAIRDRESSER (парикмахер) семантема <<RelatedToMen>> (имеющий отношение к мужчинам) присваивается лексическому значению «barber», в отличие от других лексических значений, которые также принадлежат к этому классу, например, «hairdresser», «hairstylist» и т.д.
[0058] Прагматическое описание (540) позволяет системе назначить соответствующие тему, стиль или категорию текстам и объектам семантической иерархии (510). Например, назначенные тема, стиль или категория могут включать следующее: «экономическая политика», «внешняя политика», «правосудие», «законодательство», «торговля», «финансы» и т.д. Прагматические свойства также могут быть выражены семантемами. Например, прагматичный контекст может быть принят во внимание при семантическом анализе.
[0059] Фиг. 6 представляет собой схему, иллюстрирующую лексические описания согласно одной из возможных реализации изобретения. Лексические описания (203) представляют собой совокупность лексических значений (612) определенного языка. Для каждого лексического значения (612) имеется связь (602) с его независимым от языка семантическим родителем, указывающая местоположение того или иного лексического значения в семантической иерархии (510).
[0060] Каждое лексическое значение (612) связано со своей глубинной моделью (512), которая описана в независимых от языка терминах, и с поверхностной моделью (410), которая описана в терминах, специфичных для данного языка. Диатезы используются как «интерфейс» между поверхностными моделями (410) и глубинными моделями (512). Одна или несколько диатез (417) могут быть приписаны каждой поверхностной позиции (415) в каждой синтформе (412) поверхностных моделей (410).
[0061] В то время как поверхностная модель (410) описывает синтаксические роли заполнителей поверхностных позиций, глубинная модель (512) обычно описывает их семантические роли. Описание глубинной позиции (520) выражает семантический тип возможного заполнителя, отражает реальные аспекты ситуаций, свойств или атрибутов объектов, обозначенных словами любого естественного языка. Описание глубинной позиции (520) не зависит от языка, поскольку различные языки используют одну и ту же глубинную позицию для описания аналогичных семантических отношений или выражения подобных аспектов ситуаций, а заполнители глубинных позиций (514), обычно имеют одни и те же семантические свойства даже в разных языках. Каждое лексическое значение (612) лексического описания языка наследует семантический класс от своего родителя и подстраивает свою глубинную модель (512).
[0062] Кроме того, лексические значения (612) могут содержать свои собственные характеристики, а также могут наследовать другие характеристики от родительского семантического класса. Эти характеристики лексических значений (612) включают грамматические значения (608), которые могут быть выражены как граммемы, и семантическое значение (610), которое может быть выражено при помощи семантем.
[0063] Каждая поверхностная модель (410) лексического значения включает одну или несколько синтформ (412). Каждая синтформа (412) поверхностной модели (410) может включать одну или несколько поверхностных позиций (415) со своим описанием линейного порядка (416), одно или несколько грамматических значений (414), выраженных в виде набора грамматических характеристик (граммем), одно или несколько семантических ограничений на заполнители поверхностных позиций и одну или несколько диатез (417). Семантические ограничения на заполнитель поверхностной позиции представляют собой множество семантических классов, объекты которых могут заполнить эту поверхностную позицию. Диатезы (417) являются частью отношений (224) между синтаксическими описаниями (202) и семантическими описаниями (204), они представляют соответствия между поверхностными позициями (415) и глубинными позициями (514) глубинной модели (512).
[0064] Возвратимся к Фиг. 1C; этап (122) состоит из разбора каждого предложения в текстовом корпусе (121) в соответствии с исчерпывающим семантико-синтаксическим анализом, который подробно описан в патенте США №8.078,450. Все перечисленные лингвистические описания (210), включая морфологические описания (201), лексические описания (203), синтаксические описания (202) и семантические описания (204), могут использоваться для анализа каждого предложения в текстовом корпусе.
[0065] Фиг. 7 иллюстрирует основные этапы разбора каждого предложения в текстовом корпусе согласно одной из возможных реализации изобретения. На Фиг. 7А показана последовательность структур данных, которые строятся в процессе анализа согласно одной из возможных реализации изобретения. На этапе (710) исходное предложение на исходном языке подвергается лексико-морфологическому анализу для построения лексико-морфологической структуры (722) исходного предложения. Лексико-морфологическая структура (722) представляет собой множество всех возможных пар «лексическое значение - грамматическое значение» для каждого лексического элемента (слова) в исходном предложении. Что касается извлечения лексико-морфологических признаков, то полученные на этой стадии значения пока не могут использоваться для классификации т.к. на этом этапе еще имеется вариативность в силу неоднозначности лексического, морфологического и синтаксического разбора. Если используются признаки, полученные на этом этапе, точность классификации скорее всего не будет превышать точность классификации обычных систем, которые используют только лексические признаки.
[0066] Затем лексико-морфологическая структура анализируется с использованием грубого синтаксического анализа (720) исходного предложения для того, чтобы построить граф обобщенных составляющих (732). При грубом синтаксическом анализе (720) к каждому элементу лексико-морфологической структуры (722) применяются и проверяются все возможные синтаксические модели для этого лексического значения, и проводится поиск всех возможных синтаксических связей в предложении, что находит свое выражение в создании графа обобщенных составляющих (732).
[0067] Граф обобщенных составляющих (732) представляет собой ациклический граф, вершины которого обобщены (имеется в виду, что они содержат все варианты). Лексические значения слов в предложении представлены вершинами, а ветви представляют собой поверхностные (синтаксические) позиции, выражающие различные типы отношений между обобщенными лексическими значениями. Применяются все возможные поверхностные синтаксические модели для каждого элемента лексико-морфологической структуры предложения в качестве потенциального ядра составляющих. Затем строятся все возможные составляющие, которые обобщаются в графе обобщенных составляющих (732). Соответственно рассматриваются все возможные синтаксические модели и синтаксические структуры исходного предложения (712), и на основе множества обобщенных составляющих может быть построен граф обобщенных составляющих (732). Граф обобщенных составляющих (732) на уровне поверхностной модели отражает все потенциальные отношения между словами исходного предложения (713). Поскольку в общем случае количество вариаций синтаксического разбора может быть большим, объем графа обобщенных составляющих (732) может быть чрезмерно большим, и он может иметь большое количество вариантов как для выбора лексического значения для вершины, так и для поверхностных позиций для ветвей графа.
[0068] Для каждой пары «лексическое значение - грамматическое значение» инициализируется поверхностная модель, а дочерние составляющие добавляются в поверхностные позиции (415) синтформы (412) поверхностной модели (410). Например, соседние составляющие слева и справа могут быть добавлены в поверхностные позиции. Синтаксические описания показаны на Фиг. 4. Если соответствующая синтаксическая форма находится в поверхностной модели (410) для соответствующего лексического значения, то выбранное лексическое значение может использоваться в качестве ядра для новой составляющей.
[0069] Граф обобщенных составляющих (732) изначально строится как дерево от листьев к корню (снизу вверх). Построение дополнительных составляющих происходит снизу вверх путем прикрепления дочерних составляющих к родительским составляющим посредством заполнения поверхностных позиций (415) родительских составляющих для того, чтобы охватить все начальные лексические единицы исходного предложения (712).
[0070] Корень дерева, являющийся основным узлом графа (732), обычно представляет собой предикат (сказуемое). В ходе этого процесса дерево может стать графом, поскольку составляющие более низкого уровня (листья) могут быть включены в различные составляющие более высокого уровня (корень). Некоторые составляющие, которые строятся для тех же составляющих лексико-морфологической структуры, могут быть обобщены для получения обобщенных составляющих. Например, составляющие могут обобщаться на основе лексических значений (612) или грамматических значений (414), таких как части речи, и отношения между ними.
[0071] Точный синтаксический анализ (730) может быть выполнен на графе (732), чтобы выделить синтаксическое дерево (742) из графа обобщенных составляющих (732). Строится одно или несколько синтаксических деревьев, и для каждого синтаксического дерева может быть вычислена интегральная оценка на основе использования набора априорных и вычисляемых оценок. Синтаксическое дерево с наилучшей оценкой может быть выбрано для построения наилучшей синтаксической структуры (746) для исходного предложения.
[0072] На Фиг. 8 приведен вариант семантико-синтаксического разбора английского предложения согласно одной из возможных реализации изобретения. Например, английское предложение: «Не will probably be replaced by Shearer's Newcastle team mate Les Ferdinand» (Вероятно, его заменит партнер Ширера по команде «Ньюкасл» Лес Фердинанд), можно подвергнуть синтаксическому и семантическому анализу. В одном варианте осуществления вершины дерева, показанного на Фиг. 8, соответствуют токенам предложения, а связи - синтаксическим отношениям между ними. Более того, каждая вершина дерева содержит информацию о том, какому семантическому классу принадлежит данное лексическое значение, а также какую поверхностную (синтаксическую) позицию и какую глубинную (семантическую) позицию занимает это лексическое значение в данном варианте разбора. Для объектов, включенных в семантическую иерархию, например, Newcastle (Ньюкасл) (801) -название команды, определяется ее включение в семантический класс NEWCASTLE (Ньюкасл) и то, что этот токен является именем собственным: он заполняет поверхностную позицию ($Modifier_NominalEntityLike, 802) в синтаксической структуре, в то время как в семантической структуре он заполняет глубинную позицию (LocativeAttributeGenitive, 803). Если для токена не находится походящего лексического и семантического класса, то он помечается семантическим классом UNKNOWN (НЕИЗВЕСТНЫЙ), поверхностные и глубинные позиции в дереве выбираются на основании текущих гипотез о синтаксической структуре предложения и синтаксических моделях остальных элементов предложения, которые образуют контекст этого токена.
[0073] Синтаксические деревья формируются в процессе выдвижения и проверки гипотез о возможной синтаксической структуре предложения, причем гипотезы о структуре частей предложения формируются в рамках гипотезы о структуре всего предложения. Во время преобразования выбранного дерева в синтаксическую структуру (746) устанавливаются связи вне дерева. Если невозможно установить связи вне дерева, то выбирается следующее синтаксическое дерево с наибольшей оценкой и производится попытка использовать его для формирования связей вне дерева. Результатом точного анализа (730) является оптимальная синтаксическая структура (746) анализируемого предложения.
[0074] На этапе (740) формируется независимая от языка семантическая структура (714), которая выражает смысл предложения в универсальных, независимых от языка, понятиях. Независимая от языка семантическая структура предложения может быть представлена в виде ациклического графа (деревьев, дополненных связями вне дерева), в котором каждое слово на конкретном языке может быть заменено универсальными (независимыми от языка) семантическими сущностями, называемыми семантическими классами. Этот переход осуществляется с помощью семантических описаний (204) и правил анализа (460), которые дают структуру в виде дерева графа с верхней вершиной, в котором вершины соответствуют семантическим классам, имеющим набор атрибутов (атрибуты выражают лексические, синтаксические и семантические свойства конкретных слов в исходном предложении), а дуги являются глубинными (семантическими) отношениями между словами (вершинами), которые они соединяют.
[0075] Выбирая оптимальное синтаксическое дерево и строя семантическую структуру, можно снизить неоднозначность, связанную с токеном анализируемого предложения, используя большое множество морфологических, лексических, синтаксических и семантических параметров, которые были извлечены и уточнены во время анализа, а также значений соответствующих категорий. Часть извлеченных параметров и значений соответствующих категорий можно использовать в качестве классификационных признаков.
[0076] В варианте осуществления лексические признаки, такие как: отдельные слова, фразы, специальные суффиксы, префиксы, заглавные буквы и т.д., могут выбираться для использования в качестве классификационных признаков. Может использоваться лингвистический подход, который позволяет ограничить использование локальных признаков текстов в пользу универсальных независимых от языка семантических и синтаксических признаков, извлеченных в результате глубокого семантико-синтаксического анализа. Благодаря универсальной независимой от языка природе семантических описаний, семантические и синтаксические атрибуты и свойства могут переноситься среди разных жанров, тематик и даже языков текстов в целом. Более того, синтаксические признаки, которые характеризуют связи в предложении, позволяют рассматривать во взаимной связи токены, которые не являются «смежными», т.е. находятся на существенном расстоянии друг от друга в предложении. Это существенно, например, для немецкого языка.
[0077] Все признаки можно закодировать как строковые значения и рассматривать их как логические значения (Истина/Ложь). Таким образом, все булевские признаки можно представить наиболее естественным образом; каждый признак N-ой категории представлен в виде множества из N булевских признаков. Такой подход исключает использование признаков, выражаемых вещественными числами и существенно ограничивает использование целочисленных признаков только сравнительно небольшим набором значений.
[0078] В одном варианте осуществления признаки, полученные путем только одного [синтаксического] анализа каждого предложения (о котором предполагается, что он является наиболее точным), могут использоваться для упрощения извлеченных атрибутов. Например, «огрубление» значений атрибутов может привести как к потере существенной информации, так и к повышению устойчивости к переобучению. В другом варианте реализации могут использоваться более подробные внутренние структуры парсера, такие как синтаксические или семантические структуры. В еще одном варианте осуществления также могут анализироваться альтернативные варианты разбора. Полученные признаки могут иметь различное типы, включая, помимо прочего, следующие:
[0079] Поверхностно-лексические признаки. Из поверхностно-лексических признаков, которые определяются из написания токенов, используется регистр символов (WCASE: первая буква заглавная, все буквы заглавные и т.д.), и уточненные признаки регистра, которые в некоторых источниках называются SHAPE (Форма). Значение SHAPE формируется в результате ряда замен. Например, заглавные буквы заменяются буквой «X», строчные буквы заменяются буквой «х», а цифры заменяются буквой «d». Результаты замены первых двух символов и последних двух символов остаются на своих местах; повторы удаляются из оставшихся результатов, а сами символы сортируются. Например, токен «Ireland-born» (рожденный в Ирландии) соответствует значению «Хх-ххх», а токен «1996-02-12» соответствует «dd-ddd». Например, WCASE применяется к текущему токену и предыдущему токену (например, в диапазоне [-1…0]); SHAPE применяется к двум предыдущим токенам и текущему токену (например, в диапазоне [-2…0]).
[0080] Лексические признаки. Лексические признаки не используют внешние списки именованных сущностей, однако списки наиболее полных наименований NE, например списки, предоставленные авторами корпуса CoNLL-2003, могут использоваться в качестве признака PART_OF_(MISC|ORG|PER|LOC). Признак PART_OF_(MISC|ORG[PER[LOC) принимает логическое значение «Истина», если текущий токен является частью названия NE, имеющегося в соответствующей категории списков. Чтобы не допустить переобучения на этом признаке, случайным образом выбирается 50% названий из списков, которые могут быть использованы на этапе обучения, в то время как на этапе тестирования могут использоваться 100% названий. Этот признак может быть применен к текущему токену.
[0081] Поверхностно-морфологические признаки. Парсер может получить поверхностно-морфологический признак путем разметки частей речи, представленных признаком POS, вычисленным в диапазоне [-1…0].
[0082] Поверхностно-синтаксические признаки. Для каждого слова парсер может определить два синтаксических атрибута: поверхностную позицию (SURFSL: Modifier_NominalEntityLike, Modifier_Attributive, Object_Indirect…) и упрощенное преставление синтаксической роли этого слова в предложении (SYNTF: Subject, Preposition, AdverbialModifier, …) (подлежащее, предлог, обстоятельство и т.д.). Эти признаки могут учитываться для текущего токена и для его родителя (PAR_SURFSL, PAR_SYNTF) в дереве синтаксического анализа. Эти признаки сильнее зависят от языка текста, чем остальные.
[0083] Глубинно-семантические признаки. Парсер может использовать семантическую иерархию (которая ниже обозначается «SH»), где SH представляет собой дерево, вершинами которого являются семантические классы (SC), а листьями которого являются лексическими классами (LC). Для каждого анализируемого слова анализатор может указывать на LC и несколько родительских SC в порядке возрастания по SH от более частных классов к более общим. Этот набор классов обозначен признаком EXLEXCLASS. Значение этого признака может представлять собой вектор булевых значений, которые соответствуют каждому классу SC и указывают, какие классы SC встречаются на пути от лексического пути до SH (например, soccer: FOOTBALL: (ФУТБОЛ (включая другие виды игры)): TYPES_OF_GAMES: (ТИПЫ_ИГР:) SPORT: (СПОРТ:) AREA_OF_HUMAN_ACTIVITY). (ОБЛАСТЬ_ДЕЯТЕЛЬНОСТИ_ЧЕЛОВЕКА).) Кроме того, существуют различные способы «огрубления» SH. Например, определяемый парсером атрибут NearestSensibleParent (NSP) позволяет отсечь значительную часть аналогичных второстепенных семантических классов в SH. Его значение должно быть равно TYPES_OF_GAMES в приведенном выше примере «soccer» (футбол). В другом примере искусственно введенный атрибут ABR_EXLEXCLASS может быть получен отсечением из пути вдоль иерархии SH, лексического класса и нескольких классов SC, расположенных в иерархии ниже определенных классов из заданного списка (COUNTRY_BY_NAME, PERSON_BY_FIRSTNAME и т.д.) (СТРАНА_ПО_НАЗВАНИЮ, ЛЮДИ_ПО_ИМЕНИ и т.д). Атрибут LEXCLASS_CONT может представлять собой набор булевских признаков, определяемых наличием в пути SH к слову нескольких выбранных вручную классов SC, которые лучше всего коррелируют с тегами категории именованной сущности в обучающей выборке. Парсер также предоставляет используемый классификатором атрибут NOUN_TYPE, который может разделять существительные на имена собственные и имена нарицательные.
[0084] «Огрубление» SH позволяет поддерживать баланс между сохранением необходимой информации для обучения и избыточным обучением. Так, оптимальное огрубление может быть таким огрублением, при котором для каждого слова выбирается наиболее общий класс SC, дочерние классы SC и LC которого имеют некоторую равнозначностью с точки зрения решаемой задачи.
[0085] Комбинации признаков. В некоторых вариантах осуществления признаки могут комбинироваться для получения наилучших результатов. Например, один признак со значениями (NOUN_TYPE=Common, WCASE=Lower) (Тип существительного - нарицательное, Регистр - нижний), (NOUN_TYPE=Proper, WCASE=AllUpper) (Тип существительного - собственное, Регистр - все верхние), … содержит больше информации, чем два признака со значениями (Common, Proper, …) (нарицательное, собственное, …) и (Lower, AllUpper, …) (нижний, все верхние, …) при обучении модели условных случайных полей (CRF), основанной на взвешенной сумме значений признака. С другой стороны, размер множества значений комбинаций из нескольких многозначных признаков может превышать количество слов в обучающей выборке, что приводит к переобучению классификатора. Таким образом, в одном варианте осуществления для использования можно выбрать подмножество комбинаций. В дополнительных вариантах осуществления можно использовать другое подмножество комбинаций.
[0086] Вернемся к Фиг. 1C; обученную модель можно использовать для классификации (этап 123). В одном варианте осуществления этап классификации может дать текст (124), размеченный в соответствии с категориями сущностей, определенных обученной моделью и соответствующими атрибутами. Кроме того, атрибуты, полученные из неразмеченного корпуса текста, могут быть добавлены к значениям, связанным с одной или несколькими категориями. Например, токен может быть классифицирован в категорию PERSON (Персона) на основании подмножества атрибутов, связанных с этим токеном. Остальные атрибуты или подмножество остальных атрибутов, можно затем добавить в качестве значений для данной категории. Последующая классификация может использовать дополнительные атрибуты при классификации дополнительных токенов.
[0087] Автоматизация формирования признаков может привести к появлению большого количества признаков. В одном варианте осуществления множество признаков может быть ограничено для того, чтобы сократить окончательный набор признаков. Выбор признаков включает создание признаков на основании имеющихся данных и отсева (подмножеств) признаков. Методы отсева можно подразделить на фильтры и обертки. Фильтры могут ранжировать признаки, применяя различные метрики корреляции к значениям признаков и результатам системы. Например, фильтры можно настроить для конкретных обучающих моделей.
[0088] Обертки же рассматривают обучаемую модель и набор признаков как «черный ящик» и непосредственно обучают и оценивают модель на разных наборах признаков. В одном варианте осуществления обертки позволяют избежать адаптации выбора признака для обучающей модели, что является нетривиальной задачей. При решении задач NLP выбор признаков осложняется тем, что размер множества возможных признаков достигает сотен и тысяч. Сокращение этого набора помогает избежать переобучения, повышает допустимую погрешность изменений предметной области в текстах, снижает вычислительную сложность этих систем и облегчает понимание решаемой задачи.
[0089] Обертки для задач NLP могут потребовать большого объема вычислений, поэтому при организации вычислений можно использовать несколько компьютеров. В одном варианте осуществления крупномасштабные распределенные научные расчеты могут быть организованы с помощью системы, например платформы открытых вычислений BOINC, которая обладает такими качествами, как независимость от платформы, поддержка протокола HTTP, простота развертывания, оптимизация обмена данными, а также наличие готовых инструментов разработки.
[0090] Реализация оберток с помощью BOINC заключается в следующем: на вычислительные узлы рассылается код обучаемой системы, обучающий и тестовый корпусы текстов и описание задачи, включающее набор признаков. Узлы проводят обучение системы, используя данный корпус с указанным набором признаков, и проводят тестирование с использованием другого корпуса. Затем результаты тестирования передаются на центральный узел.
[0091] Использование платформы BOINC требует описания метода порождения новых задач и метода обработки результатов. Обработанные результаты могут быть сохранены, например, в базе данных, для последующего анализа.
[0092] Алгоритм порождения задачи может быть определен с помощью выбранного метода анализа признаков. Метод анализа признаков может включать в себя, например, «greedy forward selection» («жадный выбор признаков вперед») и «greedy backwards exclusion» («жадное исключение признаков назад»). В методе «жадный выбор признаков вперед» каждый следующий набор задач получается добавлением по одному признаку из полного набора к лучшему результату предыдущей итерации.. В методе «жадного исключения признаков назад» из набора прошлой итерации исключается по одному признаку. Можно использовать дополнительный анализ признака, включая, например, анализ, основанный на взаимной информации.
[0093] Используемые методы быстро выявляют наиболее сильные признаки (в случае выбора «вперед») или же признаки, наименее информативные относительно остального набора (в случае исключения «назад»), что позволяет разрабатывать оптимальные и переносимые между различными текстами классификаторы именованных сущностей.
[0094] Переносимость машинно-обучаемой системы NER между доменами (корпусами, принадлежащими к разным периодам времени или относящимися к разным тематикам) в значительной степени зависит от выбора признаков. В некоторых случаях перенос признаков между доменами может приводить к абсолютной неприменимости: таким признаком может являться принадлежность распознаваемого имени к доменно-зависимому словарю имен. В одном варианте осуществления для выявления переносимого, максимально точного и минимально избыточного набора признаков может использоваться механизм ранжирования.
[0095] Механизм ранжирования может оценить переносимость признака системы NER, используя, например, два набора текстов, полученных из различных источников. Признаки можно ранжировать в соответствии с их переносимостью на основе меры схожести. Например, в качестве меры схожести может использоваться мера, подобная косинусу угла между вероятностными распределениями значений признаков по условию заданного класса объектов.
[0096] Точность набора признаков может быть определена на основе взаимной информации между значениями признаков и классами объектов. Взаимная информация между классом и составными значениями пар признаков может быть вычислена для определения кандидатов на объединение для получения признака, имеющего более широкий набор значений и обеспечивающего более высокую точность. Выявленные кандидаты и полученные признаки впоследствии оцениваются с точки зрения переносимости.
[0097] В одном варианте осуществления взаимная информация между парами признаков может быть вычислена для минимизации избыточности. Например, один из пары признаков с высоким значением взаимной информации может быть исключен из обучающей модели. Представленный метод выбора может дать значения F1-меры 75-80% при обучении системы NER на корпусе текстов.
[0098] В другом варианте осуществления точность результатов работы системы NER может быть повышена путем включения внешних списков именованных сущностей и нелокальных признаков на уровне документа (например, тегов и метаданных), а также коллекции. В еще одном варианте осуществления подключаются признаки в линейном и древесном контекстах слов. В другом варианте осуществления можно одновременно анализировать и использовать зависимость интегральной F-меры от выбора признаков, получаемую на основе анализа текста с помощью текстового парсера. Наилучшие результаты получаются при настройке множества признаков; никакие изменения и настройки для конкретного корпуса не вносятся в алгоритм обучения или в парсер.
[0099] В другом варианте осуществления классификатор может быть обучен с использованием корпуса, в котором все именованные сущности заменяются названиями именованных сущностей. Названия сущностей могут использоваться для изучения роли семантических и синтаксических признаков и настроек классификатора. Классификатор можно обучать с использованием корпуса, в котором все именованные сущности заменяются названиями именованных сущностей, которые были сознательно опущены из семантических описаний парсера, чтобы улучшить алгоритм парсера для разрешения неоднозначности, вызванной неизвестными словами в процессе анализа, заведомо отсутствующими в семантических описаниях парсера. Подобное исследование позволяет усовершенствовать алгоритмы самого парсера по разрешению неоднозначностей, связанных с незнакомыми словами при разборе.
[00100] На Фиг. 9 показан возможный пример вычислительного средства (900), которое можно использовать для реализации описанных вариантов осуществления. Вычислительное средство (900) содержит по меньшей мере один процессор (902), соединенный с памятью (904). Процессор (902) может представлять собой один или несколько процессоров, он может содержать одно, два или больше вычислительных ядер. Память (904) может представлять собой оперативную память (RAM), она может также содержать любые другие типы и виды памяти, в частности энергонезависимые запоминающие устройства (например, флэш-накопители) или постоянные запоминающие устройства, такие как жесткие диски и так далее. Кроме того, можно рассмотреть устройство, в котором память (904) включает носитель информации, физически расположенный в другом месте в пределах вычислительного средства (900), например, кэш-память в процессоре (902), и память, используемую в качестве виртуальной памяти, которая хранится во внешнем или внутреннем постоянном запоминающем устройстве (910).
[00101] Вычислительное средство (900) также обычно имеет определенное количество входных и выходных портов для передачи и приема информации. Для взаимодействия с пользователем вычислительное средство (900) может содержать один или несколько устройств ввода (например, клавиатуру, мышь, сканер, и др.) и устройство отображения (908) (например, жидкокристаллический дисплей). Вычислительное средство (900) также может иметь одно или несколько постоянных запоминающих устройств (910), таких как привод оптических дисков (формата CD, DVD или другого формата), накопитель на жестком диске или ленточный накопитель. Кроме того, вычислительное средство (900) может иметь интерфейс с одной или несколькими сетями (912), которые обеспечивают связь с другими сетями и другим компьютерным оборудованием. В частности, это может быть локальная сеть (LAN), беспроводная сеть Wi-Fi; она может быть подключена к сети Интернет, а может быть не подключена к ней. Разумеется, вычислительное средство (900) имеет соответствующие аналоговые и/или цифровые интерфейсы между процессором (902) и каждым из компонентов (904, 906, 908, 910 и 912).
[00102] Вычислительное средство (900) управляется операционной системой (914), и включает различные приложения, компоненты, программы, объекты, модули и прочие элементы, совместно обозначенные числом 916.
[00103] В общем случае процедуры, выполняемые для реализации вариантов осуществления, могут быть воплощены как часть операционной системы или как конкретное приложение, компонента, программа, объект, модуль или последовательности команд, которые называются «компьютерными программами». Обычно компьютерные программы содержат одну или несколько команд, записанных в разное время в различных запоминающих устройствах и системах хранения в компьютере, которые при считывании и выполнении одним или несколькими процессорами в компьютере приводят к тому, что этот компьютер производит операции, необходимые для выполнения элементов раскрытых вариантов осуществления. Кроме того, различные варианты осуществления были описаны в контексте полностью работоспособных компьютеров и компьютерных систем; специалистам в данной области техники будет понятно, что различные варианты могут распространяться в виде программного продукта в различных формах, и что это в равной степени применимо независимо от конкретного типа машиночитаемых носителей, используемых для фактического распространения. Примеры машиночитаемых носителей включают: записываемые носители записи, такие как энергонезависимые и энергозависимые устройства памяти, гибкие диски и другие съемные диски, накопители на жестких дисках, оптические диски (например, постоянное запоминающее устройство на основе компакт-диска (CD-ROM), на основе универсального цифрового диска (DVD), флэш-память и т.д.), и т.д. Другой тип распространения может быть реализован в виде загрузки из сети Интернет.
[00104] В приведенном выше описании в целях пояснения изложены многочисленные конкретные детали. Однако специалистам в данной области техники будет очевидно, что эти конкретные детали являются просто примерами. В других случаях структуры и устройства показаны только в виде блок-схемы для того, чтобы не затруднять понимание изложения.
[00105] Ссылка в данном описании на «один вариант осуществления» или «вариант осуществления» означает, что конкретная структура, признак или характеристика, описанная в связи с данным вариантом воплощения, включена по меньшей мере в один вариант осуществления. Выражения «в одном варианте осуществления» в различных местах описания изобретения не обязательно относятся к одному и тому же варианту осуществления, а отдельные или альтернативные варианты не являются взаимоисключающими для других вариантах осуществления. Кроме того, приведено описание различных признаков, которые могут присутствовать в некоторых вариантах осуществления, но могут не присутствовать в других вариантах осуществления. Аналогично, приведено описание различных требований, которые могут быть применимыми к некоторым вариантам осуществления, но неприменимы к другим вариантам осуществления.
[00106] Несмотря на то, что некоторые иллюстративные варианты осуществления описаны и показаны на прилагаемых чертежах, следует понимать, что такие варианты осуществления являются исключительно иллюстративными и не ограничивают раскрытые варианты осуществления, и что эти варианты осуществления не ограничиваются конкретными приведенными и описанными конструкциями и схемами, поскольку специалисты в данной области техники после изучения настоящего описания могут использовать различные другие модификации. В подобных областях технологии, характеризующихся быстрым ростом, весьма непросто предвидеть дальнейшие достижения, и раскрытые варианты осуществления могут быть легко изменены в отношении схем и деталей, что облегчается в результате использования технологических достижений, не отступая при этом от принципов настоящего раскрытия.
[00107] Настоящее описание иллюстрирует основной изобретательский замысел, который не может быть ограничен указанным выше аппаратным обеспечением. Следует отметить, что аппаратное обеспечение предназначено в первую очередь для решения узкой проблемы. С течением времени и по мере развития технологии такая задача становится более сложной или она развивается. Возникают новые инструменты, способные удовлетворять новые требования. В этом смысле уместно рассматривать это аппаратное обеспечение с точки зрения класса технических задач, которые оно способно решать, а не просто как на техническую реализацию на основании некоторых элементов.