Развертывание схем Simulink с неглубокой нейронной сетью

Функция gensim генерирует блочное описание сетей, чтобы можно было моделировать их с помощью Simulink® программное обеспечение.

gensim(net,st)

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

Если у сети нет задержек, связанных с ее входными весами или весами слоя, это значение может быть установлено на -1. Значение -1 вызывает gensim чтобы сгенерировать сеть с непрерывной дискретизацией.

Пример

Вот простая задача, определяющая набор входов p и соответствующие цели t.

p = [1 2 3 4 5];
t = [1 3 5 7 9];

Приведенный ниже код проектирует линейный слой, чтобы решить эту проблему.

net = newlind(p,t)

Можно протестировать сеть на исходных входах с sim.

y = sim(net,p)

Результаты показывают, что сеть решила проблему.

y =
      1.0000    3.0000    5.0000    7.0000    9.0000

Функции gensim для генерации версии сети Simulink.

gensim(net,-1)

Второй аргумент является -1, поэтому полученный сетевой блок непрерывно дискретизирует.

Вызов gensim открывает следующий редактор Simulink, показывающий систему, состоящую из линейной сети, соединенной с выборочным входом и возможностями.

Чтобы протестировать сеть, дважды кликните вход Constant x1 блок слева.

Входной блок на самом деле является стандартным Постоянным блоком. Измените постоянное значение от начального случайным образом сгенерированного значения на 2, а затем нажмите OK.

Выберите опцию меню Simulation > Run. Simulink принимает момент, чтобы симулировать систему.

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

Обратите внимание, что выход равен 3, что является правильным выходом для входа 2.

Предлагаемые упражнения

Вот пара упражнений, которые вы можете попробовать.

Изменение входного сигнала

Замените блок постоянного входа на генератор сигнала из стандартной библиотеки Simulink Sources. Симулируйте систему и просмотрите ответ сети.

Использование дискретного шага расчета

Воссоздайте сеть, но с дискретным шагом расчета 0,5, вместо непрерывной выборки.

gensim(net,0.5)

Снова замените постоянный вход на генератор сигналов. Симулируйте систему и просмотрите ответ сети.

Сгенерируйте функции и объекты

Для получения информации о симуляции и развертывании мелких нейронных сетей с MATLAB® функции, см. Развертывание функций неглубокой нейронной сети.