Spec-Zone.ru › scikit-learn

2.9. Модели нейронных сетей (неконтролируемое обучение)

2.9.1. Ограниченные машины Больцмана

Ограниченные машины Больцмана (RBM) — это неконтролируемые нелинейные обучающие алгоритмы признаков, основанные на вероятностной модели. Признаки, извлеченные RBM или иерархией RBM, часто дают хорошие результаты при использовании в линейном классификаторе, таком как линейная SVM или перцептрон.

Модель предполагает распределение входных данных. В настоящее время scikit-learn предоставляет только BernoulliRBM, которая предполагает, что входы являются двоичными значениями или значениями от 0 до 1, каждое из которых кодирует вероятность активации соответствующего признака.

RBM стремится максимизировать правдоподобие данных, используя конкретную графическую модель. Используемый алгоритм обучения параметров (Стохастическое максимальное правдоподобие) предотвращает отклонение представлений от входных данных, что позволяет им улавливать интересные закономерности, но делает модель менее полезной для малых наборов данных и, как правило, неэффективной для оценки плотности.

Этот метод стал популярным для инициализации глубоких нейронных сетей весами независимых RBM. Этот метод известен как предварительное обучение без учителя.

../_images/sphx_glr_plot_rbm_logistic_classification_001.png

Примеры

  • Признаки ограниченной машины Больцмана для классификации цифр

2.9.1.1. Графическая модель и параметризация

Графическая модель RBM представляет собой полностью связный двудольный граф.

../_images/rbm_graph.png

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

Функция энергии измеряет качество совместного присвоения:

\[E(\mathbf{v}, \mathbf{h}) = -\sum_i \sum_j w_{ij}v_ih_j - \sum_i b_iv_i - \sum_j c_jh_j\]

В формуле выше, \(\mathbf{b}\) и \(\mathbf{c}\) — векторы сдвигов для видимого и скрытого слоев соответственно. Совместная вероятность модели определяется через энергию:

\[P(\mathbf{v}, \mathbf{h}) = \frac{e^{-E(\mathbf{v}, \mathbf{h})}}{Z}\]

Слово ограниченная относится к двудольной структуре модели, которая запрещает прямое взаимодействие между скрытыми узлами или между видимыми узлами. Это означает, что предполагаются следующие условные независимости:

\[\begin{split}h_i \bot h_j | \mathbf{v} \\ v_i \bot v_j | \mathbf{h}\end{split}\]

Двудольная структура позволяет использовать эффективный блочный метод Гиббса для вывода.

2.9.1.2. Ограниченные машины Больцмана Бернулли

В BernoulliRBM все узлы являются двоичными стохастическими узлами. Это означает, что входные данные должны быть либо двоичными, либо вещественными значениями от 0 до 1, обозначающими вероятность включения или выключения видимого узла. Эта модель подходит для распознавания символов, где важны активные и неактивные пиксели. Для изображений естественных сцен она уже не подходит из-за фона, глубины и тенденции соседних пикселей принимать одинаковые значения.

Условное распределение вероятностей каждого узла задается логистической сигмоидной функцией активации входных данных, которые он получает:

\[\begin{split}P(v_i=1|\mathbf{h}) = \sigma(\sum_j w_{ij}h_j + b_i) \\ P(h_i=1|\mathbf{v}) = \sigma(\sum_i w_{ij}v_i + c_j)\end{split}\]

где \(\sigma\) — логистическая сигмоидная функция:

\[\sigma(x) = \frac{1}{1 + e^{-x}}\]

2.9.1.3. Обучение стохастическому максимальному правдоподобию

Алгоритм обучения, реализованный в BernoulliRBM, известен как стохастическое максимальное правдоподобие (SML) или устойчивая контрастивная дивергенция (PCD). Прямое оптимизирование максимального правдоподобия невыполнимо из-за формы правдоподобия данных:

\[\log P(v) = \log \sum_h e^{-E(v, h)} - \log \sum_{x, y} e^{-E(x, y)}\]

Для простоты уравнение записано для одного примера обучения. Градиент по отношению к весам состоит из двух членов, соответствующих вышеупомянутым. Они обычно известны как положительный градиент и отрицательный градиент из-за своих знаков. В этой реализации градиенты оцениваются по мини-пакетам выборок.

При максимизации логарифмического правдоподобия положительный градиент заставляет модель предпочитать скрытые состояния, которые совместимы с наблюдаемыми обучающими данными. Благодаря двудольной структуре RBM его можно вычислить эффективно. Однако отрицательный градиент невычислим. Его цель — снизить энергию совместных состояний, которые предпочитает модель, таким образом, сохраняя верность данным. Его можно аппроксимировать с помощью метода Монте-Карло Маркова, используя блочный метод Гиббса, путем итеративного выбора каждого из \(v\) и \(h\) при заданном другом, до тех пор, пока цепь не сместится. Выборки, сгенерированные таким образом, иногда называются фантазийными частицами. Это неэффективно, и трудно определить, смещается ли цепь Маркова.

Метод контрастной дивергенции предлагает остановить цепь после небольшого числа итераций, \(k\), обычно даже 1. Этот метод быстрый и имеет низкую дисперсию, но выборки далеки от распределения модели.

Устойчивая контрастная дивергенция решает эту проблему. Вместо запуска новой цепи каждый раз, когда нужен градиент, и выполнения только одного шага выборки Гиббса, в PCD мы сохраняем несколько цепей (фантазийных частиц), которые обновляются на \(k\) шагов выборки Гиббса после каждого обновления весов. Это позволяет частицам более тщательно исследовать пространство.

Ссылки

  • “A fast learning algorithm for deep belief nets”, G. Hinton, S. Osindero, Y.-W. Teh, 2006
  • “Training Restricted Boltzmann Machines using Approximations to the Likelihood Gradient”, T. Tieleman, 2008

© 2007–2025 The scikit-learn developers
Licensed under the 3-clause BSD License.
https://scikit-learn.org/1.6/modules/neural_networks_unsupervised.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API