Эта статья была подготовлена ​​в рамках финального проекта курса Harvard AC295 Fall 2020.

Авторы: Хаоксин Ли, Женевьев Лайонс, Ребекка Янгерман, Джерри Чжан

Обзор

Целью этого проекта является разработка набора моделей ответов на визуальные вопросы по патологии. Патология является важной отраслью медицинской практики, которая включает диагностику состояний с помощью образцов, удаленных из организма хирургическим путем, таких как биопсия. Однако использование машинного обучения для цифровой патологии изучено не так широко, как другие источники изображений, такие как радиология [1]. Визуальный ответ на вопрос направлен на обучение модели, способной отвечать на вопросы о данном изображении патологии. Используя данные, предоставленные PathVQA Grand Challenge [2], мы создали набор из трех моделей, которые отвечают на три разных типа вопросов об изображении патологии: «Что присутствует?», вопросы «Да/Нет» и вопросы со свободным ответом. Несмотря на множество проблем из-за нехватки данных, наши модели достигают точности тестов 17,8% (для первых 1, 69,5% для первых 5), 84,6% и 37,5% соответственно.

Введение и предыстория

Патология — это изучение и диагностика заболеваний с использованием «хирургически удаленных органов, тканей (образцы биопсии), биологических жидкостей, а в некоторых случаях и всего тела (вскрытие)» [3]. Патология может ответить на многие вопросы, включая некроз, воспаление и диагностику рака. Например, это слайд патологии почки, который можно использовать для диагностики почечной недостаточности:

Однако, поскольку машинное обучение привело к возрождению медицинского искусственного интеллекта, цифровая патология не была так широко изучена, как другие типы изображений, такие как рентген, МРТ и компьютерная томография [1]. Как всегда с машинным обучением в области медицины, сбор данных является сложной задачей; это требует значительной работы среди людей с огромным опытом. Тем не менее, был достигнут ряд успехов с использованием глубокого обучения, чтобы помочь с цифровой патологией, особенно с опухолевой патологией [4].

Данные

В опубликованной в марте 2020 г. статье PathVQA: более 30000 вопросов для визуальных ответов на медицинские вопросы [5] делается попытка разработать большой набор изображений, вопросов и ответов для модели ответов на визуальные вопросы по патологии, а также для этой задачи был создан грандиозный вызов. , используя этот источник данных [2]. Набор данных можно найти здесь: UCSD-AI4H/PathVQA. Авторы задают вопрос: Возможно ли разработать «ИИ-патолога, чтобы пройти сертификационный экзамен Американского совета патологии?»

Данные были собраны авторами с использованием «полуавтоматического конвейера для извлечения изображений патологии и заголовков из учебников и создания пар вопрос-ответ из заголовков с использованием обработки естественного языка». Однако, как мы обсудим ниже, авторский процесс был не очень надежным и содержал много недостатков, которые нам пришлось обойти, чтобы создать пригодные для использования модели.

Исследовательский анализ данных

Сначала мы провели предварительный анализ данных, чтобы узнать о структуре изображений PathVQA и связанных с ними вопросах. Мы загрузили данные, которые имеют предопределенное разделение обучения, теста и проверки, и просмотрели примеры изображений. На этих изображениях показаны клетки, органы, определенные биологические состояния и различные другие объекты, связанные с патологией. Кроме того, некоторые изображения являются иллюстрациями, так как набор данных был собран из различных учебников. Каждое изображение имеет в среднем 7,6 связанных вопросов. Пример изображения и связанные с ним вопросы показаны ниже.

В полном наборе данных (включая наборы для обучения, тестирования и проверки) всего n = 32 795 вопросов, связанных с 4 289 изображениями патологии. В обучающем наборе данных всего n = 19 755 вопросов, связанных с 2599 изображениями патологии. На гистограммах ниже показана частота ответов каждого типа.

