1 분 소요

4. 랜덤 포레스트

랜덤포레스트(Random Forest)

  • 랜덤포레스트는 의사결정나무에서 파생된 모델로 앙상블 학습기법을 적용한 모델
  • 앙상블 학습기법이란 새로운 데이터에 대해서 여러 개의 트리로 학습을 수행한 후 학습결과들을 종합해서 예측하는 모델
  • 특히 랜덤포레스트 방식은 기존의 의사결정나무 방식에 비해 많은 데이터를 이용하여 학습을 수행하기 때문에 비교적 예측력이 뛰어나고, 과적합(Overfitting) 문제를 해결할 수 있다.
  • 과적합 문제는 학습 데이터셋은 높은 정확도를 나타나지만 검증용 데이터셋에서는 정확도가 떨어지는 현상을 의미한다.
  • 원인은 데이터의 노이즈까지 모델의 학습되었기 때문

  • 랜덤포레스트는 랜덤하게 학습데이터를 구성
  • 학습데이터를 이용하여 학습한 결과를 종합하여 예측 모델을 생성
  • 각 분류 모델에서 예측된 결과를 토대로 투표방식(Voting)으로 최적의 예측치 선택

bd_4_12


2. 인공신경망

인공신경망의 개념

인공신경망

인간의 두뇌 신경들이 상호작용하여 경험과 학습을 통해서 패턴을 발견하고, 이를 통해서 특전사건을 일반화하거나 데이터를 분류하는데 이용되는 기계 학습 방법

  • 특히 인간의 개입없이 컴퓨터가 스스로 인지하고, 추론, 판단하여 사물을 구분하거나 특전 상황의 미래를 예측하는데 이용될 수 있는 머신러닝 방법으로 적용분야는 문자, 음성, 이미지 인식, 날씨 예보 등 다양한 분야에서 활용

bd_4_13

인공신경망 뉴런 모델

  • 인공신경망 뉴런 모델의 생물학적 뉴런을 수학적으로 모델링한 것이다. 즉, 생물학적 뉴런의 구성과 같이 다른 여러개의 뉴런들로부터 입력값을 받아서 세포체(cell body)에 전달하다가 자신의 응답을 내보낸다.
  • 외부로 출발값을 내보내는 것처럼, 인공신경망 뉴런은 여러 입력값을 받아서 일정 수준이 넘어서면 출력값을 내보낸다.

bd_4_14

위 그림에서, 생물학적인 뉴런의 수상돌기(Dendrite) 역할을 하는 것이 1,x2,x3와 이를 각각의 가중치(파라미터) 값 θ1, θ2, θ3으로 구성된 입력 부분이다. 이들의 입력을 통한 출력값은 hθ​ 함수로 표현되며, 활성화 함수(Activation Function)라고도 불린다. 생물학적인 뉴런의 세포체가 일정한 응답을 내보내면 외부로 출발값을 보내는 것처럼, 활성화 함수도 일정 값 이상이면 1, 그 이하는 0 값을 출력하기 위해 시그모이드 함수(Sigmoid function)를 사용한다.

시그모이드 함수(Sigmoid function)는 활성화 함수로 많이 사용되며(인공신경망), 모든 신경층을 아무리 쌓아도 하나의 선형 모델로만 작동할 수 밖에 없게 하여 다양한 가중치(weight) 세타값(θ)으로 계산된 결과를 비선형적으로 표현한다. 비선형적인 것이 중요한데 이것은 그렇지 않으면 뉴런의 수에 상관없이 0과 1사이의 값으로 변환해, 보통 0.5를 기준으로 0.5 미만은 0, 0.5이상은 1에 대응되도록 도와 활성화 함수(Activation Function)로 사용한다

bd_4_15

인공신경망의 학습 순서

bd_4_16

  1. 가중치와 바이어스 가중치를 -0.5~0.5 사이의 랜덤값으로 초기화
  2. 하나의 합계 벡터에 대한 활성화 함수인 출력층 뉴런의 net값을 계산
  3. 활성화함수를 통해 계산된 net값으로부터 뉴런의 실제 출력값을 계산
  4. 뉴런의 실제값과 예측값의 차이가 발생하면 리턴하여 가중치를 업데이트한다.
  5. 뉴런의 실제값과 예측값이 차이가 없을 때까지 반복한다.

댓글남기기