Пока о проблеме обучения распознаванию образов удавалось говорить в общих чертах, не выделяя конкретные методы или алгоритмы, — не возникало и трудностей, появляющихся всяких раз, когда приходится иметь дело с огромным множеством примеров, у которых общий подход к решению проблемы ОРО. Коварство самой проблемы состоит в том, что, на первый взгляд, все методы и алгоритмы кажутся совершенно различными и, что самое неприятное, часто никакой из них не годится для решения той задачи, которую крайне необходимо срочно решить. И тогда появляется желание выдумать новый алгоритм, который, может быть, достигнет цели. Очевидно, именно это привело к возникновению огромного множества алгоритмов, в котором не так-то легко разобраться.
Один из методов решения задач обучения распознаванию образов основан на моделировании гипотетического механизма человеческого мозга. Структура модели заранее постулируется. При таком подходе уровень биологических знаний или гипотез о биологических механизмах является исходной предпосылкой, на которой базируются модели этих механизмов. Примером такого направления в теории и практике проблемы ОРО является класс устройств, называемых персептронами. Нужно отметить, что персептроны на заре своего возникновения рассматривались только как эвристические модели механизма мозга. Впоследствии они стали основополагающей схемой в построении кусочно-
(рис 4.1) ПерсептронВ наиболее простом виде S -элементов), на которые поступают входные сигналы. S -элементы случайным образом связаны с совокупностью ассоциативных элементов ( А -элементов), выход которых отличается от нуля только тогда, когда возбуждено достаточно большое число S-элементов, воздействующих на один А -элемент. А -элементы соединены с реагирующими элементами ( R -элементами) связями, коэффициенты усиления ( v ) которых переменны и изменяются в процессе обучения. Взвешенные комбинации выходов R -элементов составляют реакцию системы, которая указывает на принадлежность распознаваемого объекта определенному образу. Если распознаются только два образа, то в R -элемент, который обладает двумя реакциями — положительной и отрицательной. Если образов больше двух, то для каждого образа устанавливают свой R -элемент, а выход каждого такого элемента представляет линейную комбинацию выходов A -элементов:
$$R_j=\Theta_j +\sum\limits^n_{i=1} v_{ij}x_i$$
где Rj — реакция j -го R -элемента; xi — реакция i -го A -элемента; vij — вес связи от i -го A -элемента к j -му R элементу; $$\Theta_j$$ — порог j -го R -элемента.
Аналогично записывается уравнение i -го A -элемента:
$$x_i=\Theta_i +\sum\limits^S_{k=1} y_k$$
Здесь сигнал yk может быть непрерывным, но чаще всего он принимает только два значения: 0 или 1. Сигналы от S -элементов подаются на входы А -элементов с постоянными весами, равными единице, но каждый А -элемент связан только с группой случайно выбранных S -элементов. Предположим, что требуется обучить V1 и V2. Будем считать, что в R -элемента, один из которых предназначен образу V1, а другой — образу V2. R1 превышает R2, когда распознаваемый объект принадлежит образу V1, и наоборот. Разделение объектов на два образа можно провести и с помощью только одного R -элемента. Тогда объекту образа V1 должна соответствовать положительная реакция R -элемента, а объектам образа V2 — отрицательная.
V1 и V2. В процессе обучения изменяются веса vi А -элементов. В частности, если применяется система подкрепления с коррекцией ошибок, прежде всего учитывается правильность решения, принимаемого А -элементов, которые ведут к R -элементу, выдавшему правильное решение, увеличиваются, а веса несработавших А -элементов остаются неизменными. Можно оставлять неизменными веса сработавших А -элементов, но уменьшать веса несработавших. В некоторых случаях веса сработавших связей увеличивают, а несработавших — уменьшают. После процесса обучения
Если S -элементов к A -элементам и от A -элементов к единственному R -элементу, то такой C(W) задается учителем.
О персептронах было сформулировано и доказано несколько основополагающих теорем, две из которых, определяющие основные свойства
Теорема 1. Класс элементарных $$\alpha$$ -персептронов, для которых существует решение для любой задуманной классификации, не является пустым.
Эта теорема утверждает, что для любой классификации обучающей последовательности можно подобрать такой набор (из бесконечного набора) А -элементов, в котором будет осуществлено задуманное разделение обучающей последовательности при помощи линейного решающего правила $$R_j=\Theta_j +\sum\limits^n_{i=1} v_{ij}x_i$$.
Теорема 2. Если для некоторой классификации C(W) решение существует, то в процессе обучения $$\alpha$$ -
Смысл этой теоремы состоит в том, что если относительно задуманной классификации можно найти набор А-элементов, в котором существует решение, то в рамках этого набора оно будет достигнуто в конечный промежуток времени.
Обычно обсуждают свойства бесконечного S -элементами (полный набор A -элементов). Для таких персептронов решение всегда существует, а раз оно существует, то оно и достижимо в $$\alpha$$ -персептронах с коррекцией ошибок.
Очень интересную область исследований представляют собой многослойные персептроны и персептроны с перекрестными связями, но теория этих систем практически еще не разработана.
Возвратимся немного назад и рассмотрим историю исследований нейронных сетей.
Как и в истории любой другой науки, здесь были свои успехи и неудачи. Кроме того, здесь постоянно сказывается психологический фактор, проявляющийся в неспособности человека описать словами то, как он думает.
Способность нейронной сети к обучению впервые исследована Дж. Маккалоком и У. Питтом. В 1943 году вышла их работа "Логическое исчисление идей, относящихся к нервной деятельности", в которой была построена модель нейрона и сформулированы принципы построения
Крупный толчок развитию нейрокибернетики дал американский нейрофизиолог Френк Розенблатт, предложивший в 1962 году свою
Несмотря на это в 70-е годы было предложено много интересных разработок, таких, например, как
В 1982 году американский биофизик Дж. Хопфилд предложил оригинальную модель нейронной сети, названную его именем. В последующие несколько лет было найдено множество эффективных алгоритмов: сеть встречного потока,
В киевском институте кибернетики с 70-х годов ведутся работы над стохастическими нейронными сетями.
В 1986 году Дж. Хинтон и его коллеги опубликовали статью с описанием модели нейронной сети и алгоритмом ее обучения, что дало новый толчок исследованиям в области
Нейронная сеть состоит из множества одинаковых элементов — нейронов, поэтому начнем с них рассмотрение работы искусственной нейронной сети.
Биологический нейрон моделируется как устройство, имеющее несколько входов (дендриты) и один выход (w ), характеризующий пропускную способность канала и оценивающий степень влияния сигнала с этого входа на сигнал на выходе. В зависимости от конкретной реализации, обрабатываемые нейроном сигналы могут быть аналоговыми или цифровыми (1 или 0). В теле нейрона происходит взвешенное суммирование входных возбуждений, и далее это значение является аргументом активационной функции нейрона, один из возможных вариантов которой представлен на рис. 1.
(рис 4.2) Искусственный нейронБудучи соединенными определенным образом, нейроны образуют нейронную сеть. Работа сети разделяется на обучение и адаптацию. Под обучением понимается процесс адаптации сети к предъявляемым эталонным образцам путем модификации (в соответствии с тем или иным алгоритмом) весовых коэффициентов связей между нейронами. Заметим, что этот процесс является результатом
Среди различных структур нейронных сетей (НС) одной из наиболее известных является многослойная структура, в которой каждый нейрон произвольного слоя связан со всеми аксонами нейронов предыдущего слоя или, в случае первого слоя, со всеми входами НС. Такие НС называются полносвязными. Когда в сети только один слой, алгоритм ее
Согласно
$$E(w)=\frac{1}{2} \sum\limits_{j,p} (y^{(N)}_{j,p}-d_{j,p})^2$$
где $$y^{(N)}_{j,p}$$ – реальное выходное состояние нейрона j N нейронной сети при подаче на ее входы p -го образа; djp – идеальное (желаемое) выходное состояние этого нейрона.
Суммирование ведется по всем нейронам
$$\Delta w_{ij}^{(n)} = - \eta \cdot \frac{\partial E}{\partial w_{ij}}$$
Здесь wij – весовой коэффициент синаптической связи, соединяющей i -ый нейрон слоя n-1 с j -ым нейроном слоя n, $$\eta$$ – коэффициент скорости обучения, 0< $$\eta$$ <1.
Как показано в [2], $$\frac{\partial E}{\partial w_{ij}}= \frac{\partial E}{\partial y_j} \cdot \frac{\partial y_j}{\partial s_j} \cdot \frac{\partial s_j}{\partial w_{ij}}$$
Здесь под yj, как и раньше, подразумевается выход нейрона j, а под sj – взвешенная сумма его входных сигналов, то есть аргумент активационной функции. Так как множитель dyj / dsj является производной этой функции по ее аргументу, из этого следует, что производная активационной функция должна быть определена на всей оси абсцисс. В связи с этим функция единичного скачка и прочие
$$\frac{dy}{ds}= 1- th^2(s)$$
Третий множитель $$\partial s_j/ \partial w_{ij}$$, очевидно, равен выходу нейрона предыдущего слоя $$y_i^{(n-1)}$$.
Что касается первого множителя в (4.5), он легко раскладывается следующим образом[2]:
$$\frac{\partial E}{\partial y_j}= \sum\limits_{k} \frac{\partial E}{\partial y_k} \cdot \frac{\partial y_k}{\partial s_k} \cdot \frac{\partial s_k}{\partial y_{j}}=\sum\limits_{k} \frac{\partial E}{\partial y_k} \cdot \frac{\partial y_k}{\partial s_k} \cdot w_{jk}^{(n+1)}$$
Здесь суммирование по k выполняется среди нейронов слоя n+1.
Введя новую переменную
$$\delta_j^{(n)}= \frac{\partial E}{\partial y_j} \cdot \frac{d y_j}{d s_j}$$
мы получим рекурсивную формулу для расчетов величин $$\delta_j^{(n)}$$ слоя n из величин $$\delta_k^{(n+1)}$$ более старшего слоя n+1.
$$\delta_j^{(n)}= \left[ \sum\limits_k \delta_k^{(n+1)}\cdot w_{jk}^{(n+1)} \right] \cdot \frac{d y_j}{d s_j}$$
Для выходного же слоя
$$\delta_i^{(N)}= (y_i^{(N)}-d_i) \cdot \frac{d y_i}{d s_i}$$
Теперь мы можем записать (4.4) в раскрытом виде:
$$\Delta w_{ij}^{(n)} = - \eta \cdot \delta_j^{(n)} \cdot y_i^{(n-1)}$$
Иногда для придания процессу коррекции весов некоторой инерционности, сглаживающей резкие скачки при перемещении по поверхности целевой функции, (4.11) дополняется значением изменения веса на предыдущей итерации
$$\Delta w_{ij}^{(n)}(t) = - \eta \cdot ( \mu \cdot \Delta w_{ij}^{(n)}(t-1) +(1-\mu ) \cdot \delta_j^{(n)} \cdot y_i^{(n-1)} )$$
где $$\mu$$ – коэффициент инерционности, t – номер текущей итерации.
Таким образом, полный алгоритм обучения НС с помощью
Подать на входы сети один из возможных образов и в режиме обычного функционирования НС, когда сигналы распространяются от входов к выходам, рассчитать значения последних. Напомним, что $$s_j^{(n)}=\sum\limits_{i=0}^{M} y_i^{(n-1)}\cdot w_{ij}^{(n)}$$ где M – число нейронов в слое n-1 с учетом нейрона с постоянным выходным состоянием +1, задающего смещение; $$y_i^{(n-1)}=x_{ij}^{(n)}$$ – i -ый вход нейрона j слоя n.
$$y_j^{(n)} = f(s_j^{(n)})$$, где f() – сигмоид, (4.14)
$$y_q^{(0)}=I_q$$, где Iq – q -ая компонента вектора входного образа.
N.n=N-1,...1.
(рис 4.3) Диаграмма сигналов в сети при обучении по алгоритму обратного распространенияСети на шаге 1 попеременно в случайном порядке предъявляются все тренировочные образы, чтобы сеть, образно говоря, не забывала одни по мере запоминания других. Алгоритм иллюстрируется рис. 4.3.
Из выражения (4.11) следует, что, когда выходное значение $$y_i^{(n-1)}$$ стремится к нулю, эффективность обучения заметно снижается. При двоичных входных векторах в среднем половина весовых коэффициентов не будет корректироваться [3], поэтому область возможных значений выходов нейронов [0,1] желательно сдвинуть в пределы [-0.5,+0.5], что достигается простыми модификациями логистических функций. Например, сигмоид с экспонентой преобразуется к виду
$$f(x)=-0.5+\frac{1}{1+e^{-\alpha x}}$$
Теперь коснемся вопроса емкости НС, то есть числа образов, предъявляемых на ее входы, которые она способна научиться распознавать. Для сетей с числом слоев больше двух он остается открытым. Как показано в [4], для НС с двумя слоями, то есть одним выходным и одним скрытым слоем, детерминистская емкость сети Cd оценивается так:
Nw/Ny<Cd<Nw/Ny $$\cdot$$ log(Nw/Ny) (4.18)
где Nw – число подстраиваемых весов, Ny – число нейронов в выходном слое.
Следует отметить, что данное выражение получено с учетом некоторых ограничений. Во-первых, число входов Nx и нейронов в скрытом слое Nh должно удовлетворять неравенству Nx+Nh>Ny. Во-вторых, Nw/Ny>1000. Однако вышеприведенная оценка выполнялась для сетей с Nx входами. В действительности распределение входных образов, как правило, обладает некоторой регулярностью, что позволяет НС проводить обобщение и, таким образом, увеличивать реальную емкость. Так как распределение образов, в общем случае, заранее не известно, мы можем говорить о такой емкости только предположительно, но обычно она раза в два превышает емкость детерминистскую.
В продолжение разговора о емкости НС логично затронуть вопрос о требуемой мощности
Рассматриваемая НС имеет несколько "узких мест". Во-первых, в процессе обучения может возникнуть ситуация, когда большие положительные или отрицательные значения весовых коэффициентов сместят рабочую точку на сигмоидах многих нейронов в область насыщения. Малые величины производной от логистической функции приведут в соответствие с (4.9) и (4.10) к остановке обучения, что парализует НС. Во-вторых, применение
Существует и иной метод исключения
Рассмотренный в предыдущей главе алгоритм
Главная черта, делающая
Сигнальный метод обучения Хебба заключается в изменении весов по следующему правилу:
$$w_{ij}(t)=w_{ij}(t-1)+\alpha \cdot y_i^{(n-1)}\cdot y_j^{(n)}$$
где $$y_i^{(n-1)}$$ – выходное значение нейрона i слоя (n-1), $$y_j^{(n)}$$ – выходное значение нейрона j слоя n ; $$w_{ij}(t)$$ и $$w_{ij}(t-1)$$ – весовой коэффициент синапса, соединяющего эти нейроны, на итерациях t и t-1 соответственно; $$\alpha$$ – коэффициент скорости обучения. Здесь и далее, для общности, под n подразумевается произвольный слой сети. При обучении по данному методу усиливаются связи между возбужденными нейронами.
Существует также и дифференциальный метод обучения Хебба.
$$w_{ij}(t)=w_{ij}(t-1)+\\+\alpha \cdot [y_i^{(n-1)}(t)-y_i^{(n-1)}(t-1)]\cdot [y_j^{(n)}(t)-y_j^{(n)}(t-1)]$$
Здесь $$y_i^{(n-1)}(t)$$ и $$y_i^{(n-1)}(t-1)$$ – выходное значение нейрона i слоя n-1 соответственно на итерациях t и t-1 ; $$y_j^{(n)}(t)$$ и $$y_j^{(n)}(t-1)$$ – то же самое для нейрона j слоя n. Как видно из формулы (2), сильнее всего обучаются синапсы, соединяющие те нейроны, выходы которых наиболее динамично изменились в сторону увеличения.
Полный алгоритм обучения с применением вышеприведенных формул будет выглядеть так:
i=0...Mi-1, где Mi – число нейронов в слое i ; n=0...N-1, а N – число слоев в сети.Следует отметить, что вид откликов на каждый класс входных образов не известен заранее и будет представлять собой произвольное сочетание состояний нейронов
Другой алгоритм обучения без учителя – алгоритм Кохонена – предусматривает подстройку
$$w_{ij}(t)=w_{ij}(t-1)+\alpha \cdot [y_i^{(n-1)}-w_{ij}(t-1)]$$
Из вышеприведенной формулы видно, что обучение сводится к минимизации разницы между входными сигналами нейрона, поступающими с выходов нейронов предыдущего слоя $$y_i^{(n-1)}$$, и весовыми коэффициентами его
Полный алгоритм обучения имеет примерно такую же структуру, как в методах Хебба, но на шаге 3 из всего слоя выбирается нейрон, значения
Другой вариант – расчет расстояния между этими векторами в p-мерном пространстве, где p – размер векторов.
$$D_j=\sqrt{\sum\limits_{i=0}^{p-1}(y_i^{(n-1)}-w_{ij})^2}$$
где j – индекс нейрона в слое n, i – индекс суммирования по нейронам слоя (n-1), wij – вес синапса, соединяющего нейроны; выходы нейронов слоя (n-1) являются входными значениями для слоя n. Корень в формуле (4.21) брать не обязательно, так как важна лишь относительная оценка различных Dj.
В данном случае, "побеждает" нейрон с наименьшим расстоянием. Иногда слишком часто получающие аккредитацию нейроны принудительно исключаются из рассмотрения, чтобы "уравнять права" всех нейронов слоя. Простейший вариант такого алгоритма заключается в торможении только что выигравшего нейрона.
При использовании обучения по алгоритму Кохонена существует практика нормализации входных образов, а также – на стадии инициализации – и нормализации начальных значений весовых коэффициентов.
$$x_i=x_i / \sqrt{\sum\limits_{j=0}^{n-1} x_j^2}$$
где xi – i -ая компонента вектора входного образа или вектора весовых коэффициентов, а n – его размерность. Это позволяет сократить длительность процесса обучения.
Инициализация весовых коэффициентов случайными значениями может привести к тому, что различные классы, которым соответствуют плотно распределенные входные образы, сольются или, наоборот, раздробятся на дополнительные подклассы в случае близких образов одного и того же класса. Для избежания такой ситуации используется метод выпуклой комбинации [3]. Суть его сводится к тому, что входные нормализованные образы подвергаются преобразованию:
$$x_i =\alpha (t)\cdot x_i +(1-\alpha (t)) \cdot \frac{1}{\sqrt{n}}$$
где xi – i -ая компонента входного образа, n – общее число его компонент, $$\alpha (t)$$ – коэффициент, изменяющийся в процессе обучения от нуля до единицы, в результате чего вначале на входы сети подаются практически одинаковые образы, а с течением времени они все больше сходятся к исходным. Весовые коэффициенты устанавливаются на шаге инициализации равными величине
$$w_0=\frac{1}{\sqrt{n}}$$
где n – размерность вектора весов для нейронов инициализируемого слоя.
На основе рассмотренного выше метода строятся нейронные сети особого типа – так называемые n нейрона j с минимальным расстоянием Dj (4.21) обучается по формуле (4.20) не только этот нейрон, но и его соседи, расположенные в окрестности R. Величина R на первых итерациях очень большая, так что обучаются все нейроны, но с течением времени она уменьшается до нуля. Таким образом, чем ближе конец обучения, тем точнее определяется группа нейронов, отвечающих каждому классу образов.
Среди различных конфигураций искуственных нейронных сетей (НС) встречаются такие, при классификации которых по принципу обучения, строго говоря, не подходят ни
Структурная схема
(рис 4.4) Структурная схема сети ХопфилдаЗадача, решаемая данной сетью в качестве ассоциативной памяти, как правило, формулируется следующим образом. Известен некоторый набор двоичных сигналов (изображений, звуковых оцифровок, прочих данных, описывающих некие объекты или характеристики процессов), которые считаются образцовыми. Сеть должна уметь из произвольного неидеального сигнала, поданного на ее вход, выделить ("вспомнить" по частичной информации) соответствующий образец (если такой есть) или "дать заключение" о том, что входные данные не соответствуют ни одному из образцов. В общем случае, любой сигнал может быть описан вектором X = { xi: i=0...n-1}, где n – число нейронов в сети и размерность входных и выходных векторов. Каждый элемент xi равен либо +1, либо -1. Обозначим вектор, описывающий k -ый образец, через Xk, а его компоненты, соответственно, – $$x_i^k$$, k=0...m-1, где m – число образцов. Когда сеть распознaет (или "вспомнит") какой-либо образец на основе предъявленных ей данных, ее выходы будут содержать именно его, то есть Y = Xk, где Y – вектор выходных значений сети: Y = { yi: i=0,...n-1}. В противном случае, выходной вектор не совпадет ни с одним образцовым.
Если, например, сигналы представляют собой некие изображения, то, отобразив в графическом виде данные с выхода сети, можно будет увидеть картинку, полностью совпадающую с одной из образцовых (в случае успеха) или же "вольную импровизацию" сети (в случае неудачи).
На стадии инициализации сети весовые коэффициенты
Здесь i и j – индексы, соответственно, предсинаптического и постсинаптического нейронов; $$x_i^k$$, $$x_j^k$$ – i -ый и j -ый элементы вектора k -ого образца.
p – номер итерации):
На входы сети подается неизвестный сигнал. Фактически его ввод осуществляется непосредственной установкой значений
yi(0) = xi , i = 0...n-1, (4.26)
поэтому обозначение на схеме сети входных yi означает нулевую итерацию в цикле работы сети.
Рассчитывается новое состояние нейронов
$$s_j(p+1)=\sum\limits_{i=0}^{n-1}w_{ij}y_i(p)$$, j=0...n-1 (4.27)
и новые значения
yi(p+1) = f[sj(p+1)] (4.28)
(рис 4.5) Активационные функции.где f –
Как говорилось выше, иногда сеть не может провести распознавание и выдает на выходе несуществующий образ. Это связано с проблемой ограниченности возможностей сети. Для m не должно превышать величины, примерно равной 0.15n. Кроме того, если два образа А и Б сильно похожи, они, возможно, будут вызывать у сети перекрестные ассоциации, то есть предъявление на входы сети вектора А приведет к появлению на ее выходах вектора Б, и наоборот.
(рис 4.6) Структурная схема сети ХэммингаКогда нет необходимости, чтобы сеть в явном виде выдавала образец, то есть достаточно, скажем, получать номер образца,
Сеть состоит из двух слоев. Первый и второй слои имеют по m нейронов, где m – число образцов. Нейроны первого слоя имеют по n
Идея работы сети состоит в нахождении
На стадии инициализации весовым коэффициентам первого слоя и порогу активационной функции присваиваются следующие значения:
$$w_{ik}=\frac{x_i^k}{2}$$, i=0...n-1, k=0...m-1 (4.29)
Tk = n/2, k = 0...m-1 (4.30)
Здесь $$x_i^k$$ – i -ый элемент k -ого образца.
Весовые коэффициенты тормозящих 0 < $$\varepsilon$$ < 1/m.
На входы сети подается неизвестный вектор X = {xi:i=0...n-1}, исходя из которого рассчитываются состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя):
$$y_j^{(1)}=s_j^{(1)}=\sum\limits_{i=0}^{n-1}w_{ij}x_i+T_j$$, j=0...m-1 (4.31)
После этого полученными значениями инициализируются значения
$$y_j^{(2)}=y_j^{(1)}$$, j = 0...m-1 (4.32)
Вычислить новые состояния нейронов второго слоя:
$$s_j^{(2)}(p+1)=y_j(p)-\varepsilon \sum\limits_{k=0}^{m-1}y_j^{(2)}(p) ,k\ne j,j=0...m-1$$
и значения их
$$y_j^{(2)}(p+1)=[s_j^{(2)}(p+1)],j=0...m-1$$
f имеет вид порога, причем величина F должна быть достаточно большой, чтобы любые возможные значения аргумента не приводили к насыщению.
Проверить, изменились ли выходы нейронов второго слоя за последнюю итерацию. Если да – перейти к шагу 2. Иначе – конец.
Из оценки алгоритма видно, что роль первого слоя весьма условна: воспользовавшись один раз на шаге 1 значениями его весовых коэффициентов, сеть больше не обращается к нему, поэтому первый слой может быть вообще исключен из сети (заменен на матрицу весовых коэффициентов).
Предположим, что требуется разделить два непересекающихся образа V1 и V2. Это значит, что в пространстве изображений существует, по крайней мере, одна функция, которая полностью разделяет множества, соответствующие образам V1 и V2. Эта функция должна принимать положительные значения в точках, которые соответствуют объектам, принадлежащим образу V1, и отрицательные — в точках образа V2. В общем случае таких разделяющих функций может быть много, тем больше, чем компактней
Метод потенциальных функций связан со следующей процедурой. В процессе обучения с каждой точкой пространства изображений, соответствующей единичному объекту из обучающей последовательности, связывается функция U(X, Xi), заданная на всем пространстве и зависящая от Xi как от параметра. Такие функции называются потенциальными, так как они напоминают функции потенциала электрического поля вокруг точечного электрического заряда. Изменение потенциала электрического поля по мере удаления от заряда обратно пропорционально квадрату расстояния. Потенциал, таким образом, может служить мерой удаления точки от заряда. Когда поле образовано несколькими зарядами, потенциал в каждой точке этого поля равен сумме потенциалов, создаваемых в этой точке каждым из зарядов. Если заряды, образующие поле, расположены компактной группой, потенциал поля будет иметь наибольшее значение внутри группы зарядов и убывать по мере удаления от нее.
Обучающей последовательности объектов соответствует последовательность векторов X1, X2, …, с которыми в пространстве изображений связана последовательность U(X, X1), U(X, X2), … потенциальных функций, используемых для построения функций f(X1, X2, …). По мере увеличения числа объектов в процессе обучения функция f должна стремиться к одной из разделяющих функций. В результате обучения могут быть построены потенциальные функции для каждого образа:
$$U_1(X)=\sum\limits_{X_1\in V_1} U(X,X_i),\\ U_2(X)=\sum\limits_{X_1\in V_2} U(X,X_i)$$
В качестве разделяющей функции f(X) можно выбрать функцию вида:
f(X)=U1(X)-U2(X),(4.36)
которая положительна для объектов одного образа и отрицательна для объектов другого.
В качестве потенциальной функции рассмотрим функцию вида
$$U(X,X_i)=\sum\limits_{j=1}^{\infty} \lambda_j^2 \varphi_j (X)\varphi_j (X_i)=\sum\limits_{j=1}^{\infty} \psi_j(X)\psi_j(X_i)$$
где $$\varphi_j (X)$$ — линейно независимая система функций; $$\lambda_j$$ — действительные числа, отличные от нуля для всех j = 1, 2, … ; Xi — точка, соответствующая i -му объекту из обучающей последовательности. Предполагается, что $$\varphi_j (X)$$ и U(X, Xi) ограничены при $$X\in V_1\cup V_2;\psi_j(X)=\lambda_j \varphi_j (X)$$.
В процессе обучения предъявляется обучающая последовательность и на каждом n-м такте обучения строится приближение fn(X), которое характеризуется следующей основной рекуррентной процедурой:
fn+1(X)=qnfn(X)+rnU(Xn+1,X),(4.38)
Разновидности алгоритмов потенциальных функций отличаются выбором значений qn и rn, которые являются фиксированными функциями номера n. Как правило, $$q_n \equiv 1$$, а rn выбирается в виде:
$$r_n \equiv \gamma_n (S(f_n(X_{n+1}),f(X{n+1})))$$
где S(fn, f) — невозрастающие функции, причем
Коэффициенты $$\gamma_n$$ представляют собой неотрицательную числовую последовательность, зависящую только от номера n. Кроме того, $$\sum\limits_{n=1}^{\infty} \gamma_n = \infty$$ и $$\sum\limits_{n=1}^{\infty} \gamma_n^2 < \infty$$ (например, $$\gamma_n=1/n$$ ) или $$\gamma_n=const$$.
Разработано несколько вариантов алгоритмов потенциальных функций, различие между которыми состоит в выборе законов коррекции разделяющей функции от шага к шагу, т. е. в выборе законов коррекции разделяющей функции от шага к шагу, иными словами, в выборе коэффициентов rn. Приведем два основных алгоритма потенциальных функций.
Будем считать, что $$f_0(X)\equiv 0$$ (нулевое приближение). Пусть в результате применения алгоритма после n -го шага построена разделяющая функция fn(X), а на (n+1) -м шаге предъявлено изображение Xn+1, для которого известно действительное значение разделяющей функции f(Xn+1 ). Тогда функция fn+1(X) строится по следующему правилу:
$$f_{n+1}(X)=f_n(X)+\gamma_{n+1}sign(f(X_{n+1})-f_n(X_{n+1}))\cdot U(X,X_{n+1})$$
Во втором алгоритме также принимается, что $$f_0(X)\equiv 0$$. Переход к следующему приближению, т. е. переход от функции fn(X) к fn+1(X), осуществляется в результате следующей рекуррентной процедуры:
$$f_{n+1}(X)=f_n(X)+(f(X_{n+1})-f_n(X_{n+1}))\cdot \frac{1}{\lambda}U(X,X_{n+1})$$
где $$\lambda$$ — произвольная положительная константа, удовлетворяющая условию $$\lambda =(1/2)\cdot max(X,X_i)$$.
Если в (ф. 5) принять$$\psi_j(X)=sign(\sum\limits_{v=1}^{m} \beta_{vj} \cdot x_v + \Theta_j),$$
и предположить, что xv может иметь только два значения 0 и 1, то в этом случае алгоритм потенциальных функций будет совпадать со схемой А -элементов и с коррекцией ошибок. Поэтому многие теоретические положения метода потенциальных функций могут быть успешно применены для анализа некоторых перцептронных схем.
Перед тем, как начинать рассмотрение МГУА, было бы полезно вспомнить (или узнать впервые)
Рассмотрим для примера МНК для трех аргументов.
Пусть функция T=T(U, V, W) задана таблицей, то есть из опыта известны числа Ui, Vi, Wi, Ti ( i = 1, … , n). Будем искать зависимость между этими данными в виде:
T(U,V,W)=aU+bV+cW (4.43)
где a, b, c — неизвестные параметры.
Подберем значения этих параметров так, чтобы была наименьшей сумма квадратов уклонений опытных данных Ti и теоретических Ti = aUwi + bVi + cWi, то есть сумма:
$$\sigma =\sum\limits_{i=1}^{n} (T_i-aU_i-bV_i-cW_i)^2 \to min$$
Величина $$\sigma$$ является функцией трех переменных a, b, c. Необходимым и достаточным условием существования минимума этой функции является равенство нулю частных
Так как:
$$\frac{\partial \sigma}{\partial a}= -2\sum\limits_{i=1}^{n} T_i-aU_i-bV_i-cW_i)U_i \\ \frac{\partial \sigma}{\partial b}= -2\sum\limits_{i=1}^{n} T_i-aU_i-bV_i-cW_i)V_i \\ \frac{\partial \sigma}{\partial c}= -2\sum\limits_{i=1}^{n} T_i-aU_i-bV_i-cW_i)W_i$$система для нахождения a, b, c будет иметь вид:
Данная система решается любым стандартным методом решения систем линейных уравнений (Гаусса, Жордана, Зейделя, Крамера).
Рассмотрим некоторые практические примеры нахождения приближающих функций.
$$y=\alpha x^2+\beta x+ \gamma $$
Задача подбора коэффициентов $$\alpha$$, $$\beta$$, $$\gamma$$ сводится к решению общей задачи при T=y, U=x2, V=x, W=1, $$\alpha =a, \beta =b, \gamma=c$$.
$$f(x,y)=\alpha sin(x)+\beta cos(y)+ \gamma /x$$
Задача подбора коэффициентов $$\alpha$$, $$\beta$$, $$\gamma$$ сводится к решению общей задачи при T=f, U=sin(x), V=cos(y), W=1/x, $$\alpha =a, \beta =b, \gamma=c$$.
Если мы распространим МНК на случай с m параметрами,
$$\sigma =\sum\limits_{i=1}^{n}(T_i-\sum\limits_{i=1}^{m} u_{iv}c_v)^2 \to min$$
то путем рассуждений, аналогичных приведенным выше, получим следующую систему линейных уравнений:
$$\begin{cases} c_1 \bar u_1 \bar u_1 +c_2\bar u_1 \bar u_2 +K+ c_m\bar u_1 \bar u_m = \bar T \bar u_1 \\ c_1 \bar u_2 \bar u_1 +c_2\bar u_2 \bar u_2 +K+ c_m\bar u_2 \bar u_m = \bar T \bar u_2 \\ \Lambda\\ c_1 \bar u_m \bar u_1 +c_2\bar u_m \bar u_2 +K+ c_m\bar u_m \bar u_m = \bar T \bar u_m \\ \end{cases}$$где $$\bar T=\{T_i\}^m_{i=1}, \bar u_v=\{u_{iv}\}^n_{i=1}$$
(рис 4.7) Селекция самого черного тюльпана при расширяющемся опытном поле (эквивалент полного перебора), и при постоянном размере поля (эквивалент селекции при сохранении свободы выбора решений F = const)
Заимствование алгоритмов переработки информации у природы является одной из основных идей кибернетики. "Гипотеза
Алгоритмы МГУА воспроизводят схему массовой
$$\varphi = f(x_1,x_2,x_3,...,x_m)$$,
где f — некоторая элементарная функция, например степенной полином, заменяется несколькими рядами "частных" описаний:
1-ряд y1= f(x1x2), y2= f(x1x3),..., ys= f(xm-1xm),
2-ряд z1= f(y1y2), z2= f(y1y2),..., zp= f(ys-1ys), где s=c2, $$p=c_s^2$$ и т.д.
Каждое частное описание является функцией только двух аргументов. Поэтому его коэффициенты легко определить по данным обучающей последовательности при малом числе
Из ряда в ряд
Ряды
(рис 4.8) МГУА как эквивалент массовой селекции
В этом алгоритме [5, 6] используются частные описания, представленные в следующих формулах: yi=a0+a1xi+a2xj+a3xixj ; $$y_k=a_0+a_1x_i+a_2x_j+a_3x_ix_j+a_4x_i^2+a_5x_j^2$$.
Сложность модели увеличивается от ряда к ряду
Чтобы степень полного уравнения повышалась с каждым рядом
По тому, как организован процесс обучения распознающих систем, четко выделяются два подхода к проблеме ОРО. Первый основан на построении сложных разделяющих поверхностей в случайно выбранных пространствах, а во втором центр тяжести проблемы переносится на достижение понимания принципов формирования такого описания объектов, в рамках которого сам процесс распознавания чрезвычайно прост. Обучение в этом случае рассматривается как некий процесс конструирования пространств для решения конкретных задач.
В МПУ предполагается, что разделяющая функция задается заранее в виде линейного (самого простого) полинома, а процесс обучения состоит в конструировании такого пространства минимальной размерности, в котором заранее заданная наиболее простая разделяющая функция безошибочно разделяет обучающую последовательность. МПР назван так потому, что в нем строится самое простое решающее правило в пространстве небольшой размерности, т. е. в простом пространстве.
Пусть на некотором множестве объектов V заданы два подмножества $$V^*_1$$ и $$V^*_2$$, определяющие собой образы на обучающей последовательности V. Рассмотрим i -е свойство объектов, такое, что некоторые объекты обучающей последовательности этим свойством обладают, а другие — нет. Пусть заданным свойством обладают объекты, образующие подмножество V1i, а объекты подмножества V2i этим свойством не обладают ( $$V_{1i} \cup V_{2i} =V$$ ). Тогда i -е свойство называют признаком первого типа относительно образа $$V^*_1$$, если выполняются соотношения
$$V_1^* \subseteq V_{1i} \mbox{ и }V_{1i} \cap V_2^* \ne V_2^*$$
и признаком второго типа, если выполняются
$$V_1^* \subseteq V_{1i} \mbox{ и }V_{1i} \cap V_2^* = \emptyset$$
Если же выполняются соотношения
$$V_2^* \subseteq V_{2i} \mbox{ и }V_{2i} \cap V_1^* \ne V_1^*$$
то i -е свойство считается признаком первого типа относительно образа $$V^*_2$$, а если выполняются
$$V_2^* \subseteq V_{2i} \mbox{ и }V_{2i} \cap V_1^* = \emptyset$$
то это же свойство объявляется признаком второго типа относительно образа $$V^*_2$$. Если свойство не обладает ни одной из приведенных особенностей, то оно вообще не относится к признакам и не участвует в формировании пространства.
Одинаковые признаки — это два признака xi и xj, порождающие подмножества V1j, V2j, V1i, V2i, такие, что
V1j= V1i и V2j= V2i.(4.54)
Доказано утверждение, смысл которого заключается в том, что если пространство конструировать из однотипных, но неодинаковых признаков, то в конце концов будет построено такое пространство, в котором обучающая последовательность будет безошибочно разделена на два образа линейным, т. е. самым простым, решающим правилом.
Метод предельных упрощений состоит в том, что в процессе обучения последовательно проверяются все возможные свойства объектов и из них выбираются только такие, которые обладают хотя бы одной из особенностей, определяемых соотношениями (4.50), (4.51). Такой отбор однотипных, но неодинаковых признаков продолжается до тех пор, пока при некотором значении размерности пространства не наступит безошибочное линейное разделение образов на обучающей последовательности. В зависимости от того, из признаков какого типа строится пространство, в качестве разделяющей плоскости выбирается плоскость, описываемая уравнением
$$\sum\limits_{i=1}^{n} x_i -(n-0.5)=0$$
либо уравнением
$$\sum\limits_{i=1}^{n} x_i -1=0$$
Каждый объект относится к одному из образов в зависимости от того, по какую сторону относительно плоскости находится соответствующий этому объекту вектор в n.
Давно известны приемы повышения качества принимаемых решений, состоящие в объединении специалистов той или иной области знаний в коллектив, вырабатывающий совместное решение. Идею коллективного решения можно применить и к "коллективу" формальных алгоритмов, что позволит повысить эффективность решения многих задач.
Х принимается решение S. Тогда S=R(X), где R — алгоритм принятия решения в ситуации X. Предположим, что существует L различных алгоритмов решения задачи, т. е. Sl=Rl(X), l=1, 2, ... , L, где Sl — решение, полученное алгоритмом Rl. Будем называть множество алгоритмов {R}={R1, R2, ..., Ri.} коллективом алгоритмов решения задачи (коллективом решающих правил), если на
множестве решений Sl в любой ситуации Х определено решающее правило F, т. е. S=F(S1, S2, ..., SL, X). Алгоритмы Rl принято называть членами коллектива, Sl — решением l -го члена коллектива, а S — коллективным решением. Функция F определяет способ обобщения индивидуальных решений в решения коллектива S. Поэтому синтез функции F, или способ обобщения, является центральным моментом в организации коллектива.
Принятие коллективного решения может быть использовано при решении различных задач. Так, в задаче управления под ситуацией понимается ситуация среды и целей управления, а под решением — самоуправление, приводящее объект в целевое состояние. В задачах прогноза Х — исходное, а S — прогнозируемое состояние. В задачах распознавания ситуацией Х является описание объекта X, т. е. его изображение, а решением S — номер образа, к которому принадлежит наблюдаемое изображение. Индивидуальное и коллективное решения в задаче распознавания состоят в отнесении некоторого изображения к одному из образов. Наиболее интересными коллективами распознающих алгоритмов являются такие, в которых существует зависимость веса каждого решающего правила Rl от распознаваемого изображения. Например, вес решающего правила Rl может определяться соотношением
где Bl — область компетентности решающего правила Rl. Веса решающих правил выбираются так, что
$$\sum\limits_{i=1}^{L} \mu_i(X) =1$$
для всех возможных значений X. Соотношение (4.57) означает, что решение коллектива определяется решением того решающего правила Ri, области компетентности которого принадлежит изображение объекта X. Такой подход представляет собой двухуровневую процедуру распознавания. На первом уровне определяется принадлежность изображения той или иной области компетентности, а уже на втором — вступает в силу решающее правило, компетентность которого максимальна в найденной области. Решение этого правила отождествляется с решением всего коллектива. Основным этапом в такой организации коллективного решения является обучение распознаванию областей компетентности. Практически постановкой этой задачи различаются правила организации решения коллектива. Области компетентности можно искать, используя вероятностные свойства правил коллектива, можно применить
В A -элемент может интерпретироваться как член коллектива. В процессе обучения все A -элементы приобретают веса, в соответствии с которыми эти A -элементы участвуют в коллективном решении. Особенность каждого A -элемента состоит в том, что он действует в некотором подпространстве исходного пространства, характер которого определяется связями между S - и A -элементами. Решение, получаемое на выходе A -элементов.
Пока о проблеме обучения распознаванию образов удавалось говорить в общих чертах, не выделяя конкретные методы или алгоритмы, — не возникало и трудностей, появляющихся всяких раз, когда приходится иметь дело с огромным множеством примеров, у которых общий подход к решению проблемы ОРО. Коварство самой проблемы состоит в том, что, на первый взгляд, все методы и алгоритмы кажутся совершенно различными и, что самое неприятное, часто никакой из них не годится для решения той задачи, которую крайне необходимо срочно решить. И тогда появляется желание выдумать новый алгоритм, который, может быть, достигнет цели. Очевидно, именно это привело к возникновению огромного множества алгоритмов, в котором не так-то легко разобраться.
Один из методов решения задач обучения распознаванию образов основан на моделировании гипотетического механизма человеческого мозга. Структура модели заранее постулируется. При таком подходе уровень биологических знаний или гипотез о биологических механизмах является исходной предпосылкой, на которой базируются модели этих механизмов. Примером такого направления в теории и практике проблемы ОРО является класс устройств, называемых персептронами. Нужно отметить, что персептроны на заре своего возникновения рассматривались только как эвристические модели механизма мозга. Впоследствии они стали основополагающей схемой в построении кусочно-
(рис 4.1) ПерсептронВ наиболее простом виде S -элементов), на которые поступают входные сигналы. S -элементы случайным образом связаны с совокупностью ассоциативных элементов ( А -элементов), выход которых отличается от нуля только тогда, когда возбуждено достаточно большое число S-элементов, воздействующих на один А -элемент. А -элементы соединены с реагирующими элементами ( R -элементами) связями, коэффициенты усиления ( v ) которых переменны и изменяются в процессе обучения. Взвешенные комбинации выходов R -элементов составляют реакцию системы, которая указывает на принадлежность распознаваемого объекта определенному образу. Если распознаются только два образа, то в R -элемент, который обладает двумя реакциями — положительной и отрицательной. Если образов больше двух, то для каждого образа устанавливают свой R -элемент, а выход каждого такого элемента представляет линейную комбинацию выходов A -элементов:
$$R_j=\Theta_j +\sum\limits^n_{i=1} v_{ij}x_i$$
где Rj — реакция j -го R -элемента; xi — реакция i -го A -элемента; vij — вес связи от i -го A -элемента к j -му R элементу; $$\Theta_j$$ — порог j -го R -элемента.
Аналогично записывается уравнение i -го A -элемента:
$$x_i=\Theta_i +\sum\limits^S_{k=1} y_k$$
Здесь сигнал yk может быть непрерывным, но чаще всего он принимает только два значения: 0 или 1. Сигналы от S -элементов подаются на входы А -элементов с постоянными весами, равными единице, но каждый А -элемент связан только с группой случайно выбранных S -элементов. Предположим, что требуется обучить V1 и V2. Будем считать, что в R -элемента, один из которых предназначен образу V1, а другой — образу V2. R1 превышает R2, когда распознаваемый объект принадлежит образу V1, и наоборот. Разделение объектов на два образа можно провести и с помощью только одного R -элемента. Тогда объекту образа V1 должна соответствовать положительная реакция R -элемента, а объектам образа V2 — отрицательная.
V1 и V2. В процессе обучения изменяются веса vi А -элементов. В частности, если применяется система подкрепления с коррекцией ошибок, прежде всего учитывается правильность решения, принимаемого А -элементов, которые ведут к R -элементу, выдавшему правильное решение, увеличиваются, а веса несработавших А -элементов остаются неизменными. Можно оставлять неизменными веса сработавших А -элементов, но уменьшать веса несработавших. В некоторых случаях веса сработавших связей увеличивают, а несработавших — уменьшают. После процесса обучения
Если S -элементов к A -элементам и от A -элементов к единственному R -элементу, то такой C(W) задается учителем.
О персептронах было сформулировано и доказано несколько основополагающих теорем, две из которых, определяющие основные свойства
Теорема 1. Класс элементарных $$\alpha$$ -персептронов, для которых существует решение для любой задуманной классификации, не является пустым.
Эта теорема утверждает, что для любой классификации обучающей последовательности можно подобрать такой набор (из бесконечного набора) А -элементов, в котором будет осуществлено задуманное разделение обучающей последовательности при помощи линейного решающего правила $$R_j=\Theta_j +\sum\limits^n_{i=1} v_{ij}x_i$$.
Теорема 2. Если для некоторой классификации C(W) решение существует, то в процессе обучения $$\alpha$$ -
Смысл этой теоремы состоит в том, что если относительно задуманной классификации можно найти набор А-элементов, в котором существует решение, то в рамках этого набора оно будет достигнуто в конечный промежуток времени.
Обычно обсуждают свойства бесконечного S -элементами (полный набор A -элементов). Для таких персептронов решение всегда существует, а раз оно существует, то оно и достижимо в $$\alpha$$ -персептронах с коррекцией ошибок.
Очень интересную область исследований представляют собой многослойные персептроны и персептроны с перекрестными связями, но теория этих систем практически еще не разработана.
Возвратимся немного назад и рассмотрим историю исследований нейронных сетей.
Как и в истории любой другой науки, здесь были свои успехи и неудачи. Кроме того, здесь постоянно сказывается психологический фактор, проявляющийся в неспособности человека описать словами то, как он думает.
Способность нейронной сети к обучению впервые исследована Дж. Маккалоком и У. Питтом. В 1943 году вышла их работа "Логическое исчисление идей, относящихся к нервной деятельности", в которой была построена модель нейрона и сформулированы принципы построения
Крупный толчок развитию нейрокибернетики дал американский нейрофизиолог Френк Розенблатт, предложивший в 1962 году свою
Несмотря на это в 70-е годы было предложено много интересных разработок, таких, например, как
В 1982 году американский биофизик Дж. Хопфилд предложил оригинальную модель нейронной сети, названную его именем. В последующие несколько лет было найдено множество эффективных алгоритмов: сеть встречного потока,
В киевском институте кибернетики с 70-х годов ведутся работы над стохастическими нейронными сетями.
В 1986 году Дж. Хинтон и его коллеги опубликовали статью с описанием модели нейронной сети и алгоритмом ее обучения, что дало новый толчок исследованиям в области
Нейронная сеть состоит из множества одинаковых элементов — нейронов, поэтому начнем с них рассмотрение работы искусственной нейронной сети.
Биологический нейрон моделируется как устройство, имеющее несколько входов (дендриты) и один выход (w ), характеризующий пропускную способность канала и оценивающий степень влияния сигнала с этого входа на сигнал на выходе. В зависимости от конкретной реализации, обрабатываемые нейроном сигналы могут быть аналоговыми или цифровыми (1 или 0). В теле нейрона происходит взвешенное суммирование входных возбуждений, и далее это значение является аргументом активационной функции нейрона, один из возможных вариантов которой представлен на рис. 1.
(рис 4.2) Искусственный нейронБудучи соединенными определенным образом, нейроны образуют нейронную сеть. Работа сети разделяется на обучение и адаптацию. Под обучением понимается процесс адаптации сети к предъявляемым эталонным образцам путем модификации (в соответствии с тем или иным алгоритмом) весовых коэффициентов связей между нейронами. Заметим, что этот процесс является результатом
Среди различных структур нейронных сетей (НС) одной из наиболее известных является многослойная структура, в которой каждый нейрон произвольного слоя связан со всеми аксонами нейронов предыдущего слоя или, в случае первого слоя, со всеми входами НС. Такие НС называются полносвязными. Когда в сети только один слой, алгоритм ее
Согласно
$$E(w)=\frac{1}{2} \sum\limits_{j,p} (y^{(N)}_{j,p}-d_{j,p})^2$$
где $$y^{(N)}_{j,p}$$ – реальное выходное состояние нейрона j N нейронной сети при подаче на ее входы p -го образа; djp – идеальное (желаемое) выходное состояние этого нейрона.
Суммирование ведется по всем нейронам
$$\Delta w_{ij}^{(n)} = - \eta \cdot \frac{\partial E}{\partial w_{ij}}$$
Здесь wij – весовой коэффициент синаптической связи, соединяющей i -ый нейрон слоя n-1 с j -ым нейроном слоя n, $$\eta$$ – коэффициент скорости обучения, 0< $$\eta$$ <1.
Как показано в [2], $$\frac{\partial E}{\partial w_{ij}}= \frac{\partial E}{\partial y_j} \cdot \frac{\partial y_j}{\partial s_j} \cdot \frac{\partial s_j}{\partial w_{ij}}$$
Здесь под yj, как и раньше, подразумевается выход нейрона j, а под sj – взвешенная сумма его входных сигналов, то есть аргумент активационной функции. Так как множитель dyj / dsj является производной этой функции по ее аргументу, из этого следует, что производная активационной функция должна быть определена на всей оси абсцисс. В связи с этим функция единичного скачка и прочие
$$\frac{dy}{ds}= 1- th^2(s)$$
Третий множитель $$\partial s_j/ \partial w_{ij}$$, очевидно, равен выходу нейрона предыдущего слоя $$y_i^{(n-1)}$$.
Что касается первого множителя в (4.5), он легко раскладывается следующим образом[2]:
$$\frac{\partial E}{\partial y_j}= \sum\limits_{k} \frac{\partial E}{\partial y_k} \cdot \frac{\partial y_k}{\partial s_k} \cdot \frac{\partial s_k}{\partial y_{j}}=\sum\limits_{k} \frac{\partial E}{\partial y_k} \cdot \frac{\partial y_k}{\partial s_k} \cdot w_{jk}^{(n+1)}$$
Здесь суммирование по k выполняется среди нейронов слоя n+1.
Введя новую переменную
$$\delta_j^{(n)}= \frac{\partial E}{\partial y_j} \cdot \frac{d y_j}{d s_j}$$
мы получим рекурсивную формулу для расчетов величин $$\delta_j^{(n)}$$ слоя n из величин $$\delta_k^{(n+1)}$$ более старшего слоя n+1.
$$\delta_j^{(n)}= \left[ \sum\limits_k \delta_k^{(n+1)}\cdot w_{jk}^{(n+1)} \right] \cdot \frac{d y_j}{d s_j}$$
Для выходного же слоя
$$\delta_i^{(N)}= (y_i^{(N)}-d_i) \cdot \frac{d y_i}{d s_i}$$
Теперь мы можем записать (4.4) в раскрытом виде:
$$\Delta w_{ij}^{(n)} = - \eta \cdot \delta_j^{(n)} \cdot y_i^{(n-1)}$$
Иногда для придания процессу коррекции весов некоторой инерционности, сглаживающей резкие скачки при перемещении по поверхности целевой функции, (4.11) дополняется значением изменения веса на предыдущей итерации
$$\Delta w_{ij}^{(n)}(t) = - \eta \cdot ( \mu \cdot \Delta w_{ij}^{(n)}(t-1) +(1-\mu ) \cdot \delta_j^{(n)} \cdot y_i^{(n-1)} )$$
где $$\mu$$ – коэффициент инерционности, t – номер текущей итерации.
Таким образом, полный алгоритм обучения НС с помощью
Подать на входы сети один из возможных образов и в режиме обычного функционирования НС, когда сигналы распространяются от входов к выходам, рассчитать значения последних. Напомним, что $$s_j^{(n)}=\sum\limits_{i=0}^{M} y_i^{(n-1)}\cdot w_{ij}^{(n)}$$ где M – число нейронов в слое n-1 с учетом нейрона с постоянным выходным состоянием +1, задающего смещение; $$y_i^{(n-1)}=x_{ij}^{(n)}$$ – i -ый вход нейрона j слоя n.
$$y_j^{(n)} = f(s_j^{(n)})$$, где f() – сигмоид, (4.14)
$$y_q^{(0)}=I_q$$, где Iq – q -ая компонента вектора входного образа.
N.n=N-1,...1.
(рис 4.3) Диаграмма сигналов в сети при обучении по алгоритму обратного распространенияСети на шаге 1 попеременно в случайном порядке предъявляются все тренировочные образы, чтобы сеть, образно говоря, не забывала одни по мере запоминания других. Алгоритм иллюстрируется рис. 4.3.
Из выражения (4.11) следует, что, когда выходное значение $$y_i^{(n-1)}$$ стремится к нулю, эффективность обучения заметно снижается. При двоичных входных векторах в среднем половина весовых коэффициентов не будет корректироваться [3], поэтому область возможных значений выходов нейронов [0,1] желательно сдвинуть в пределы [-0.5,+0.5], что достигается простыми модификациями логистических функций. Например, сигмоид с экспонентой преобразуется к виду
$$f(x)=-0.5+\frac{1}{1+e^{-\alpha x}}$$
Теперь коснемся вопроса емкости НС, то есть числа образов, предъявляемых на ее входы, которые она способна научиться распознавать. Для сетей с числом слоев больше двух он остается открытым. Как показано в [4], для НС с двумя слоями, то есть одним выходным и одним скрытым слоем, детерминистская емкость сети Cd оценивается так:
Nw/Ny<Cd<Nw/Ny $$\cdot$$ log(Nw/Ny) (4.18)
где Nw – число подстраиваемых весов, Ny – число нейронов в выходном слое.
Следует отметить, что данное выражение получено с учетом некоторых ограничений. Во-первых, число входов Nx и нейронов в скрытом слое Nh должно удовлетворять неравенству Nx+Nh>Ny. Во-вторых, Nw/Ny>1000. Однако вышеприведенная оценка выполнялась для сетей с Nx входами. В действительности распределение входных образов, как правило, обладает некоторой регулярностью, что позволяет НС проводить обобщение и, таким образом, увеличивать реальную емкость. Так как распределение образов, в общем случае, заранее не известно, мы можем говорить о такой емкости только предположительно, но обычно она раза в два превышает емкость детерминистскую.
В продолжение разговора о емкости НС логично затронуть вопрос о требуемой мощности
Рассматриваемая НС имеет несколько "узких мест". Во-первых, в процессе обучения может возникнуть ситуация, когда большие положительные или отрицательные значения весовых коэффициентов сместят рабочую точку на сигмоидах многих нейронов в область насыщения. Малые величины производной от логистической функции приведут в соответствие с (4.9) и (4.10) к остановке обучения, что парализует НС. Во-вторых, применение
Существует и иной метод исключения
Рассмотренный в предыдущей главе алгоритм
Главная черта, делающая
Сигнальный метод обучения Хебба заключается в изменении весов по следующему правилу:
$$w_{ij}(t)=w_{ij}(t-1)+\alpha \cdot y_i^{(n-1)}\cdot y_j^{(n)}$$
где $$y_i^{(n-1)}$$ – выходное значение нейрона i слоя (n-1), $$y_j^{(n)}$$ – выходное значение нейрона j слоя n ; $$w_{ij}(t)$$ и $$w_{ij}(t-1)$$ – весовой коэффициент синапса, соединяющего эти нейроны, на итерациях t и t-1 соответственно; $$\alpha$$ – коэффициент скорости обучения. Здесь и далее, для общности, под n подразумевается произвольный слой сети. При обучении по данному методу усиливаются связи между возбужденными нейронами.
Существует также и дифференциальный метод обучения Хебба.
$$w_{ij}(t)=w_{ij}(t-1)+\\+\alpha \cdot [y_i^{(n-1)}(t)-y_i^{(n-1)}(t-1)]\cdot [y_j^{(n)}(t)-y_j^{(n)}(t-1)]$$
Здесь $$y_i^{(n-1)}(t)$$ и $$y_i^{(n-1)}(t-1)$$ – выходное значение нейрона i слоя n-1 соответственно на итерациях t и t-1 ; $$y_j^{(n)}(t)$$ и $$y_j^{(n)}(t-1)$$ – то же самое для нейрона j слоя n. Как видно из формулы (2), сильнее всего обучаются синапсы, соединяющие те нейроны, выходы которых наиболее динамично изменились в сторону увеличения.
Полный алгоритм обучения с применением вышеприведенных формул будет выглядеть так:
i=0...Mi-1, где Mi – число нейронов в слое i ; n=0...N-1, а N – число слоев в сети.Следует отметить, что вид откликов на каждый класс входных образов не известен заранее и будет представлять собой произвольное сочетание состояний нейронов
Другой алгоритм обучения без учителя – алгоритм Кохонена – предусматривает подстройку
$$w_{ij}(t)=w_{ij}(t-1)+\alpha \cdot [y_i^{(n-1)}-w_{ij}(t-1)]$$
Из вышеприведенной формулы видно, что обучение сводится к минимизации разницы между входными сигналами нейрона, поступающими с выходов нейронов предыдущего слоя $$y_i^{(n-1)}$$, и весовыми коэффициентами его
Полный алгоритм обучения имеет примерно такую же структуру, как в методах Хебба, но на шаге 3 из всего слоя выбирается нейрон, значения
Другой вариант – расчет расстояния между этими векторами в p-мерном пространстве, где p – размер векторов.
$$D_j=\sqrt{\sum\limits_{i=0}^{p-1}(y_i^{(n-1)}-w_{ij})^2}$$
где j – индекс нейрона в слое n, i – индекс суммирования по нейронам слоя (n-1), wij – вес синапса, соединяющего нейроны; выходы нейронов слоя (n-1) являются входными значениями для слоя n. Корень в формуле (4.21) брать не обязательно, так как важна лишь относительная оценка различных Dj.
В данном случае, "побеждает" нейрон с наименьшим расстоянием. Иногда слишком часто получающие аккредитацию нейроны принудительно исключаются из рассмотрения, чтобы "уравнять права" всех нейронов слоя. Простейший вариант такого алгоритма заключается в торможении только что выигравшего нейрона.
При использовании обучения по алгоритму Кохонена существует практика нормализации входных образов, а также – на стадии инициализации – и нормализации начальных значений весовых коэффициентов.
$$x_i=x_i / \sqrt{\sum\limits_{j=0}^{n-1} x_j^2}$$
где xi – i -ая компонента вектора входного образа или вектора весовых коэффициентов, а n – его размерность. Это позволяет сократить длительность процесса обучения.
Инициализация весовых коэффициентов случайными значениями может привести к тому, что различные классы, которым соответствуют плотно распределенные входные образы, сольются или, наоборот, раздробятся на дополнительные подклассы в случае близких образов одного и того же класса. Для избежания такой ситуации используется метод выпуклой комбинации [3]. Суть его сводится к тому, что входные нормализованные образы подвергаются преобразованию:
$$x_i =\alpha (t)\cdot x_i +(1-\alpha (t)) \cdot \frac{1}{\sqrt{n}}$$
где xi – i -ая компонента входного образа, n – общее число его компонент, $$\alpha (t)$$ – коэффициент, изменяющийся в процессе обучения от нуля до единицы, в результате чего вначале на входы сети подаются практически одинаковые образы, а с течением времени они все больше сходятся к исходным. Весовые коэффициенты устанавливаются на шаге инициализации равными величине
$$w_0=\frac{1}{\sqrt{n}}$$
где n – размерность вектора весов для нейронов инициализируемого слоя.
На основе рассмотренного выше метода строятся нейронные сети особого типа – так называемые n нейрона j с минимальным расстоянием Dj (4.21) обучается по формуле (4.20) не только этот нейрон, но и его соседи, расположенные в окрестности R. Величина R на первых итерациях очень большая, так что обучаются все нейроны, но с течением времени она уменьшается до нуля. Таким образом, чем ближе конец обучения, тем точнее определяется группа нейронов, отвечающих каждому классу образов.
Среди различных конфигураций искуственных нейронных сетей (НС) встречаются такие, при классификации которых по принципу обучения, строго говоря, не подходят ни
Структурная схема
(рис 4.4) Структурная схема сети ХопфилдаЗадача, решаемая данной сетью в качестве ассоциативной памяти, как правило, формулируется следующим образом. Известен некоторый набор двоичных сигналов (изображений, звуковых оцифровок, прочих данных, описывающих некие объекты или характеристики процессов), которые считаются образцовыми. Сеть должна уметь из произвольного неидеального сигнала, поданного на ее вход, выделить ("вспомнить" по частичной информации) соответствующий образец (если такой есть) или "дать заключение" о том, что входные данные не соответствуют ни одному из образцов. В общем случае, любой сигнал может быть описан вектором X = { xi: i=0...n-1}, где n – число нейронов в сети и размерность входных и выходных векторов. Каждый элемент xi равен либо +1, либо -1. Обозначим вектор, описывающий k -ый образец, через Xk, а его компоненты, соответственно, – $$x_i^k$$, k=0...m-1, где m – число образцов. Когда сеть распознaет (или "вспомнит") какой-либо образец на основе предъявленных ей данных, ее выходы будут содержать именно его, то есть Y = Xk, где Y – вектор выходных значений сети: Y = { yi: i=0,...n-1}. В противном случае, выходной вектор не совпадет ни с одним образцовым.
Если, например, сигналы представляют собой некие изображения, то, отобразив в графическом виде данные с выхода сети, можно будет увидеть картинку, полностью совпадающую с одной из образцовых (в случае успеха) или же "вольную импровизацию" сети (в случае неудачи).
На стадии инициализации сети весовые коэффициенты
Здесь i и j – индексы, соответственно, предсинаптического и постсинаптического нейронов; $$x_i^k$$, $$x_j^k$$ – i -ый и j -ый элементы вектора k -ого образца.
p – номер итерации):
На входы сети подается неизвестный сигнал. Фактически его ввод осуществляется непосредственной установкой значений
yi(0) = xi , i = 0...n-1, (4.26)
поэтому обозначение на схеме сети входных yi означает нулевую итерацию в цикле работы сети.
Рассчитывается новое состояние нейронов
$$s_j(p+1)=\sum\limits_{i=0}^{n-1}w_{ij}y_i(p)$$, j=0...n-1 (4.27)
и новые значения
yi(p+1) = f[sj(p+1)] (4.28)
(рис 4.5) Активационные функции.где f –
Как говорилось выше, иногда сеть не может провести распознавание и выдает на выходе несуществующий образ. Это связано с проблемой ограниченности возможностей сети. Для m не должно превышать величины, примерно равной 0.15n. Кроме того, если два образа А и Б сильно похожи, они, возможно, будут вызывать у сети перекрестные ассоциации, то есть предъявление на входы сети вектора А приведет к появлению на ее выходах вектора Б, и наоборот.
(рис 4.6) Структурная схема сети ХэммингаКогда нет необходимости, чтобы сеть в явном виде выдавала образец, то есть достаточно, скажем, получать номер образца,
Сеть состоит из двух слоев. Первый и второй слои имеют по m нейронов, где m – число образцов. Нейроны первого слоя имеют по n
Идея работы сети состоит в нахождении
На стадии инициализации весовым коэффициентам первого слоя и порогу активационной функции присваиваются следующие значения:
$$w_{ik}=\frac{x_i^k}{2}$$, i=0...n-1, k=0...m-1 (4.29)
Tk = n/2, k = 0...m-1 (4.30)
Здесь $$x_i^k$$ – i -ый элемент k -ого образца.
Весовые коэффициенты тормозящих 0 < $$\varepsilon$$ < 1/m.
На входы сети подается неизвестный вектор X = {xi:i=0...n-1}, исходя из которого рассчитываются состояния нейронов первого слоя (верхний индекс в скобках указывает номер слоя):
$$y_j^{(1)}=s_j^{(1)}=\sum\limits_{i=0}^{n-1}w_{ij}x_i+T_j$$, j=0...m-1 (4.31)
После этого полученными значениями инициализируются значения
$$y_j^{(2)}=y_j^{(1)}$$, j = 0...m-1 (4.32)
Вычислить новые состояния нейронов второго слоя:
$$s_j^{(2)}(p+1)=y_j(p)-\varepsilon \sum\limits_{k=0}^{m-1}y_j^{(2)}(p) ,k\ne j,j=0...m-1$$
и значения их
$$y_j^{(2)}(p+1)=[s_j^{(2)}(p+1)],j=0...m-1$$
f имеет вид порога, причем величина F должна быть достаточно большой, чтобы любые возможные значения аргумента не приводили к насыщению.
Проверить, изменились ли выходы нейронов второго слоя за последнюю итерацию. Если да – перейти к шагу 2. Иначе – конец.
Из оценки алгоритма видно, что роль первого слоя весьма условна: воспользовавшись один раз на шаге 1 значениями его весовых коэффициентов, сеть больше не обращается к нему, поэтому первый слой может быть вообще исключен из сети (заменен на матрицу весовых коэффициентов).
Предположим, что требуется разделить два непересекающихся образа V1 и V2. Это значит, что в пространстве изображений существует, по крайней мере, одна функция, которая полностью разделяет множества, соответствующие образам V1 и V2. Эта функция должна принимать положительные значения в точках, которые соответствуют объектам, принадлежащим образу V1, и отрицательные — в точках образа V2. В общем случае таких разделяющих функций может быть много, тем больше, чем компактней
Метод потенциальных функций связан со следующей процедурой. В процессе обучения с каждой точкой пространства изображений, соответствующей единичному объекту из обучающей последовательности, связывается функция U(X, Xi), заданная на всем пространстве и зависящая от Xi как от параметра. Такие функции называются потенциальными, так как они напоминают функции потенциала электрического поля вокруг точечного электрического заряда. Изменение потенциала электрического поля по мере удаления от заряда обратно пропорционально квадрату расстояния. Потенциал, таким образом, может служить мерой удаления точки от заряда. Когда поле образовано несколькими зарядами, потенциал в каждой точке этого поля равен сумме потенциалов, создаваемых в этой точке каждым из зарядов. Если заряды, образующие поле, расположены компактной группой, потенциал поля будет иметь наибольшее значение внутри группы зарядов и убывать по мере удаления от нее.
Обучающей последовательности объектов соответствует последовательность векторов X1, X2, …, с которыми в пространстве изображений связана последовательность U(X, X1), U(X, X2), … потенциальных функций, используемых для построения функций f(X1, X2, …). По мере увеличения числа объектов в процессе обучения функция f должна стремиться к одной из разделяющих функций. В результате обучения могут быть построены потенциальные функции для каждого образа:
$$U_1(X)=\sum\limits_{X_1\in V_1} U(X,X_i),\\ U_2(X)=\sum\limits_{X_1\in V_2} U(X,X_i)$$
В качестве разделяющей функции f(X) можно выбрать функцию вида:
f(X)=U1(X)-U2(X),(4.36)
которая положительна для объектов одного образа и отрицательна для объектов другого.
В качестве потенциальной функции рассмотрим функцию вида
$$U(X,X_i)=\sum\limits_{j=1}^{\infty} \lambda_j^2 \varphi_j (X)\varphi_j (X_i)=\sum\limits_{j=1}^{\infty} \psi_j(X)\psi_j(X_i)$$
где $$\varphi_j (X)$$ — линейно независимая система функций; $$\lambda_j$$ — действительные числа, отличные от нуля для всех j = 1, 2, … ; Xi — точка, соответствующая i -му объекту из обучающей последовательности. Предполагается, что $$\varphi_j (X)$$ и U(X, Xi) ограничены при $$X\in V_1\cup V_2;\psi_j(X)=\lambda_j \varphi_j (X)$$.
В процессе обучения предъявляется обучающая последовательность и на каждом n-м такте обучения строится приближение fn(X), которое характеризуется следующей основной рекуррентной процедурой:
fn+1(X)=qnfn(X)+rnU(Xn+1,X),(4.38)
Разновидности алгоритмов потенциальных функций отличаются выбором значений qn и rn, которые являются фиксированными функциями номера n. Как правило, $$q_n \equiv 1$$, а rn выбирается в виде:
$$r_n \equiv \gamma_n (S(f_n(X_{n+1}),f(X{n+1})))$$
где S(fn, f) — невозрастающие функции, причем
Коэффициенты $$\gamma_n$$ представляют собой неотрицательную числовую последовательность, зависящую только от номера n. Кроме того, $$\sum\limits_{n=1}^{\infty} \gamma_n = \infty$$ и $$\sum\limits_{n=1}^{\infty} \gamma_n^2 < \infty$$ (например, $$\gamma_n=1/n$$ ) или $$\gamma_n=const$$.
Разработано несколько вариантов алгоритмов потенциальных функций, различие между которыми состоит в выборе законов коррекции разделяющей функции от шага к шагу, т. е. в выборе законов коррекции разделяющей функции от шага к шагу, иными словами, в выборе коэффициентов rn. Приведем два основных алгоритма потенциальных функций.
Будем считать, что $$f_0(X)\equiv 0$$ (нулевое приближение). Пусть в результате применения алгоритма после n -го шага построена разделяющая функция fn(X), а на (n+1) -м шаге предъявлено изображение Xn+1, для которого известно действительное значение разделяющей функции f(Xn+1 ). Тогда функция fn+1(X) строится по следующему правилу:
$$f_{n+1}(X)=f_n(X)+\gamma_{n+1}sign(f(X_{n+1})-f_n(X_{n+1}))\cdot U(X,X_{n+1})$$
Во втором алгоритме также принимается, что $$f_0(X)\equiv 0$$. Переход к следующему приближению, т. е. переход от функции fn(X) к fn+1(X), осуществляется в результате следующей рекуррентной процедуры:
$$f_{n+1}(X)=f_n(X)+(f(X_{n+1})-f_n(X_{n+1}))\cdot \frac{1}{\lambda}U(X,X_{n+1})$$
где $$\lambda$$ — произвольная положительная константа, удовлетворяющая условию $$\lambda =(1/2)\cdot max(X,X_i)$$.
Если в (ф. 5) принять$$\psi_j(X)=sign(\sum\limits_{v=1}^{m} \beta_{vj} \cdot x_v + \Theta_j),$$
и предположить, что xv может иметь только два значения 0 и 1, то в этом случае алгоритм потенциальных функций будет совпадать со схемой А -элементов и с коррекцией ошибок. Поэтому многие теоретические положения метода потенциальных функций могут быть успешно применены для анализа некоторых перцептронных схем.
Перед тем, как начинать рассмотрение МГУА, было бы полезно вспомнить (или узнать впервые)
Рассмотрим для примера МНК для трех аргументов.
Пусть функция T=T(U, V, W) задана таблицей, то есть из опыта известны числа Ui, Vi, Wi, Ti ( i = 1, … , n). Будем искать зависимость между этими данными в виде:
T(U,V,W)=aU+bV+cW (4.43)
где a, b, c — неизвестные параметры.
Подберем значения этих параметров так, чтобы была наименьшей сумма квадратов уклонений опытных данных Ti и теоретических Ti = aUwi + bVi + cWi, то есть сумма:
$$\sigma =\sum\limits_{i=1}^{n} (T_i-aU_i-bV_i-cW_i)^2 \to min$$
Величина $$\sigma$$ является функцией трех переменных a, b, c. Необходимым и достаточным условием существования минимума этой функции является равенство нулю частных
Так как:
$$\frac{\partial \sigma}{\partial a}= -2\sum\limits_{i=1}^{n} T_i-aU_i-bV_i-cW_i)U_i \\ \frac{\partial \sigma}{\partial b}= -2\sum\limits_{i=1}^{n} T_i-aU_i-bV_i-cW_i)V_i \\ \frac{\partial \sigma}{\partial c}= -2\sum\limits_{i=1}^{n} T_i-aU_i-bV_i-cW_i)W_i$$система для нахождения a, b, c будет иметь вид:
Данная система решается любым стандартным методом решения систем линейных уравнений (Гаусса, Жордана, Зейделя, Крамера).
Рассмотрим некоторые практические примеры нахождения приближающих функций.
$$y=\alpha x^2+\beta x+ \gamma $$
Задача подбора коэффициентов $$\alpha$$, $$\beta$$, $$\gamma$$ сводится к решению общей задачи при T=y, U=x2, V=x, W=1, $$\alpha =a, \beta =b, \gamma=c$$.
$$f(x,y)=\alpha sin(x)+\beta cos(y)+ \gamma /x$$
Задача подбора коэффициентов $$\alpha$$, $$\beta$$, $$\gamma$$ сводится к решению общей задачи при T=f, U=sin(x), V=cos(y), W=1/x, $$\alpha =a, \beta =b, \gamma=c$$.
Если мы распространим МНК на случай с m параметрами,
$$\sigma =\sum\limits_{i=1}^{n}(T_i-\sum\limits_{i=1}^{m} u_{iv}c_v)^2 \to min$$
то путем рассуждений, аналогичных приведенным выше, получим следующую систему линейных уравнений:
$$\begin{cases} c_1 \bar u_1 \bar u_1 +c_2\bar u_1 \bar u_2 +K+ c_m\bar u_1 \bar u_m = \bar T \bar u_1 \\ c_1 \bar u_2 \bar u_1 +c_2\bar u_2 \bar u_2 +K+ c_m\bar u_2 \bar u_m = \bar T \bar u_2 \\ \Lambda\\ c_1 \bar u_m \bar u_1 +c_2\bar u_m \bar u_2 +K+ c_m\bar u_m \bar u_m = \bar T \bar u_m \\ \end{cases}$$где $$\bar T=\{T_i\}^m_{i=1}, \bar u_v=\{u_{iv}\}^n_{i=1}$$
(рис 4.7) Селекция самого черного тюльпана при расширяющемся опытном поле (эквивалент полного перебора), и при постоянном размере поля (эквивалент селекции при сохранении свободы выбора решений F = const)
Заимствование алгоритмов переработки информации у природы является одной из основных идей кибернетики. "Гипотеза
Алгоритмы МГУА воспроизводят схему массовой
$$\varphi = f(x_1,x_2,x_3,...,x_m)$$,
где f — некоторая элементарная функция, например степенной полином, заменяется несколькими рядами "частных" описаний:
1-ряд y1= f(x1x2), y2= f(x1x3),..., ys= f(xm-1xm),
2-ряд z1= f(y1y2), z2= f(y1y2),..., zp= f(ys-1ys), где s=c2, $$p=c_s^2$$ и т.д.
Каждое частное описание является функцией только двух аргументов. Поэтому его коэффициенты легко определить по данным обучающей последовательности при малом числе
Из ряда в ряд
Ряды
(рис 4.8) МГУА как эквивалент массовой селекции
В этом алгоритме [5, 6] используются частные описания, представленные в следующих формулах: yi=a0+a1xi+a2xj+a3xixj ; $$y_k=a_0+a_1x_i+a_2x_j+a_3x_ix_j+a_4x_i^2+a_5x_j^2$$.
Сложность модели увеличивается от ряда к ряду
Чтобы степень полного уравнения повышалась с каждым рядом
По тому, как организован процесс обучения распознающих систем, четко выделяются два подхода к проблеме ОРО. Первый основан на построении сложных разделяющих поверхностей в случайно выбранных пространствах, а во втором центр тяжести проблемы переносится на достижение понимания принципов формирования такого описания объектов, в рамках которого сам процесс распознавания чрезвычайно прост. Обучение в этом случае рассматривается как некий процесс конструирования пространств для решения конкретных задач.
В МПУ предполагается, что разделяющая функция задается заранее в виде линейного (самого простого) полинома, а процесс обучения состоит в конструировании такого пространства минимальной размерности, в котором заранее заданная наиболее простая разделяющая функция безошибочно разделяет обучающую последовательность. МПР назван так потому, что в нем строится самое простое решающее правило в пространстве небольшой размерности, т. е. в простом пространстве.
Пусть на некотором множестве объектов V заданы два подмножества $$V^*_1$$ и $$V^*_2$$, определяющие собой образы на обучающей последовательности V. Рассмотрим i -е свойство объектов, такое, что некоторые объекты обучающей последовательности этим свойством обладают, а другие — нет. Пусть заданным свойством обладают объекты, образующие подмножество V1i, а объекты подмножества V2i этим свойством не обладают ( $$V_{1i} \cup V_{2i} =V$$ ). Тогда i -е свойство называют признаком первого типа относительно образа $$V^*_1$$, если выполняются соотношения
$$V_1^* \subseteq V_{1i} \mbox{ и }V_{1i} \cap V_2^* \ne V_2^*$$
и признаком второго типа, если выполняются
$$V_1^* \subseteq V_{1i} \mbox{ и }V_{1i} \cap V_2^* = \emptyset$$
Если же выполняются соотношения
$$V_2^* \subseteq V_{2i} \mbox{ и }V_{2i} \cap V_1^* \ne V_1^*$$
то i -е свойство считается признаком первого типа относительно образа $$V^*_2$$, а если выполняются
$$V_2^* \subseteq V_{2i} \mbox{ и }V_{2i} \cap V_1^* = \emptyset$$
то это же свойство объявляется признаком второго типа относительно образа $$V^*_2$$. Если свойство не обладает ни одной из приведенных особенностей, то оно вообще не относится к признакам и не участвует в формировании пространства.
Одинаковые признаки — это два признака xi и xj, порождающие подмножества V1j, V2j, V1i, V2i, такие, что
V1j= V1i и V2j= V2i.(4.54)
Доказано утверждение, смысл которого заключается в том, что если пространство конструировать из однотипных, но неодинаковых признаков, то в конце концов будет построено такое пространство, в котором обучающая последовательность будет безошибочно разделена на два образа линейным, т. е. самым простым, решающим правилом.
Метод предельных упрощений состоит в том, что в процессе обучения последовательно проверяются все возможные свойства объектов и из них выбираются только такие, которые обладают хотя бы одной из особенностей, определяемых соотношениями (4.50), (4.51). Такой отбор однотипных, но неодинаковых признаков продолжается до тех пор, пока при некотором значении размерности пространства не наступит безошибочное линейное разделение образов на обучающей последовательности. В зависимости от того, из признаков какого типа строится пространство, в качестве разделяющей плоскости выбирается плоскость, описываемая уравнением
$$\sum\limits_{i=1}^{n} x_i -(n-0.5)=0$$
либо уравнением
$$\sum\limits_{i=1}^{n} x_i -1=0$$
Каждый объект относится к одному из образов в зависимости от того, по какую сторону относительно плоскости находится соответствующий этому объекту вектор в n.
Давно известны приемы повышения качества принимаемых решений, состоящие в объединении специалистов той или иной области знаний в коллектив, вырабатывающий совместное решение. Идею коллективного решения можно применить и к "коллективу" формальных алгоритмов, что позволит повысить эффективность решения многих задач.
Х принимается решение S. Тогда S=R(X), где R — алгоритм принятия решения в ситуации X. Предположим, что существует L различных алгоритмов решения задачи, т. е. Sl=Rl(X), l=1, 2, ... , L, где Sl — решение, полученное алгоритмом Rl. Будем называть множество алгоритмов {R}={R1, R2, ..., Ri.} коллективом алгоритмов решения задачи (коллективом решающих правил), если на
множестве решений Sl в любой ситуации Х определено решающее правило F, т. е. S=F(S1, S2, ..., SL, X). Алгоритмы Rl принято называть членами коллектива, Sl — решением l -го члена коллектива, а S — коллективным решением. Функция F определяет способ обобщения индивидуальных решений в решения коллектива S. Поэтому синтез функции F, или способ обобщения, является центральным моментом в организации коллектива.
Принятие коллективного решения может быть использовано при решении различных задач. Так, в задаче управления под ситуацией понимается ситуация среды и целей управления, а под решением — самоуправление, приводящее объект в целевое состояние. В задачах прогноза Х — исходное, а S — прогнозируемое состояние. В задачах распознавания ситуацией Х является описание объекта X, т. е. его изображение, а решением S — номер образа, к которому принадлежит наблюдаемое изображение. Индивидуальное и коллективное решения в задаче распознавания состоят в отнесении некоторого изображения к одному из образов. Наиболее интересными коллективами распознающих алгоритмов являются такие, в которых существует зависимость веса каждого решающего правила Rl от распознаваемого изображения. Например, вес решающего правила Rl может определяться соотношением
где Bl — область компетентности решающего правила Rl. Веса решающих правил выбираются так, что
$$\sum\limits_{i=1}^{L} \mu_i(X) =1$$
для всех возможных значений X. Соотношение (4.57) означает, что решение коллектива определяется решением того решающего правила Ri, области компетентности которого принадлежит изображение объекта X. Такой подход представляет собой двухуровневую процедуру распознавания. На первом уровне определяется принадлежность изображения той или иной области компетентности, а уже на втором — вступает в силу решающее правило, компетентность которого максимальна в найденной области. Решение этого правила отождествляется с решением всего коллектива. Основным этапом в такой организации коллективного решения является обучение распознаванию областей компетентности. Практически постановкой этой задачи различаются правила организации решения коллектива. Области компетентности можно искать, используя вероятностные свойства правил коллектива, можно применить
В A -элемент может интерпретироваться как член коллектива. В процессе обучения все A -элементы приобретают веса, в соответствии с которыми эти A -элементы участвуют в коллективном решении. Особенность каждого A -элемента состоит в том, что он действует в некотором подпространстве исходного пространства, характер которого определяется связями между S - и A -элементами. Решение, получаемое на выходе A -элементов.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.