Мы видим, что в нашем наборе данных больше ответов «да», чем «нет». На самом деле это довольно заметно и оказывает большое влияние на нашу базовую модель (обсуждается ниже). Когда мы копаемся в наиболее распространенных вопросах, мы замечаем, что они следуют очень специфической схеме: «Присутствует ли ____?» и ответ на этот вопрос почти всегда положительный (см. раздачу ниже). По сути, эти вопросы не являются правильными вопросами «да/нет» — они просто классифицируют, откуда взят слайд с патологией. 95% слайдов патологии содержат по крайней мере один вопрос «Присутствует ли ___». Этот факт определяет наши решения по моделированию и следующие шаги, описанные ниже.

Мы также исследуем открытые ответы, для которых будем обучать другую модель. Эти открытые ответы распределяются следующим образом:

Наконец, мы видим, что ответы часто очень короткие (‹ 10 слов или всего 1 слово), в то время как вопросы, как правило, длиннее, до 100 слов.

Методы

Задачи

Нашей первой попыткой была наивная модель (описание архитектуры см. в разделе Метод), которую мы обучали, используя все вопросы типа "да/нет" и соответствующие изображения. Технически эта модель достигла точности 77%, однако, как мы отмечали ранее, большое количество вопросов были в форме «Присутствует ли ___?», и почти всегда имели ответ «да». Наша модель изначально работала так хорошо, потому что она просто угадывала «да» на все эти вопросы. Из-за недостатка данных мы решили исключить эти вопросы «Присутствует ли ___» из нашей модели VQA «да/нет». Однако эти вопросы содержат полезную информацию о том, что присутствует на изображении, и их не следует отбрасывать. Итак, мы переназначили их для создания модели классификации, используя их обозначения, например. если вопрос «Присутствует ли сердечно-сосудистая система?» и ответ «да», тогда метка для модели классификации «сердечно-сосудистая».

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

Настройка эксперимента

Принимая во внимание вышеуказанные проблемы, проект настроен таким образом, что наш PathVQA может ответить на 3 типа вопросов, изображенных на блок-схеме ниже:

Обработка данных

Мы прогнозируем вероятность 17 классов для нашей задачи классификации. Эти классы были сгенерированы из нашего вопроса «Присутствует ли ____?» вопросы, ограничиваясь теми, у которых не менее 20 вхождений в наборах данных для обучения, тестирования и проверки. Распределение этих ответов в нашем тренировочном наборе по-прежнему искажено до такой степени, что изначально наши модели предсказывали только несколько наиболее распространенных классов. Чтобы устранить эту проблему, мы выполнили повторную выборку [6] данных, чтобы сбалансировать каждый класс до 100 вхождений. Таким образом, некоторые классы были подвергнуты избыточной выборке. Мы выполнили аугментацию данных, случайным образом переворачивая и вращая изображения, чтобы предотвратить переобучение для тех изображений, которые просматриваются несколько раз при обучении, и в целом увеличить разнообразие наших данных изображения [7]. Наш окончательный набор обучающих данных состоит из 990 изображений, тестовый набор проверочного набора данных — 369 изображений, а тестовый набор данных — 370 изображений.

Модель классификации: без трансферного обучения

В этой модели использовалась архитектура, состоящая из четырех слоев сверточной нейронной сети (CNN), за каждым из которых сразу следует объединяющий слой. Модель заканчивается сглаживающим слоем, выпадающим слоем для предотвращения переобучения и двумя плотными слоями. Последний плотный слой соответствует нашему количеству классов (17), поэтому мы генерируем значение прогноза для каждого потенциального класса для каждого изображения. Эта сводка модели подробно описывает архитектуру с 2 770 777 параметрами.

Модель классификации: с трансферным обучением

Мы точно настроили веса из VGG16, обученные на ImageNet, чтобы повысить точность нашей модели. Мы используем трансферное обучение, используя эти веса, установив наши последние несколько слоев как обучаемые. Мы обучаем две пары CNN и слоев объединения, а также сглаживание, выпадение и два плотных слоя (аналогично нашей модели обучения без переноса) поверх предварительно обученной сети VGG. В результате получается 15 136 557 параметров, хотя только 421 849 из них обучаются с помощью наших изображений патологии. Как будет показано в разделе результатов, такое трансфертное обучение, безусловно, повышает нашу производительность.

Не обращайте внимания на VQA: LSTM + VGG

