Size: a a a

Natural Language Processing

2017 April 23

AP

Andrei Popov in Natural Language Processing
основная проблема в точности распознавания — рачевики обычно стараются выдавать в качестве аутпута печатный текст, снимая фонетическую омонимию на своём уровне, хорошо если удаётся получить качество 70-75%, а это каждое 3-4 слово распознанное неправильно. В таких условиях, максимум ,что можно применить из аналитики поверх этого — поиск по ключевым словам, а про синтаксис и грамматики приходится забыть
источник

D

Demel in Natural Language Processing
ну я пока не мечтаю об анализе связной речи. Хотя бы из закрытых грамматик  и коротких фраз выбирать то, что нужно. Например, "запишите меня к терапевту Ивановой на завтра"
источник

EV

Egor V. in Natural Language Processing
Пишете собственную Siri?
источник

D

Demel in Natural Language Processing
Egor V.
Пишете собственную Siri?
да нет, куда там :)
источник
2017 April 24

DV

Dima Veselov in Natural Language Processing
Demel
основные отличия распознанной речи от текстов, на которых многие продукты извлечения фактов работают - это, как минимум:
1. отсутствие пунктуации
2. ВСЕ слова в lowercase (@dveselov, вот тут имена и фамилии с маленькой буквы не распознаются Наташей, есть о чем подумать)
3. числа произносятся, например "двадцать пятого декабря" - это тоже не выделяется как дата
На самом деле, имена в lowercase распознаются, если это имя+фамилия или имя+отчество - так сделано специально (т.к. полного снятия неоднозначности нет, и, например ли, может разбираться в т.ч. как имя). Про даты прописью - хорошее замечание, спасибо, нужно будет добавить (сейчас существуют правила для денежных сумм прописью, типа`двадцать пять тысяч рублей`, т.ч. это не сложно сделать)
источник

D

Demel in Natural Language Processing
а если будет загружен справочник ФИО (раздельно фамилий, имен, отчеств или их комбинации), то насколько сложно сделать определение в lowercase?
источник

DV

Dima Veselov in Natural Language Processing
Для этого есть газеттир, поэтому не так сложно: http://natasha.readthedocs.io/ru/latest/gazetteer/
источник

AK

Alexander Kukushkin in Natural Language Processing
Кстати вот список имён и фамилий из ВК https://github.com/alexanderkuk/crawl-vk-catalog
источник

D

Demel in Natural Language Processing
спасибо, может пригодится
источник
2017 April 25

AK

Alexander Kukushkin in Natural Language Processing
Dima Veselov
@alexkuk Спасибо! По поводу парсера: скорее всего я буду менять его на какой-нибудь CYK, как у ребят из hurmining, т.к. он гораздо проще для понимания.
Хочу на этой неделе попробовать переделать парсер на Earley парсер. CYK не подойдёт, потому что он работает только с бинарными грамматиками. Если есть похожие планы или готовые наработки, прошу сообщить, чтобы не делать работу два раза
источник
2017 April 26

DV

Dima Veselov in Natural Language Processing
Alexander Kukushkin
Хочу на этой неделе попробовать переделать парсер на Earley парсер. CYK не подойдёт, потому что он работает только с бинарными грамматиками. Если есть похожие планы или готовые наработки, прошу сообщить, чтобы не делать работу два раза
Привет. У меня есть небольшие наработки, вечером запушу в отдельный бранч yargy и постараюсь объяснить, что в конечном итоге должно получиться.
источник
2017 May 01

AK

Alexander Kukushkin in Natural Language Processing
Попытка, по-моему, удалась. Можно посмотреть https://github.com/bureaucratic-labs/yargy/pull/18 . @dveselov у меня есть желание встроить всё это в yargy и natasha. Но объём правок очень большой и нужно понять на сколько это согласуется с твоим видением yargy. Может быть, даже стоит обсудить устно.
источник
2017 May 02

DV

Dima Veselov in Natural Language Processing
Alexander Kukushkin
Попытка, по-моему, удалась. Можно посмотреть https://github.com/bureaucratic-labs/yargy/pull/18 . @dveselov у меня есть желание встроить всё это в yargy и natasha. Но объём правок очень большой и нужно понять на сколько это согласуется с твоим видением yargy. Может быть, даже стоит обсудить устно.
Привет! Я не против добавить это, если сохранится обратная совместимость - т.е. не нужно будет переписывать правила и т.д. (как вариант, можно сделать два парсера: тот, что есть сейчас и earley - и передавать их как аргумент при инициализации парсера)
Если будет время, попробуй, пожалуйста, прогнать тесты с earley-парсером (интересно увидеть, много ли нужно будет менять).
источник
2017 May 11

EV

Egor V. in Natural Language Processing
Наташа может извлекать факты, подобные тем, которые есть в Томите? Если может, то где можно посмотреть информацию об этом?
источник

DV

Dima Veselov in Natural Language Processing
Ну, если смотреть на документацию томиты (https://tech.yandex.ru/tomita/doc/tutorial/concept/interpretation-docpage/), то да, умеет. Документации на эту тему совсем немного (http://natasha.readthedocs.io/ru/latest/quickstart/#id5)
источник

DV

Dima Veselov in Natural Language Processing
Как извлекать факты, в двух словах: ты описываешь свой объект (https://github.com/bureaucratic-labs/natasha/blob/master/natasha/grammars/person/interpretation.py#L17, например) с полями и всем таким, прописываешь у него специальные методы для кластеризации (в самом простом случае, метод`__eq__`) и прописываешь это в правилах (https://github.com/bureaucratic-labs/natasha/blob/master/natasha/grammars/person/grammars.py#L124)
Что делать дальше можно посмотреть в тестах: https://github.com/bureaucratic-labs/natasha/blob/master/natasha/grammars/person/tests.py#L212
источник

EV

Egor V. in Natural Language Processing
Хм, а даты описанные без "года" парсер не вытаскивает? Например, из такого предложения: Однако вскоре он вынужден был уступить власть в Великом княжестве Литовском своему двоюродному брату Витовту, в годы правления которого (1392—1430) государство достигло наивысшего расцвета, а его территория составила примерно 930 тысяч км².
источник

DV

Dima Veselov in Natural Language Processing
Нет, но это можно описать своими правилами.
источник

DV

Dima Veselov in Natural Language Processing
@alexkuk кстати, если в новой версии парсера можно будет использовать грамматики разных классов внутри грамматик - будет очень круто :)
Можно будет, например, извлекать факты типа: кто-то (грамматика персоны) сделал что-то (существительные в нужном падеже). Потом эти факты сериализовывать в какой-нибудь RDF или ещё что-нибудь делать с ними.
источник

AK

Alexander Kukushkin in Natural Language Processing
Использовать грамматики разных классов можно будет. Механизм интерпретации, Interpretation Engine, нужно ещё продумать
источник