Я опубликовал основную идею детерминистского разнообразия порождающих противоборствующих сетей (GAN) в блоге 2010 года (archive.org) . Я искал, но нигде не мог найти ничего подобного, и у меня не было времени попробовать его реализовать. Я не был и все еще не являюсь исследователем нейронных сетей и не имею связей в этой области. Я скопирую и вставлю запись в блог здесь:
2010-02-24
Метод обучения искусственных нейронных сетей для создания недостающих данных в контексте переменного. Так как эту идею сложно представить в одном предложении, я буду использовать пример:
На изображении могут отсутствовать пиксели (скажем, под пятном). Как восстановить недостающие пиксели, зная только окружающие пиксели? Одним из подходов была бы нейронная сеть «генератора», которая, учитывая входные пиксели в качестве входных данных, генерирует недостающие пиксели.
Но как обучить такую сеть? Нельзя ожидать, что сеть точно произведет недостающие пиксели. Представьте, например, что отсутствующие данные - это клочок травы. Можно научить сеть с кучей изображений газонов, с удаленными частями. Учитель знает отсутствующие данные и может оценить сеть в соответствии с среднеквадратичной разницей (RMSD) между сгенерированным участком травы и исходными данными. Проблема состоит в том, что, если генератор встречает изображение, которое не является частью обучающего набора, для нейронной сети было бы невозможно поместить все листья, особенно в середине патча, в точно правильные места. Наименьшая ошибка RMSD, вероятно, будет достигнута сетью, заполняющей среднюю область патча сплошным цветом, который является средним значением цвета пикселей на типичных изображениях травы. Если бы сеть попыталась создать траву, которая выглядит убедительно для человека и, как таковая, выполняет свое предназначение, было бы прискорбное наказание метрикой RMSD.
Моя идея заключается в следующем (см. Рисунок ниже): обучить одновременно с генератором сеть классификатора, которая в произвольной или чередующейся последовательности предоставляет сгенерированные и исходные данные. Классификатор затем должен угадать в контексте окружающего контекста изображения, является ли ввод исходным (1) или сгенерированным (0). Генераторная сеть одновременно пытается получить высокий балл (1) от классификатора. Надеемся, что результатом будет то, что обе сети начинаются очень просто и продвигаются к созданию и распознаванию все более и более продвинутых функций, приближая и, возможно, подавляя способность человека различать сгенерированные данные и оригинал. Если для каждой оценки учитывается несколько обучающих выборок, то RMSD является правильной метрикой ошибки для использования,
Настройка искусственной нейронной сети
Когда в конце я упоминаю RMSD, я имею в виду метрику ошибки для «оценки вероятности», а не значения пикселей.
Первоначально я начал рассматривать использование нейронных сетей в 2000 году (публикация comp.dsp) для генерации недостающих высоких частот для цифрового аудио с повышенной частотой дискретизации (с повышенной частотой дискретизации) таким способом, который был бы скорее убедительным, чем точным. В 2001 году я собрал аудио-библиотеку для обучения. Вот части журнала EFNet #musicdsp Internet Relay Chat (IRC) от 20 января 2006 года, в котором я (да) говорю об этой идее с другим пользователем (_Beta):
[22:18] <yehar> проблема с сэмплами в том, что если у тебя уже нет чего-то «наверху», то что ты можешь сделать, если ты сделаешь выборку ...
[22:22] <yehar> я однажды собрал большой библиотека звуков, чтобы я мог разработать «умный» алгоритм для решения именно этой проблемы
[22:22] <yehar> я бы использовал нейронные сети
[22:22] <yehar>, но я не закончил работу: - D
[22:23] <_Beta> проблема с нейронными сетями заключается в том, что у вас должен быть какой-то способ измерения
достоверности результатов [22:24] <yehar> бета: у меня есть идея, что вы можете разработать «слушателя» в в то же время, когда вы разрабатываете «умный создатель звука там-вверх»
[22:26] <yehar> бета: и этот слушатель научится определять, когда он слушает созданный или естественный восходящий спектр. и создатель развивается в то же время, чтобы попытаться обойти это обнаружение
Где-то между 2006 и 2010 годами друг пригласил эксперта взглянуть на мою идею и обсудить ее со мной. Они подумали, что это интересно, но сказали, что неэффективно обучать две сети, когда одна сеть может выполнить свою работу. Я никогда не был уверен, что они не поняли основную идею или они сразу же нашли способ сформулировать ее как единую сеть, возможно, с узким местом где-то в топологии, чтобы разделить ее на две части. Это было в то время, когда я даже не знал, что обратное распространение по-прежнему является методом обучения де-факто (узнал, что делать видео в повальном увлечении Deep Dream 2015 года). На протяжении многих лет я говорил о своей идее с парой ученых-данных и другими, которые, как мне показалось, могут заинтересовать, но реакция была мягкой.
В мае 2017 года я увидела учебную презентацию Яна Гудфеллоу на YouTube [Mirror] , которая полностью сделала мой день. Мне показалось, что это та же самая основная идея, с различиями, как я понимаю в настоящее время, изложенными ниже, и была проделана тяжелая работа, чтобы она дала хорошие результаты. Кроме того, он дал теорию, или основал все на теории, почему это должно работать, в то время как я никогда не делал какого-либо формального анализа моей идеи. Презентация Гудфеллоу ответила на мои вопросы и многое другое.
GAN Гудфеллоу и его предлагаемые расширения включают источник шума в генераторе. Я никогда не думал о включении источника шума, но вместо этого использовал контекст обучающих данных, лучше согласовывая идею с условной GAN (cGAN) без ввода вектора шума и с моделью, обусловленной частью данных. Мое нынешнее понимание основано на Матье и соавт. В 2016 году источник шума не нужен для получения полезных результатов, если имеется достаточная изменчивость входных данных. Другое отличие состоит в том, что GAN Гудфеллоу сводит к минимуму логарифмическую вероятность. Позже был введен метод наименьших квадратов GAN (LSGAN) ( Mao et al. 2017), что соответствует моему предложению RMSD. Итак, моя идея будет соответствовать идее условной генеративной состязательной сети по методу наименьших квадратов (cLSGAN) без входного вектора шума в генератор и с частью данных в качестве входных данных согласования. А генеративные образцы генераторов из аппроксимации распределения данных. Теперь я знаю, если и сомневаюсь, что реальный шумный вклад позволил бы это с моей идеей, но это не значит, что результаты не будут полезны, если это не так.
Различия, упомянутые выше, являются основной причиной, по которой я считаю, что Гудфеллоу не знал и не слышал о моей идее. Во-вторых, у моего блога нет другого контента по машинному обучению, поэтому он был бы очень ограничен в кругах машинного обучения.
Это конфликт интересов, когда рецензент оказывает давление на автора, чтобы он цитировал собственную работу рецензента.