Классификация рентгеновских изображений с помощью глубокого обучения

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

Набор данных был получен с Kaggle и может быть загружен здесь. Он содержит 5860 изображений. Первым шагом было разделение данных на обучающую, проверочную и тестовую выборки. Это первое решение, в котором нужно принять знание предметной области. В зависимости от отрасли и типа данных предпочтение отдается разным разделениям. Мы выбрали примерно 80% обучения, 10% проверки и 10% тестирования.

Затем мы исследовали распределение изображений и отметили, что у нас было почти в 3 раза больше изображений рентгеновских снимков с пневмонией, чем здоровых.

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

Для предварительной обработки мы масштабировали данные до 100 x 100 пикселей, так как хотим иметь возможность запускать модели локально с использованием ЦП. При этом мы потеряли часть соотношения сторон.

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

В конце концов, выбранной моделью была нейронная сеть свертки с выпадающими слоями, а матрица путаницы была следующей (на невидимых тестовых данных).

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

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

Мы рекомендуем следующие действия:

1 — собрать дополнительные данные, эта классификация была проведена на небольшой выборке из примерно 5 тыс. изображений и послужила доказательством концепции.

2 — устранить дисбаланс классов, чтобы попытаться улучшить производительность, например, с помощью методов передискретизации.

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