Структура нейронных сетей
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: доклад по обж, реферат по труду
| Добавил(а) на сайт: Jakushin.
Предыдущая страница реферата | 1 2
(13)
Рассмотрим теперь полный алгоритм обучения нейросети
подать на вход НС один из требуемых образов и определить значения выходов нейронов нейросети
рассчитать для выходного слоя НС по формуле (12) и рассчитать изменения весов выходного слоя N по формуле (13)
Рассчитать по формулам (11) и (13) соответственно и для остальных слоев НС, n=N-1..1
Скорректировать все веса НС (14)
Если ошибка существенна, то перейти на шаг 1
На этапе 2 сети поочередно в случайном порядке предъявляются вектора из обучающей последовательности.
Повышение эффективности обучения НС обратного распространения
Простейший метод градиентного спуска, рассмотренный выше, очень неэффективен в случае, когда производные по различным весам сильно отличаются. Это соответствует ситуации, когда значение функции S для некоторых нейронов близка по модулю к 1 или когда модуль некоторых весов много больше 1. В этом случае для плавного уменьшения ошибки надо выбирать очень маленькую скорость обучения, но при этом обучение может занять непозволительно много времени.
Простейшим методом усовершенствования градиентного спуска является введение момента ,когда влияние градиента на изменение весов изменяется со временем. Тогда формула (13) примет вид
(13.1)
Дополнительным преимуществом от введения момента является способность алгоритма преодолевать мелкие локальные минимумы.
Представление входных данных
Основное отличие НС в том, что в них все входные и выходные параметры представлены в виде чисел с плавающей точкой обычно в диапазоне [0..1]. В тоже время данные предметной области часто имеют другое кодирование. Так это могут быть числа в произвольном диапазоне, даты, символьные строки. Таким образом данные о проблеме могут быть как количественными так и качественными. Рассмотрим сначала преобразование качественных данных в числовые, а затем рассмотрим способ преобразования входных данных в требуемый диапазон.
Качественные данные мы можем разделить на две группы: упорядоченные (ординальные) и неупорядоченные. Для рассмотрения способов кодирования этих данных мы рассмотрим задачу о прогнозировании успешности лечения какого-либо заболевания. Примером упорядоченных данных могут например являться данные, например, о дополнительных факторах риска при данном заболевании.
Нет |
Ожирение |
Алкоголь |
Курение |
Гипертония |
А также возможным примером может быть например возраст больного
До 25 лет |
25-39 лет |
40-49 лет |
50-59 лет |
60 и старше |
Опасность каждого фактора возрастает в таблицах при движении слева направо.
В первом случае мы видим, что у больного может быть несколько факторов риска одновременно. В таком случае нам необходимо использовать такое кодирование, при котором отсутствует ситуация, когда разным комбинациям факторов соответствует одно и то же значение. Наиболее распространен способ кодирования, когда каждому фактору ставится в соответствие разряд двоичного числа. 1 в этом разряде говорит о наличии фактора, а 0 о его отсутствии. Параметру нет можно поставить в соответствии число 0. Таким образом для представления всех факторов достаточно 4-х разрядного двоичного числа. Таким образом число 10102 = 1010 означает наличие у больного гипертонии и употребления алкоголя, а числу 00002 соответствует отсутствие у больного факторов риска. Таким образом факторы риска будут представлены числами в диапазоне [0..15].
Во втором случае мы также можем кодировать все значения двоичными весами, но это будет нецелесообразно, т.к. набор возможных значений будет слишком неравномерным. В этом случае более правильным будет установка в соответствие каждому значению своего веса, отличающегося на 1 от веса соседнего значения. Так число 3 будет соответствовать возрасту 50-59лет. Таким образом возраст будет закодирован числами в диапазоне [0..4].
В принципе аналогично можно поступать и для неупорядоченных данных, поставив в соответствие каждому значению какое-либо число. Однако это вводит нежелательную упорядоченность, которая может исказить данные, и сильно затруднить процесс обучения. В качестве одного из способов решения этой проблемы можно предложить поставить в соответствие каждому значению одного из входов НС. В этом случае при наличии этого значения соответствующий ему вход устанавливается в 1 или в 0 при противном случае. К сожалению данный способ не является панацеей, ибо при большом количестве вариантов входного значения число входов НС разрастается до огромного количества. Это резко увеличит затраты времени на обучение. В качестве варианта обхода этой проблемы можно использовать несколько другое решение. В соответствие каждому значению входного параметра ставится бинарный вектор, каждый разряд которого соответствует отдельному входу НС. Например если число возможных значений параметра 128, то можно использовать 7 разрядный вектор. Тогда 1 значению будет соответствовать вектор 0000000 а 128 - вектор 1111111, а ,например, 26 значению – 0011011. Тогда число требуемых для кодирования параметров входов можно определить как
N=log2n (15)
Где
n- количество значений параметра
N- количество входов
Преобразование числовых входных данных
Для НС необходимо чтобы входные данные лежали в диапазоне [0..1], в то время как данные проблемной области могут лежать в любом диапазоне. Предположим что данные по одному из параметров лежат в диапазоне [Min..Max]. Тогда паиболее простым способом нормирования будет
(16)
где x- исходное значение параметра
-значение, подаваемое на вход НС
К сожалению этот способ кодирования не лишен недостатков. Так в случае если то распределение данных на входе может принять вид
Т.е. распределение входных параметров будет крайне неравномерным, что приведет к ухудшению качества обучения. Поэтому в подобных ситуациях , а также в случае, когда значение входа лежит в диапазоне можно использовать нормировку с помощью функции вида
(17)
Скачали данный реферат: Ugol'nikov, Pustohodov, Ильясов, Smotrov, Ivolgin, Lapotnikov, Абросимов.
Последние просмотренные рефераты на тему: доклады 7 класс, отправить сообщение, реферат металлы, конспект по чтению.
Категории:
Предыдущая страница реферата | 1 2