Парсер mystem
О программе mystem
Программа mystem производит морфологический анализ текста на русском языке. Для слов,
отсутствующих в словаре, порождаются гипотезы. Принципы работы кратко описаны в статье
Segalovich I. A fast morphological
algorithm with unknown word guessing induced by a dictionary for a web search
engine. MLMTA-2003 (PDF). Данная версия программы предназначена для
некоммерческого использования.
Получить программу.
Программу можно использовать так:
$ mystem на входе - стандартный ввод, на выходе -
стандартный вывод
$ mystem input на входе - файл input, на выходе -
стандартный вывод
$ mystem - output на входе - стандартный ввод, на выходе -
файл output
$ mystem input output на входе - файл input, на выходе -
файл output
Стандартный ввод и вывод, естественно, можно тоже перенаправлять <input
>output
Опции
Опции надо указывать по правилам UNIX - до имен файлов, при этом можно склеивать,
комбинировать и т.д.
-n
-
построчный режим;
-c
-
копировать весь ввод на вывод. То есть, не только слова, но и
межсловные промежутки. Опция необходима для возврата к полному
представлению текста. В случае построчного вывода (когда задана опция n)
межсловные промежутки вытягиваются в одну строку, символы перевода
строки заменяются на \r и/или \n. Пробел для большей видимости
заменяется на подчеркивание. Символ \ заменятеся естественно на \\,
подчеркивание на \_. Такми образом можно однозначно восстановить
исходный текст;
-l
-
не печатать исходные словоформы, только леммы и граммемы;
-i
-
включает печать грамматической информации расшифровка ниже;
-g
-
склеивать информацию словоформ при одной лемме;
-r
-
Только русские слова, игнорировать английские;
-s
-
печатать маркер конца предложения. Только если -c задана;
-p
-
сохранять регистр словоформы при приведении к лемме (title, lower,
upper). Слова в начале предложения в title case преобразуются в
lower;
-b
-
печатать только несловарные слова;
Примеры:
Для самых запутанных опций – c, n, l – показаны все варианты на примере текста
В мурелки шлепают пельсиски. В стакелках светится мычай.
$ mystem sapgir.txt
В{В}мурелки{мурелка?|мурелки?|мурелок?}шлепают{шлепать}пельсиски{пельсиска?}В{В}стакелках
{стакелка?|стакелок?|стакелки?}светится{светиться}мычай{мычай?}
$ mystem -l sapgir.txt {В}{мурелка?|мурелки?|мурелок?}{шлепать}{пельсиска?}{В}
{стакелка?|стакелок?|стакелки?}{светиться}{мычай?}
$ mystem -n sapgir.txt В{В} мурелки{мурелка?|мурелки?|мурелок?}
шлепают{шлепать} пельсиски{пельсиска?} В{В} стакелках{стакелка?|стакелок?|стакелки?}
светится{светиться} мычай{мычай?}
$ mystem -nl sapgir.txt В мурелка?|мурелки?|мурелок? шлепать пельсиска? В
стакелка?|стакелок?|стакелки? светиться мычай?
$ mystem -c sapgir.txt В{В} мурелки{мурелка?|мурелки?|мурелок?}
шлепают{шлепать} пельсиски{пельсиска?}. В{В} стакелках{стакелка?|стакелок?|стакелки?}
светится{светиться} мычай{мычай?}
$ mystem -cl sapgir.txt {В} {мурелка?|мурелки?|мурелок?} {шлепать}
{пельсиска?}. {В} {стакелка?|стакелок?|стакелки?} {светиться} {мычай?}.
$ mystem -cn sapgir.txt В{В} _ мурелки{мурелка?|мурелки?|мурелок?} _
шлепают{шлепать} _ пельсиски{пельсиска?} .\n В{В} _
стакелках{стакелка?|стакелок?|стакелки?} _ светится{светиться} _ мычай{мычай?}
$ mystem -cnl sapgir.txt В _ мурелка?|мурелки?|мурелок? _ шлепать _ пельсиска?
.\n В _ стакелка?|стакелок?|стакелки? _ светиться _ мычай?
Грамматика
Полный вариант
$ mystem -ni sapgir.txt В{В=PR=}
мурелки{мурелка?=S,жен,од=им,мн|мурелка?=S,жен,од=род,ед|мурелка?=S,жен,неод=им,мн|
мурелка?=S,жен,неод=род,ед|мурелка?=S,жен,неод=вин,мн|мурелки?=S,мн,жен,неод=им|
мурелки?=S,мн,жен,неод=вин|мурелок?=S,муж,од=им,мн}
шлепают{шлепать=V,несов=непрош,мн,изъяв,3-л}
пельсиски{пельсиска?=S,жен,неод=им,мн|пельсиска?=S,жен,неод=род,ед|
пельсиска?=S,жен,неод=вин,мн} В{В=PR=}
стакелках{стакелка?=S,жен,неод=пр,мн|стакелка?=S,жен,од=пр,мн|стакелок?=S,муж,неод=пр,мн|
стакелок?=S,муж,од=пр,мн|стакелки?=S,мн,жен,неод=пр|стакелки?=S,мн,муж,неод=пр|
стакелок?=S,муж,неод=пр,мн} светится{светиться=V,несов=непрош,ед,изъяв,3-л}
мычай{мычай?=S,муж,неод=им,ед|мычай?=S,муж,неод=вин,ед}
Компактный
$ mystem -nig sapgir.txt В{В=PR=}
мурелки{мурелка?=S,жен,од=(им,мн|род,ед)|мурелка?=S,жен,неод=(им,мн|род,ед|вин,мн)|
мурелки?=S,мн,жен,неод=(им|вин)|мурелок?=S,муж,од=им,мн}
шлепают{шлепать=V,несов=непрош,мн,изъяв,3-л}
пельсиски{пельсиска?=S,жен,неод=(им,мн|род,ед|вин,мн)} В{В=PR=}
стакелках{стакелка?=S,жен,неод=пр,мн|стакелка?=S,жен,од=пр,мн|стакелок?=S,муж,неод=пр,мн|
стакелок?=S,муж,од=пр,мн|стакелки?=S,мн,жен,неод=пр|стакелки?=S,мн,муж,неод=пр|
стакелок?=S,муж,неод=пр,мн} светится{светиться=V,несов=непрош,ед,изъяв,3-л}
мычай{мычай?=S,муж,неод=(им,ед|вин,ед)}
Конец предложений
$ mystem -cs sapgir.txt В{в} мурелки{мурелка?|мурелки?|мурелок?}
шлепают{шлепать} пельсиски{пельсиска?}. {\s}В{в}
стакелках{стакелка?|стакелок?|стакелки?} светится{светиться} мычай{мычай?}.
Расшифровка граммем
| Часть речи |
| A |
прилагательное |
| ADV |
наречие |
| CONJ |
союз |
| INTJ |
междометие |
| NUM |
числительное |
| PART |
частица |
| PR |
предлог |
| S |
существительное |
| V |
глагол |
| ANUM |
порядковое числительное |
| APRO |
местоименное прилагательное |
| ADVPRO |
местоименное наречие |
| SPRO |
местоименное существительное |
| Время (глаголов) |
| наст |
настоящее |
| непрош |
непрошедшее |
| прош |
прошедшее |
| Падеж |
| им |
именительный |
| род |
родительный |
| дат |
дательный |
| вин |
винительный |
| твор |
творительный |
| пр |
предложный |
| парт |
партитив (второй родительный) |
| местн |
местный (второй предложный) |
| Число |
| ед |
единственной |
| мн |
множественное |
| "Репрезентация" (наклонение) глагола |
| деепр |
деепричастие |
| инф |
инфинитив |
| прич |
причастие |
| изъяв |
изьявительное |
| пов |
повелительное |
| Степень сравнения |
| кр |
краткая |
| прев |
превосходная |
| срав |
сравнительная |
| Лицо глагола |
| 1-л |
1-е лицо |
| 2-л |
2-е лицо |
| 3-л |
3-е лицо |
| Род |
| жен |
женский |
| муж |
мужской |
| сред |
средний |
| Вид (аспект) глагола |
| сов |
соврешенный |
| несов |
несовершенный |
| Залог |
| страд |
страдательный |
| Одушевленность (для существительных и
винительного падежа прилагательных) |
| од |
одушевленное |
| неод |
неодушевленное |
| Прочее |
| вводн |
вводное |
| устар |
устаревшая форма |
A fast morphological algorithm with unknown
word guessing induced by a dictionary for a web search engine MLMTA-2003.
Las Vegas, June, 2003