Глубокая сеть доверия

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис
Схематическое представление глубокой сети доверия. Стрелки представляют направленные соединения в графовой вероятностной модели, представляемую сетью.

Глубокая сеть доверия (ГСД, англ. deep belief network, DBN) — это порождающая графическая модель, или, иначе, один из типов глубинных нейронных сетей, состоящая из нескольких скрытых слоев, в которых нейроны внутри одного слоя не связаны друг с другом, но связаны с нейронами соседнего слоя.[1]

При обучении на наборе примеров[en] спонтанным образом ГСД может обучаться вероятностно отстраивать свои входы. Слои в этом случае выступают в роли детекторов признаков входов.[1] По окончании обучения ГСД может быть обучена с учителем для осуществления классификации.[2]

ГСД можно рассматривать как композицию простых, спонтанных сетей, таких как ограниченные машины Больцмана (ОМБ)[1] или автокодировщики,[3] в которой скрытый слой каждой подсети служит видимым слоем для следующей. Это позволяет осуществить быструю послойную процедуру обучения без учителя, в которой относительное расхождение применяется к каждой подсети по очереди, начиная с первой пары слоев (на видимый слой которой подается тренировочный набор примеров[en]).

Наблюдение, сделанное англ. Yee-Whye Teh, учеником Джеффри Хинтона,[2] говорит о том, что ГСД может быть обучена способом жадного послойного обучения, что стало одним из первых действенных алгоритмов глубинного обучения.[4]:6:6

Алгоритм обучения

Алгоритм тренировки ГСД работает следующим образом.[2] Пусть [math]\displaystyle{ X }[/math] будет матрицей входов, что рассматривается как набор признаков.

  1. Представить два нижних слоя (входной и первый скрытый) как ограниченную машину Больцмана (ОМБ). Обучить её на входных данных [math]\displaystyle{ X }[/math] и получить матрицу её весовых коэффициентов [math]\displaystyle{ W }[/math], которая будет описывать связи между двумя нижними слоями сети.
  2. Пропустить через обученную машину Больцмана входные данные [math]\displaystyle{ X }[/math] и получить данные скрытого слоя [math]\displaystyle{ X' }[/math] на выходе после активации узлов первого скрытого слоя.
  3. Повторять эту процедуру с [math]\displaystyle{ X \leftarrow X' }[/math] для каждой следующей пары слоёв, пока не будет обучены два самых верхних слоя сети.
  4. Осуществить тонкую настройку всех параметров этой глубокой сети с сохранением логарифмического правдоподобия ГСД или с использованием обучения с учителем (после добавления дополнительных механизмов обучения для выполнения обученной сетью работы, например, линейно-сепарабельного классификатора).

См. также

Примечания

  1. 1,0 1,1 1,2 Deep belief networks (неопр.) // Scholarpedia. — 2009. — Т. 4, № 5. — С. 5947. — doi:10.4249/scholarpedia.5947.
  2. 2,0 2,1 2,2 Hinton, G. E.; Osindero, S.; Teh, Y. W. (2006).
  3. Greedy Layer-Wise Training of Deep Networks // (NIPS). — 2007. Архивная копия от 20 октября 2019 на Wayback Machine
  4. Learning Deep Architectures for AI (неопр.) // Foundations and Trends in Machine Learning. — 2009. — Т. 2. — doi:10.1561/2200000006.

Ссылка