Details

Title: Применение генеративно-состязательной сети для генерации искусственных геномов: выпускная квалификационная работа бакалавра: направление 09.03.04 «Программная инженерия» ; образовательная программа 09.03.04_03 «Разработка программного обеспечения»
Creators: Вербов Павел Анатольевич
Scientific adviser: Маслаков Алексей Павлович
Organization: Санкт-Петербургский политехнический университет Петра Великого. Институт компьютерных наук и кибербезопасности
Imprint: Санкт-Петербург, 2024
Collection: Выпускные квалификационные работы; Общая коллекция
Subjects: генеративно-состязательные сети; искусственные геномы; generative adversarial network; artificial genomes
Document type: Bachelor graduation qualification work
File type: PDF
Language: Russian
Level of education: Bachelor
Speciality code (FGOS): 09.03.04
Speciality group (FGOS): 090000 - Информатика и вычислительная техника
DOI: 10.18720/SPBPU/3/2024/vr/vr24-1550
Rights: Доступ по паролю из сети Интернет (чтение, печать, копирование)
Additionally: New arrival
Record key: ru\spstu\vkr\28428

Allowed Actions:

Action 'Read' will be available if you login or access site from another network Action 'Download' will be available if you login or access site from another network

Group: Anonymous

Network: Internet

Annotation

Данная работа посвящена разработке REST сервиса для генерации искусственных геномов при помощи генеративно-состязательной сети. Проведен обзор существующих исследований по генерации геномов, выявлены требования, которым должно соответствовать разрабатываемое приложение, сделан сравнительный анализ доступных инструментов и технологий для решения поставленных задач, в результате которого выбраны наиболее оптимальные в рамках предъявляемых к решению требований. В ходе работы с применением языка программирования Pyton и фрейморка Keras (TensorFlow) спроектирована, реализована и обучена на открытом банке данных «1000 геномов» генеративно-состязательная нейронная сеть. Для демонстрации работы модели на базе фреймворка FastAPI реализован REST API сервис, предоставляющий набор операций для асинхронной генерации файлов, содержащих последовательности нуклеотидов. Полученная модель нейронной сети проверена с помощью различных статистических метрик (таких как критерий Колмогорова-Смирнова) на соответствие требованиям качества полученных синтетических данных, а также проведено интеграционное тестирование REST сервиса с помощью библиотеки PyTest.

This work is devoted to the development of a REST service for generating artificial genomes using a generative adversarial network. A review of existing research on genome generation was carried out, the requirements that the developed application must meet were identified, a comparative analysis of the available tools and technologies for solving the problems was made, as a result of which the most optimal ones were selected in terms of the requirements presented for the solution. Using the Python programming language and the Keras framework (TensorFlow), a generative adversarial neural network was designed, implemented and trained on the open data bank «1000 Genomes». To demonstrate the operation of the model, a REST API service providing a set of operations for the asynchronous generation of files containing nucleotide sequences has been implemented on base of the FastAPI framework. The designed model was tested using various statistical metrics (such as the Kolmogorov-Smirnov criterion) to ensure compliance with the quality requirements of the obtained synthetic data and integration testing of the REST service was carried out using the PyTest library.

Document access rights

Network User group Action
ILC SPbPU Local Network All Read Print Download
Internet Authorized users SPbPU Read Print Download
-> Internet Anonymous

Table of Contents

  • Введение
  • Глава 1. Анализ предметной области
  • 1.1 Требования к системе
  • 1.2 Обзор литературы
  • Глава 2. Выбор технологий и средств разработки
  • 2.1 Выбор языка программирования
  • 2.2 Выбор технологий для создания модели GAN
  • 2.3 Выбор технологий для создания REST API к модели
  • Глава 3. Архитектура системы
  • 3.1 Общая архитектура
  • 3.2 Архитектура GAN
  • Глава 4. Реализация сервиса
  • 4.1 REST API
  • 4.2 Иерархия классов
  • 4.3 Асинхронная обработка задач
  • 4.4 Обучение GAN
  • 4.5 Загрузка обучающей выборки
  • 4.6 Контейнеризация
  • Глава 5. Тестирование и оценка результатов
  • 5.1 Верификация модели
    • 5.1.1 Двухвыборочный критерий Колмогорова-Смирнова
    • 5.1.2 Метрика Васерштейна
  • 5.2 Тестирование REST API
  • Заключение
  • Приложение 1. Исходный код

Usage statistics

stat Access count: 12
Last 30 days: 0
Detailed usage statistics