How can I specify custom data and a custom loss function?
이전 댓글 표시
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?
답변 (1개)
Anshika Chaurasia
2020년 8월 31일
Hi Marius,
It is my understanding that input data is defined manually in form of vector.
- Suppose input data x = linspace(0,1,100). Use following to train network:
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.
카테고리
도움말 센터 및 File Exchange에서 Sequence and Numeric Feature Data Workflows에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!