?

Log in

No account? Create an account

Компьютерная лингвистика

Новостная лента www.solarix.ru

Previous Entry Share Flag Next Entry
Нулевая связка в новом парсере
kelijah
Продолжая тему нового парсера на замену старому.

Добавил в качестве эксперимента в этот парсер поддержку нулевой связки, точнее любого подразумеваемого токена. Зачем?

Может показаться странным, но отсутствие формально необходимого элемента в тексте доставляет больше проблем, чем, например, морфологическая неоднозначность. Возьмем два эквивалентных предложения "Сегодня дождь." и "Дождь сегодня.". Если синтаксический анализатор не поддерживает нулевые связки (как, например, ванильный CYK), то надо решать, что будет вершиной в каждом из случаев. Допустим, мы решили, что вершиной становится существительное, как более значимый элемент: "Дождь(сегодня)". Сравним теперь результаты разбора со случаем, когда связка присутствует в явном виде "Сегодня был дождь". Зависимости в этом случае такие "был(Сегодня, дождь)". Видно, что по ребрам эти два случая совершенно не сопоставляются, и значит невозможно определять семантическую близость текста без дополнительных преобразований.

А вот так выглядят сейчас результаты разборов для случая "сегодня с самого утра сильный дождь".

Дерево зависимостей, с фиктивным токеном NULL:

По синтаксическому графу видно, что "сильный дождь" является подлежащим, не смотря на отсутствие глагола.

Составляющие:


Можно сравнить с результатами для явно выраженной связки "сегодня с самого утра был сильный дождь":