Semantic Analyzer

Веб приложение Semantic Analyzer предназначен для автоматического семантического анализа текста с целью выявления смысловых единиц данного текста. Приложение позволяет структурировать текстовые данные с возможностью дальнейшего их использования.

Веб приложение состоит из трех частей: панель ввода текста, панель экспертов и панель результатов анализа.

Панель ввода текста это текстовое поле, предназначенное для ввода, редактирования текстовой информации и дальнейшего анализа. Нажав кнопку Add bookmark на вкладке (рис. 3) весь текст в модуле сохраняется в базу данных. Просмотреть и добавить сохраненный текст можно с помощью кнопки Bookmarks (рис. 4)

Рисунок 3 Вкладки: Bookmarks - Добавить введенный текст на вкладку Add bookmark - Посмотреть вкладки


Рисунок 4 Вкладки Semantic Analyzer

 

Эксперты

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

-

Рисунок 5 Панель экспертов

С помощью «общего» меню над таблицей можно создать и отредактировать эксперта, участвующего в анализе. Общее меню используется для создания, удаления и редактирования любых записей, которые необходимы для работы веб приложения.
 
Чтобы сделать анализ текста, необходимо выбрать эксперта по определенной базе знаний. В противном случае, в нижнем правом углу экрана появится сообщение:

 

Рисунок 6 Информационное сообщение

Для выбора всех экспертов используйте кнопки «Select All» и «Deselect All». Чтобы выделить выборочные эксперты, нажмите кнопку «Ctrl» и левой кнопкой мыши выберите нужных экспертов.

 
Результат анализа

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

 

Рисунок 7 Панель результата анализа

 

Начало работы

Для проведения анализа данного текста, необходимо провести подготовку экспертов. На примере создания эксперта по датам, рассмотрим проведения подготовки приложения для анализа.

Нажав кнопку меню «Создать запись», появляется диалоговое окно с текстовыми полями Name и Description. Создаем эксперта, специализирующегося по датам, заполняя текстовые поля, как на рис. 8. Сохраняем запись.

 

Рисунок 8 Создание эксперта

  

Обучение

Теперь необходимо научить эксперта знаниям, которые помогут ему отличать дату и время в тексте. Для этого воспользуемся инструментами панели ввода текста (рис. 2). Скопируем текст, который мы будем анализировать, в поле ввода (рис. 9). Выделим в таблице экспертов только что созданного эксперта по датам. Чтобы научить эксперта понятию месяц, необходимо выделить слово December в тексте и нажать на него левой кнопкой мыши. Заполняйте текстовое поле Value в меню, появившемся как на рис. 9, и нажимаем клавишу Enter. Таким образом мы соотнесли слову December значение month. Итак, наш анализатор знает, что в данном тексте December означает месяц.

 

Рисунок 9 Обучение эксперта

 
Анализ текста

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

Поэтому, используя эксперта по датам, проведем анализ предложение: "As of December 31, 2005, we employed approximately 1,300 full-time people, of whom over 400 were outside the United States" (*), но уже с новой базой знаний. Как можно увидеть из рисунка 12, анализатор распознал 31 декабря, как дерево под названием date, с разветвлением на месяц, день и год.

 

Рис. 12 Результат семантического анализа в Semantic Analyzer.

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

 

Рис. 13 Редактирование эксперта

 

Общие знания

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

 

Рисунок 14 База знаний

База знаний эксперта по валютам включает в себя такие понятия: название валюты, доллар, как денежная единица и изображения доллара. Вершина иерархической структуры знаний - сущность currency, затем - название валюты (currency_name) и ее количество, далее - dollar. Кроме доллара, currency_name может включать в себя евро и швейцарский франк, фунт стерлинг и так далее. Но в данном случае Currency Expert знает, что есть такая валюта как доллар. Кроме того, мы имеем еще одного эксперта Financial Data Expert.

 

Рисунок 15 База знаний эксперта

Создадим еще одного эксперта под названием Financial Expert. Научим его распознавать распространенную в финансовых документах фразу: total revenues of $ 2.02 billion.

Напечатаем эту фразу в текстовом поле и выберем Financial Expert в таблице и нажмем левой кнопкой на выделенное слово. В текстовом поле Value укажем total_revenues. В базе знаний Financial Expert появилась сущность total_revenues.

 

Рисунок 16

Изменение знаний

С рис.16 понятно, что текст «$ 2.02 billion» распознается экспертом как валюта (рис. 14). После анализа похожего текста тремя экспертами мы получили следующую структуру данных.

 

Рисунок 17 Результат семантического анализа

 

Партнеры