Skip to content

Latest commit

 

History

History
100 lines (70 loc) · 6.76 KB

File metadata and controls

100 lines (70 loc) · 6.76 KB

Описание проекта


Домен: Медицина

Проблема: Позднее выявление склонностей к нейродегенеративным заболеваниям, в частности, болезни Альцгеймера

Задача: на базе МРТ-снимков головного мозга выявить (классифицировать) начальные этапы возникновения болезни Альцгеймера для более раннего предпринятия мер со стороны лечащего врача и увеличения вероятности предотвращения запущенных стадий заболевания с сильными осложнениями.

Бизнес Ценность:

  1. Улучшение качества медицинских услуг:

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

  1. Снижение экономической нагрузки:

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

  1. Создание новых продуктов:

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


Описание пайлайна:

  1. Загрузка данных и формирование датасета:
  • загрузить датасет с kaggle
  • из него создать новый (дополнительный) датасет с аугментированными изображениями
  • смерджить два датасета так, чтобы в каждом классе было по 2500 изображений
  1. Работа с данными:
  • очистить данные
  • преобразовать в тензор
  • трансформировать, стандартизировать, подготовить для последующего обучения классификатора
  1. Сохранение данных:
  • создать бд для хранения текущих и новых данных

    Выбрана SQLite база данных:

    Ключевые особенности:
    - Эффективное хранение BLOB для тензоров
    - Пакетная обработка для больших наборов данных
    - Хранение метаданных
    - Индикаторы прогресса для длительных операций
    - Эффективная загрузка
    
    Преимущества:
    - Постоянное хранение
    - Индексы базы для быстрого извлечения
    - Отслеживание метаданных
    - Управление памятью
    
    Формат хранения:
    Тензоры хранятся в виде двоичных BLOB. Метки хранятся в виде целых чисел.
    Информация о форме и типе данных сохраняется. Есть временные метки для отслеживания
    
  1. Качество данных:
  • обеспечить проверку качества для новых данных

    В данном случае, нам важно чтобы новые данные не сильно отличались по цвету, контрастности и структуре (так
    как модель потенциально может переобучиться на этих признаках и присвоить их конкретному классу).
    Другими словами, нам важно понимать, что новые данные стандартизированного формата для МРТ изображений.
    Также нам важно, чтобы распределение классов было равномерным, так как если пайплайн модели не
    предусматривает дизбаланс классов, это может повлиять на качество.
    
  • Используем Histogram-Based Similarity Этот метод сравнивает распределение цвета между двумя изображениями, используя их хистограммы.

  • Выводим рандомные примеры изображений, чтобы на глаз оценить наличие проблем

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


Структура репозитория

    ├── README.md                   <- описание проекта
    │
    ├── database.py                 <- загрузка в бд
    │
    ├── data.py                     <- загрузка, аугментация и мердж датасета
    │
    ├── Dashboard                   
    |   ├── dash_data.py            <- подготовка аналитики для даша
    │   ├── dashboard.md            <- вывод графиков (Дашборд)
    |
    ├── main.py                     <- запуск основного флоу (загрузка данных, анализ и сохранение графиков в даш, загрузка в бд)
    |
    ├── Neuro_Classifier_EDA.ipynb  <- EDA
    |
    ├── tensor_dataset.db           <- база данных sqlite
    │
    └── requirements.txt            <- требования для запуска проекта