Main Content

preparets

신경망 시뮬레이션 또는 훈련을 위해 입력 시계열 및 목표 시계열 데이터 준비

설명

예제

[Xs,Xi,Ai,Ts,EWs,shift] = preparets(net,Xnf,Tnf,Tf,EW)는 다음과 같은 인수를 받습니다.

  • net — 신경망

  • Xnf — 피드백이 아닌 입력값

  • Tnf — 피드백이 아닌 목표값

  • Tf — 피드백 목표값

  • EW — 오차 가중치(선택 사항)

그런 후 다음 인수를 반환합니다.

  • Xs — 이동된 입력값

  • Xi — 초기 입력 지연 상태

  • Ai — 초기 계층 지연 상태

  • Ts — 이동된 목표값

  • EWs — 이동된 오차 가중치

  • shiftXiAi를 올바르게 채우기 위해 XT의 앞부분에서 잘리는 시간 스텝의 개수.

이 함수는 일반적으로 복잡하고 실수가 많이 발생하는 입력 시계열 및 목표 시계열의 형식 재지정 작업을 간소화합니다. 이 함수는 입력 시계열 및 목표 시계열을 필요한 시간 스텝만큼 자동으로 이동하여 초기 입력 및 계층 지연 상태를 채웁니다. 신경망에 개루프 피드백이 있는 경우, 피드백 목표값을 필요한 만큼 입력값에 복사하여 개루프 입력값을 정의합니다.

preparets는 서로 다른 지연 개수 또는 피드백 설정으로 새 신경망이 설계될 때마다 그에 맞게 입력 데이터 및 목표 데이터의 형식을 다시 지정할 수 있습니다 또한 신경망이 openloop, closeloop, removedelay 또는 adddelay로 변환될 때마다 그에 맞게 데이터의 형식을 다시 지정할 수 있습니다.

예제

모두 축소

이 예제에서는 개루프와 폐루프 신경망을 위해 데이터를 준비하는 방법을 보여줍니다.

은닉 뉴런 20개를 갖는 시간 지연 신경망을 만든 다음 훈련시키고 시뮬레이션합니다.

[X,T] = simpleseries_dataset;
net = timedelaynet(1:2,20);
[Xs,Xi,Ai,Ts] = preparets(net,X,T);
net = train(net,Xs,Ts);
view(net)

Y = net(Xs,Xi,Ai);

NARX 신경망을 설계합니다. NARX 신경망에는 표준 입력값과 개루프 피드백 출력값이 있는데 이 출력값은 피드백 입력값으로 연결됩니다.

[X,T] = simplenarx_dataset;
net = narxnet(1:2,1:2,20);
[Xs,Xi,Ai,Ts] = preparets(net,X,{},T);
net = train(net,Xs,Ts,Xi,Ai);

Figure Neural Network Training (25-Jan-2024 15:29:03) contains an object of type uigridlayout.

view(net)

y = net(Xs,Xi,Ai);

이제 신경망을 폐루프로 변환하고, 신경망의 폐루프 응답을 시뮬레이션할 수 있도록 데이터의 형식을 다시 지정합니다.

net = closeloop(net);
view(net)

[Xs,Xi,Ai] = preparets(net,X,{},T);
y = net(Xs,Xi,Ai);

입력 인수

모두 축소

입력 신경망으로, network 객체로 지정됩니다. network 객체를 만들려면 feedforwardnet 또는 narxnet 등을 사용하십시오.

피드백이 아닌 입력 데이터(개루프 피드백 출력값에 연결되지 않은 입력값)로, 셀형 배열로 지정됩니다.

피드백이 아닌 출력값의 목표 데이터로, 셀형 배열로 지정됩니다.

피드백이 있는 출력값의 목표 데이터로, 셀형 배열로 지정됩니다.

오차 가중치로, 셀형 배열로 지정됩니다.

출력 인수

모두 축소

이동된 입력값으로, 셀형 배열로 반환됩니다.

초기 입력 지연 상태로, 셀형 배열로 반환됩니다.

초기 계층 지연 상태로, 셀형 배열로 반환됩니다.

이동된 목표값으로, 셀형 배열로 반환됩니다.

이동된 오차 가중치로, 셀형 배열로 반환됩니다.

XiAi를 올바르게 채우기 위해 XT의 앞부분에서 잘리는 시간 스텝의 개수로, 스칼라로 반환됩니다.

버전 내역

R2010b에 개발됨