Применение методов обработки естественного языка для кластеризации текстовых описаний генов

Дордюк Владислав Дмитриевич

Аннотация


Цель выпускной квалификационной работы магистра - разработать алгоритм для автоматической кластеризации наборов генов на основе их текстовых описаний и реализовать с его помощью комплекса программ для практического использования.
Для достижения поставленной цели в ходе работы были выполнены следующие задачи:
1) подготовлен набор данных для тестирования алгоритмов;
2) реализован программный код для загрузки описаний генов из открытых источников;
3) разработан метод выделения признаков из текстовых описаний функций генов с помощью больших лингвистических моделей;
4) разработан метод выделения признаков на основе аббревиатур, указанных в текстах и тегов указанных в открытых базах данных по функциям генов;
5) разработан метод снижения размерности и кластеризации генов на основе их функции;
6) создан комплекс программ, реализующий перечисленные методы.

Так как большая часть информации о генах представлена в виде текстовых описаний, была выдвинута гипотеза, что применение методов из области обработки естественных языков позволит ускорить процесс обработки генетических наборов данных, сводя анализ большого количества генов к исследованию нескольких десятков групп генов, которые выбраны алгоритмом на основании сходных физиологических функций.

В ходе выполнения работы были использованы следующие методы исследования: анализ, математическое моделирование, синтез, сравнение, эксперимент.
В магистерской диссертации использовались методы снижения размерности данных (t-SNE, PHATE, UMap, Spectral Embedding, IsoMap); большие лингвистические модели, предобученные на медицинских данных и общих текстах (BERT, BlueBERT-PubMed, BlueBERT-MIMIC, RoBERTa, BioBERT, ClinicalBERT); методы построения семантических пространств (doc2vec, gene2vec); методы кластеризации (k-Means, HDBSCAN, агломеративная кластеризация); регулярные выражения. Данные для обработки загружались из открытых баз данных UniProt, GeneOntology, NCBI.

В теоретической части магистерской диссертации рассмотрены основные элементы работы с текстами, принятые в сфере обработки естественных языков, такие как токенизация, очистка текста, лемматизация, стемминг, а также кодирование текстовой информации. Второй раздел посвящен анализу существующих технологий для создания текстовых вложений, снижения размерности векторов и кластеризации, а также поиску доступных информационных ресурсов в виде открытых медицинских баз данных и выбору методов для исследования. В практической части данной работы реализовано программное обеспечение для сбора данных, их подготовки, кластеризации и тематического моделирования. В практической части работы для проведения экспериментов были собраны два набора данных. Первый состоит из 12 927 наименований дифференциально экспрессированных генов пациентов с аутовоспалительными заболеваниями, второй включает в себя 2 662 генов пациентов с различными типами кардиомиопатии, включая дилатационную, воспалительную, ишемическую и неишемическую. Было разработано два алгоритма. Первый использует лингвистическую модель BlueBERT и метод one-hot для кодирования данных, UMAP для снижения размерности векторов и k-means для кластеризации. Второй алгоритм использует PHATE для снижения размерности и HDBSCAN для кластеризации. Помимо этого, его функционал был расширен с помощью двух методов тематического моделирования: частотного словаря и технологии BERTopic. Суммарно было проведено 186 вычислительных экспериментов с использованием 9 языковых моделей, 6 методов снижения размерности и 8 методов кластеризации. Было разработано и протестировано 86 архитектур алгоритма обработки данных и был выделен наиболее эффективный из протестированных подходов. Результаты были оценены с помощью анализа исключением и экспертной оценкой, в ходе которой гипотеза подтверждалась методом эксперимента.

В ходе работы было доказано, что предложенный метод позволяет свести процесс анализа тысяч генов к анализу нескольких десятков семантически обоснованных групп. Автоматический сбор информации и ее анализ методами обработки естественных языков в сочетании с высокой скоростью работы алгоритма позволили существенно снизить количество времени, требуемое для проведения анализа больших наборов данных.