Comments 33
Мне для чего нужно. Я перевожу книгу, и там одно слово перевожу определенным образом. А потом понимаю, что перевод должен быть другим. И я хочу найти все старые переводы слова и заменить на новый.
Аналогичную вещь реализовал на kotlin для departureBot.ru чтобы понимать запросы вроде "туры в Италию Испанию или Грецию в начале июня на 7-10 дней"
Не стал выкладывать т.к. парсер грамматик работает на выводе pymorphy (начальная форма + грамемы). Никто кст не знает живой аналогичной библиотеки с русским (и словарями) для jvm?
>> юристы просят подробностей о Вашем сервисе. Они хотят понять насколько он будет похож на Я.Новости. Например, речь идет обо всех новостях или только узко-специализированных?
После моего ответа о несхожести задач с сервисом Я.Новости и кратким описанием, ответов не получил.
В общем, стоит использовать с осторожностью, а лучше открытые аналоги.
Отличная штука, спасибо. Есть возможность обрабатывать не только слова с заглавными буквами?
Например: "петров петр петрович" не вернет ничего, в тоже время "Петров Петр Петрович" работает на ура.
Однако поиск дат ложно срабатывает например на таком абзаце:
В соответствии с санитарной классификацией СанПиН 2.2.1/2.1.1.1200-03 «Санитарно-защитные зоны и санитарная классификация предприятий, сооружений и иных объектов», Объекты по обслуживанию грузовых автомобилей, относятся к 3 классу опасности с нормативной 300 метровой СЗЗ (п.3, класс 3, раздел 7.1.8).
Или такое: «Ломион Хорвэграуг Морион Норнорос Яэрэ а’Моритарнон»
![image](https://habrastorage.org/getpro/habr/comment_images/d1b/ea5/415/d1bea541598f1b9160ab53b2a629dd40.png)
Когда мне нужно было работать с такими именами я просто заводил словарь
'Абд Аль — Азиз Бин Мухаммад',
'Абд ар — Рахман Наср ас — Са ди',
'Абд ар — Рахман ибн Хасан',
'Абд — аль Хади ибн Али',
'Абд — уль — Кадим Заллюм',
'Абду — ль — Азиз Аль Абдуль — ли — Лятыф',
…
Для Абу Али аль Хусейн ибн-Абдаллах ибн-Сина будет проще и дешевле нанять людей с трехбуквенными именами, которые вручную распарсят имя Ломион Хорвэграуг Морион Норнорос Яэрэ а’Моритарнон и всех остальных его многочисленных друзей, родственников и животных :)
Авторам библиотеки — большое спасибо.
Для текстов с русскими именами качество получается ~0.95— сомневаюсь. Скажем, «Маша мыла Раму» — ничего не находит. Пока есть проблемы со именами собственными, совпадающие с нарицательными.
А зачем вам нормализация? Она повышает точность не более чем на 1%, а скорость съедает довольно существенно. Нормализация нужна на пост обработке: при согласовании, агрегации, кореференци.
Если вы введёте полное предложение, например «придя с работы Маша мыла Раму» «Маша» найдётся. Такая специфика работы NamesExtractor сейчас
Другое дело, не было инструмента с комплектом правил, заточенных под парсинг русских ФИО/дат/адресов — с этим спорить не буду (сам не сталкивался). В любом случае, хорошая статья, спасибо.
Томита-парсер яндекса — одна из реализаций GLR, с некоторыми встроенными плюшками (как и Наташа, хотя в плане последней не уверен).
Давайте отделять алгоритмы от реализаций :)
То, о чем говорили вы, это парсер КСГ с продвинутыми механизмами работы с морфологией, нормализацией, согласованием. А не GLR(Томита) парсер :)
Приходилось писать правила для одного из упомянутых коммерческих решений. Работало оно хорошо, но уже одна необходимость использования хардварного лицензионного ключа порождала чудовищное количество проблем.
Пара вопросов:
1. Код еще не смотрел, но планируется ли возможноть писать, или использовать кастомные правила для английского языка? Например в тексте встретится английская имя фамилия которые хотелось бы получать вместе с русскими.
2. Это совсем далекое будущее но тем не менее… RCO и Abbyy помимо сущностей позволяют извлекать собственно факты как действия. То есть связывать сущности в тексте между собой, в основном через глаголы. Нечто подобное хотя бы в далеких планах имеется или основным направлением будет именно извлечение фактов сущностей?
2. Опять же, если появятся задачи про это, то да. Пока планов нет. Теоретически, парсер такое поддерживает.
![image](https://habrastorage.org/webt/bg/xs/fo/bgxsfo0dr7conez9xcuwnfq7hka.jpeg)
Yargy-парсер и библиотека Natasha. Извлечения структурированной информации из текстов на русском языке