quadraticLayer

Квадратичный слой для сети актёра или критика

Описание

A QuadraticLayer - слой глубокой нейронной сети, который принимает вектор входа и выводит вектор квадратичных мономов, сконструированных из элементов входа. Для примера рассмотрим вектор входа U = [u1 u2 u3]. Для этого входов квадратичный слой дает выходные Y = [u1*u1 u1*u2 u2*u2 u1*u3 u2*u3 u3*u3].

Квадратичный слой полезен, когда вам нужен слой, выход которого является некоторой квадратичной функцией его входов. Например, вставка QuadraticLayer в сеть позволяет вам воссоздать структуру квадратичных функций ценности, таких как используемые в проектировании контроллера LQR. Для примера, который использует QuadraticLayer, см. Train агента DDPG для управления системой Double Integrator.

Примечание

The QuadraticLayer слой не поддерживает входы, поступающие прямо или косвенно от featureInputLayer или sequenceInputLayer.

Параметры QuadraticLayer объект не может быть усвоен.

Создание

Описание

пример

qLayer = quadraticLayer создает квадратичный слой со значениями свойств по умолчанию.

qLayer = quadraticLayer(Name,Value) устанавливает свойства с помощью пар "имя-значение". Для примера, quadraticLayer('Name','quadlayer') создает квадратичный слой и присваивает ему имя 'quadlayer'.

Свойства

расширить все

Имя слоя, заданное как вектор символов. Чтобы включить слой в график слоев, необходимо задать непустое уникальное имя слоя. Если вы обучаете последовательную сеть с этим слоем и Name установлено в ''затем программа автоматически присваивает слою имя во время обучения.

Это свойство доступно только для чтения.

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

Примеры

свернуть все

Создайте квадратичный слой, который преобразует вектор входа U в вектор квадратичных мономов, построенных из двоичных комбинаций элементов U.

qLayer = quadraticLayer
qLayer = 
  QuadraticLayer with properties:

    Name: 'quadratic'

  Show all properties

Подтвердите, что слой создает ожидаемый выход. Для образца, для U = [u1 u2 u3]ожидаемый выход [u1*u1 u1*u2 u2*u2 u1*u3 u2*u3 u3*u3].

predict(qLayer,[1 2 3])
ans = 1×6

     1     2     4     3     6     9

Можно включать qLayer в сеть актёра или сети критика для обучения с подкреплением.

Введенный в R2019a