numObservations = 128;
X = rand(numInputChannels,numObservations);
X = dlarray(X,"CB");
T = rand(numOutputChannels,numObservations);
T = dlarray(T,"CB");
신경망과 데이터를 입력값으로 받고 손실, 학습 가능한 파라미터에 대한 손실의 기울기, 입력 데이터에 대한 예측값의 라플라시안을 반환하는 모델 손실 함수를 정의합니다.
function [loss,gradients,lap] = modelLoss(net,X,T)
Y = forward(net,X);
loss = l1loss(Y,T);
X = stripdims(X);
Y = stripdims(Y);
lap = dllaplacian(Y,X,1);
gradients = dlgradient(loss,net.Learnables);
end
숫자형 또는 논리값 1(true) — 고계 도함수를 활성화합니다. 자동 미분을 사용하여 도함수를 계산하는 함수(예: dlgradient, dljacobian, dldivergence, dllaplacian)를 이후에 호출할 때 여기서 반환된 값을 추가 계산에 사용할 수 있도록, 역방향 통과를 추적합니다.
숫자형 또는 논리값 0(false) — 고계 도함수를 비활성화합니다. 역방향 통과를 추적하지 않습니다. 1계 도함수만 계산하려는 경우 이 옵션이 대체로 속도가 빠르고 필요한 메모리가 더 적습니다.