• 검색 결과가 없습니다.

제안한 알고리즘

문서에서 저작자표시 (페이지 67-73)

용 어 정 의

   서로 다른 신경을 나타내며, 신경 는 신경 의 바로 오른쪽 층에 신 경 는 신경 의 바로 오른쪽 층에 존재

 번째 학습패턴이 MLP에 주어짐을 나타냄

 번째 학습패턴에 주어졌을 때 출력층에 존재하는 모든 신경의 제곱 오차의 합

 모든 학습패턴이 주어진 후의 의 평균

 번째 학습패턴이 주어졌을 때 출력신경 의 오차

 번째 학습패턴에 대한 출력신경 의 원하는 출력 결과

 번째 학습패턴에 주어졌을 때 출력신경 의 출력 결과

 번째 학습패턴에 주어졌을 때 입력신경 와 출력신경 를 연결하는 고리의 가중치

 번째 학습패턴이 주어졌을 때 신경 의 내부 활성화 수준(Internal Activity Level)

∙ 신경 의 비선형 활성화 함수

신경 에 적용되는 임계값(Threshold)으로서 +1의 고정된 입력 값을 갖는 신경과 신경 사이의 가중치를 나타냄

 번째 학습패턴의 번째 요소로서 입력층 신경 를 통해 MLP에 주어 짐

 번째 학습패턴이 주어졌을 때 출력층에 존재하는 신경 의 출력 결 과

 번째 학습패턴이 주어졌을 때 은닉층의 신경  와 출력층 신경 를 잇는 연결고리의 가중치

 모멘텀 상수

 역전파 알고리즘에서의 학습률

 출력 신경 에 대한 Local Gradient

[표 3.3] 역전파 알고리즘에서 사용되는 기호의 구성 정의

제안한 알고리즘의 수행단계는 먼저 입력이 신경망의 가중치(Weight)와 곱하 고 더하는 과정을 몇 번 반복하면 입력의 결과 값인 출력(y)이 나온다. 이 때 출력(y)은 학습 데이터에서 주어진 원하는 출력(o)와 다르며 (y-o)만큼의 오차 (e=y-o)가 발생한다. 즉 오차에 비례하여 출력층의 가중치를 갱신하고 그 다음 은닉층의 가중치를 갱신하는 절차를 거치는 데 가중치를 갱신하는 방향이 신경 망의 처리 방향과는 반대 방향이다. 다시 말해 신경망의 처리는 입력층 → 은닉 층 → 출력층의 방향으로 진행되며 가중치 갱신의 학습방향은 출력층 → 은닉층 으로 진행된다[130][131].

역전파 알고리즘(Backpropagation Algorithm)의 수행 단계는 [그림 3.13]과 같은 절차로 수행된다.

① 신경망에 입력 데이터를 입력 노드에 적용하고 입력에 따른 출력을 계산한 다.

② 입력에 따른 출력과 원하는 출력간의 오차를 계산한다.

③ 오차를 줄이기 위해 가중치의 증감 여부를 결정한다.

④ 각각의 가중치를 얼마나 변화시킬 것인가를 결정한다.

⑤ 4단계에서 결정된 값으로 가중치를 갱신(변화)한다.

⑥ 모든 학습 데이터에 대해 오차가 적정 수준으로 감소하기까지 1단계에서 5 단계를 반복한다.

[그림 3.13] 역전파 학습 알고리즘 순서도

본 논문에서 제안한 알고리즘의 구성은 다음과 같다.

학습을 위한 데이터 개수 : 

번째 ( ≤  ≤  ) 학습데이터 셋 : 

 : 사용자 근전도

 : 맥박

 : 호흡

주어진 3개의 입력 데이터를 이용하여 다음과 같이 신경망을 구성하였다.

① 입력층의 노드의 수는 각 데이터 항목의 개수인 3이어야 한다.

② 출력층은 해당 토크 값 분류를 위해 10개의 노드를 갖는다. 만약 입력 데 이터를 통해 학습된 가중치(Weight)에 의해 1번째 노드가 선택되면 토크 값 level 1에 해당된다.

③ 은닉층의 노드의 수는 1개 또는 그 이상으로 한다. 은닉층의 개수가 많아 지면 학습의 시간이 증가하므로 적정한 은닉층의 개수를 선정한다.

④ 입력 데이터에서 최대값과 최소값을 구하여 정규화 한다.

[그림 3.14]는 제안한 역전파 알고리즘(Backpropagation Algorithm)의 프로그 램 일부이다.

[그림 3.14] 제안한 역전파 알고리즘의 프로그램

문서에서 저작자표시 (페이지 67-73)

관련 문서