Знают ли ученые или эксперты-исследователи из кухни, что происходит внутри сложной «глубокой» нейронной сети, когда по крайней мере миллионы соединений разрываются в одно мгновение? Понимают ли они процесс, стоящий за этим (например, что происходит внутри и как именно это работает), или это предмет спора?
Например, это исследование говорит:
Однако нет четкого понимания того, почему они так хорошо работают или как их можно улучшить.
Значит ли это, что ученые на самом деле не знают, как работают сложные сверточные сетевые модели?
Ответы:
Есть много подходов, которые направлены на то, чтобы сделать обученную нейронную сеть более понятной и менее похожей на «черный ящик», в частности , на упомянутые вами сверточные нейронные сети .
Визуализация активаций и веса слоев
Визуализация активаций является первой очевидной и прямой. В сетях ReLU активация обычно начинается с относительно дряблой и плотной структуры, но по мере обучения активация обычно становится более разреженной (большинство значений равно нулю) и локализована. Иногда это показывает, на чем конкретно сфокусирован определенный слой, когда он видит изображение.
Еще одна замечательная работа по активациям, которую я хотел бы упомянуть, это deepvis, который показывает реакцию каждого нейрона на каждом слое, включая пул и нормализацию. Вот как они это описывают :
Вторая общая стратегия - визуализация весов (фильтров). Они обычно наиболее интерпретируемы на первом слое CONV, который смотрит непосредственно на необработанные данные пикселей, но можно также показать вес фильтра глубже в сети. Например, первый слой обычно изучает похожие на фильтры фильтры, которые в основном обнаруживают края и пятна.
Окклюзионные эксперименты
Вот идея. Предположим, что ConvNet классифицирует изображение как собаку. Как мы можем быть уверены в том, что на самом деле на изображении появляется собака, а не какие-то контекстные подсказки на заднем плане или какой-то другой разный объект?
Один из способов изучения того, из какой части изображения исходит какое-то классификационное предсказание, состоит в построении графика вероятности класса интереса (например, класса собаки) в зависимости от положения объекта окклюдера. Если мы проведем итерации по областям изображения, заменим его всеми нулями и проверим результат классификации, мы сможем построить двухмерную тепловую карту того, что наиболее важно для сети на конкретном изображении. Этот подход использовался в книге Мэтью Цайлера «Визуализация и понимание сверточных сетей» (на которую вы ссылаетесь в своем вопросе):
деконволюция
Другой подход заключается в синтезировании изображения, которое вызывает срабатывание определенного нейрона, в основном то, что ищет нейрон. Идея состоит в том, чтобы вычислить градиент по отношению к изображению вместо обычного градиента по отношению к весам. Таким образом, вы выбираете слой, устанавливаете градиент там равным нулю, за исключением одного для одного нейрона и backprop для изображения.
Deconv на самом деле делает так называемое обратное распространение, чтобы сделать изображение более привлекательным , но это всего лишь деталь.
Подобные подходы к другим нейронным сетям
Настоятельно рекомендую этот пост Андрея Карпати , в котором он много играет с Recurrent Neural Networks (RNN). В конце он применяет похожую технику, чтобы увидеть, чему на самом деле учатся нейроны:
Заключение
Я упомянул лишь небольшую часть результатов в этой области исследований. Это довольно активно, и каждый год появляются новые методы, которые проливают свет на внутреннюю работу нейронной сети.
Чтобы ответить на ваш вопрос, ученые всегда что-то еще не знают, но во многих случаях они имеют хорошее (литературное) представление о том, что происходит внутри, и могут ответить на многие конкретные вопросы.
Для меня цитата из вашего вопроса просто подчеркивает важность исследования не только повышения точности, но и внутренней структуры сети. Как говорит Мэтт Цилер в этом выступлении , иногда хорошая визуализация может, в свою очередь, привести к большей точности.
источник
Это зависит от того, что вы подразумеваете под «знать, что происходит».
Концептуально, да: ANN выполняет нелинейную регрессию. Фактическое выражение, представленное весовой матрицей / функцией (ами) активации ANN, может быть явно расширено в символической форме (например, содержащее подвыражения, такие как ).1/1+e1/1+e…
Однако, если под «знать» вы подразумеваете прогнозирование выхода какого-либо конкретного (черного ящика) ANN каким-либо другим способом, то препятствием является наличие хаоса в ANN, который имеет высокие степени свободы .
Вот также несколько сравнительно недавних работ Ход Липсона по пониманию ANN через визуализацию .
источник
Краткий ответ - нет .
Интерпретируемость модели - это гиперактивная и очень горячая область современных исследований (подумайте о святом Граале или о чем-то), которая была выдвинута в последнее время не в последнюю очередь благодаря (часто огромному) успеху моделей глубокого обучения в различных задачах; эти модели в настоящее время только черные ящики, и мы, естественно, чувствуем себя некомфортно по этому поводу ...
Вот некоторые общие (и последние, по состоянию на декабрь 2017 года) ресурсы на эту тему:
В недавней (июль 2017 г.) статье в журнале Science представлен хороший обзор текущего состояния и исследований: как детективы ИИ взламывают черный ящик глубокого обучения (нет текстовых ссылок, но имена и термины в Google будут окупаться)
Сама DARPA в настоящее время запускает программу по объясненному искусственному интеллекту (XAI)
В NIPS 2016 был проведен семинар по интерпретируемому машинному обучению для сложных систем , а также учебник ICML 2017 по интерпретируемому машинному обучению от Been Kim из Google Brain.
И на более практическом уровне (код и т. Д.):
Инструмент «Что, если» от Google, новая (сентябрь 2018 года) функция веб-приложения TensorBoard с открытым исходным кодом, позволяющая пользователям анализировать модель ML без написания кода ( страница проекта , запись в блоге )
Набор инструментов распространения уровней (LRP) для нейронных сетей ( бумага , страница проекта , код , оболочка TF Slim )
FairML: аудит прогностических моделей черного ящика, Cloudera Fast Forward Labs ( запись в блоге , статья , код )
ИЗВЕСТЬ: Локальные интерпретируемые, независимые от модели объяснения ( статья , код , запись в блоге , порт R )
Совсем недавно (ноябрь 2017 г.) статья Джеффа Хинтона « Встраивание нейронной сети в мягкое дерево решений» с независимой реализацией PyTorch
SHAP: унифицированный подход к интерпретации предсказаний модели ( статья , авторский код Python , пакет R )
Интерпретируемые сверточные нейронные сети ( статья , авторский код )
Lucid, набор инфраструктуры и инструментов для исследования интерпретируемости нейронных сетей от Google ( код ; документы: Визуализация функций , Строительные блоки интерпретируемости )
Сети Transparecy-by-Design (TbD) ( бумага , код , демонстрация )
SVCCA: канонический корреляционный анализ сингулярного вектора для динамики и интерпретации глубокого обучения ( статья , код , пост в блоге Google )
TCAV: тестирование с векторами активации концепции (документ ICML 2018 , код Tensorflow )
Град-CAM: Визуальные Объяснения из глубоких сетей через градиент на основе локализации ( бумага , авторы Torch коды , Tensorflow код , PyTorch код , Keras пример ноутбук )
Разбор сети: количественная оценка интерпретируемости глубинных визуальных представлений, MIT CSAIL ( страница проекта , код Caffe , порт PyTorch )
GAN Dissection: Визуализация и понимание генеративных состязательных сетей, MIT CSAIL ( страница проекта , со ссылками на бумагу и код)
Объяснение для исправления: структура для интерпретации и исправления прогнозов детектора объектов DNN ( статья , код )
В последнее время наблюдается всплеск интереса к созданию более теоретической основы для нейронных сетей глубокого обучения. В этом контексте известный статистик и пионер компрессионного зондирования Дэвид Донохо совсем недавно (осень 2017 года) начал предлагать курс в Стэнфорде, « Теории глубокого обучения» (STATS 385) , где почти весь материал доступен в Интернете; Настоятельно рекомендуется ...
ОБНОВЛЕНИЯ :
источник
Не уверен, что это то, что вы ищете, но Google извлекал изображения из сетей, когда они питались белым шумом.
См. Инсессионизм: углубление в нейронные сети (блог Google Research) .
Этот вид представляет то, что знает сеть.
источник
Боюсь, у меня нет под рукой конкретных цитат, но я видел / слышал цитаты таких экспертов, как Эндрю Нг и Джеффри Хинтон, где они четко говорят, что мы не совсем понимаем нейронные сети. То есть мы кое-что понимаем о том, как они работают (например, математика, стоящая за обратным распространением), но мы не совсем понимаем, почему они работают. Это своего рода тонкое различие, но дело в том, что нет, мы не понимаем очень глубоких деталей того, как именно вы переходите от массы гирлянд, скажем, к распознаванию кошки, играющей с мячом.
По крайней мере, с точки зрения распознавания изображений, лучшее объяснение, которое я слышал, состоит в том, что последовательные слои нейронной сети изучают более сложные функции, состоящие из более детальных функций с более ранних уровней. То есть первый слой может распознавать «края» или «прямые линии». Следующий слой может затем выучить геометрические фигуры, такие как «коробка» или «треугольник», а затем более высокий уровень может выучить «нос» или «глаз» на основе этих более ранних функций, а затем слой более высокого уровня все еще узнает «сделанное лицо» от «глаза», «носа», «челюсти» и т. д. Но даже это, насколько я понимаю, все еще является гипотетическим и / или не совсем понятным.
источник
Вот ответ Карлоса Э. Переса на вопрос « Что такое теория глубокого обучения?
Подводя итог: у нас есть некоторые идеи, но мы не совсем уверены.
источник
ДА
Я думаю, что «знать из кухни» означает «знать в деталях»?
Позвольте мне привести ряд аналогий:
Дьявол кроется в деталях, но здесь важно то, что речь идет об искусственных конструкциях. Они не появляются случайно. Вам нужно много знаний, чтобы получить что-нибудь полезное. Что касается нейронных сетей, я бы сказал, что с момента публикации ключевой идеи (Rosenblatt perceptron, 1957) до первого заявления (Почтовая служба США, 1989) прошло примерно 40 лет. Оттуда снова 13 лет активного поиска действительно впечатляющих систем (ImageNet 2012).
То, что мы знаем очень хорошо, это то, как работает тренировка . Потому что это должно быть реализовано. Так что на очень маленькой структуре мы знаем это подробно.
Думай о компьютерах. Дизайнеры чипов очень хорошо знают, как работает их чип. Но у них, скорее всего, будет только очень грубое представление о том, как работает операционная система Linux.
Другой пример - физика и химия: физика описывает основные силы вселенной. Значит ли это, что они знают все о химии? Конечно нет! «Совершенный» физик может объяснить все в химии ... но это было бы в значительной степени бесполезно. Ему потребуется гораздо больше информации, чтобы он не мог пропустить ненужные части. Просто потому, что он слишком «увеличил масштаб» - рассматривает детали, которые на практике не интересны и не важны. Обратите внимание, что знания физика не ошибаются. Может быть, можно даже вывести из него знания химика. Но это «высокоуровневое» понимание взаимодействия молекул отсутствует.
Основное понимание этих двух примеров - уровни абстракции: сложность можно построить из простых структур .
Что еще?
Мы хорошо знаем, что в принципе достижимо с помощью разработанных нами нейронных сетей :
О, и, конечно, у нас есть аналитические подходы для нейронных сетей. Я написал магистерскую диссертацию об анализе и оптимизации сверточных архитектур нейронных сетей . В этом контексте ЛАЙМ (Локальные Интерпретируемые Модельно-Агностические Пояснения) хорош:
источник
Я просто хотел добавить кое-что:
это зависит от того, что вы подразумеваете под ученым:
Я аспирант в области электротехники, и я видел, что с ANN работает очень много исследователей в таких областях, как регрессия, прогнозирование, адаптивное управление и проблемы классификации.
Вы можете ясно заметить, что их недостаток в навыках кодирования является серьезным недостатком, и они не совсем понимают, что происходит внутри ANN, теперь я даже не говорю о Deep , они борются с пониманием простых вещей, таких как ADALINEs и ANFIS! все, что вы слышите, они говорят: дайте им данные, и они адаптируются!
источник