Skip to content

s231644/DerivBaseRu

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

25 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

DerivBaseRu

A library for building a Russian derivational morphology resourse. It is based on the rules described in "The Russian Grammar" book and includes about 700 types of affixational derivation in Russian.

TODO: harmonization, visualization, compounds.

Getting Started

Prerequisites

You should have python3 installed on your machine (we recommend Anaconda3 package) and modules listed in requirements.txt. If you do not have them, run in Terminal

pip install -r requirements.txt

Installing and Usage

Linux / MacOS

To install this project on your local machine, you should run the following commands in Terminal:

git init
git clone https://github.com/nsu-ai/DerivBaseRu.git\
cd DerivBaseRu

Examples of using DerivBaseRu:

>>> from src.Derivation import Derivation
>>> evaluator = Derivation()

>>> print(evaluator.derive(word_b='красить', pos_b='verb', pos_a='adj'))
['красячий', 'крашливый', 'некрасиемый', 'красильный', 'красливый', 'закрасинный', 'красный', 'закрашенный', 'красительный', 'крашеный', 'красилой', 'краский', 'красьючий', 'красиючий', 'красистый', 'красной', 'красительский', 'краситый', 'бескрасной', 'красилый', 'красинный', 'некрасимый', 'красимый', 'бескрасный', 'некрасный', 'некрасной', 'красивучий', 'крашенный', 'красиемый']

>>> print(evaluator.derive_ext(word_b='красить', pos_b='verb', pos_a='adj'))
[('закраснить', 'rule888(за,и):2'), ('окраснить', 'rule888(за,и):2'), ('украснить', 'rule902(у,и):2'), ('прокраснить', 'rule899(про,и):2'), ('краснничать', 'rule814(нича):1'), ('отокраснить', 'rule894(от,и):2'), ('обкраснить', 'rule888(за,и):2'), ('подокраснить', 'rule896(по,и):1'), ('перекраснить', 'rule895(пере,и):1'), ('отокраснить', 'rule894(от,и):1'), ('подкраснить', 'rule896(по,и):2'), ('скраснить', 'rule899(про,и):2'), ('краснить', 'rule796(и):2'), ('краснничать', 'rule814(нича):2'), ('краснеть', 'rule830(е):3'), ('сокраснить', 'rule899(про,и):2'), ('украснить', 'rule902(у,и):1'), ('обескраснить', 'rule893(обез,и):2'), ('откраснить', 'rule894(от,и):1'), ('перекраснить', 'rule895(пере,и):2'), ('подокраснить', 'rule896(по,и):2'), ('обескраснить', 'rule893(обез,и):1'), ('раскраснить', 'rule900(раз,и):2'), ('покраснить', 'rule896(по,и):1'), ('краснить', 'rule796(и):1'), ('раскраснить', 'rule900(раз,и):1'), ('обокраснить', 'rule888(за,и):2'), ('окраснеть', 'rule905(о,е):2'), ('красовать', 'rule807(ова):1'), ('скраснить', 'rule899(про,и):1'), ('покраснеть', 'rule908(о,е):1'), ('накраснить', 'rule888(за,и):2'), ('сокраснить', 'rule899(про,и):1'), ('красеть', 'rule830(е):1'), ('покраснеть', 'rule908(о,е):2'), ('закраснеть', 'rule904(за,е):1'), ('краснеть', 'rule830(е):1'), ('красствовать', 'rule817(ствова):1'), ('откраснить', 'rule894(от,и):2'), ('прикраснить', 'rule898(при,и):1'), ('подкраснить', 'rule896(по,и):1'), ('искраснить', 'rule889(из,и):1'), ('окраснеть', 'rule905(о,е):1'), ('красниться', 'rule933(и,ся):1'), ('покраснить', 'rule896(по,и):2'), ('прикраснить', 'rule898(при,и):2'), ('красеть', 'rule830(е):2'), ('накраснить', 'rule888(за,и):1'), ('закраснить', 'rule888(за,и):1'), ('окраснить', 'rule888(за,и):1'), ('прокраснить', 'rule899(про,и):1'), ('закраснеть', 'rule904(за,е):2'), ('искраснить', 'rule889(из,и):2'), ('обокраснить', 'rule888(за,и):1'), ('красновать', 'rule807(ова):1'), ('обкраснить', 'rule888(за,и):1'), ('красновать', 'rule807(ова):2'), ('красниться', 'rule933(и,ся):2')]

