Команда кафедри Комп’ютерних наук Державного університету телекомунікацій у складі групи студентів Шелега М. Г. і Шипілової А. О. під науковим керівництвом С. М. Іщерякова, к.т.н., доц. зайняла перше місце на всеукраїнському конкурсі студентських наукових робіт з спеціальності «інженерія програмного забезпечення», який проводився на факультеті Інформаційних технологій Київського національного університету імені Тараса Шевченко. Вони представляли проект «Онлайн помічник з медичних питань», шифр «RoboDoc». Захист роботи відбувся онлайн 27 травня 2020 року.
Робота відрізняється від інших науковою новизною та конкретним практичним використанням робочого програмного забезпечення. В роботі розроблено Telegram бот та Deep Learning Quesion Answering модель для відповіді на медицинські питання. Для цього використано алгоритми Machine Learning, а саме модель BERT та faiss для векторного пошуку.
Основні завдання роботи: проведення аналізу існуючих Question Answering алгоритмів (Rule-based, статистичні, RNN, BERT); збір або знаходження датасету; удосконалення вже існуючої математичної моделі; створення прототипу системи. Було обрано саме BERT через гарне розуміння контексту.
Вхідними даними є питання англійською мовою. Математична модель включає в себе: BioBERT(BERT натренований на PubMed), FCNN та faiss для векторного пошуку.
Під час тренування ми робимо такі кроки:
Існуюча модель DocProduct була удосконалена дотреннуванням на нових даних (з американських медичних форумів та порталів NIH - більш наукові та кваліфіковані відповіді). На питаннях без відповіді використовувалась техніка pseudo-labeling, щоб збільшити кількість тренувальних даних. Вище описані дії дали можливість удосконалити відповіді моделі та зробити їх більш детальними.
Етап inference (передбачення вже натренованої моделі) працює таким чином:
Бот підтримує українську та перекладає питання англійською, проходить всі кроки і перекладає відповідь українською.
В результаті, роботи розроблено програмне забезпечення, що може відповідати на питання саме для медичних працівників (діючих лікарів та інтернів), бо самолікування звичайними людьми може бути шкідливим. Таким чином лікар зможе провалідувати відповідь та отримати корисну інформацію, відносно випадка пацієнта.
Код Telegram бота та API з DL моделью знаходиться на Github. Більше деталей Ви зможете знайти в презентації.