quadraticLayer

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

Описание

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

Квадратичный слой полезен, когда вам нужен слой, выход которого является некоторой квадратичной функцией своих входных параметров. Например, вставка QuadraticLayer в сеть позволяет вам воссоздать структуру квадратичных функций ценности, таких как используемые в проектировании контроллера LQR. Для примера, который использует QuadraticLayer, смотрите Обучают Агента DDPG Управлять Двойной Системой Интегратора.

Примечание

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

Параметры QuadraticLayer объект не learnable.

Создание

Описание

пример

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