2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки





Начать новую тему Ответить на тему
 
 Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 08:13 


15/01/12
161
Всё, что смог выяснить из прогуглившихся ссылок -- это то, что обучение происходит послойно.
Но как оно может происходить послойно? Мы тогда должны знать, какие результаты выдаст промежуточный слой? Если да -- то какой смысл во многих слоях? Откуда мы узнаём, что должны получить в промежуточных слоях?

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 12:36 
Заслуженный участник
Аватара пользователя


16/07/14
1134
Москва
Мы считаем, что нейросеть - это просто функция от входа и параметров. Фиксируем вход, считаем производную по каждому параметру, и обновляем его независимо.
За счет послойной структуры, производная по параметрам предыдущего слоя выражается через производные по слоям следующего.

Т.е. в каждый момент времени каждый слой "должен" выдавать такой результат, чтобы последующие дали правильный ответ.

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 18:19 


15/01/12
161
То, что Вы написали, касается обычного обучения.
А как происходит глубинное?

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 18:22 
Заслуженный участник
Аватара пользователя


16/07/14
1134
Москва
А что вы понимаете под "глубинным" (кстати deep обычно переводят как "глубокое", а не "глубинное") обучением, если не многослойные сети?

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 21:08 


15/01/12
161
То, что написано в вики
https://ru.wikipedia.org/wiki/%D0%93%D0%BB%D1%83%D0%B1%D0%B8%D0%BD%D0%BD%D0%BE%D0%B5_%D0%BE%D0%B1%D1%83%D1%87%D0%B5%D0%BD%D0%B8%D0%B5

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 21:12 
Заслуженный участник
Аватара пользователя


16/07/14
1134
Москва
Это слишком общее описание. Обычную многослойную feedforward нейросеть вы к глубокому обучению относите?

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 21:47 


15/01/12
161
Нет, не отношу.
Обыкновенный метод обратного распространения ошибки тоже не отношу к глубокому обучению.
Здесь я и пытаюсь выяснить, что к нему относят.

Ведь если

$BackPropagation = DeepLearning$,
то зачем выдумали новые названия, для путаницы?

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 22:20 
Заслуженный участник
Аватара пользователя


16/07/14
1134
Москва
Ну вот под приведенную вами ссылку обычные сети с более чем одним слоем подходят.

Под "глубоким обучением", кажется, довольно редко понимают что-то, кроме нейронок. Как правило их учат градиентным спуском в разных вариациях (иногда и иначе - например, генетикой).

Igor_Dmitriev в сообщении #1202520 писал(а):
зачем выдумали новые названия, для путаницы?
Такое мнение тоже встречается :D

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 22:41 


12/07/15
720
Из википедии:
Цитата:
Алгоритмы глубокого обучения противопоставлены алгоритмам неглубокого обучения по количеству параметризованных преобразований, с которыми сталкивается сигнал, распространяющийся от входного слоя к выходному слою, где параметризованным преобразованием считается такой блок обработки данных, у которого есть обучаемые параметры, такие как веса или пороги.


Каждое параметризованное преобразование образует на основании входных данных некоторые понятия/представления об объектах. Если эти понятия/представления являются конечными ответами, то это получится неглубокое обучение с единственным параметризованным преобразованием. Понятия/представления могут развиваться в несколько этапов, на каждом этапе повышается уровень абстрактности. И это уже глубокое обучение.

Приводится пример, в той же статье википедии:
Цитата:
Наблюдение (например, изображение) может быть представлено многими способами, такими как вектор интенсивности значений на пиксель, или (в более абстрактной форме) как множество примитивов, областей определенной формы, и т. д. Некоторые представления позволяют легче решать поставленные задачи (например, распознавание лица или распознавание выражения лица).


Обозначенная идея выше звучит действительно круто, но возникает естественный вопрос: как правильно обучить эту сложнейшую структуру, ведь у нее многократно увеличивается число параметров (веса, пороги). Как правильно получить промежуточные понятия/представления? Ведь к ним не предъявлено никаких требований в каждой конкретной задаче. Есть требования (критерии правильности) только для выходных сигналов (конечных ответов) нейронной сети.

 Профиль  
                  
 
 Re: Как происходит глубинное обучение нейросети?
Сообщение21.03.2017, 23:24 
Заслуженный участник
Аватара пользователя


16/07/14
1134
Москва
Можете посмотреть на визуализацию обучения нейронки для простых случаев - например, чему учится каждый конкретный нейрон для многослойной ReLU сети для спирали.

Для получения "интересных" представлений используют автоэнкодеры - сети, обучаемые предсказывать $x \to x$, но со слоем малой размерности внутри. На этом внутреннем слое получается представление входа в виде вектора меньшей размерности, чем сам вход. При этом "правильного" представления нет - дважды обучая сеть на одних и тех же данных, мы легко можем получить разные представления. Важно, что во многих задачах оказывается, что потом эти представления можно успешно использовать где-то еще (например, в качестве входных данных для другой сети).

 Профиль  
                  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Модераторы: Toucan, maxal, Karan, PAV, Супермодераторы



Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group