Скачиваний:
3
Добавлен:
04.09.2023
Размер:
687.83 Кб
Скачать

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

При нажатии на кнопку «Отправить» (см. рисунок 2) скрипт формирует Excel файл на основе записей, сохраненных в базе данных. Отчет содержит несколько таблиц, в том числе упомянутых нами ранее: приемы пищи, предсказание уровня сахара в крови, физическая нагрузка и сон, список полных дней и удаленных записей. На рисунке 36 представлена лист «Приемы пищи». Дни чередуются в соответствии с цветовой раскраской. Ниже располагаются рассчитанные средствами библиотеки sqlite3 средние значения нутриентов по дням. Всего в таблицу в отчете входит 29 макро- и микронутриента, среди них: белки, жиры, углеводы, витамины и минералы.

Рисунок 2 – Табличная форма дневника приемов пищи

Кроме того, в отчет входят записанные системой приемы инсулина и уровень сахара в крови натощак и после каждого из приемов пищи (см. рисунок 3).

Рисунок 3 – Табличная форма записей УСК

2 Разработка модели предсказания уровня сахара в крови

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

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

В нашей работе будут рассматриваться методы улучшения модели деревьев регрессии, но, так как зачастую возникает путаница между определениями моделей деревьев принятия решений и деревьев регрессии, приведем короткое объяснение. Разница между ними заключается в том, что при классификации в листьях деревьев решений стоят результирующие классы, при регрессии же стоит какое-то значение целевой функции см. рисунок 4. Соответственно здесь в каждом узле мы видим среднее значение и стандартное отклонение значений целевой функции наблюдений, попавших в узел Node. Общее число наблюдений, попавших в узел равно N.

Рисунок 4 – Дерево регрессии

Деревья решений и регрессии являются одними из наиболее популярных моделей, что обусловлено следующими причинами:

  • Легко интерпретируемая модель;

  • Может работать с переменными любого типа;

  • Нет необходимости в явном виде задавать форму взаимосвязи между откликом и предикторами;

  • Автоматически выполняют отбор информативных предикторов и учитывают взаимодействия между ними;

  • Можно эффективно применять для работы с пропущенными данными;

  • Хорошо применимы как количественным, так и к качественным зависимым переменным.

Однако, рассмотренный класс моделей имеет ряд критических недостатков:

  • Сложный поиск оптимального дерева;

  • Невысокая точность предсказаний, возможно переобучение;

  • Чувствительность к шумам во входных данных.

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

Как уже раньше упоминалось в работе, мы используем систему градиентного бустинга (библиотека xgboost) для повышения качества модели регрессионных деревьев, но это не единственный популярный вариант.

Случайный лес, в свою очередь, является алгоритмом машинного обучения, использующим ансамбли деревьев решений, каждое из которых само по себе дает очень невысокую точность, но за счет их большого количества результат получается лучше. Заключение принимается по итогу «голосования» деревьев, рис. 5.

Рисунок 5 – Ансамбли случайного леса

Метод случайного леса по сути является улучшенным бэггингом деревьев решений. Бэггинг – это процедура усреднения результатов множества моделей, построенных на основе сгенерированных из генеральной совокупности обучающих выборок. Главное его преимущество в том, что он убирает корреляцию между деревьями. В обоих случаях мы строим несколько сотен деревьев по обучающим бутстреп (процедура генерации повторных случайных выборок из исходного набора данных) выборкам, однако, на каждой из итераций построения дерева случайным образом выбирается лишь небольшая группа предикторов из всех подлежащих рассмотрению признаков.

Бустинг (Gradient Boosting Machine) заключается в итеративном процессе последовательного построения частных моделей. Каждая новая модель обучается с использованием информации об ошибках, сделанных на предыдущем этапе, а результирующая функция представляет собой линейную комбинацию всего ансамбля моделей с учетом минимизации любой штрафной функции. Т.е. каждая последующая модель строится таким образом, чтобы придавать больший вес ранее некорректно предсказанным наблюдениям.

Каждое дерево строится по набору данных X,r, который на каждом шаге модифицируется определенным образом. На первой итерации по значениям исходных предикторов строится дерево f1(x) и находится вектор остатков r1. На последующем этапе новое регрессионное дерево f2(x) стоится уже не по обучающим данным X, а по остаткам r1 предыдущей модели. Линейная комбинация прогноза по построенным деревьям дает нам новые остатки и этот процесс повторяется B раз (при чрезмерно большом B бустинг может приводить к переобучению). Благодаря построению неглубоких деревьев по остаткам, прогноз отклика медленно улучшается в областях, где одиночное дерево работает не очень хорошо. Такие деревья могут быть довольно небольшими, лишь с несколькими конечными узлами. Параметр сжатия , который корректирует величину вклада каждого дополнительного дерева, регулирует скорость этого процесса, позволяя создавать комбинации деревьев более сложной формы для анализа остатков. Итоговая модель бустинга представляет собой ансамбль, выражающийся формулой:

Сложность получаемого ансамбля моделей определяет параметр – число внутренних узлов (глубина взаимодействия между предикторами).

Модель градиентного бустинга на основе деревьев регрессии была выбрана в качестве модели для прогнозирования постпрандиального гликемического ответа из-за ее высокой точности прогнозирования с разнородными наборами данных и способности работать с отсутствующими данными. Коэффициент корреляции Пирсона, средняя абсолютная ошибка (MAE), а также среднеквадратичная ошибка (MSE) были выбраны в качестве ключевых показателей для оценки модели с помощью тестового набора. Окончательная точность уже ранее оценивалась по данным новых пациентов (25% от всех пациентов).