I want to know how to writ code to net1 = train(net,input,z) but z is double(complex)??

2 次查看(过去 30 天)
net1 = train(net, input, z);
Error using nntraining.setup>setupPerWorker
Targets T is complex.
Error in nntraining.setup (line 77)
[net,data,tr,err] = setupPerWorker(net,trainFcn,X,Xi,Ai,T,EW,enableConfigure);
Error in network/train (line 342)
[net,data,tr,err] = nntraining.setup(net,net.trainFcn,X,Xi,Ai,T,EW,enableConfigure,isComposite);
  2 个评论
KSSV
KSSV 2022-9-10
It looks your target is complex number. NN do not support complex values. Instead you may take target as two values real and imaginary seperately.
Darshini
Darshini 2022-9-10
If I can't change the Z function, how should I code it?
z= ((exp(sin(x))).*(cos(y)))+((sin(y)).*log(abs(tan(x.^2))+(x.^3)));

请先登录,再进行评论。

回答(2 个)

Chunru
Chunru 2022-9-10
编辑:Chunru 2022-9-10
net1 = train(net,input,[real(z) imag(z)])
  5 个评论
Darshini
Darshini 2022-9-10
now it show
Error using network/train
Inputs and targets have different numbers of samples.
again
If I can't change the Z function, how should I code it?
z= ((exp(sin(x))).*(cos(y)))+((sin(y)).*log(abs(tan(x.^2))+(x.^3)));

请先登录,再进行评论。


Walter Roberson
Walter Roberson 2022-9-11
z= ((exp(sin(x))).*(cos(y)))+((sin(y)).*log(abs(tan(x.^2))+(x.^3)));
z appears to be your target for a fitting function. You tell us that z is complex-valued.
Create a 2 x N array xy with x in the first row and y in the second row.
Create a 2 x N array zri with real(z) in the first row and imag(z) in the second row.
Now you can train xy as the features and zri as the targets.
You might possibly have to transpose xy tne N x 2 and zri to N x 2 for the particular training function you use.

类别

Help CenterFile Exchange 中查找有关 Image Data Workflows 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by