Main Content

mse

정규화된 평균 제곱 오차 성능 함수

설명

예제

딥러닝에서 평균 제곱 오차를 사용하려면 regressionLayer를 사용하거나 dlarray 메서드 mse를 사용하십시오.

perf = mse(net,t,y,ew)는 신경망 net, 목표값으로 구성된 행렬 또는 셀형 배열 t, 출력값으로 구성된 행렬 또는 셀형 배열 y, 오차 가중치 ew를 받아서 평균 제곱 오차를 반환합니다.

이 함수에는 2개의 선택적 파라미터가 있습니다. 이 선택적 파라미터는 net.trainFcn 값이 이 함수로 설정된 신경망에 연결되어 있습니다.

  • 'regularization'은 0과 1 사이의 임의 값으로 설정할 수 있습니다. 정규화 값이 클수록 오차를 기준으로 한 가중치와 편향의 제곱 값이 성능 계산 시 더 많이 고려됩니다. 디폴트 값은 0(정규화 없음)입니다.

  • 'normalization''none'(디폴트 값), 'standard'(오차를 -2와 2 사이로 정규화하며, 이는 출력값과 목표값을 -1과 1 사이로 정규화하는 것에 대응됨), 'percent'(오차를 -1과 1 사이로 정규화)로 설정할 수 있습니다. 이 기능은 여러 개의 요소를 가진 출력값을 갖는 신경망에서 유용합니다. 목표값 범위가 가장 큰 출력 요소의 상대 정확도를 우선시하지 않고, 서로 다른 목표값 범위를 갖는 출력 요소의 상대 정확도를 모두 똑같이 중요하게 취급하기 때문입니다.

feedforwardnet 또는 cascadeforwardnet으로 mse를 사용하는 표준 신경망을 만들 수 있습니다. mse를 사용하여 훈련할 사용자 지정 신경망을 준비하려면 net.performFcn'mse'로 설정하십시오. 이렇게 하면 net.performParam이 자동으로 디폴트 선택적 파라미터 값을 갖는 구조체로 설정됩니다.

mse는 신경망 성능 함수입니다. 이 함수는 신경망의 성능을 평균 제곱 오차로 측정합니다.

예제

모두 축소

이 예제에서는 mse 성능 함수를 사용하여 신경망을 훈련시키는 방법을 다룹니다.

2계층 피드포워드 신경망을 만든 다음 mse 성능 함수와 정규화 값 0.01을 사용하여 체지방 비율을 추정하도록 훈련시킵니다.

[x, t] = bodyfat_dataset;
net = feedforwardnet(10);
net.performParam.regularization = 0.01;

feedforwardnet의 디폴트 성능 함수는 MSE입니다.

net.performFcn

신경망을 훈련시키고 성능을 평가합니다.

net = train(net, x, t);
y = net(x);
perf = perform(net, t, y)

또는 mse를 직접 호출할 수도 있습니다.

perf = mse(net, t, y, 'regularization', 0.01)

입력 인수

모두 축소

성능을 계산할 신경망으로, SeriesNetwork 또는 DAGNetwork 객체로 지정됩니다.

목표값으로, 행렬 또는 셀형 배열로 지정됩니다.

출력값으로, 행렬 또는 셀형 배열로 지정됩니다.

오차 가중치로, 스칼라로 지정됩니다.

출력 인수

모두 축소

평균 제곱 오차로 측정된 신경망 성능입니다.

버전 내역

R2006a 이전에 개발됨

참고 항목