Non traceable loss function in neural network
조회 수: 1 (최근 30일)
이전 댓글 표시
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
댓글 수: 0
채택된 답변
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
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Image Data Workflows에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!