Oct 14, 2012 13:01
По поводу предыдущей части: возможно, язык OWL ещё на что-то сгодится, и удастся обойтись без FDL. Не знаю, правда, можно ли в OWL описывать вопросительные предложения. Но посмотрим, главное в этом деле не торопиться.
Словарём семантического уровня кстати будет являться база знаний (содержащая определения сущностей).
Семантический синтез - процесс построения синтаксических деревьев из последовательности фактов. Алгоритм семантического синтеза незамысловат: берём факт, генерируем выходной узел. Из атрибутов факта создаём или атрибуты узла, или дочерние узлы. Продолжаем ту же процедуру для дочерних узлов. Когда дерево сформировано, переходим к следующему факту. И т.д.
Атрибут отрицания, например, при преобразовании превращается в самостоятельный узел - частицу "не". А атрибут "время" превращается в одноимённую грамматическую категорию.
Правила преобразования ставят каждому объекту FDL с определённым набором атрибутов результирующий узел с нужными атрибутами и дочерними узлами. Таким образом, каждое из правил описывает атомарную частицу преобразования.
P.S. Для генерации текста из базы знаний нам понадобятся ещё два преобразователя: построитель всей выходной информации (извлекает из БЗ все факты, которые мы хотим сообщить, может строить другие факты) + построитель последовательности высказывания (располагает факты в естественном порядке). После создания всех этих преобразователей мы сможем всерьёз говорить о генераторе текста вообще и генераторе вопросов СИ в частности.
ИИ