boldirev-as / AIIJC-medtech23

The solution for the AI-challenge hackathon is track Medicine. The task was to develop an algorithm for analyzing ECG signals for the diagnosis of cardiac pathologies, in particular, determining the presence or absence of signs of myocardial infarction in a patient (binary class.), followed by localization of the disease (multi-label class.)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Решение для хакатона AI-challenge трек Медицина. Задачей было разработать алгоритм анализа ЭКГ-сигналов для диагностики сердечных патологий, в частности, определения наличия или отсутствия признаков инфаркта миокарда у пациента (бинарная классификация), с последующий локализацией заболевания (multi-label classification).

Решение: Wavelet преобразование. Сегментация ударов сердца через R-пики. ResNet1D для классификации заболевания по матрице (12, 500)

preprocessing_beat_examples.ipynb - ноутбук, где показана работа пайплайна извлечения циклов удара сердца. Используется в решении на платформе. wavelet_preprocessing_examples.ipynb - ноутбук, где наглядно показана работа пайплайна для создания вейвлет-скалограмм. Использовалась в прошлых решениях.

./preprocessing_with_beats/* - реализация пайплайна извлечения циклов удара сердца, который используется в решении на платформе. ./preprocessing_CWT_DWT/* - реализация прошлого пайплайна для создания вейвлет-скалограмм.

./transforming_test/, ./transforming_train/ - директории с преобразованными данными, создается после использования transforming.ipynb

./transformed_df.csv, ./transformed_test_df.csv, ./train_annotations.csv, ./val_annotations - датафреймы, которые создаются после использования transforming.ipynb

./saved_models/ - директория с логами обучения разных моделей. Их удобно посмотреть при помощи TensorBoard.

resnet1d.py - архитектура используемой модели.

transforming.ipynb - ноутбук для трансформации данных и создания аннотаций для обучения модели. model_training.ipynb - ноутбук для тренировки модели и предсказания тестового датасета. catboost.ipynb - ноутбук для тренировки катбуста и предсказания тестового датасета.

Для воспроизведения решения из платформы нужно запустить эти ноутбуки в таком порядке: transforming, model_training, catboost

About

The solution for the AI-challenge hackathon is track Medicine. The task was to develop an algorithm for analyzing ECG signals for the diagnosis of cardiac pathologies, in particular, determining the presence or absence of signs of myocardial infarction in a patient (binary class.), followed by localization of the disease (multi-label class.)


Languages

Language:Jupyter Notebook 96.2%Language:Python 3.8%