Объяснение сетевых прогнозов с помощью Grad-CAM
возвращает карту сопоставления активации класса с градиентом (Grad-CAM) изменения показателя классификации изображения scoreMap = gradCAM(net,X,label)X, когда сеть net оценивает балл класса для класса, заданного label. Используйте эту функцию, чтобы объяснить прогнозы сети и проверить, что сеть фокусируется на нужных частях изображения.
Метод интерпретации Grad-CAM использует градиенты оценки классификации относительно окончательной карты сверточных признаков. Части изображения с большим значением для карты Grad-CAM больше всего влияют на оценку сети для этого класса.
Этот синтаксис используется для вычисления карты Grad-CAM для задач классификации изображений или пикселей.
возвращает карту важности Grad-CAM с помощью функции уменьшения. scoreMap = gradCAM(net,X,reductionFcn)reductionFcn - это дескриптор функции, который уменьшает выходные активации восстановительного слоя до скалярного значения. Этот скаляр выполняет роль оценки класса для задач классификации и обобщает технику Grad-CAM на задачи неклассификации, такие как регрессия.
gradCAM функция вычисляет карту Grad-CAM путем дифференцирования уменьшенного выходного сигнала понижающего слоя относительно признаков в характерном слое. gradCAM автоматически выбирает сокращение и слои элементов для использования при вычислении карты. Чтобы задать эти слои, используйте 'ReductionLayer' и 'FeatureLayer' аргументы «имя-значение».
Этот синтаксис используется для вычисления карты Grad-CAM для задач, не связанных с классификацией.
[ также возвращает имена слоя элемента и слоя редукции, используемых для вычисления карты Grad-CAM. Этот синтаксис используется с любой комбинацией входных аргументов в предыдущих синтаксисах. scoreMap,featureLayer,reductionLayer] = gradCAM(___)
___ = gradCAM(___, указывает параметры, использующие один или несколько аргументов «имя-значение» в дополнение к входным аргументам в предыдущих синтаксисах. Например, Name,Value)'ReductionLayer','prob' задает для понижающего слоя значение net слой с именем 'prob'.
reductionFcn функция получает выходные данные от уровня редукции как отслеживаемые dlarray объект. Функция должна уменьшить этот выход до скаляра dlarray, который gradCAM затем дифференцируется относительно активизаций слоя элемента. Например, для вычисления карты Grad-CAM для канала 208 активации softmax сети функция уменьшения @(x)(x(208)). Эта функция принимает активизации и извлекает 208-й канал.
gradCAM функция автоматически выбирает слои сокращения и элементов для использования при вычислении карты Grad-CAM. Для некоторых сетей выбранные слои могут оказаться неподходящими. Например, если сеть имеет несколько слоев, которые можно использовать в качестве уровня элемента, то функция выбирает один из этих слоев, но ее выбор может оказаться не самым подходящим. Для таких сетей укажите, какой уровень элементов использовать с помощью 'FeatureLayer' аргумент «имя-значение».
[1] Селвараджу, Рампрасаат Р., Майкл Когсвелл, Абхишек Дас, Рамакришна Ведантам, Деви Парих и Дхрув Батра. «Grad-CAM: Визуальные объяснения от глубоких сетей посредством градиентной локализации». 2017 (октябрь 2017): 618-626, https://doi.org/10.1109/ICCV.2017.74.
[2] Виноградова, Кира, Александр Дибров и Джин Майерс. «На пути к интерпретируемой семантической сегментации с помощью сопоставления активации классов с градиентом». Материалы Конференции АААИ по искусственному интеллекту 34, № 10 (апрель 2020 года): 13943-13944, https://doi.org/10.1609/aaai.v34i10.7244.
activations | imageLIME | occlusionSensitivity