История изменений
0.5 (2013-11-05)
- Методы MorphAnalyzer.cyr2lat, MorphAnalyzer.lat2cyr и атрибут
OpencorporaTag.cyr_repr для преобразования между тегами/граммемами,
записанными латиницей и кириллицей;
- тег для целых чисел теперь NUMB,intg; для вещественных - NUMB,real
(раньше для всех был просто NUMB);
- KnownSuffixAnalyzer теперь не вызывается для слов короче 4 символов.
0.4 (2013-10-19)
- Parse.estimate переименован в score и содержит теперь
оценку P(tag|word) на основе данных из OpenCorpora;
- по умолчанию результаты разбора сортируются по score.
То, что результатам сопоставляется оценка P(tag|word), может в некоторых
случаях снизить скорость разбора раза в 1.5 - 2. Если эти оценки не нужны,
создайте экземпляр MorphAnalyzer с параметром probability_estimator_cls=None.
Для обновления требуется обновить pymorphy2-dicts до версии >= 2.4,
а также библиотеки DAWG или DAWG-Python до версиий >= 0.7.
0.3.5 (2013-06-30)
- Препроцессинг словаря: loc1/gen1/acc1 заменяются на loct/gent/accs;
варианты написания тегов унифицируются (чтоб их было меньше);
- исправлено согласование слов с числительными;
- при склонении слов в loc2/gen2/acc2/voct слово ставится в loct/gent/accs/nomn,
если вариантов с loc2/gen2/acc2/voct не найдено.
Для полноценного обновления лучше обновить pymorphy2-dicts до версии >= 2.2.
0.3.4 (2013-04-29)
- Добавлен метод Parse.make_agree_with_number для согласования слов
с числительными;
- небольшие улучшения в документации.
0.3.3 (2013-04-12)
- Исправлен тег, который выдает RomanNumberAnalyzer (теперь это ROMN,
как в OpenCorpora);
- добавлена функция pymorphy2.tokenizers.simple_word_tokenize,
которая разбивает текст по пробелам и пунктуации (но не дефису);
- исправлена ошибка с разбором слов вроде “ретро-fm” (pymorphy2
раньше падал с исключением).
0.3.2 (2013-04-03)
- добавлен RomanNumberAnalyzer для разбора римских чисел;
- MorphAnalyzer и OpencorporaTag теперь можно сериализовывать
с помощью pickle;
- улучшены тесты;
- при компиляции словаря версия xml печатается раньше.
0.3.1 (2013-03-12)
- Поправлен метод MorphAnalyzer.word_is_known, который раньше
учитывал регистр слова (что неправильно);
- исправлена ошибка в разборе слов с дефисом (тех, у которых лишний
дефис справа или слева).
0.3 (2013-03-11)
- Рефакторинг: теперь при необходимости можно дописывать свои
“шаги” морфологического анализа (“предсказатели”)
и комбинировать их с существующими (документация пока не готова,
и API может поменяться);
- на вход больше не обязательно подавать слова в нижнем регистре
(но на выходе при этом регистр сохраняться не обязан - используйте
функцию pymorphy2.shapes.restore_word_case, если требуется
восстановить регистр полученных слов);
- улучшено предсказание неизвестных слов по словообразовательным префиксам
(учитывается больше таких префиксов);
- реализован разбор (и склонение) слов с дефисами;
- результаты разбора теперь включают в себя полную информацию о том,
как слово разбиралось; наличие para_id и idx при этом
больше не обязательно;
- анализатор теперь отмечает пунктуацию тегом PNCT, числа - тегом NUMB,
слова, записанные латиницей - тегом LATN;
- улучшено предсказание по неизвестному префиксу (добавлено ограничение по
граммеме Apro);
- улучшения в тестах и бенчмарках;
- удален атрибут morph.dict_meta (используйте morph.dictionary.meta);
- удален (возможно, временно) метод MorphAnalyzer.inflect
(используйте метод inflect у результата разбора);
- удален метод MorphAnalyzer.decline (используйте parse.lexeme);
- удалено свойство Parse.paradigm.
В результате этих изменений улучшилось качество разбора, качество склонения
и возможности по расширению библиотеки (втч для настройки под конкретную
задачу), но скорость работы “из коробки” по сравнению с 0.2 снизилась
примерно на треть.
0.2 (2013-02-18)
- Улучшения в предсказателе: учет словоизменительных префиксов;
- улучшения в предсказателе: равноценные варианты разбора не отбрасываются;
- изменена схема проверки совместимости словарей;
- изменен формат словарей (нужно обновить pymorphy2-dicts до 2.0);
- добавлено свойство Parse.paradigm.
0.1 (2013-02-14)
Первый альфа-релиз. Релизована основа: эффективный разбор и склонение,
обновление словарей, полная поддержка буквы ё.
Многие вещи, которые были доступны в pymorphy, пока не работают
(разбор слов с дефисом, разбор фамилий, поддержка шаблонов django,
утилиты из contrib).
Кроме того, API пока не зафиксирован и может меняться в последующих релизах.