Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

2021ВКР750107ИСАКОВ

.pdf
Скачиваний:
9
Добавлен:
04.09.2023
Размер:
1.84 Mб
Скачать

1.2.2 Выбор анализируемых параметров

Все средства удаленного мониторинга можно условно разделить по категориям на основе технологий в них использующихся: любой смартфон и связанное с ним программное обеспечение, который используется для передачи данных о пациенте, носимое устройство, размещенное на любой части тела (датчики дыхания, мониторы артериального давления), биосенсоры или компьютеризированные системы, в которых данные вводятся пациентом через подключение к интернету [22]. В категорию наименее надежных, в силу человеческого фактора, можно отнести веб-приложения и мобильные разработки. С другой стороны, биосенсоры и мониторы также могут быть необъективны и выдавать сбои при неправильной эксплуатации, в случае брака, наличия упущенных при разработке методических погрешностей или накапливающихся при работе ошибок. Лучшим решением вопроса стала бы разработка кроссплатформенной системы с возможностью подключения к приложению носимых устройств и биосенсоров. В этом направлении движется современная разработка, в том числе и наше веб-приложение потенциально могло бы передавать информацию по стандартам REST (Representational State Transfer) API более крупной системе сбора и обработки медицинской информации. Но пока ограничимся проблемой выбора наиболее валидных параметров для отдельно взятой веб-платформы.

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

который мог бы задать себе исследователь – как отобрать данные так, чтобы быть уверенным в их достоверности? И второй – как выявить достаточно надежные метрики, на основе которых мне бы хотелось обучить модель?

21

Рис. 4 – Алгоритм машинного обучения Для измерения физической активности можно использовать широкий

спектр параметров. Наиболее распространены измерения количества действий и шагов. Однако, другие переменные активности могут представлять собой прогностическую ценность в ситуациях, связанных с конкретным заболеванием. Например, при корреляционном анализе продолжительность и количество случаев активности от умеренной до высокой лучше отражают различия, чем общее количество шагов в некоторых исследованиях инсульта [23]. Рассматривая проблему ожирения с этой точки зрения, можно согласиться с выводом неврологов и добавить к «полезным» параметрам род деятельности, которым занимался человек. Будь то прогулка, уборка в квартире или работа в саду – среднее количество шагов не отразит общей физической нагрузки на организм. Таким образом, разрабатываемое нами приложение сможет предоставить разработчику минимально необходимые для исследования на базе машинного обучения метрики. Для мониторинга нагрузок это: дата и время, длительность, род деятельности и общее число вспышек активности. Для анализа сна: дата, время пробуждения, количество часов сна. Точно такой же набор простых полезных единиц информации был выделен в ходе исследования [24], проведенного врачами эндокринологами на базе ФГБУ НМИЦ им. В.А. Алмазова, для работы алгоритма предсказания уровня сахара в крови после приема пищи у беременных женщин больных гестационным сахарным диабетом. Для этого, воспользовавшись их опытом,

среди множества общих для диетических систем нутриентов, предлагаемых

22

врачу к самостоятельному анализу в отчете по пользователю, обратим внимание на следующие показатели: сахар до приема пищи, гликемический индекс, белки (за 6 часов до), углеводы, а также, в дополнение к ним, рост и массу тела. Некоторые из этих данных можно использовать «сырыми», другие же придется преобразовать, чтобы получить метрики. Например,

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

Подытоживая процедуру отбора анализируемых параметров, упомянем и распространенную проблему удаленного мониторинга в целом – неверная информация, записанная в дневнике из-за отсутствия мотивации или преднамеренного искажения данных пациентом [24]. Для классификации ошибок в процессе отсеивания сомнительных записей были предложены следующие метки: редкие или неполные записи, грубое округление,

умалчивание о приеме пищи, занижение сведений о потреблении продуктов питания и возможное искажение данных. На данный момент в веб-

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

полезным также было бы регистрировать реальное время внесения данных,

обращая внимание врача на заполненные задним числом приемы пищи.

1.2.3 Экспорт и последующее представление данных

