Прореживание двухслойной нейронной сети (пример)
Материал из MachineLearning.
Прореживание двухслойной нейронной сети (optimal brain damage) - метод упрощения структуры нейронной сети. Идея прореживания состоит в том, что из сети удаляются параметры, оказывающие малое влияние на ошибку аппроксимации. Таким образом, модель упрощается, а ошибка аппроксимации возрастает незначительно.
Постановка задачи
Задана обучающая выборка , где ∈ - признаковое описание объекта. Значения признаков поступают на вход первому слою сети с весовой матрицей , выходы первого слоя поступают на вход второму с весовой матрицей . Функции активации на обоих слоях - сигмоидальные: . На выходе второго слоя вычисляется вектор-функция , где P - количество нейронов на втором слое. Параметры сети (матрицы и ) настраиваются алгоритмом обратного распространения (back propagation). Из полученной сети требуется устранить параметры, которые незначительно влияют на ошибку аппроксимации. Для этого необходимо посчитать матрицу Гессе , где - вектор весов, - функция стоимости. Из сети удаляются параметры, соответствующие наименьшей степени выпуклости .
Алгоритм настройки нейронной сети
Статья в настоящий момент дорабатывается. Mikethehuman 13:22, 14 апреля 2010 (MSD) |