Цитата(Bioskeptic)
Черные ящики существуют и являются проблемой, потому что модели глубокого машинного обучения могут состоять из миллионов параметров и быть нелинейными. Такие модели не поддаются прямой интерпретации, то есть вы банально не можете предсказать, как поведет себя функция, полученная вами при обучении нейронной сети, в той или иной ситуации. Это и есть черный ящик.
Человеку достаточно бросить один единственный взгляд на исходные картинки и результаты работы нейросети, чтобы понять, где искать ошибку - поэтому ваше утверждение, что "такие модели не поддаются прямой интерпретации" противоречат реальному положению вещей в этой сфере. Да вот же, пример из вашей обзорной статьи:
Рисунок 3. Конфликт формы-текстуры [24]: текстура (слева) определена как слон; форма кошки (середина) определена как кошка; форма кошки с текстурой слона (справа) определена как слон из-за смещения текстуры.Цитата(Bioskeptic)
Например, в обзорной статье Analysis of Explainers of Black Box Deep Neural Networks for Computer Vision: A Survey (2019), опубликованной в научном журнале Machine Learning and Knowledge Extraction, прямо говорится следующее:
Latest models are more complex and Deep Learning (DL) architectures are getting deeper and
deeper and millions of parameters are calculated and optimized by a machine.
For example, the common network VGG-19 incorporates about 144 millions parameters that were
optimized over millions or hundred thousands of images. ResNet has about 5 · 10^7 trainable parameters
and for classifying one image it needs to execute about 10^10 floating point operations, see. It is hardly traceable and not recalculate-able by humans.
Еще один хороший пример из той же обзорной статьи. Программа распознавания должна была отличать собак от волков, но из-за разного фона изображений начала хорошо определять снег. А все оттого, что фото волков для тренировочных наборов изображений чаще всего делались на фоне белого снега (и еще потому, что летом волков сфотографировать сложней), в то время как фото собак чаще всего были сделаны на более темном фоне (т.к. собака друг-человека, а население сосредоточено больше всего в тех местах, где снега нет или мало, поэтому фон фото чаще всего темный). В процессе работы этой программы было накоплено очень много данных - однако человеку достаточно получить несколько результатов определения снега вместо волков и посмотреть на несколько исходных фото с волками, чтобы догадаться, в чем дело.
Поэтому люди всегда смогут быстро разобраться, почему нейронная программа работает неправильно, причем, не анализируя весь многомиллионный массив параметров. Цитата(Bioskeptic)
Конечно, я не утверждаю, что нейронные сети-«черные ящики» выполняют неалгоритмические операции, как раз наоборот, они полностью алгоритмичны, хотя и не в том смысле, как алгоритмичны калькуляторы. Но они генерируют сложные нелинейные модели, которые могут создавать впечатление этой самой неалгоритмичности, о которой писал Пенроуз. «Черный ящик» в данном случае означает, что вы не можете предсказать поведение нелинейной модели, потому что малейшие отклонения во входных данных могут привести к кардинально другому результату.
Вопрос, что понимать под "отклонениями" и какие это отклонения. Если это на самом деле не отклонения, а ошибочные наборы входных данных для обучения, то предсказать поведение программы, как в случае с фото волков на снегу, конечно, не получится. Что вовсе не означает, что нейронные сети - «черные ящики». Черным ящиком является процесс, который нейронная программа просчитывает. Там для таких процессов известны только входные и выходные данные, а что там внутри этого ящика - это неважно. Программы нейросетей программистами написаны, поэтому в них всегда можно заглянуть, исправить, изменить, доработать.
Цитата(Bioskeptic)
Более того, эта модель (или функция) образована сложными связями между искусственными нейронами, образующими слои,
Искусственные нейроны, слои и связи на самом деле это названия для элементов информации - записей, накопленных программой нейросети. Все это записано в массиве данных в виде набора записей в таблицах в базы данных. Можно ли анализировать эти данные? Конечно, а почему нет? Выше есть возражение, что эти данные громоздки и могут состоять из миллионов параметров и поэтому людям их невозможно анализировать. Однако невозможно и сложно это совсем разные вещи, не находите? Человеку не нужно анализировать весь многомиллионный массив параметров и связей, которые наплодила программа, ему достаточно бросить один единственный взгляд на исходные картинки и результаты работы нейросети, чтобы понять, где искать ошибку. Люди всегда смогут быстро разобраться, почему нейронная программа работает неправильно.
Однако использовать людей для обучения нейросетей и дорого, и во многих случаях незачем, потому что это медленно. И тут начинается автоматизации процесса обучения и коррекции ошибок обучения, чему ваша обзорная статья уделяет особое внимание - методам, при помощи которых это делается. В вашей обзорной статье речь в основном идет об
_автоматическом_ исправлении ошибок некорректных начальных данных и о проблемах
_автоматического_ обучения компьютерных нейронных сетей. Т.е. те самые explainers - это грубо говоря и есть те самые программы, которые анализируют данные, накопленные программой нейросети и находят в них некорректные начальные данные, и затем
_автоматически_исправляют входные данные для обучения. Где вы видите здесь черные ящики, если все записи, накопленные программой нейросети, доступны для этих анализа этими explainers?
Цитата(Bioskeptic)
Что касается нейросети, изучающей качания маятника, то нет, никаких предварительных моделей в нейронную сеть не вкладывалось, нейронная сеть сама сгенерировала модель, причем не статистическую, а динамическую.
Она самообучалась на видеокадрах физического процесса, при каждом цикле она сравнивала сгенерированное ею изображение будущего положения объекта (маятника) со следующим видеокадром из выборки.
Вы можете называть это моделью или функцией, если вам угодно - сути это не меняет. Она обучалась, используя данные видео - динамическое изменение положения маятника во времени - за энное кол-во колебаний. Затем полученные результаты обрабатывались статистическими методами анализа. То, что нейронные сети, в отличие от статистических методов классификационного анализа, позволяют работать с неполными данными, не означает, что статистические методы не используются в нейросетях.
Цитата(https://habr.com/ru/post/566114/)
Нейронные сети – это статистические вычислительные модели, применяемые к множеству практических задач, в том числе обработка изображений, машинный перевод и поиск шаблонов. При обучении с учителем, нейросеть тренируется на примере уже известных объектов, то есть для всех исходных данных у нас есть предопределенный правильный ответ. Главная идея обучения нейросети – это настроить такую конфигурацию, при которой ответы модели будут максимально приближены к корректным.
...
Статистика используется и для этого максимального приближения, и для поиска поиска шаблонов, совпадений и зависимостей - для много чего еще, - короче, это факт - статистика используется в нейросетях.