How to make a function that makes matlabFunctions?

1 次查看(过去 30 天)
Hi there,
I'm trying to implement the work of wray and green (1994), to calculate the volterra kernels of non linear systems using a simple feedforward network. What I would now, is a function that generates a matlabFunction that computes the nth order volterra kernel.
Mathematically, these kernels can be written the following:
So the first 3 kernels then become:
Where is the nth order volterra kernel, are time constants, are the linear weights of your trained feedforward network (or just a vector), is a polynomial of your sigmoid function and bias (a matrix), are the weights from your input layer to your hidden layer for each input delay (a series of matrices).
All these values I can easily obtain from my network after training it. However, what I would like now, is a function which I can give the order as an imput and it will give me the volterra kernal for that order as a matlabFunction in its output. The problem is that I really don't know how to tackle this, as there will be more terms added for each next increment of the order that you would like.
Is there an easy way to do this in matlab?
Many thanks,
Jesse
function kernelfun = volterrakernel(N)
% Input: order of volterra kernal
% Output: matlabFunction(c,a,w1,...,wn)
???
end
  2 个评论
Jesse Heckman
Jesse Heckman 2020-6-1
Hi Per,
Thanks for your reply!
Although there are many ways to 'calculate'/obtain the volterra kernels. They are often imprecise and provide you with different inaccurate results. In this case, I'm looking for a very specific method, i.e. via the weights and biases of a feedforward network (which are variables that I already have obtained). So my question is not so much how to calculate the volterra kernals using any preexisting method with the input and output data of my system, but how to compute this specific function in maltab.
Best,

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Physical Channels 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by