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

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

В этой статье мы представляем нашу идею и подход к решению таких проблем с помощью программного приложения ИИ. Сначала мы познакомим вас с нашей клиент-серверной архитектурой и взаимодействием с API. В следующей статье мы покажем, как это происходит внутри бэкенда и как мы в конечном итоге создаем конвейер машинного обучения.

Hitaya_OneAPI: джин цифрового здравоохранения

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

Hitaya_OneAPI — это комплексное решение для ряда наиболее часто диагностируемых заболеваний, использующее новые технологии, такие как AI/ML, а также "наборы и библиотеки инструментов Intel OneAPI AI Analytics" для расширенных прогнозы результата. Мы предлагаем это медицинское приложение, чтобы заботиться о пациентах на этапах осмотра, когда обращение к врачу было бы невозможным или лабораторные тесты требуют нескольких дней, чтобы дать результаты. Это также может быть использовано для ежедневного отслеживания состояния здоровья.

Архитектура

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

Модель разработана таким образом, чтобы обрабатывать вновь добавленные данные, а также маркировать их методами сравнительного анализа. Мы создали панель управления врачом, чтобы получать отзывы о непомеченных или невидимых точках данных, которые помогают нам улучшать нашу систему. Оперативные данные передаются в систему, и модель время от времени обучается для повышения производительности. Окончательный результат отображается на экране пользователя с оценкой достоверности и сообщением, показывающим, обнаружено ли у человека заболевание. Для оптимизации производительности мы планируем использовать Intel Optimization for Tensorflow/PyTorch, что может помочь нам сократить время отклика.

Пошаговое руководство по коду

В следующем фрагменте кода показано, как работает внутренний API Flask. Почтовый запрос отправляется на сервер при переходе по конечной точке URL /pneumonia. Здесь мы используем Intel Distribution for Python. Вызывается асинхронная функция, которая принимает входные данные File в формате jpeg, jpg и png. Если файл не находится ни в одном из этих трех форматов, он выдает ошибку с предлагаемым сообщением. После принятия файл изображения отправляется для методов предварительной обработки, а именно изменения размера, преобразования в формат RGB и в двоичный массив, чтобы сделать его понятным для машины.

@app.post("/pneumonia")
async def pneumonia(file: UploadFile = File(...)):
    extension = file.filename.split(".")[-1] in ("jpg", "jpeg", "png")
    if not extension:
        return "Image must be jpg or png format!"

    predictions = {}
    load_model()

    image = read_imagefile(await file.read())
    image = process_image(image)
    try:
        out = model.predict(image)
        predictions = {
                        "positive":str(np.round(out[0][1],2)),
                        "negative":str(np.round(out[0][0],2))
                      }
    except:
        predictions ={}

    return predictions

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



Заключение

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