Преимуществом разработки мобильного приложения является упрощенная процедура синхронизации данных через облачные хранилища со всеми подключенными к одному аккаунту устройствами, однако, далеко не каждый пользователь может беспрепятственно извлечь и переслать собранную браслетами/смартфонами информацию через общедоступные средства связи, такие как почта или социальные сети. Более того существующие методы, например, у Samsung Health подразумевают наличие

23

у пользователя некоторого предыдущего опыта использования подобных систем или сноровки в самостоятельном освоении современных технологий.

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

Напомним себе, что в связи с пандемией именно этот срез населения наиболее нуждается в сфере услуг удаленного мониторинга. Для них здоровое питание,

регулярная физическая активность, поддержание здорового веса тела могут снизить риск возникновения диабета или отсрочить его возникновение [25].

Изучим подробнее способ экспорта данных пользователя,

предложенный Samsung Health на рисунке 5. Первое, что заметно выделяется,

– данные скачиваются в виде папки, включающей в себя подпапку jsons и

большое количество неочевидно названных .csv файлов. Формат широко распространен среди людей, работающих с таблицами и базами данных,

однако, ни мобильная, ни десктопная русскоязычная версия Microsoft Office

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

формат даты и времени отличается от привычного, отсутствует цветовое разделение приемов пищи по дням или гликемической нагрузке.

24

Рис. 5 – Экранная форма загруженных данных

Рис. 6 – Преобразование импортированных данных Иными словами, способ импортирования данных и их последующее

представление должны быть удобны не только разработчикам, но и самим пользователям, а также врачам. Для достижения поставленной цели необходимо создать программный скрипт, импортирующий данные по почте в виде «никнейм_пользователя».xlsx файла, содержащего в себе листы,

названные по заполняемым в ходе использования веб-приложения разделам:

25

приемы пищи, физическая нагрузка и сон, предсказание сахара, список полных дней, удаленные записи. Помимо этого, стоит реализовать возможность скачать итоговый файл на собственный персональный компьютер (ПК) или мобильное устройство с возможностью последующего открытия средствами мобильного просмотра, Microsoft Office 365/Liber Office

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

Аналогично своему конкуренту Apple Health предлагает экспортировать данные из приложения напрямую в формате xml, также требующим дополнительных манипуляций с файлом перед просмотром. Для большинства пользователей наиболее простым методом будет использовать стороннее приложение (оператор) QS Access для формирования и отправки читаемой сводки данных. Все операторы, в том числе занимающиеся,

автоматизированной обработкой персональных данных, т.е. обработкой персональных данных с помощью средств вычислительной техники, должны следовать условиям и принципам обработки персональных данных согласно гл. 2 Федерального закона от 27 июля 2006 г. N 152-ФЗ «О персональных данных» [26]. Хотя проверить честность каждого отдельно взятого приложения-компаньона к Apple Health нельзя, можно с уверенностью утверждать, что усложнение системы и наращивание большого числа внутренних связей в системах реального времени пагубно отразится на надежности хранения и передачи информации пользователя. В связи с этим было решено реализовать в веб-приложении полный внутренний цикл обработки и передачи данных.

1.2.4 Безопасность каналов передачи и шифрование данных

Одной из ключевых проблем веб-приложений являются уязвимости,

позволяющие злоумышленникам извлекать пользовательские данные. В

26

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

поэтому мы рассмотрим наиболее частые уязвимости и современные методы решения.

Среди уязвимостей наиболее часто встречающиеся:

SQL-инъекции, где SQL – язык структурированных запросов;

Межсайтовый скриптинг (XSS);

Удаленное включение файла;

Подделка межсайтовых запросов (CSRF).

Теоретически можно внимательнейшим образом обойти все точки входа и выхода данных, настроив параметры конфиденциальности. Однако, любое приложение находится в постоянном обновлении, слиянии с новыми механизмами, системами, что делает невозможным закрытие всех уязвимостей разом. В связи с этим было принято решение поставить защиту на весь входящий трафик – Firewall. Суть заключается в анализе входящих запросов и отсеивании вредоносных, см. рисунок 7. Дополнительной защитой может послужить пользовательский VPN (виртуальная частная сеть) сервис. В

