Ограничения емкости синаптической памяти, а также проблема ложной памяти классической нейронной сети в модели Хопфилда, обученной по правилу Хебба, привели к появлению целого ряда исследований, целью которых было снятие этих ограничений. При этом главный упор делался на модификацию правил обучения.
На предыдущей лекции было установлено, что ортогональность
образов
На этом свойстве ортогональных образов и основан один из наиболее часто используемых способов улучшения правила Хебба: перед запоминанием в нейронной сети исходные образы следует ортогонализовать. Процедура ортогонализации приводит к новому виду матрицы памяти:
$$W_{ij}=\sum_{\alpha,\mu}\xi_i^{(\alpha)}\xi_j^{(\beta)}B_{\alpha\mu}^{1},$$где $$B^{-1}$$ —
Такая форма матрицы памяти обеспечивает воспроизведение любого
набора из $$p<N$$ образов. Однако существенным недостатком этого
метода
является его нелокальность: обучение связи между двумя нейронами
требует знания состояний всех других нейронов. Кроме того, прежде чем
начать обучение, необходимо заранее знать все обучающие образы.
Добавление нового образа требует полного
Другим подходом для улучшения правила Хебба является отказ от
Элементы матрицы $$P_{ij}$$ из множества $$\{0,1\}$$ управляют наличием или отсутствием связи от нейрона $$i$$ к нейрону $$j.$$
Увеличение емкости памяти в этой модели в принципе может быть
достигнуто за счет появления новых степеней свободы, связанных с
матрицей $$P.$$ В общем случае, однако, трудно предложить алгоритм
выбора
этой матрицы. Следует также отметить, что
Возможность забывания ненужной, лишней информации является
одним из замечательных свойств биологической памяти. Идея приложения
этого свойства к искусственной нейросети Хопфилда
"удивительно" проста: при запоминании образов
Соответствующие алгоритмы получили название алгоритмов разобучения. Суть их сводится к следующему.
На первой фазе происходит обучение сети по стандартному правилу
Хебба. Память наполняется истинными образами и множеством ложной
информации. На следующей фазе (фазе разобучения) сети предъявляется
некоторый (случайный) образ $$\lambda^{(0)}.$$ Сеть эволюционирует от
состояния $$\lambda^{(0)}$$ к некоторому состоянию $$\lambda^{(f)}$$, которое
при большом объеме
В качестве степени забывания $$\varepsilon$$ выбирается некоторое малое число, что гарантирует незначительное ухудшение полезной памяти, если состояние $$\lambda^{(f)}$$ не окажется ложным. После нескольких "сеансов забывания" свойства сети улучшаются.
Данная процедура пока не имеет формального теоретического обоснования, однако на практике приводит к более регулярной энергетической поверхности нейронной сети и к увеличению объема бассейнов притяжения полезных образов.
На предыдущей лекции была рассмотрена классическая модель Хопфилда с двоичными нейронами. Изменение состояний нейронов во времени описывалось детерминированными правилами, которые в заданный момент времени однозначно определяли степень возбуждения всех нейронов сети.
Хопфилд рассматривал модели с непрерывной активационной функцией $$F$$, точнее моделирующей биологический нейрон. В общем случае это $$S$$ -образная или логистическая функция
$$F(x)=\frac{1}{1+\exp(-\lambda NET)},$$где $$\lambda$$ — коэффициент, определяющий крутизну сигмоидальной функции. Если $$\lambda$$ велико, $$F$$ приближается к описанной ранее пороговой функции. Небольшие значения $$\lambda$$ дают более пологий наклон.
Как и для бинарных систем, устойчивость гарантируется, если веса симметричны, т.е. $$w_{ij} = w_{ji}$$ и $$w_{ii} = 0$$ при всех $$i.$$ Функция энергии, доказывающая устойчивость подобных систем, сконструирована, но она не рассматривается здесь из-за своего концептуального сходства с дискретным случаем.
Если $$\lambda$$ велико, непрерывные системы функционируют
подобно дискретным бинарным системам, окончательно стабилизируясь со
всеми выходами, близкими нулю или единице, т. е. в вершине единичного
(рис 9.1) Недостатком
Металл отжигают, нагревая его до температуры, превышающей точку его плавления, а затем давая ему медленно остыть. При высоких температурах атомы, обладая высокими энергиями и свободой перемещения, случайным образом принимают все возможные конфигурации. При постепенном снижении температуры энергии атомов уменьшаются, и система в целом стремится принять конфигурацию с минимальной энергией. Когда охлаждение завершено, достигается состояние глобального минимума энергии.
При фиксированной температуре распределение энергий системы определяется вероятностным фактором Больцмана
$$\exp(-E/kT),$$где $$E$$ — энергия системы; $$k$$ — постоянная Больцмана; $$T$$ — температура.
Отсюда очевидно: имеется конечная вероятность того, что система обладает высокой энергией даже при низких температурах. Сходным образом имеется небольшая, но вычисляемая вероятность, что чайник с водой на огне замерзнет, прежде чем закипит.
Статистическое распределение энергий позволяет системе выходить из
Если правила изменения состояний для бинарной
где $$NET_k$$ — выход NET нейрона $$k$$ ; $$\theta$$ — порог нейрона $$k$$, и
$$p_k=\frac{1}{1+\exp(-\delta E_k/T)},$$(отметим вероятностную функцию Больцмана в знаменателе), где $$T$$ — искусственная температура.
В стадии функционирования искусственной температуре $$T$$ приписывается большое значение, нейроны устанавливаются в начальном состоянии, определяемом входным вектором, и сеть имеет возможность искать минимум энергии в соответствии с нижеследующей процедурой:
Принцип
Процедура обучения для такой сети состоит из следующих шагов:
Вычислить закрепленные вероятности:
а) придать входным и
б) предоставить сети возможность искать равновесие;
в) записать выходные значения для всех нейронов;
г) повторить шаги от а до в для всех обучающих векторов;
д) вычислить вероятность $$P_{ij}^+$$, т. е. по всему множеству обучающих векторов вычислить вероятность того, что значения обоих нейронов равны единице.
Вычислить незакрепленные вероятности:
а) предоставить сети возможность "свободного движения" без закрепления входов или выходов, начав со случайного состояния;
б) повторить шаг 2а много раз, регистрируя значения всех нейронов;
в) вычислить вероятность $$P_{ij}^-$$, т. е. вероятность того, что значения обоих нейронов равны единице.
Скорректировать веса сети следующим образом:
$$\delta w_{ij}=\eta (P_{ij}^+-P_{ij}^-)$$,где $$\delta w_{ij}$$ — изменение веса $$w_{ij}$$, $$\eta$$ — коэффициент скорости обучения.
Рассмотрим
Заметим, что усилители имеют прямой и
(рис 9.2) В реальной системе каждый усилитель обладает конечным входным сопротивлением и входной емкостью, что должно учитываться при расчете динамических характеристик. Для устойчивости сети не требуется равенства этих параметров для всех усилителей и их симметричности. Так как эти параметры влияют лишь на затраченное для получения решения время, а не на само решение, для упрощения анализа они исключены.
Предполагается, что используется пороговая функция (предел сигмоидальной функции при $$\lambda$$, стремящемся к бесконечности). Далее, все выходы изменяются в начале дискретных интервалов времени, называемых эпохами. В начале каждой эпохи исследуется сумма входов каждого нейрона. Если она больше порога, выход принимает единичное значение, если меньше — нулевое. На протяжении эпохи выходы нейронов не изменяются.
Целью является такой выбор сопротивлений (весов), чтобы непрерывно растущее напряжение $$X$$, приложенное к одновходовому терминалу, порождало множество из четырех выходов, представляющих двоичную запись числа, величина которого приближенно равна входному напряжению (см. рис. 9.3). Определим сначала функцию энергии следующим образом:
$$E=-\frac12\left(X-\sum_j 2^j OUT_j\right)^2+ \sum_j 2^{2j-1}OUT_j(1-OUT_j),$$где $$X$$ — входное напряжение.
Когда $$E$$ минимизировано, то получаются нужные выходы. Первое выражение в скобках минимизируется, когда двоичное число, образованное выходами, наиболее близко (в среднеквадратичном смысле) к аналоговой величине входа $$X.$$ Второе выражение в скобках обращается в нуль, когда все выходы равны 1 или 0, тем самым накладывая ограничение, что выходы принимают только двоичные значения.
Если данное уравнение перегруппировать, то получим следующее выражение для весов:
$$W_{ij}=-2^{i+j},\quad y_i=2^i,$$где $$w_{ij}$$ — проводимость (величина, обратная сопротивлению) от выхода нейрона $$i$$ к входу нейрона $$j$$ (равная также проводимости от выхода нейрона $$j$$ к входу нейрона $$i$$ ); $$y_i$$ — проводимость от входа $$X$$ к входу нейрона $$i.$$ Чтобы получить схему с приемлемыми значениями сопротивлений и потребляемой мощности, все веса должны быть промасштабированы.
(рис 9.3) Идеальная выходная характеристика, изображенная на рис. 9.3,
будет реализована лишь в том случае, если входы устанавливаются в нуль
перед выполнением преобразования. Если этого не делать, сеть может
попасть в
Существует решение этой задачи, основанное на сетях с обратными связями. Допустим, что города, которые необходимо посетить, помечены буквами $$A$$, $$B$$, $$C$$ и $$D$$, а расстояния между парами городов есть $$d_{ab}$$, $$d_{bc}$$ и т.д.
Решением является упорядоченное множество из $$n$$ городов. Задача состоит в отображении его в вычислительную сеть с использованием нейронов в режиме с большой крутизной характеристики ( $$\lambda$$ приближается к бесконечности). Каждый город представлен строкой из $$n$$ нейронов. Выход одного и только одного нейрона из них равен единице (все остальные равны нулю). Этот равный единице выход нейрона показывает порядковый номер, в котором данный город посещается при обходе. В табл. 23.1 приведен случай, когда город $$C$$ посещается первым, город $$A$$ — вторым, город $$D$$ — третьим и город $$B$$ — четвертым. Для такого представления требуется $$n^2$$ нейронов — число, которое быстро растет с увеличением числа городов. Длина полученного маршрута была бы равна $$d_{ca} + d_{ad} + d_{db} + d_{bc}.$$ Так как каждый город посещается только один раз, и в каждый момент посещается лишь один город, то в каждой строке и в каждом столбце имеется по одной единице. Для задачи с $$n$$ городами всего имеется $$n$$! различных маршрутов обхода. Если $$n = 60$$, то имеется $$6934155\times 10^{78}$$ возможных маршрутов. Если принять во внимание, что в нашей галактике (Млечном Пути) имеется лишь $$10^{11}$$ звезд, то станет ясным, что полный перебор всех возможных маршрутов для 1000 городов даже на самом быстром в мире компьютере займет время, сравнимое с геологической эпохой.
| город | Порядок следования | |||
| 1 | 2 | 3 | 4 | |
| A | 0 | 1 | 0 | 0 |
| B | 0 | 0 | 0 | 1 |
| C | 1 | 0 | 0 | 0 |
| D | 0 | 0 | 1 | 0 |
Продемонстрируем теперь, как сконструировать сеть для решения этой
Функция энергии должна удовлетворять двум требованиям: во-первых,
должна быть малой только для тех решений, которые имеют по одной
единице в каждой строке и в каждом столбце; во-вторых, должна оказывать
предпочтение решениям с короткой
Первое требование удовлетворяется введением следующей, состоящей из трех сумм, функции энергии:
$$E=\frac A2\sum_{x}\sum_i\sum_{j\ne i} OUT_{xi}OUT_{xj}+ \frac{B}{2}\sum_i\sum_x\sum_{y\ne x}OUT_{xi}OUT_{yi}+\\$$ $$+ \frac{C}{2}\left[\left(\sum_x\sum_iOUT_{xi}\right)-n\right]^2,$$где $$A$$, $$B$$ и $$C$$ — некоторые константы. Этим достигается выполнение следующих условий:
Третья сумма равна нулю в том и только в том случае, если матрица содержит ровно $$n$$ единиц. Второе требование — предпочтение коротких маршрутов — удовлетворяется с помощью добавления следующего члена к функции энергии:
$$E=\frac{D}{2}\sum_x\sum_{y\ne x}\sum_i d_{xy} OUT_{xi}(OUT_{y,i+1}+OUT_{y,i-1}),$$Заметим, что этот член представляет собой длину любого допустимого маршрута. Для удобства индексы определяются по модулю $$n$$, т. е. $$OUT_{n+j} = OUT_j$$, a $$D$$ — некоторая константа.
При достаточно больших значениях $$A$$, $$B$$ и $$C$$ низкоэнергетические состояния будут представлять допустимые маршруты, а большие значения $$D$$ гарантируют, что будет найден короткий маршрут.
Теперь зададим значения весов, т. е. установим соответствие между членами в функции энергии и членами общей формы.
Получаем
$$w_{xi,yо}=-A\delta_{xy}(1-\delta_{iо})$$ (не допускает более одной единицы в строке)
$$-B\delta_{ij}(1-\delta_{xy})$$ (не допускает более одной единицы в столбце)
$$-C$$ (глобальное ограничение)
$$-Dd_{xy}(\delta_{j,i+1}+\delta_{j,i-1})$$ (член, отвечающий за длину цикла),
где $$\delta_{ij} = 1$$, если $$i = j$$, в противном случае $$\delta_{ij} = 0.$$ Кроме того, каждый нейрон имеет смещающий вес $$x_i$$, соединенный с $$+1$$ и равный $$C_n.$$
Был проведен эксперимент, в котором
Как показали результаты, 16 из 20 прогонов сошлись к допустимому маршруту и около 50% решений оказались кратчайшими маршрутами, что было установлено с помощью полного перебора. Наш результат станет более впечатляющим, если осознать, что имеется 181440 допустимых маршрутов.
Сеть, выполняющая аналого-цифровое преобразование, всегда находит
единственное оптимальное решение. Это обусловлено простой природой
поверхности энергии в такой задаче. В
Главное достоинство сети — ее способность быстро производить
вычисления. Причина этого — высокая степень распараллеливания
вычислительного процесса. Если сеть реализована на аналоговой
электронике, то решение редко занимает промежуток времени, больший
нескольких постоянных времени сети. Более того, время
Определение функции энергии сети в зависимости от задачи не является тривиальным. Существующие решения были получены с помощью изобретательности, математического опыта и таланта, которые не родятся в изобилии.
Актуальным предметом изучения остается максимальное количество
запоминаемой информации, которое может храниться в
Если бы удалось закрепить в памяти большое количество информационных единиц, то сеть не стабилизировалась бы на некоторых из них. Более того, она могла бы помнить то, чему ее не учили, т. е. могла стабилизироваться на решении, не являющемся требуемым вектором. Эти свойства ставили в тупик первых исследователей, которые не имели математических методов для предварительной оценки емкости памяти сети.
Последние результаты пролили свет на эту проблему. Например, предполагалось, что максимальное количество запоминаемой информации, которое может храниться в сети из $$N$$ нейронов и безошибочно извлекаться, меньше чем $$cN^2$$, где $$c$$ — положительная константа, большая единицы. Хотя этот предел и достигается в некоторых случаях, в общем случае он оказался слишком оптимистическим. Было экспериментально показано, что предельное значение емкости обычно ближе к $$0,15N.$$ Также, по новейшим данным, число таких состояний не может превышать $$N$$, что согласуется с наблюдениями над реальными системами и является наилучшей на сегодняшний день оценкой.
Ограничения емкости синаптической памяти, а также проблема ложной памяти классической нейронной сети в модели Хопфилда, обученной по правилу Хебба, привели к появлению целого ряда исследований, целью которых было снятие этих ограничений. При этом главный упор делался на модификацию правил обучения.
На предыдущей лекции было установлено, что ортогональность
образов
На этом свойстве ортогональных образов и основан один из наиболее часто используемых способов улучшения правила Хебба: перед запоминанием в нейронной сети исходные образы следует ортогонализовать. Процедура ортогонализации приводит к новому виду матрицы памяти:
$$W_{ij}=\sum_{\alpha,\mu}\xi_i^{(\alpha)}\xi_j^{(\beta)}B_{\alpha\mu}^{1},$$где $$B^{-1}$$ —
Такая форма матрицы памяти обеспечивает воспроизведение любого
набора из $$p<N$$ образов. Однако существенным недостатком этого
метода
является его нелокальность: обучение связи между двумя нейронами
требует знания состояний всех других нейронов. Кроме того, прежде чем
начать обучение, необходимо заранее знать все обучающие образы.
Добавление нового образа требует полного
Другим подходом для улучшения правила Хебба является отказ от
Элементы матрицы $$P_{ij}$$ из множества $$\{0,1\}$$ управляют наличием или отсутствием связи от нейрона $$i$$ к нейрону $$j.$$
Увеличение емкости памяти в этой модели в принципе может быть
достигнуто за счет появления новых степеней свободы, связанных с
матрицей $$P.$$ В общем случае, однако, трудно предложить алгоритм
выбора
этой матрицы. Следует также отметить, что
Возможность забывания ненужной, лишней информации является
одним из замечательных свойств биологической памяти. Идея приложения
этого свойства к искусственной нейросети Хопфилда
"удивительно" проста: при запоминании образов
Соответствующие алгоритмы получили название алгоритмов разобучения. Суть их сводится к следующему.
На первой фазе происходит обучение сети по стандартному правилу
Хебба. Память наполняется истинными образами и множеством ложной
информации. На следующей фазе (фазе разобучения) сети предъявляется
некоторый (случайный) образ $$\lambda^{(0)}.$$ Сеть эволюционирует от
состояния $$\lambda^{(0)}$$ к некоторому состоянию $$\lambda^{(f)}$$, которое
при большом объеме
В качестве степени забывания $$\varepsilon$$ выбирается некоторое малое число, что гарантирует незначительное ухудшение полезной памяти, если состояние $$\lambda^{(f)}$$ не окажется ложным. После нескольких "сеансов забывания" свойства сети улучшаются.
Данная процедура пока не имеет формального теоретического обоснования, однако на практике приводит к более регулярной энергетической поверхности нейронной сети и к увеличению объема бассейнов притяжения полезных образов.
На предыдущей лекции была рассмотрена классическая модель Хопфилда с двоичными нейронами. Изменение состояний нейронов во времени описывалось детерминированными правилами, которые в заданный момент времени однозначно определяли степень возбуждения всех нейронов сети.
Хопфилд рассматривал модели с непрерывной активационной функцией $$F$$, точнее моделирующей биологический нейрон. В общем случае это $$S$$ -образная или логистическая функция
$$F(x)=\frac{1}{1+\exp(-\lambda NET)},$$где $$\lambda$$ — коэффициент, определяющий крутизну сигмоидальной функции. Если $$\lambda$$ велико, $$F$$ приближается к описанной ранее пороговой функции. Небольшие значения $$\lambda$$ дают более пологий наклон.
Как и для бинарных систем, устойчивость гарантируется, если веса симметричны, т.е. $$w_{ij} = w_{ji}$$ и $$w_{ii} = 0$$ при всех $$i.$$ Функция энергии, доказывающая устойчивость подобных систем, сконструирована, но она не рассматривается здесь из-за своего концептуального сходства с дискретным случаем.
Если $$\lambda$$ велико, непрерывные системы функционируют
подобно дискретным бинарным системам, окончательно стабилизируясь со
всеми выходами, близкими нулю или единице, т. е. в вершине единичного
(рис 9.1) Недостатком
Металл отжигают, нагревая его до температуры, превышающей точку его плавления, а затем давая ему медленно остыть. При высоких температурах атомы, обладая высокими энергиями и свободой перемещения, случайным образом принимают все возможные конфигурации. При постепенном снижении температуры энергии атомов уменьшаются, и система в целом стремится принять конфигурацию с минимальной энергией. Когда охлаждение завершено, достигается состояние глобального минимума энергии.
При фиксированной температуре распределение энергий системы определяется вероятностным фактором Больцмана
$$\exp(-E/kT),$$где $$E$$ — энергия системы; $$k$$ — постоянная Больцмана; $$T$$ — температура.
Отсюда очевидно: имеется конечная вероятность того, что система обладает высокой энергией даже при низких температурах. Сходным образом имеется небольшая, но вычисляемая вероятность, что чайник с водой на огне замерзнет, прежде чем закипит.
Статистическое распределение энергий позволяет системе выходить из
Если правила изменения состояний для бинарной
где $$NET_k$$ — выход NET нейрона $$k$$ ; $$\theta$$ — порог нейрона $$k$$, и
$$p_k=\frac{1}{1+\exp(-\delta E_k/T)},$$(отметим вероятностную функцию Больцмана в знаменателе), где $$T$$ — искусственная температура.
В стадии функционирования искусственной температуре $$T$$ приписывается большое значение, нейроны устанавливаются в начальном состоянии, определяемом входным вектором, и сеть имеет возможность искать минимум энергии в соответствии с нижеследующей процедурой:
Принцип
Процедура обучения для такой сети состоит из следующих шагов:
Вычислить закрепленные вероятности:
а) придать входным и
б) предоставить сети возможность искать равновесие;
в) записать выходные значения для всех нейронов;
г) повторить шаги от а до в для всех обучающих векторов;
д) вычислить вероятность $$P_{ij}^+$$, т. е. по всему множеству обучающих векторов вычислить вероятность того, что значения обоих нейронов равны единице.
Вычислить незакрепленные вероятности:
а) предоставить сети возможность "свободного движения" без закрепления входов или выходов, начав со случайного состояния;
б) повторить шаг 2а много раз, регистрируя значения всех нейронов;
в) вычислить вероятность $$P_{ij}^-$$, т. е. вероятность того, что значения обоих нейронов равны единице.
Скорректировать веса сети следующим образом:
$$\delta w_{ij}=\eta (P_{ij}^+-P_{ij}^-)$$,где $$\delta w_{ij}$$ — изменение веса $$w_{ij}$$, $$\eta$$ — коэффициент скорости обучения.
Рассмотрим
Заметим, что усилители имеют прямой и
(рис 9.2) В реальной системе каждый усилитель обладает конечным входным сопротивлением и входной емкостью, что должно учитываться при расчете динамических характеристик. Для устойчивости сети не требуется равенства этих параметров для всех усилителей и их симметричности. Так как эти параметры влияют лишь на затраченное для получения решения время, а не на само решение, для упрощения анализа они исключены.
Предполагается, что используется пороговая функция (предел сигмоидальной функции при $$\lambda$$, стремящемся к бесконечности). Далее, все выходы изменяются в начале дискретных интервалов времени, называемых эпохами. В начале каждой эпохи исследуется сумма входов каждого нейрона. Если она больше порога, выход принимает единичное значение, если меньше — нулевое. На протяжении эпохи выходы нейронов не изменяются.
Целью является такой выбор сопротивлений (весов), чтобы непрерывно растущее напряжение $$X$$, приложенное к одновходовому терминалу, порождало множество из четырех выходов, представляющих двоичную запись числа, величина которого приближенно равна входному напряжению (см. рис. 9.3). Определим сначала функцию энергии следующим образом:
$$E=-\frac12\left(X-\sum_j 2^j OUT_j\right)^2+ \sum_j 2^{2j-1}OUT_j(1-OUT_j),$$где $$X$$ — входное напряжение.
Когда $$E$$ минимизировано, то получаются нужные выходы. Первое выражение в скобках минимизируется, когда двоичное число, образованное выходами, наиболее близко (в среднеквадратичном смысле) к аналоговой величине входа $$X.$$ Второе выражение в скобках обращается в нуль, когда все выходы равны 1 или 0, тем самым накладывая ограничение, что выходы принимают только двоичные значения.
Если данное уравнение перегруппировать, то получим следующее выражение для весов:
$$W_{ij}=-2^{i+j},\quad y_i=2^i,$$где $$w_{ij}$$ — проводимость (величина, обратная сопротивлению) от выхода нейрона $$i$$ к входу нейрона $$j$$ (равная также проводимости от выхода нейрона $$j$$ к входу нейрона $$i$$ ); $$y_i$$ — проводимость от входа $$X$$ к входу нейрона $$i.$$ Чтобы получить схему с приемлемыми значениями сопротивлений и потребляемой мощности, все веса должны быть промасштабированы.
(рис 9.3) Идеальная выходная характеристика, изображенная на рис. 9.3,
будет реализована лишь в том случае, если входы устанавливаются в нуль
перед выполнением преобразования. Если этого не делать, сеть может
попасть в
Существует решение этой задачи, основанное на сетях с обратными связями. Допустим, что города, которые необходимо посетить, помечены буквами $$A$$, $$B$$, $$C$$ и $$D$$, а расстояния между парами городов есть $$d_{ab}$$, $$d_{bc}$$ и т.д.
Решением является упорядоченное множество из $$n$$ городов. Задача состоит в отображении его в вычислительную сеть с использованием нейронов в режиме с большой крутизной характеристики ( $$\lambda$$ приближается к бесконечности). Каждый город представлен строкой из $$n$$ нейронов. Выход одного и только одного нейрона из них равен единице (все остальные равны нулю). Этот равный единице выход нейрона показывает порядковый номер, в котором данный город посещается при обходе. В табл. 23.1 приведен случай, когда город $$C$$ посещается первым, город $$A$$ — вторым, город $$D$$ — третьим и город $$B$$ — четвертым. Для такого представления требуется $$n^2$$ нейронов — число, которое быстро растет с увеличением числа городов. Длина полученного маршрута была бы равна $$d_{ca} + d_{ad} + d_{db} + d_{bc}.$$ Так как каждый город посещается только один раз, и в каждый момент посещается лишь один город, то в каждой строке и в каждом столбце имеется по одной единице. Для задачи с $$n$$ городами всего имеется $$n$$! различных маршрутов обхода. Если $$n = 60$$, то имеется $$6934155\times 10^{78}$$ возможных маршрутов. Если принять во внимание, что в нашей галактике (Млечном Пути) имеется лишь $$10^{11}$$ звезд, то станет ясным, что полный перебор всех возможных маршрутов для 1000 городов даже на самом быстром в мире компьютере займет время, сравнимое с геологической эпохой.
| город | Порядок следования | |||
| 1 | 2 | 3 | 4 | |
| A | 0 | 1 | 0 | 0 |
| B | 0 | 0 | 0 | 1 |
| C | 1 | 0 | 0 | 0 |
| D | 0 | 0 | 1 | 0 |
Продемонстрируем теперь, как сконструировать сеть для решения этой
Функция энергии должна удовлетворять двум требованиям: во-первых,
должна быть малой только для тех решений, которые имеют по одной
единице в каждой строке и в каждом столбце; во-вторых, должна оказывать
предпочтение решениям с короткой
Первое требование удовлетворяется введением следующей, состоящей из трех сумм, функции энергии:
$$E=\frac A2\sum_{x}\sum_i\sum_{j\ne i} OUT_{xi}OUT_{xj}+ \frac{B}{2}\sum_i\sum_x\sum_{y\ne x}OUT_{xi}OUT_{yi}+\\$$ $$+ \frac{C}{2}\left[\left(\sum_x\sum_iOUT_{xi}\right)-n\right]^2,$$где $$A$$, $$B$$ и $$C$$ — некоторые константы. Этим достигается выполнение следующих условий:
Третья сумма равна нулю в том и только в том случае, если матрица содержит ровно $$n$$ единиц. Второе требование — предпочтение коротких маршрутов — удовлетворяется с помощью добавления следующего члена к функции энергии:
$$E=\frac{D}{2}\sum_x\sum_{y\ne x}\sum_i d_{xy} OUT_{xi}(OUT_{y,i+1}+OUT_{y,i-1}),$$Заметим, что этот член представляет собой длину любого допустимого маршрута. Для удобства индексы определяются по модулю $$n$$, т. е. $$OUT_{n+j} = OUT_j$$, a $$D$$ — некоторая константа.
При достаточно больших значениях $$A$$, $$B$$ и $$C$$ низкоэнергетические состояния будут представлять допустимые маршруты, а большие значения $$D$$ гарантируют, что будет найден короткий маршрут.
Теперь зададим значения весов, т. е. установим соответствие между членами в функции энергии и членами общей формы.
Получаем
$$w_{xi,yо}=-A\delta_{xy}(1-\delta_{iо})$$ (не допускает более одной единицы в строке)
$$-B\delta_{ij}(1-\delta_{xy})$$ (не допускает более одной единицы в столбце)
$$-C$$ (глобальное ограничение)
$$-Dd_{xy}(\delta_{j,i+1}+\delta_{j,i-1})$$ (член, отвечающий за длину цикла),
где $$\delta_{ij} = 1$$, если $$i = j$$, в противном случае $$\delta_{ij} = 0.$$ Кроме того, каждый нейрон имеет смещающий вес $$x_i$$, соединенный с $$+1$$ и равный $$C_n.$$
Был проведен эксперимент, в котором
Как показали результаты, 16 из 20 прогонов сошлись к допустимому маршруту и около 50% решений оказались кратчайшими маршрутами, что было установлено с помощью полного перебора. Наш результат станет более впечатляющим, если осознать, что имеется 181440 допустимых маршрутов.
Сеть, выполняющая аналого-цифровое преобразование, всегда находит
единственное оптимальное решение. Это обусловлено простой природой
поверхности энергии в такой задаче. В
Главное достоинство сети — ее способность быстро производить
вычисления. Причина этого — высокая степень распараллеливания
вычислительного процесса. Если сеть реализована на аналоговой
электронике, то решение редко занимает промежуток времени, больший
нескольких постоянных времени сети. Более того, время
Определение функции энергии сети в зависимости от задачи не является тривиальным. Существующие решения были получены с помощью изобретательности, математического опыта и таланта, которые не родятся в изобилии.
Актуальным предметом изучения остается максимальное количество
запоминаемой информации, которое может храниться в
Если бы удалось закрепить в памяти большое количество информационных единиц, то сеть не стабилизировалась бы на некоторых из них. Более того, она могла бы помнить то, чему ее не учили, т. е. могла стабилизироваться на решении, не являющемся требуемым вектором. Эти свойства ставили в тупик первых исследователей, которые не имели математических методов для предварительной оценки емкости памяти сети.
Последние результаты пролили свет на эту проблему. Например, предполагалось, что максимальное количество запоминаемой информации, которое может храниться в сети из $$N$$ нейронов и безошибочно извлекаться, меньше чем $$cN^2$$, где $$c$$ — положительная константа, большая единицы. Хотя этот предел и достигается в некоторых случаях, в общем случае он оказался слишком оптимистическим. Было экспериментально показано, что предельное значение емкости обычно ближе к $$0,15N.$$ Также, по новейшим данным, число таких состояний не может превышать $$N$$, что согласуется с наблюдениями над реальными системами и является наилучшей на сегодняшний день оценкой.
Для получения официальных документов о завершении программы дополнительного профессионального образования (удостоверения о повышении квалификации, дипломов о профессиональной переподготовке и MBA) необходимо предоставить:
Внимание! Вы можете не заказывать доставку бумажной версии официального документы, а скачать его в электронном виде и распечатать самостоятельно. Информация о выданном документе в течение 1 месяца загружается в Федеральную информационную систему «Федеральный реестр сведений о документах об образовании и (или) о квалификации, документах об обучении» - ФИС ФРДО.
Доступ на новый сайт осуществляется с использованием адреса электронной почты, который был указан вами при регистрации на "старом". Мы постарались перенести все ваши данные с прежнего ресурса, однако не исключена вероятность потери части информации.
При возникновении проблемы со входом, воспользуйтесь функцией сброса пароля
Если вы обнаружите несоответствия, пожалуйста, сообщите нам.