NER–моделі для MITIE
Завдяки нашому проанотованому корпусу української мови ми мали змогу натренувати модель, що дозволяє автоматичний пошук іменованих сутностей (імен, географічних назв, назв компаній, тощо) у незнайомих текстах. Для пошуку NER сутностей ми обрали бібліотеку MITIE. Ця бібліотека є відкритою, її ліцензія дозволяє безкоштовне використання навіть у комерційних проектах. MITIE також забезпечує високу точність завдяки поєднанню звичних features для тексту та CCA embeddings. Хоч MITIE й написана на С++, вона також має інтерфейси для інших мов програмування: C, Python, Java, Matlab. Будь ласка, ознайомтеся з документацією по MITIE та прикладами використання перед початком роботи.
Для обчислення CCA embeddings ми використовували назбираний корпус українських новин, статей вікіпедії та художньої літератури.
Ми також побудували модель для пошуку іменованих сутностей російською мовою, використовуючи анотований корпус підготовлений організаторами конференції Dialogue 2016. Для обчислення CCA embeddings ми використовували корпус статей російської вікіпедії.
Word embeddings (Word2Vec, GloVe, LexVec)
На базі зібраних нами корпусів новин, статей, художньої літератури, законів та юридичних текстів ми обчислили найпоширеніши word embeddings: Word2Vec (та його покращену версію LexVec) й GloVe. Ми вирішили опублікувати ці моделі, тому що їх обчислення займає доволі багато часу та серверних ресурсів.
Ми створили окремі моделі для кожної категорії текстів з 300d векторами. Ми також обчислили їх для лематизованих версій тих самих корпусів. Якщо вам потрібні інші налаштування моделей — скористайтеся корпусами, що ми підготували, та обчисліть моделі згідно ваших потреб.
За допомоги Тетяни Кодлюк для оцінки якості побудованих векторів були створені тестові набори, аналогичні тим, які існували для англійської мови.
Також були проведені оцінки якості, їх результати можна подивтись тут.
Параметри word2vec для малих корпусів (художня література):
./word2vec_standalone.py -size 300 -negative 7 -window 4 -threads 6 -min_count 10 -iter 5 -alpha 0.030
Параметри lexvec для малих корпусів (художня література):
./lexvec -dim 300 -verbose 2 -negative 7 -subsample 1e-3 -window 4 -threads 6 -minfreq 10 -iterations 5 -alpha 0.030
Параметри GloVe для малих корпусів (художня література):
MEMORY=4.0
VOCAB_MIN_COUNT=10
VECTOR_SIZE=300
MAX_ITER=15
WINDOW_SIZE=9
BINARY=2
NUM_THREADS=12
X_MAX=10:
Для великих корпусів minfreq дорівнює 25
Модель розширення тонального словнику
Для розширення тонального словнику Сергієм Шеховцовим та Олесєм Петрівим була побудована нейромережева модель, яка дозволяє шукати подібні до існуючих слів з використанням векторів word2vec та lexvec.
Приклади роботи з моделлю і її даними:
BERT моделі від Сергія Тютюнника
multi_cased_bert_base_uk.zip - multi cased base BERT модель дотренована на об'єднаному україномовному датасеті (SQuAD 2.0 і SDSJ 2017), з наступними параметрами (epochs: 5, learning rate: 5e-5, max sequence length: 180, batch size: 16). Для тренування використовувався скрипт, розроблений авторами моделі (https://github.com/google-research/bert). Тренування проводилось на RTX 2080 Ti (11GB). На тестовому датасеті squad-2.0-uk отримали результат 61.2% точних відповідей.