MATLAB Answers

One-dimensional regression network

2 views (last 30 days)
Fernando Meneses
Fernando Meneses on 23 Aug 2021
Hello!
I want to create a one-dimensional regression network that can predict certain parameters in a function. Currently I don't know which is the best approach to solve my problem nor the network architecture that I should use.
I describe my problem with a simple example. Let's say I have several sets of sinusoidal functions [A*sin(wt+t0)], each set with well defined parameters: amplitude [A] of the signal and angular frequency [w]. However, the starting point in each function [t0] is set randomly.
Set 1, stored in matrix M1, with 10 samples:
NSamples1 = 10;
t = 0:100; % Time [s]
w1 = 10; % Angular frequency [rad/s]
A1 = 1; % Amplitude
M1 = zeros(NSamples1,numel(t)); % Preallocation
for k = 1:NSamples1
M1(k,:) = A1*sin(w1*t+rand(1)*2*pi/w1); % Define all the samples, with random starting points
end
plot(t,M1)
title('Samples for Set 1')
I repeat the same procedure for a second set:
Set 2, stored in matrix M2, with 10 samples:
NSamples2 = 10;
t = 0:100; % Time [s]
w2 = 15; % Angular frequency [rad/s]
A2 = 2; % Amplitude
M2 = zeros(NSamples2,numel(t)); % Preallocation
for k = 1:NSamples2
M2(k,:) = A2*sin(w2*t+rand(1)*2*pi/w2); % Define all the samples, with random starting points
end
plot(t,M2)
title('Samples for Set 2')
Imagine I continue the process up to N sets.
Goal:
1) Train the network with all these sets.
2) Feed it with a new sinusoidal function [A'*sin(w'*t)+x0'], in which the parameters A' and w' are similar to the ones that I used in the different sets, but not necessarily equals.
3) Predict the parameters A' and w'.
Could you please help me by suggesting which network architecture is suitable for this problem?
Thank you very much!!!

Answers (0)

Community Treasure Hunt

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

Start Hunting!