В этой модели мы использовали LSTM со слоем внедрения и двумя двунаправленными слоями LSTM для анализа вопросов и VGG-16 с весами, предварительно обученными из ImageNet, для анализа изображений патологии. Традиционно используемые вложения, такие как GloVe, не подходят для клинических условий, так как многие важные слова отсутствуют в словаре или недостаточно представлены, поэтому мы обучали вложения с нуля. Полученные вложения скрытого пространства объединяются, а затем объединяются в MLP для прогнозирования ответа. MLP имеет два скрытых слоя с 1024 и 512 узлами соответственно, отсев (p = 0,1) и функции активации ReLU. Архитектура очень похожа на предложенную в «VQA: Visual Question Answering» [8]. Мы обучали эту модель отдельно для ответов «да/нет» и ответов произвольной формы.

Не обращать внимания на VQA: BERT + VGG

Эта модель аналогична модели, описанной выше, но вместо использования LSTM и вложений, обученных с нуля, мы использовали BERT в предположении, что некоторые общие текстовые знания и семантическое значение все еще смогут быть перенесены в клиническую область. Мы не переобучали вложения BERT. Мы обучали эту модель отдельно для ответов «да/нет» и ответов произвольной формы.

Комплексное внимание VQA: BERT + VGG

Мы реализовали модель, основанную на внимании, на основе структуры модели, предложенной в «Сетях с накоплением внимания для ответа на вопрос об изображении» [11]. Подобно структурам VQA, упомянутым в предыдущих разделах, многоуровневые сети внимания (SAN) имеют канал изображения и текстовый канал для приема изображений патологии и вопросов. Кроме того, мы добавили два слоя внимания, чтобы использовать информацию из обоих каналов.

Для канала изображения мы сначала изменили масштаб изображения до 224 на 224. Вместо извлечения признаков из сверточных слоев мы извлекли последний объединяющий слой, чтобы сохранить пространственную информацию исходных изображений. Извлеченная карта признаков имеет размер 512 x 14 x 14, где 14 x 14 — количество областей во входном изображении, и каждая область представлена ​​вектором признаков длиной 512. Каждый такой вектор признаков соответствует 16 × 16-пиксельная область входного изображения, и эти векторы признаков будут тем, на что обращает внимание текстовый канал. Для канала вопросов мы использовали предварительно обученный DistilBERT для извлечения встраивания текста.

Чтобы реализовать уровень внимания, мы сначала сгенерировали распределение внимания вложений текста по областям изображения (уравнение 15, уравнение 16). Основываясь на распределении внимания, мы рассчитали взвешенную сумму векторов изображений (уравнение 17) и сформировали уточненный вектор запроса (уравнение 18). Вектор запроса кодирует как информацию о вопросе, так и визуальную информацию, относящуюся к ответу. Иногда одного уровня внимания может быть недостаточно, чтобы найти правильную область для правильного ответа на вопрос. В этом случае мы можем сложить несколько слоев внимания (уравнения 19–22), поэтому агрегированный вектор признаков изображения добавляется к предыдущему вектору запроса, чтобы сформировать новый вектор запроса. Обновленный вектор запроса должен иметь возможность извлекать более подробную информацию о визуальном внимании и повышать производительность внимания.

Результаты

Модель классификации: «Присутствует ли ___?»

Результаты модели классификации показывают, что мы можем правильно классифицировать то, что присутствует на изображении патологии, с точностью первого теста 18% и точностью первых 5 тестов 70%. Использование трансферного обучения с VGG приводит к значительному повышению точности наших моделей. Большое расхождение между точностью тестов Top-1 и Top-5, вероятно, связано с тем, что некоторые органы выглядят очень похоже, а также со значительными различиями в качестве и типе изображения в наборе данных. Например, модель часто путает сердечно-сосудистую систему (например, сердце) с эндокринной.

Мы визуализировали модель классификации с помощью GradCam, чтобы убедиться, что она правильно идентифицирует органы, и чтобы понять, почему она иногда неправильно идентифицирует органы.

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

Аналогичную логику мы видим и в неверном предсказании «эндокринного» для сердца. Модель игнорирует фон и правильно идентифицирует орган, но фокусируется на левом нижнем углу органа, видя форму бабочки, вызванную какой-то тканью в углу, и ошибочно идентифицирует его как эндокринный. Первые 5 прогнозов для этого изображения аналогичны предсказаниям истинного эндокринного изображения выше, включая желудочно-кишечные и гематологические.

