- Suppose input data x = linspace(0,1,100). Use following to train network:
How can I specify custom data and a custom loss function?
1 次查看(过去 30 天)
显示 更早的评论
Hi,
I would like to program a physics-informed neural network (I have attached the paper introducing them). It can be used to solve partial differential equations with given initial and boundary data. Therefore, I need to do two things:
1. I have to manually generate the input data. In Matlab it is very easy, e.g. x = linspace(0, 1, 100). How can I transfer that data as training data to the neural net?
2. I have to manually specify a loss function. More specifically, the loss function is the differential equation and the initial/boundary conditions.
So, I would like to solve the steady-state heat-diffusion equation: d^2T/dx^2 = 5 with T(0) = 0 and T(1) = 3
How can I program this into Matlab?
0 个评论
回答(1 个)
Anshika Chaurasia
2020-8-31
Hi Marius,
It is my understanding that input data is defined manually in form of vector.
x = linspace(0,1,100);
net = train(net,x,t);
2. Define custom loss function in following way:
loss = CustomLoss(Y,T);%where Y is the network predictions, T are the targets,
% and loss is the returned loss.
Refer to specify loss function and GAN loss example documentations for specifying custom loss functions.
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Deep Learning Toolbox 的更多信息
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!