Main Content

mse

평균제곱오차의 절반

R2019b 이후

설명

평균제곱오차의 절반 연산은 회귀 작업에서 신경망 예측과 목표값 사이의 평균제곱오차의 절반을 취하는 손실을 계산합니다.

손실은 다음 수식에 따라 계산됩니다.

loss=12Ni=1M(XiTi)2

여기서 Xi는 신경망 예측값이고, Ti는 목표값이며, M은 (모든 관측값에서) X의 총 응답 변수 개수이고 N은 X의 총 관측값 개수입니다.

참고

trainnet 함수를 평균제곱오차손실과 함께 사용하여 신경망을 훈련시키려면 손실 함수를 "mse"로 설정하십시오.

예제

loss = mse(Y,targets)는 회귀 문제에서 손실을 예측값 Y와 목표값 targets 사이의 평균제곱오차의 절반을 취한 값으로 계산합니다. 입력값 Y는 형식이 지정된 dlarray여야 합니다. 출력값 loss는 형식이 지정되지 않은 dlarray 스칼라입니다.

loss = mse(Y,targets,'DataFormat',FMT)Y가 형식이 지정된 dlarray가 아닌 경우 차원 형식 FMT도 지정합니다.

예제

모두 축소

평균제곱오차의 절반은 신경망 예측값이 목표값과 얼마나 잘 일치하는지를 평가합니다.

입력 예측값을 높이와 너비가 6이고 단일 채널을 갖는 난수로 구성된 단일 관측값으로 만듭니다.

height = 6;
width = 6;
channels = 1;
observations = 1;

Y = rand(height,width,channels,observations);
Y = dlarray(Y,'SSCB')

목표값을 입력 데이터 Y와 동일한 차원 순서를 갖는 숫자형 배열로 만듭니다.

targets = ones(height,width,channels,observations);

예측값과 목표값 사이의 평균제곱오차의 절반을 계산합니다.

loss = mse(Y,targets)
loss =

  1x1 dlarray

    5.2061

입력 인수

모두 축소

예측값으로, 형식이 지정된 dlarray, 형식이 지정되지 않은 dlarray 또는 숫자형 배열로 지정됩니다. Y가 형식이 지정된 dlarray가 아닌 경우 DataFormat 옵션을 사용하여 차원 형식을 지정해야 합니다.

Y가 숫자형 배열인 경우 targetsdlarray여야 합니다.

목표 응답으로, 형식이 지정되거나 형식이 지정되지 않은 dlarray 또는 숫자형 배열로 지정됩니다.

targets의 각 차원 크기는 Y의 해당 차원 크기와 일치해야 합니다.

targets가 형식이 지정된 dlarray이면 그 형식은 Y의 형식과 동일해야 하고, Y에 형식이 지정되지 않은 경우에는 DataFormat과 동일해야 합니다.

targets가 형식이 지정되지 않은 dlarray 또는 숫자형 배열이면, 함수는 Y의 형식 또는 DataFormat의 값을 targets에 적용합니다.

형식이 지정된 dlarray 객체는 "S"(공간), "C"(채널), "B"(배치), "T"(시간), "U"(지정되지 않음)의 순서를 갖도록 자동으로 기본 데이터의 차원을 치환합니다. Y가 형식이 지정된 dlarray인 경우 Ytargets의 차원이 일치하도록 하려면 targets도 형식이 지정된 dlarray로 지정하십시오.

데이터 차원에 대한 설명으로, 문자형 벡터 또는 string형 스칼라로 지정됩니다.

데이터 형식은 문자들로 구성된 문자열로, 각 문자는 대응되는 데이터 차원의 유형을 설명합니다.

문자는 다음을 나타냅니다.

  • "S" — 공간

  • "C" — 채널

  • "B" — 배치

  • "T" — 시간

  • "U" — 지정되지 않음

예를 들어, 첫 번째, 두 번째, 세 번째 차원이 각각 채널, 관측값, 시간 스텝에 대응되는 시퀀스 배치를 포함하는 배열이 있다고 가정하겠습니다. 이 배열이 "CBT"(채널, 배치, 시간) 형식을 갖도록 지정할 수 있습니다.

"S" 또는 "U" 레이블의 차원은 여러 개 지정할 수 있습니다. 레이블 "C", "B", "T"는 최대 한 번만 사용할 수 있습니다. 두 번째 차원 뒤의 한원소 후행 "U" 차원은 무시됩니다.

입력 데이터가 형식이 지정된 dlarray 객체가 아닌 경우 FMT 옵션을 지정해야 합니다.

자세한 내용은 Deep Learning Data Formats 항목을 참조하십시오.

데이터형: char | string

출력 인수

모두 축소

평균제곱오차의 절반을 취하는 손실로, 형식이 지정되지 않은 dlarray 스칼라로 반환됩니다. 출력값 loss는 입력값 Y와 기본 데이터형이 같습니다.

알고리즘

모두 축소

평균제곱오차의 절반을 취하는 손실

mse 함수는 회귀 문제의 손실을 평균제곱오차의 절반을 취한 값으로 계산합니다. 자세한 내용은 RegressionOutputLayer 함수 도움말 페이지에서 회귀 출력 계층 정의를 참조하십시오.

딥러닝 배열 형식

대부분의 딥러닝 신경망과 함수는 입력 데이터의 각기 다른 차원에 대해 다른 방식으로 연산을 수행합니다.

예를 들어, LSTM 연산은 입력 데이터의 시간 차원에 대해 반복 작업을 수행하고 배치 정규화 연산은 입력 데이터의 배치 차원에 대해 정규화를 수행합니다.

차원에 레이블이 지정된 입력 데이터 또는 추가 레이아웃 정보가 포함된 입력 데이터를 제공하려면 데이터 형식을 사용하면 됩니다.

데이터 형식은 문자들로 구성된 문자열로, 각 문자는 대응되는 데이터 차원의 유형을 설명합니다.

문자는 다음을 나타냅니다.

  • "S" — 공간

  • "C" — 채널

  • "B" — 배치

  • "T" — 시간

  • "U" — 지정되지 않음

예를 들어, 첫 번째, 두 번째, 세 번째 차원이 각각 채널, 관측값, 시간 스텝에 대응되는 시퀀스 배치를 포함하는 배열이 있다고 가정하겠습니다. 이 배열이 "CBT"(채널, 배치, 시간) 형식을 갖도록 지정할 수 있습니다.

형식이 지정된 입력 데이터를 생성하려면 dlarray 객체를 생성하고 두 번째 인수를 사용하여 형식을 지정하십시오.

형식이 지정되지 않은 데이터에 추가 레이아웃 정보를 제공하려면 FMT 인수를 사용하여 형식을 지정하십시오.

자세한 내용은 Deep Learning Data Formats 항목을 참조하십시오.

확장 기능

버전 내역

R2019b에 개발됨