Size: a a a

Natural Language Processing

2017 February 06

NT

Nick Turusin in Natural Language Processing
Паттерн я понимаю так: N - X, где X > sys.maxsize
источник

NT

Nick Turusin in Natural Language Processing
print sys.maxsize
9223372036854775807
источник

DV

Dima Veselov in Natural Language Processing
Да, баг, спасибо) В третьем питоне всё ок, кстати:
Python 2.7.12+ (default, Sep 17 2016, 12:08:02) 
>>> xrange(int('1433'), int('40817810505751201174'))
OverflowError: Python int too large to convert to C long

Python 3.5.2+ (default, Sep 22 2016, 12:18:14)
>>> range(int('1433'), int('40817810505751201174'))
range(1433, 40817810505751201174)
источник

NT

Nick Turusin in Natural Language Processing
а там maxsize такой же?
источник

DV

Dima Veselov in Natural Language Processing
ага
источник
2017 February 07

NT

Nick Turusin in Natural Language Processing
Дима, а какая предположительно временная сложность у yargy extract()?
источник

NT

Nick Turusin in Natural Language Processing
не очень понимаю в кишках, но ведь это и есть реализация glr парсера, так ведь?
источник

DV

Dima Veselov in Natural Language Processing
в худшем случае О(n^3)
источник

NT

Nick Turusin in Natural Language Processing
Спасибо
источник
2017 February 19

DV

Dima Veselov in Natural Language Processing
Привет, ребята. Есть такой вопрос: что вы хотели бы увидеть в официальном туторе natasha?
Например, как проводить нормализацию, или ещё там что-нибудь.
источник

EV

Egor V. in Natural Language Processing
Привет. Да, было бы неплохо сделать несколько примеров с увеличением, а затем на них пояснить процесс обработки текста. В примерах можно добавить информацию о том, как можно расширить грамматику.
источник

EV

Egor V. in Natural Language Processing
*С увеличением сложности
источник
2017 February 20

AK

Alexander Kukushkin in Natural Language Processing
Можно сделать по аналогии с какой-нибудь хорошей документацией. Например, http://pymorphy2.readthedocs.io/en/latest/user/guide.html . Там хорошо, что  рассматриваются конкретные примеры , например, morph.parse('стали') и вывод библиотеки.

Мне было бы интересно увидеть пояснения, может быть, не самых базовых вещей:
1. Что означает gnc_match(0, solve_disambiguation=True). Отдельно что значит gnc_match(0) — согласование слова с самим собой? И отдельно что такое solve_disambiguation
2.  Зачем в 'labels': [
 gram('ADJF'),
 dictionary(FEDERAL_DISTRICT_DICTIONARY),
],
gram('ADJF')? В FEDERAL_DISTRICT_DICTIONARY всё равно только одни прилагательные.
3. Откуда берутся всякие gram(‘Geox’), gram('Abbr'), gram('Orgn')? Я так понимаю из pymorphy?
4. Подробнее про рекурсивные грамматики. Они существуют? Почему, например, разбор адресов сделан без них.
Вместо
AdjShortReversedWithHn = AdjShortReversed + OPTIONAL_COMMA_GRAMMAR + HOUSE_NUMBER_GRAMMAR
AdjNounFullWithHn = AdjNounFull + OPTIONAL_COMMA_GRAMMAR + HOUSE_NUMBER_GRAMMAR
AdjNounShortWithHn = AdjNounShort + OPTIONAL_COMMA_GRAMMAR + HOUSE_NUMBER_GRAMMAR

Могло бы быть что-то вроде

Address = …
AddressWithHn = Address + OPTIONAL_COMMA_GRAMMAR + HOUSE_NUMBER_GRAMMAR
источник
2017 February 21

DV

Dima Veselov in Natural Language Processing
Отличные вопросы (:
1. gnc_match(0) - проверяет согласование по роду, числу и падежу с словом, пойманным первым правилом грамматики (ну, нумерация же начинается с нуля), т.е. в лейбл передается стек грамматики (список токенов), который содержит уже найденные слова (и который потом возвращается в качестве результата разбора, если словосочетание пройдет все проверки), некоторые лейблы принимают аргумент solve_disambiguation - который снимает неоднозначность (неоднозначность  это, например, когда pymorphy возвращает несколько результатов разбора слова стали - сущ. и глагол, и это правильно), и для имен людей (скорее всего) будет найден верный вариант разбора (саше ивановой - существительные женского рода, сашу иванова - существительные мужского рода) - т.е. при solve_disambiguation=True уменьшается кол-во разборов отдельно взятых токенов в конечном результате (что очень помогает при нормализации, например)
2. Это, наверное, я как-то недоглядел - хороший повод сделать PR (;
3. Да, это специальные граммемы opencorpora - словаря, который использует pymorphy - http://opencorpora.org/dict.php?act=gram , за исключением, по моему, Abbr - pymorphy добавляет эту граммему для слов похожих на инициалы (одна буква в заглавном регистре, кроме мягкого знака и т.д.)
4. Буквально на днях я допилил рекурсивные грамматики (т.е. грамматики внутри грамматик), сейчас, например ,номера и литеры домов реализованы на них (https://github.com/bureaucratic-labs/natasha/blob/master/natasha/grammars/location/grammars.py#L522) т.е. мелкими шагами мы идем к тому варианту, что вы описали (:
источник

DV

Dima Veselov in Natural Language Processing
Спасибо за вопросы, постараюсь прояснить эти моменты в документации.
источник
2017 February 23

EV

Egor V. in Natural Language Processing
Привет. Можете подсказать, из какой базы взять слова для составления собственной грамматики и как это сделать под Python?
источник

DV

Dima Veselov in Natural Language Processing
Какие слова?
источник

EV

Egor V. in Natural Language Processing
Допустим, Хочу вытаскивать местоположение. Где взять словарь?
источник

DV

Dima Veselov in Natural Language Processing
Если не хватает встроенного, можно попробовать https://github.com/MenaraSolutions/geographer-ru (только зачем?)
источник

EV

Egor V. in Natural Language Processing
Мне нужно для вкр.
источник