Машинне навчання, потоковий Інтернет речей та підключені медичні пристрої
Оценка пользователей: / 14
ПлохоОтлично 
There are no translations available.

Cluster_LogoПодивіться, як машинне навчання можна застосувати для охорони здоров'я завдяки даним моніторингу пацієнтів та певною допомогою Apache Spark.
Поєднання даних IoT, потокового аналізу, машинного навчання та розподілених обчислень стало більш потужним та менш дорогим, ніж раніше, що дозволило значно швидше зберігати та аналізувати багато даних та більше різних їх типів.
Things_1
Деякі приклади спільної роботи IoT, Big Data та машинного навчання:
• Охорона здоров'я: постійний моніторинг хронічних захворювань.
• Розумні міста: схеми трафіку та управління заторами.
• Виробництво: оптимізація та прогнозоване обслуговування.
• Перевезення: оптимізація маршрутів і споживання палива.
• Автомобілі: розумні автомобілі.
• Телекомунікації: виявлення аномалій.
• Роздрібна торгівля: реклама, яка базується на місці розташування
Спробуємо зрозуміти, чому комбінування даних IoT, потокового передавання даних та машинного навчання допомагає надати медичну допомогу, при цьому важливо зазначити, що такі хронічні захворювання, як серцево-судинні, є основними причинами захворювань та витратами на охорону здоров'я в країні. Найбільші сфери витрат та хвилювань - це координація допомоги та випереджаюче направлення в лікарні людей з хронічними захворюваннями. Дешеві сенсори, які можуть відслідковувати життєво важливі ознаки, в поєднанні з машинним навчанням, дозволяють лікарям швидко застосовувати інтелектуальні ліки для своїх пацієнтів і мають потенціал забезпечення масштабного управління хронічними захворюваннями з кращою охороною здоров’я при менших витратах.
Crisis_2
Посилання на зображення https://www.wsj.com/articles/the-smart-medicine-solution-to-the-health-care-crisis-1499443449
Команда дослідників із Стенфордського університету показала, що модель машинного навчання може виявити серцеву аритмію на електрокардіограмі (ЕКГ) краще, ніж експерт.
ECG_3
Як пояснив Michael Chui з McKinsey Global Institute, «Сенсори, які ставляться на пацієнта, тепер можуть дистанційно і безперервно відслідковувати життєві ознаки, даючи практикам раннє попередження про обставини, які в іншому випадку призведуть до незапланованих госпіталізацій та дорогої невідкладної допомоги. Підвищення ефективності лікування однієї серцевої недостатності може скоротити витрати на госпіталізацію та лікування на мільярд доларів щорічно у Сполучених Штатах».
Дані від моніторів можна аналізувати в режимі реального часу та надсилати сповіщення постачальникам медичних послуг, щоб вони моментально дізнавалися про зміни стану пацієнта. Однак, для виявлення аномалій важливо знайти реальні проблеми, зберігаючи при цьому на низькому рівні хибні сигнали тривоги; Пацієнт на UCSF ледве пережив 39-кратне передозування після того, як сповіщення були проігноровані. Зверніть увагу на те, що попередження про 39-разове передозування та про 1% передозування виглядали однаково, і лікарі та фармацевти, які отримували занадто багато попереджень, звикли не звертати на них уваги.
В цьому посту обговорюється програма для потокового автоматизованого навчання для виявлення аномалій у даних монітора серця, яка демонструє приклад того, як можна використовувати нові технології охорони здоров’я з цифровими підключеннями. Також розглядається технологія, яка надає контрольовану точність для активації сповіщень, низький рівень помилкових сигналів. Ця програма була представлена на Strata San Joseby Joe Blue and Carol McDonald і базується на прикладі книги Ted Dunning та Ellen Friedman Practical Machine Learning: A New Look At Anomaly Detection. (Посилання на завантаження повного коду є в кінці цього поста).
Streaming_4
Що таке машинне навчання?
Машинне навчання використовує алгоритми для пошуку шаблонів в даних, а потім використовує модель, яка розпізнає ці шаблони для прогнозування нових даних.
ML_5
Що таке розпізнавання аномалій?
Виявлення аномалій є прикладом неконтрольованого підходу до машинного навчання.
Неконтрольовані алгоритми не мають позначки чи цільового результату, передбачених заздалегідь. Ці алгоритми знаходять схожість або закономірності вхідних даних, наприклад, групу схожих клієнтів, яка базується на даних про покупки.
Anomaly_6
Виявлення аномалій спочатку встановлює, що таке нормальна поведінка, потім порівнює її з спостережуваною поведінкою та створює оповіщення, якщо виявлено значні відхилення від норми. У цьому випадку ми не починаємо з відомих серцевих захворювань, які спробуємо класифікувати. Замість цього ми шукаємо відхилення від типових показань і застосовуємо цю оцінку в найближчому реальному часі.
Побудова моделі з кластеризацією
Кардіологи визначили шаблон хвилі нормальної ЕКГ. Ми використовуємо цей повторюваний шаблон для навчання моделі на попередній активності серцебиття, щоб потім порівнювати наступні спостереження з цією моделлю для оцінки аномальної поведінки.
Щоб побудувати модель типової активності серцебиття, обробляємо ЕКГ (на основі конкретного пацієнта або групи багатьох пацієнтів), розбиваємо її на частини, що перекриваються, які тривають приблизно 1/3 секунди, а потім застосовуємо алгоритм кластеризації для групування подібних фігур.
Cluster_7
Кластеризовані алгоритми виявляють групи, що зустрічаються в зібраних даних. При кластеризації алгоритм класифікує входи в категорії, аналізуючи схожість між вхідними прикладами. Алгоритм k-means об'єднує спостереження в k-кластери, в яких кожне спостереження належить до кластера з найближчим середнім з центру цього кластера.
Cluster_8
У наведеному нижче коді Spark Apache ми:
• Розбираємо дані ЕКГ у вектор.
• Створюємо об'єкт k-means і встановлюємо параметри, щоб визначити кількість кластерів та максимальну кількість ітерацій для визначення кластерів.
• Навчаємо модель на вхідних даних.
• Зберігаємо модель для використання пізніше.
Code_9
Результатом цього є каталог шаблонів, який може бути використаний для реконструкції того, як має виглядати ЕКГ:
Results_10
Використання моделі нормального стану для потокових даних
Normal_11
Щоб порівняти фактичну ЕКГ з моделлю для нормальної поведінки, коли приходить сигнал, то перекриваються послідовності фігур, показані зеленим кольором, а ті, що відповідають каталогу шаблонів, показані червоним кольором, а потім вони об'єднуються, щоб отримати в режимі реального часу реконструкцію того, як повинна виглядати типова ЕКГ. (Щоб реконструювати з перекриваючими частинами, ми розмножуємо їх за допомогою синусоїдальної віконної функції.)
Window_12
У наведеному нижче коді Spark Apache ми:
• Використовуємо метод DStream foreachRDD, щоб застосувати обробку до кожного RDD в даному DStream.
• Розбираємо дані ЕКГ у вектор.
• Використовуємо модель кластеризованих віконних форм ЕКГ, щоб отримати кластер для даного вікна.
• Створюємо повідомлення з ідентифікатором кластера, 32 фактичних точок даних ЕКГ та 32 реконструйованих точок даних ЕКГ.
• Відправляємо доповнене повідомлення до іншої теми MapR-ES.
Code_13
Відображення фактичної ЕКГ та реконструйованої нормальної ЕКГ в інформаційній панелі в режимі реального часу
Веб-програма в режимі реального часу відображає фактичну ЕКГ і реконструює нормальну ЕКГ, використовуючи Vert.x, набір інструментів для створення реактивних мікросервісів на основі подій. У веб-додатку:
• Клієнт Vert.x Kafka отримує доповнені збагачені повідомлення ЕКГ з теми MapR-ES і публікує повідомлення на шині подій Vert.x.
• Клієнт браузера JavaScript підписується до шини подій Vert.x, використовуючи SockJS, і відображає спостережувану ЕКГ (зелений колір) та реконструйовану очікувану ЕКГ (червоний колір).
Vertx_14
Виявлення аномалій
Різниця між отриманою та очікуваною ЕКГ (зелений мінус червоний) - це помилка реконструкції або залишок (показано жовтим кольором). Якщо залишок є значним, то може бути аномалія.
Anomaly_15
Метою виявлення аномалій є пошук реальних проблем при збереженні низького рівня помилкових сигналів тривоги; Завдання полягає в тому, щоб дізнатися, який розмір помилки реконструкції повинен викликати попередження.
T-дайджест - це метод оцінки розміру помилки реконструкції як квантиля, виходячи з розподілу набору даних. Алгоритм можна додати до робочого процесу виявлення аномалій, щоб можна було встановити кількість сигналів тривоги у відсотках від загальної кількості спостережень. Т-дайджест дуже точно оцінює розподіл з невеликою кількістю зразків, особливо на хвостах (які зазвичай є найбільш цікавими частинами). І, оцінюючи ці дані точно, ви можете встановити порогове значення для створення оповіщення. Наприклад, встановлення порога на 99% призведе приблизно до одного попередження для кожної реконструкції, тобто, до відносно великої кількості попереджень (аномалії, за визначенням, повинні бути рідкими). На 99,9%, буде створений попереджувальний сигнал для кожної тисячі реконструкцій.
Tdigest_16
Висновки
Цей пост провів вас через потокову систему для виявлення аномалій в даних монітора серця, демонструючи, як дані з монітора переміщуються в модель автокодера, яка порівнює сигнали в контексті нещодавньої історії, щоб виявити нерегулярні серцебиття в найближчому реальному часі. Це приклад того, як поєднання IoT, потокового передавання даних та машинного навчання з візуалізацією та сповіщенням може дозволити медичним працівникам поліпшити результати та зменшити витрати.
Екосистема IoT вимагає від компаній збирати дані, агрегувати їх та навчати пристроям все населення, щоб зрозуміти події та ситуації. У той же час, згідно MapR’s Jack Norris, бізнесменам слід вкласти інтелект до краю, щоб вони могли дуже швидко реагувати на ці події. Наявність спільних даних може допомогти обробляти всі дані однаково, контролювати доступ до них і застосувати інтелект для високої продуктивності та швидкості.
Список літератури та додаткова інформація
(Джерело EN: dzone.com)
 
>
КнигаНовости Практика поискаПартнерыО нас
Підтримка та дизайн: Могильний С.С. Шаблон: Joomla Templates by BuyHTTP Joomla Hosting