Парсинг прилагательных-топонимов на -ский

Mar 23, 2014 13:00

Оригинал взят у kelijah в Парсинг прилагательных-топонимов на -ский

Пофиксил еще один issue для русского парсера.

Кратенько ситуация выглядит так.

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

С другой стороны, есть много существительных-топонимов, которые в некоторых падежных формах совпадают с прилагательными на -ский:

Информацию подтвердили и в Ангарском лесничестве.

Если учесть, что существительное Ангарск есть в лексиконе, а прилагательное Ангарский - отсутствует, то парсер оказывается в тупике. Сейчас несловарная морфология работает так: если словоформы нет в лексиконе, то включаются правила-распознаватели. Но если словоформа найдена в лексиконе, то правила даже не запускаются. В итоге, парсер не может выполнить построение синтаксического дерева, так как существительное в творительном падеже и другое существительное справа от него обычно не связываются.

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

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

Второй подход - использовать штатную возможность парсера указывать в правилах регулярное выражение для сопоставляемого терма. Эта штука была сделана как раз для разбора всевозможных несловарных конструкций, начиная от сокращений типа "2 кг.".

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



Наука, it, Лингвист

Previous post Next post
Up