Non traceable loss function in neural network

조회 수: 1 (최근 30일)
Pere Garau Burguera
Pere Garau Burguera 2020년 9월 25일
답변: Divya Gaddipati 2020년 10월 15일
Hi,
I would want to know if there's any possibility of having a loss function that looks like this:
This is used in a siamese network for metric learning. There are 2 identical networks with the same weights, where the Xs are the inputs and Y are the outputs. The thing is that the operations performed on the dlarrays are not permitted so the gradients cannot be computed.
Is there an alternative way to make this work?
function loss = lossfunc(Y1,Y2,X1,X2,dist)
% accepts the network's predictions Y1, Y2, the inputs
% X1, X2, and the true distance between X1 and X2, and returns the loss value.
loss = .5*((X1-X2)'*pinv(Y1*Y1')*(X1-X2)...
+ (X1-X2)'*pinv(Y2*Y2')*(X1-X2))...
-dist^2);
end

채택된 답변

Divya Gaddipati
Divya Gaddipati 2020년 10월 15일
Currently, pinv is not supported for dlarray inputs.
Alternatively, you could try replacing the function with their own logic using the functions in the below link that are supported by dlarray.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Custom Training Loops에 대해 자세히 알아보기

제품


릴리스

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by