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

Таким образом, довольно недавняя разработка в области машинного обучения - это Generative Adversarial Network (GAN), которая может генерировать реалистичные изображения (спасибо моему Бой Яну Гудфеллоу за то, что у меня большие мозги для этого). Еще более поздней разработкой является использование GAN для создания изображений, которые можно использовать для расширения наборов данных. За последние несколько месяцев я работал над проектом, который использует CycleGAN (более конкретная информация о CycleGAN в моем предыдущем блоге) для генерации синтетических данных для набора данных о колоректальных полипах. Мне посчастливилось представить свою работу на NeurIPS 2019 (в ближайшем будущем я напишу в блоге сообщение о моем опыте использования NeurIPS).

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

(Общее) решение. GANs !!! Используйте GAN для создания изображений редких заболеваний, чтобы у вас больше не было этой проблемы. В частности, CycleGAN может быть лучше для медицинских изображений, потому что информация из одного класса может быть полезна для создания синтетических данных в другом классе. Подумайте об этом так: вероятно, легче создать изображение рака легкого, если вам уже дана общая структура легкого, чем если бы вам пришлось сделать это из случайного шума. По этой причине для этой задачи подойдет модель преобразования изображения в изображение.

Набор данных. Я использовал набор данных изображений колоректальных полипов, собранных в Медицинском центре Дартмута-Хичкока в Нью-Гэмпшире, США. У меня было 427 полных слайдовых изображений с высоким разрешением, которые я разделил на обучающий набор из 326 полных слайдовых изображений и тестовый набор из 101 полных слайдовых изображений. Для обучающей выборки я попросил патологоанатомов аннотировать все изображения целого слайда с помощью ограничивающих рамок, представляющих интересующие области, в общей сложности 3517 обрезков изображений переменного размера. Каждому кадру изображения был присвоен один класс для типа полипа: доброкачественный (нормальный или гиперпластический) или предраковый (канальцевая аденома, тубуловиллярная / ворсинчатая аденома или зубчатая аденома на сидячем месте). Много медицинского жаргона - важный аспект смотрите на изображении ниже.

Команда сетей. В своем проекте я использовал CycleGAN для преобразования изображений нормальной ткани толстой кишки в изображения предраковой ткани толстой кишки (настоящий медицинский жаргон довольно сложен, поэтому мы оставим его в упрощенной форме. ). Но когда вы пытаетесь обучить CycleGAN со всеми изображениями предраковых тканей, сгенерированные изображения могут выглядеть вполне нормально. Это потому, что не все изображения, которые патологоанатомы называют предраковыми, имеют ярко выраженные предраковые черты. Другими словами, некоторые изображения могут быть немного предраковыми, но они все равно должны быть помечены как предраковые; изображения варьируются от слегка предраковых до очень предраковых. Это отличается от вашего обычного GAN для создания изображений собак: у вас нет изображений, которые слегка напоминают собаку по сравнению с очень собакой. Так что же делать? Подготовьте классификатор к вашим предраковым изображениям и используйте только самые предраковые изображения для тренировки CycleGAN. Как ты это делаешь? Запустите классификатор на всех ваших обучающих изображениях и возьмите изображения с наивысшими выходными вероятностями для каждого класса в зависимости от того, что говорит ваш классификатор. Не верите, что это работает? Проверь это:

Доказательство того, что этот метод фильтрации работает! Итак, в таблице выше вы увидите, что у меня есть цифры, подтверждающие меня. Позвольте мне сначала определить для вас альфа: я использую только лучшие альфа-изображения для обучения CycleGAN. Итак, для альфа = 1/4 я выбираю только 25% самых аденоматозных изображений для обучения CycleGAN. По мере того, как альфа становится меньше, я выбираю все меньше и меньше изображений и ограничиваю свой набор тренировок только самыми предраковыми изображениями. Таким образом, в таблице выше представлен процент изображений, сгенерированных CycleGAN, которые распознаются классификатором как класс, которым они должны быть. Возьмем, к примеру, класс ТА. Когда я тренирую CycleGAN со всеми изображениями ТА, только 35,4% сгенерированных изображений классифицируются как трубчатые. Но когда я тренирую CycleGAN с использованием только 1/32 самых предраковых изображений ТА, более 90% сгенерированных изображений классифицируются как трубчатые. Это пятерка! Так что да, используйте этот метод фильтрации, чтобы помочь своему приятелю CycleGAN. Изображение ниже - еще одно доказательство для h8rs.

Качество результирующих синтетических изображений. Вот и самое важное: я показал свои изображения, созданные CycleGAN, некоторым экспертам-патологам, и им было трудно отличить настоящие изображения от поддельных. Я дал 4 патологоанатомам 100 реальных изображений и 100 поддельных изображений и попросил их классифицировать каждое изображение как настоящее или поддельное. Не более половины патологоанатомов смогли сделать это на статистически значимом уровне. Что это значит? Это означает, что поддельные изображения похожи на реальные изображения до такой степени, что различия почти неразличимы. Так что это отличное доказательство того, что CycleGAN чему-то научился. Посмотрите на картинку ниже для получения более подробной информации.

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

  • ResNet, обученная с использованием реальных данных, достигла только AUC, равного 0,78, аналогично ResNet, обученной с использованием реальных данных и дополненных данных из базовых уровней DCGAN и DiscoGAN.
  • ResNet, обученная с использованием реальных данных и дополненных данных CycleGAN, достигла AUC 0,89.
  • ResNet, обученный только на синтетических данных из CycleGAN, превзошел ResNets, обученный только на синтетических данных из DCGAN и только на синтетических данных из DiscoGAN
  • ResNets, обученные с использованием только синтетических данных, не достигли производительности, сравнимой с ResNets, обученной с использованием реальных данных.

Заключительные мысли. Я бы сказал, что это был довольно крутой проект (хотя я пристрастен). Последствия определенно огромны, поскольку дисбаланс классов является огромной проблемой в машинном обучении повсюду - возможность использовать GAN для решения этой проблемы будет огромным достижением. Если у вас несбалансированный набор медицинских данных и вы хотите повысить производительность своих классификаторов, я определенно рекомендую вам попробовать этот метод. Ваши результаты могут стать намного лучше!

Полную версию статьи можно найти здесь.

Исходный код доступен на GitHub по этой ссылке.

Если вам случится использовать эти методы, не стесняйтесь цитировать эту статью как

Джерри Вей, Ариф Суриавината, Луи Вайкус, Бинг Рен, Сяоин Лю, Джейсон Вей, Саид Хассанпур, «Генеративное преобразование изображений для увеличения данных в изображениях колоректальной гистопатологии», Полная статья на семинаре по машинному обучению для здоровья в NeurIPS, In Press, 2019.