Модели VQA: вопросы типа "да/нет" и 50 лучших ответов в произвольной форме

Результаты для моделей VQA показывают, что модель с двумя уровнями внимания между вопросом и изображением значительно превосходит модели без внимания для вопросов «да/нет» с точностью теста 85% и AUC теста 0,94 по сравнению с точностью теста. 80% для LSTM и 76% для модели BERT без внимания. Интересно, что LSTM без внимания превосходит модель BERT. Вероятно, это связано с тем, что мы обучили вложения с нуля для LSTM, но использовали предварительно обученные вложения для BERT, которые, возможно, не были подходящими или специфичными для медицинских условий.

Однако модель BERT без внимания работает лучше, чем модель BERT с вниманием к ответам произвольной формы с точностью теста 37% против 33%. LSTM очень плохо работает для этой модели: точность теста составляет 6% после 10 эпох и 15% после 50 эпох. Важно отметить, что из-за недостатков данных, описанных выше, размер выборки для ответов произвольной формы в конечном итоге был довольно низким (n = 536 пар вопрос/ответ/изображение), поэтому результаты могут быть нестабильными. Это, вероятно, приводит к более низкой производительности модели внимания по сравнению с моделью отсутствия внимания BERT и LSTM, поскольку мы обучаем вложения с нуля, но, вероятно, недостаточно наблюдений для правильного обучения вложений (по сравнению с да / нет вопросов).

Обсуждение

Наши результаты показывают, что трансферное обучение значительно улучшает производительность модели классификации. Для моделей VQA мы обнаружили, что модель со слоями внимания между изображением и вопросом значительно улучшила наши результаты для вопросов «да/нет». Однако мы предполагаем, что модель внимания плохо работала для вопросов произвольной формы из-за очень маленького размера выборки.

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

Из-за неоднородного характера изображений патологии (которые могут относиться к любой системе органов в организме человека) мы считаем, что задача классификации является критической, и любая модель VQA патологии, предназначенная для медицинской практики, должна обучаться в сочетании с классификацией. задача, или отдельно для разных систем органов.

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

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

использованная литература

[1] Ниази МКК, Парвани А.В., Гуркан М.Н. Цифровая патология и искусственный интеллект. Ланцет Онкол. 2019 май; 20(5):e253-e261. doi: 10.1016/S1470–2045(19)30154–8. PMID: 31044723.

[2] Ответы на визуальные вопросы по патологии. https://pathvqachallenge.grand-challenge.org/

[3] Что такое патология? https://www.mcgill.ca/pathology/about/definition

[4] Jiang Y, Yang M, Wang S, Li X, Sun Y. Новая роль искусственного интеллекта на основе глубокого обучения в опухолевой патологии. Раковое сообщество (Лондон). 2020;40(4):154–166. дои: 10.1002/cac2.12012

[5] Хэ, Сюэхай и Чжан, Ичэнь и Моу, Лунтянь и Син, Эрик и Се, Пэнтао. (2020). PathVQA: более 30000 вопросов для медицинских визуальных ответов на вопросы.

[6] Стратегии повторной выборки для несбалансированных наборов данных. https://www.kaggle.com/rafjaa/resampling-strategies-for-imbalanced-datasets

[7] Шортен С., Хошгофтаар Т.М. Опрос по увеличению данных изображений для глубокого обучения. J Big Data 6, 60 (2019). https://doi.org/10.1186/s40537-019-0197-0

[8] С. Антол и др., «VQA: визуальные ответы на вопросы», Международная конференция IEEE по компьютерному зрению (ICCV) 2015 г., Сантьяго, 2015 г., стр. 2425. –2433, doi: 10.1109/ICCV.2015.279.

[9] Z. Yang, X. He, J. Gao, L. Deng and A. Smola, «Сети с накоплением внимания для ответа на вопрос об изображении», 2016 IEEE CVPR, 2016, стр. 21– 29, doi: 10.1109/CVPR.2016.10.