Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебники 60247.doc
Скачиваний:
21
Добавлен:
01.05.2022
Размер:
4.22 Mб
Скачать

3.7 Алгоритмы обучения персептрона

Простой метод. Персептрон является двухуровневой, нерекуррентной сетью, вид которой показан на рис. 5.

 

Рис. 5. Однослойная нейронная сеть.

Она использует алгоритм обучения с учителем; другими словами, обучающая выборка состоит из множества входных векторов, для каждого из которых указан свой требуемый вектор цели. Компоненты входного вектора представлены непрерывным диапазоном значений; компоненты вектора цели являются двоичными величинами (0 или 1). После обучения сеть получает на входе набор непрерывных входов и вырабатывает требуемый выход в виде вектора с бинарными компонентами.

Алгоритм обучения осуществляется следующим образом:

1. Рандомизируются все веса сети в малые величины.

2. На вход сети подается входной обучающий вектор Х и вычисляется сигнал NET от каждого нейрона, используя стандартное выражение:

.

3. Вычисляется значение пороговой функции активации для сигнала NET от каждого нейрона следующим образом:

- OUTj = 1, если NETj больше чем порог θj,

- OUTj = 0 в противном случае.

Здесь θj представляет собой порог, соответствующий нейрону j (в простейшем случае, все нейроны имеют один и тот же порог).

4. Вычисляется ошибка для каждого нейрона посредством вычитания полученного выхода из требуемого выхода:

errorj = targetj – OUTj.

5. Каждый вес модифицируется следующим образом:

Wij(t+1) = wij(t) +a xierrorj.

6. Повторяются шаги со второго по пятый до тех пор, пока ошибка не станет достаточно малой.

Метод обучения Уидроу-Хоффа. Как мы видели, персептрон ограничивается бинарными выходами. Уидроу вместе со студентом университета Хоффом расширили алгоритм обучения персептрона на случай непрерывных выходов, используя сигмоидальную функцию. Кроме того, они разработали математическое доказательство того, что сеть при определенных условиях будет сходиться к любой функции, которую она может представить. Их первая модель – Адалин – имеет один выходной нейрон, более поздняя модель – Мадалин – расширяет ее на случай с многими выходными нейронами.

Выражения, описывающие процесс обучения Адалина, очень схожи с персептронными. Существенные отличия имеются в четвертом шаге, где используются непрерывные сигналы NET вместо бинарных OUT. Модифицированный шаг 4 в этом случае реализуется следующим образом:

4. Вычисляется ошибка для каждого нейрона посредством вычитания полученного выхода из требуемого выхода:

errorj = targetj – NETj. /12/

3.8 Квантовые компьютеры

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

Кубиты Идея квантовых вычислений, впервые высказанная Ю. И. Маниным и Р. Фейнманом состоит в том, что квантовая система из L двухуровневых квантовых элементов (кубитов) имеет 2L линейно независимых состояний, а значит, вследствие принципа квантовой суперпозиции, 2L-мерное гильбертово пространство состояний. Операция в квантовых вычислениях соответствует повороту в этом пространстве. Таким образом, квантовое вычислительное устройство размером L кубит может выполнять параллельно 2L операций.

Предположим, что имеется один кубит. В таком случае после измерения, в так называемой классической форме, результат будет 0 или 1. В действительности кубит квантовый объект и поэтому, вследствие принципа неопределенности, может быть и 0, и 1 с определенной вероятностью. Если кубит равен 0 (или 1) со стопроцентной вероятностью, его состояние обозначается с помощью символа |0> (или |1>) — в обозначениях Дирака. |0> и |1> — это базовые состояния. В общем случае квантовое состояние кубита находится между базовыми и записывается, в виде , где |a|2 и |b|2 — вероятности измерить 0 или 1 соответственно; . Более того, сразу после измерения кубит переходит в базовое квантовое состояние, аналогичное классическому результату.

Пример:

Имеется кубит в квантовом состоянии

В этом случае, вероятность получить при измерении:

0

составляет

(4/5)2=16/25

= 64 %,

1

соответствеено

(-3/5)2=9/25

= 36 %.

Допустим, при измерении мы получили 1.

Тогда кубит перескакивает в новое квантовое состояние 0*|0>+1*|1>=|1>, то есть, при следующем измерении этого кубита мы получим 1 со стопроцентной вероятностью.

Перейдём к системе из двух кубитов. Измерение каждого из них может дать 0 или 1. Поэтому у системы 4 классических состояния: 00, 01, 10 и 11. Аналогичные им базовые квантовые состояния: |00>, |01>, |10> и |11>. И наконец, общее квантовое состояние системы имеет вид . Теперь |a|2 — вероятность измерить 00 и т. д. Отметим, что |a|2+|b|2+|c|2+|d|2=1 как полная вероятность.

В общем случае, системы из L кубитов у неё 2L классических состояний (00000, 00001, … , 11111), каждое из которых может быть измерено с вероятностями 0—100 %.

Таким образом, одна операция над группой кубитов затрагивает все значения, которые она может принимать, в отличие от классического бита. Это и обеспечивает беспрецедентный параллелизм вычислений.

Вычисление Упрощённая схема вычисления на квантовом компьютере выглядит так: берётся система кубитов, на которой записывается начальное состояние. Затем состояние системы или её подсистем изменяется посредством базовых квантовых операций. В конце измеряется значение, и это результат работы компьютера.

Оказывается, что для построения любого вычисления достаточно двух базовых операций. Квантовая система даёт результат, только с некоторой вероятностью являющийся правильным. Но за счёт небольшого увеличения операций в алгоритме можно сколь угодно приблизить вероятность получения правильного результата к единице.

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

Чем же квантовый компьютер лучше классического? Большая часть современных ЭВМ работают по такой же схеме: n бит памяти хранят состояние и каждый такт времени изменяются процессором. В квантовом случае, система из n кубитов находится в состоянии, являющимся суперпозицией всех базовых состояний, поэтому изменение системы касается всех 2n базовых состояний одновременно. Теоретически новая схема может работать намного (в экспоненциальное число раз) быстрее классической. Практически, (квантовый) алгоритм Гровера поиска в базе данных показывает квадратичный прирост мощности против классических алгоритмов. Пока в природе их не существует.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]