таком случае будет защищен как исходящий от пользователя трафик, так и само веб-приложение.

Рисунок 7 – Пути передачи данных Рассмотренные методы являются не единственными, но требуют

меньше всего усилий при максимальной эффективности. Главная особенность такого подхода – ежемесячная оплата услуг, предоставляемых сервисами.

27

Чтобы избежать дополнительных издержек, возможно использование ручного шифрования данных. Например, Transport Layer Security (TLS) или Secure Sockets Layer (SSL) сертификация подтверждает, что приложение использует защищенный порт, т.е. шифрует данные в процессе передачи по протоколу

HTTPS (защищенный протокол передачи гипертекста). Сертификацию можно пройти бесплатно, используя сервис Let’s Encrypt [27]. Но защита трафика – не единственный способ. Данные, хранящиеся в базе (пароли, настоящие имена и почтовые адреса), могут быть дополнительно зашифрованы по методу

SHA256 (SHA в названии расшифровывается, как алгоритм криптографического хэширования). Суть шифрации заключается в создании хэш-кода на основе введенной строки. Этот хэш-код будет храниться в базе данных и сравниваться с вновь сгенерированным кодом во время верификации. Для усиления защиты придумали «соль» – набор случайных битов, которые включаются в качестве входных данных в функцию хэширования, см. рисунок 8. Метод позволяет быстро и без использования сложного математического аппарата зашифровать пользовательскую информацию. Хотя он уязвимее более сложных алгоритмов, его надежность возрастает с числом пользователей, ведь чем больше паролей он хранит, тем больше времени уйдет на взлом из-за пропорционально возросшего числа комбинаций паролей с солью. Кроме разновидности SHA (SHA0, SHA1, SHA2) существует множество других криптографических хэш-функций, вроде

MACTripleDES, MD5, RIPEMD160 и т.д. Для реализации хэш-алгоритма в работе используется библиотека Flask werkzeug. Оптимальным решением вопроса безопасности медицинских данных было бы использование комбинированных методов защиты, например, повторное шифрование и деперсонализированные медицинские данные. В рамках деперсонализации медицинской информации мы предлагаем следующее: заменить все имена и фамилии в базе данных на id (идентификатор), затем поместить в локальную компьютерную сесть клиники файл-ключ, который бы хранил расшифровку в виде «id-ФИО», где ФИО – фамилия, имя и отчество. Для автоматизации

28

процесса необходимо также написать макрос для Microsoft Excel, который бы при открытии таблицы заменял id на настоящие имена и фамилии.

Рисунок 8 – Алгоритм генерации «соленых» хэшей Помимо текстовой информации, упомянем также передачу

изображений: снимков компьютерной томографии (КТ), кривых функции внешнего дыхания и т.д. Системы шифрования разрабатываются для сохранения конфиденциальных данных на снимках, представленных в виде растровых изображений [28, 29]. Но общим недостатком для разработок в данной сфере является время выполнения, хотя надо признать, что скорость растет за счет развития вычислительной мощности компьютеров и оптимизации криптографического процесса.

Описав методы защиты, перейдем к основным правилам хранения и передачи информации, а именно соответствие международным стандартам передачи пользовательских данных. Регулирующими актами в области являются «Общий регламент по защите данных» (GDPR) на территории Европейского союза [30] и «Постановление о мобильности и подотчетности медицинского страхования» (HIPAA) в США [31].

1.3 Постановка цели и задач исследования

Подводя промежуточные выводы по первой главе, отметим, что в ходе анализа современного состояния проблемы разработки веб-приложений, все

29

потенциальные вопросы были разбиты на две большие категории:

организационные вопросы и особенности работы с данными. К

организационным вопросам мы отнесли целый спектр ограничений,

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

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

Для разработки системы требуется решить следующие задачи:

1.Обосновать выбор инструментов реализации и площадки для развертывания веб-приложения;

2.Разработать архитектуру приложения и алгоритм работы с ним;

3.Разработать составные части веб-приложения: базу данных, модель предсказания уровня сахара в крови и пользовательский интерфейс;

4.Подготовить сопроводительный материал.

30