26.01.2014 admin

НЕЙРОННЫЕ СЕТИ


Романтика нейронных сетей иллюстрируется картинками, призванными отразить подобие нейронных сетей системам живого организма


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

ГРАДИЕНТНЫЙ МЕТОД НАСТРОЙКИ НЕЙРОНА


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


В любом случае задача сводится к анализу функции большого количества аргументов. Искусственный нейрон рассматривается как сумматор x=w'u входных сигналов u, взятых с настраиваемыми весами w. Выход нейрона сглаживается функцией насыщения, например,

y=1/(1+e–x+q),


где x – выход сумматора, q – смещение (определяющее порогово малое значение сигнала x). Промоделируем эту S-функцию.

Задача обучения элемента сети может трактоваться как настройка коэффициентов w, позволяющая получить при входном образце u желаемое значение выхода Y. Рассогласование можно оценивать квадратичной функцией ошибки

e(w)=0.5(y–Y)2.


Этот критерий распознавания несложно минимизировать градиентным способом по той простой причине, что частные производные вложенных функций по любому аргументу (y, x, w) выглядят негромоздко. В самом деле, градиент

grad e = e'(w) = de/dy·dy/dx·dx/dw = (y–Y)y(1–y)u,


здесь использовано то обстоятельство, что производная S-функции dy/dx=y(1–y). Движение в области настраиваемых параметров по антиградиенту с малым шагом описывается, следовательно, простой зависимостью

w=w–p·grad e,


где p – достаточно малое число (величина шага).

РАБОТА С ФОТОГРАФИЯМИ НА СЕРВЕРЕ


На первом этапе преобразуем фотографии в матрицы, хранящиеся вместе с ними на сервере, используя шаг смежности 10, чтобы не порождать слишком большие файлы. Белому фону отвечают в амлитуде 1, после оцифровки обнулим фон вычетом из матрицы изображения матрицы единиц I.

Выводим матрицы пикселей светимости оцифрованных фото картошки и морковки на страницу


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

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


ОБУЧЕНИЕ НЕЙРОНА ПО СПЕКТРАМ ИЗОБРАЖЕНИЙ


Алгоритм настроки весов нейрона работает с левым верхним углом матрицы спектра, содержащим наиболее существенную информацию. Число дендритов равно размеру учеченной матрицы спектра, ровно столько же берется и настраиваемых весовых коэффициентов.

Веса настраиваем по градиенту, наблюдая два графика значений выхода нейрона при показах картошки (зеленая кривая) и морковки (красная кривая). Градиентный метод настраивает веса нейрона так, чтобы при показе картошки нейрон выдавал значение 1, при показе морковки – 0.

Hide

Rambler's Top100