Notation

In this section, we describe the notation used in our rule system.

Verbs (verb)

Infl. type inf 1sg 3sg
1 делать делаю делает
1 менять меняю меняет
1 уметь умею умеет
2 рисовать рисую рисует
2 танцевать танцую танцует
2 горевать горюю горюет
3 тонуть тону тонет
4 помнить помню помнит
4 крутить кручу крутит
4 обогатить обогащу обогатит
4 ушибить ушибу ушибет
4 стелить стелю стелет
4 зиждить зижду зиждет
5 держать держу держит
5 стоять стою стоит
5 смотреть смотрю смотрит
5 бежать бегу бежит
6 плакать плачу плачет
6 лаять лаю лает
6 клеветать клевещу клевещет
лезть лезу лезет
ползти ползу ползет
трясти трясу трясет
красть краду крадет
вести веду ведет
честь чту чтет
мести мету метет
грести гребу гребет
7ст расти расту растет
беречь берегу бережет
печь пеку печет
8*3 достичь достигну достигнет
9 тереть тру трет
10ел молоть мелю мелет
10ол колоть колю колет
10ор пороть порю порет
11 бить бью бьет
12ы мыть мою моет
12у дуть дую дует
12и гнить гнию гниет
12греть греть грею греет
12петь петь пою поет
12брить брить брею бреет
13 давать даю дает
14м жать жму жмет
14н начать начну начнет
14н мять мну мнет
14ним снять сниму снимет
14йм понять пойму поймет
14йм объять обойму обоймет
14им принять приму примет
14ым изъять изыму изымет
14ьм взять возьму возьмет
15 стать стану станет
16 жить живу живет
клясть клясть кляну клянет
есть есть ем ест
дать дать дам даст
быть быть буду будет
ехать ехать еду едет
идти идти иду идет
идти уйти уйду уйдет
идти изыти изыду изыдет

Nouns (noun)

Infl. type f m n p
1 корона вирус окно джинсы
2 земля олень море грабли
3 рука снег ухо беруши
4 душа корж плечо
5 курица птенец солнце ножницы
6 змея воробей удушье
7 линия гений подобие
8 лошадь путь время

Adjectives (adj)

Infl. type adj
1 белый
2 синий
3 короткий
4 нищий
5 куцый

Authors

See also the list of contributors who participated in this project.

License

Apache 2.0, see LICENSE for more details.

Publications

Daniil Vodolazsky. DerivBase.Ru: a Derivational Morphology Resource for Russian (LREC 2020).

@InProceedings{vodolazsky:2020:LREC,
author = {Vodolazsky, Daniil},
title = {DerivBase.Ru: a Derivational Morphology Resource for Russian},
booktitle = {Proceedings of The 12th Language Resources and Evaluation Conference},
month = {May},
year = {2020},
address = {Marseille, France},
publisher = {European Language Resources Association},
pages = {3930--3936},
abstract = {Russian morphology has been studied for decades, but there is still no large high coverage resource that contains the derivational families (groups of words that share the same root) of Russian words. The number of words used in different areas of the language grows rapidly, thus the human-made dictionaries published long time ago cannot cover the neologisms and the domain-specific lexicons. To fill such resource gap, we have developed a rule-based framework for deriving words and we applied it to build a derivational morphology resource named DerivBase.Ru, which we introduce in this paper.},
url = {https://www.aclweb.org/anthology/2020.lrec-1.484}
}

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 89.8%
  • HTML 5.5%
  • Jupyter Notebook 4.7%