본문 바로가기
R/R 머신러닝

인공신경망

by 자유데이터 2019. 3. 13.
반응형

목차

인공신경망
            1.인공신경망이란
            2.신경망 모형 구축시 고려사항




1.인공신경망이란

인공신경망(Artificial Neural Network)인간의 뇌를 기반으로 한 추론 모델이다. 즉, 생물학의 신경망에서 영감을 얻은 학습 알고리즘이다. 시냅스의 결합으로 네트워크를 형성한 인공 뉴런이 학습을 통해 시냅스의 결합 세기를 변화시켜 문제해결능력을 가지는 비선형 모델이다.


1)인공 신경망의 학습

-신경망은 가중치를 반복적으로 조정하며 학습한다.
-뉴런은 링크로 연결되어 있고 각 링크에는 수치적인 가중치가 있다.
-인공 신경망의 가중치 조정 방식
--신경망의 가중치를 초기화하고 훈련 데이터를 통해 가중치를 갱신한다.
--신경망의 구조를 선택하고 활용할 학습 알고리즘을 결정한 후 신경망을 훈련시킨다.


2)뉴런의 특징

-뉴런은 기본적인 정보처리 단위이다.
-뉴런은 가중치가 있는 링크들로 연결되어 있다.
-뉴런은 여러 입력 신호를 받지만 출력 신호는 오직 하나만 생성한다.

-입력 링크에서 여러 신호를 받아서 새로운 활성화 수준을 계산하고 출력 링크로 출력 신호를 보낸다.
-입력신호는 미가공 데이터 또는 다른 뉴런의 출력이 될 수 잇다.
-출력신호는 문제의 최종적인 해가 되거나 다른 뉴런에 입력 될 수 있다.
Net input function이 뉴런에 해당함


3)Activation function(활성화 함수)

뉴런은 전이함수, 즉 활성화 함수를 사용한다.  활성 함수의 결과가 노드의 출력에 해당하며, 이 출력값이 궁극적으로 분류나 회귀 분석에 쓰이게 된다.

-활성화 함수를 이용한 출력 결정
--뉴런은 입력 신호의 가중치 합을 계산하여 임계값과 비교한다.
--가중치 합이 임계값보다 작으면 뉴런의 출력은 -1, 같거나 크면 +1을 출력한다.



2.신경망 모형 구축시 고려사항

1)입력변수

-신경망 모형은 그 복잡성으로 인하여 입력 자료의 선택에 매우 민감하다.

-범주형 변수 
: 모든 범주에서 일정 빈도 이상의 값을 갖고 각 범주의 빈도가 일정할 때 적합
: 가변수화하여 적용(수치화)하고 가능하면 모든 범주형 변수는 같은 범위를 갖도록하는 것이 좋다.

-연속형 변수 
: 입력변수 값들의 범위가 변수간의 큰 차이가 없을 때 적합
: 평균을 중심으로 대칭이 아니면 좋지 않은 결과를 도출한다. 따라서 로그변환이나 범주화를 해야한다.


2)가중치의 초기값과 다중 최소값 문제

-역전파 알고리즘을 초기값에 따라 결과가 많이 달라지므로 초기값의 선택은 매우 중요한 문제이다.
-가중치가 0이면 시그모이드 함수는 선형이 되고 신경망 모형은 근사적으로 선형모형이 된다.
-일반적으로 초기값은 0 근처로 랜덤하게 선택하고 초기 모형은 선형모형에 가깝고, 가중치 값이 증가할수록 비선형모형이 된다.


3)은닉층(hidden layer)과 은닉노드(hidden node)의 수

-은닉층과 은닉노드가 많으면 가중치가 많아져서 과대 적합 문제 발생하고 반대면 과소적합 발생
-은닉층은 가능하면 하나로 선정한다.
-은닉노드는 적절히 큰 값으로 놓고 가중치 감소시키면서 적용하는 것이 좋다.


4)과대 적합 문제

신경망에서는 많은 가중치를 추정해야 하므로 과대적합 문제가 빈번하다. 따라서 알고리즘의 조기종료나 가중치 감소 기법으로 해결한다.

-조기종료 : 모형이 적합하는 과정에서 검증오차가 증가하기 시작하면 반복을 중지한다.






반응형

'R > R 머신러닝' 카테고리의 다른 글

위계적 군집 분석  (0) 2019.03.13
군집분석  (0) 2019.03.13
랜덤포레스트  (0) 2019.03.12
앙상블  (0) 2019.03.12
의사결정나무  (3) 2019.03.12

댓글