← Эра глубокой нейроэволюции, с 2017
Обсуждение
Читать и комментировать в ЖЖ ↗
спасибо, положил в статьи в список "срочно к прочтению"
но э-э ... как это ?
"всякие поиски в пространствах многих размерностей вести даже легче, чем в пространствах малых размерностей, ибо не попадаешь в локальные минимумы" - вероятно, ты что-то не так понял, потому что сие есть бред. Проблема локальных минимумов с увеличением размерности, как правило, только ухудшается.
Комментарий
As has been discovered in deep learning, above some threshold of complexity, it appears that search actually becomes easier in high dimensions in the sense that it is less susceptible to local optima. While the field of deep learning is familiar with this way of thinking, its implications are only beginning to be digested in neuroevolution.
Это цитата из обсуждаемого текста, as is.
Комментарий
Если локальный минимум на одномерном пространстве аргументов, то выход из него может быть только вверх по склонам.
Если есть ещё один аргумент, то бишь пространство двумерное, то появляется шанс, что локальный минимум по одному измерению не является им же по другому, и спуск вдоль этого измерения выведет куда-нибудь из локального минимума по первому.
Из этих соображений, при увеличении количества измерений этот шанс должен и дальше расти...
Комментарий
Я тожечитал, что улучшается, а не ухудшается. Кажется, в качестве аргумента я видел, что при росте размерности больше шансов, что по какому-то измерению таки окажется седловая точка, и стохастический поиск выберется дальше вниз.
Комментарий
на таком уровне строгости количество локальных минимумов должно быть пропорционально объему, а он растет тем быстрее, чем больше число измерений
Комментарий
совершенно не факт, что выведет
совершенно не факт, что не попадешь в другой локальный минимум
кроме того, с увеличением числа измерений могут появляться более сложные пространственные структуры, например, в пространстве двух переменных появляются овраги и спиральные структуры ...
Комментарий
в общем, надо читать, потому что локальные минимумы - это проблема градиентного спуска, а они его как раз предлагают заменить на "эволюционные" методы
увеличение размерности сверх необходимого ухудшает генерализацию и требует большего объема данных при обучении, если это не важно, то проблему локальных минимумов таким образом можно решить
Комментарий
Конечно, не факт. Но шансы всё ж в общем случае растут
Комментарий
Комментарий
Ну вроде как знак второй частной производной с равной вероятностью будет плюс или минус, потому, чем больше частных производных (больше размерность пространства), тем меньше вероятность, что точка с нулями первых производных будет локальным минимумом, а не перегибом, а значит будет еще куда двигаться.
Комментарий
У вас еще более необоснованное утверждение, чем исходное :)
Комментарий
А встречались заходы на представление выученной сети не просто в виде упрощенной, почищенной от лишнего груза, сетки для выполнения на одном менее мощном процессоре, а в виде цепочки совсем простых специализированных процессоров? Чтоб типа прям как в мозгах было на этапе автоматизмов: наученная сеть воплощалась прям в физической топологии..
Комментарий
Ну видишь ли, тут есть две возможности.
Если для той же задачи и тех же данных добавить еще m измерений, то да, есть вероятность, что локальный минимум исчезнет. Однако существенное увеличение размерности приведет к двум неприятным эффектам: 1) потребуется значительно больше данных для обучения, 2) ухудшится генерализация, т.е. увеличится риск того, что нейросеть просто запоминает примеры, и не дает правильного ответа на их суперпозицию, например.
Вторая возможность - увеличилась вся размерность задачи, и данных, и обучаемой системы. В этом случае, очевидно, локальных минимумов должно стать больше.
В качестве первой реакции я просто решил, что первый вариант заведомо не имеет смысла и говорил про второй.
Комментарий
Комментарий
Как я понимаю, автоматический дизайн фич тоже так оправдывают, при этом эксперименты с получением фич нелинейными комбинациями существующих считают именно поэтому перспективными. Но всё же я видел и утверждения о том, что в задачах большой размерности, с native фичами, всё равно геометрия лучше.
Комментарий
Это было.
Много лет назад нейронные сети пытались делать из транспьютеров.
Но это не имеет смысла, нейрон сильно проще процессора. Можно спаять эквивалентную схему, для нейрона ИНС совсем просто, сумматор + пороговый элемент, для реальных нейронов сложнее, с ними не все пока ясно, но очевидно, что такая нейросеть будет работать на порядки медленнее, чем просто смоделированная на микропроцессоре.
Интел недавно сделал микропроцессор специально под нейронные сети, но как он устроен внутри, я еще не разбирался.
Комментарий
Что ты имеешь в виду под native features?
Параметры модели?
Разумеется, если у тебя есть хорошая модель, условно, система дифуров, описывающая движение самолета, то лучше, чтобы система идентифицировала эти параметры, а не подбирала сто миллионов весовых коэффициентов.
И наоборот, если ты имеешь сложную модель, набрал для нее случайных параметров и пытаешься обучить систему давать ответ на вопрос, хорошо ли будет летать самолет, в зависимости от его веса, длины хвоста и размера бюста второго пилота, то ... лучше так не делать, в общем.
Комментарий
Не, делают же не так. Берут какие-то разумные параметры, результаты измерений всего чего можно намерить, увидеть, даже посчитать по частично известным аналитическим моделям. А потом строят из них ещё кучу комбинаций - сумм и произведений по 2. по 3, по 8, частных, логарифмов этих произведений и экспонент от них. И всё это подают сетке на вход, в надежде что некоторые из этих фич будут осмысленными.
А у физиков, считающих новые материалы, я прочёл вообще замечательное - они построенное таким образом очень многомерное пространство просто обрабатывают линейной регрессией, без сеток. Но при этом используют специальные метрики, обеспечивающие близость к нулю большинства параметров наилучшего результата. А дальше анализируют, где оказались ненулевые коэффициенты. Ага, при х1, х2 и ln(x1\x3^2). Теперь ищем физический закон, включающий логарифмы и обратные квадраты для объяснения. Метод, на мой взгляд, совершенно варварский. Но работает, по их словам.
Собственно, начиналось это всё с kernel методов, но там, хотя бы, переменные подменяются, а не пополняются.
Ладно, это совсем уже в сторону.
Комментарий
Ты тут серьёзно заблуждаешься. Спайковые процессоры вполне существуют, и их много, и там да, делают аппаратно "нейроны" с пороговым срабатыванием, вполне себе цифровые. И работает такая сеть не на порядки медленнее, зато на порядки энергоэффективней -- поэтому эксперименты идут, в количестве. Но такие сети плохо умеют обучать. Поэтому делают специальные компиляторы для таких сетей, в них грузят для исполнения уже обученные классические модели "математических нейронов".
Для искусственных нейронов (которые только так называются, но ни разу не нейроны) специальную аппаратуру не используют именно как для нейронов, используют главным образом параллельные тензорные ускорители-умножители (в том числе на арифметике с фиксированной точкой). Это очень удобно, но не энергоэффективно.
Вот я писал год назад: https://ailev.livejournal.com/1293810.html
Комментарий
"всякие поиски в пространствах многих размерностей вести даже легче, чем в пространствах малых размерностей, ибо не попадаешь в локальные минимумы" : Это контр-интуитивно, но верно. Смотрите статью flying_bear http://www.biorxiv.org/content/early/2017/08/30/182378 , раздел Percolation and criticality as the basis and condition of tree-like evolution