본문 바로가기
Work_Praciatal Competence/05_Certificate

[ADsP 정리] 3과목 5장 3절 앙상블 & 인공 신경망 분석

by 스타트업_디벨로퍼 2021. 2. 8.

앙상블 

가. 정의

  • 주어진 자료로부터 여러 개의 예측모형들을 만든 후 예측모형들을 조합하여 하나의 최종 예측 모형을 만드는 방법으로 다중 모델 조합, 분류기 조합이 있다.

 

나. 학습방법의 불안정성

  • 학습자료의 작은 변화에 의해 예측모형이 크게 변하는 경우, 그 학습방법은 불안정하다.
  • 가장 안정적인 방법으로는 1-nearest neighbor이 존재한다.
  • 가장 불안정한 방법으로는 의사결정나무가 있다.

다. 앙상블 기법의 종류

베깅(Bagging) 과 랜덤포레스트, 부스팅의 정의 및 설명

[머신러닝]앙상블/배깅/랜덤포레스트/부스팅 차이

 

 

 

  1. 배깅
  • Breiman에 의해 제안된 배깅은 주어진 자료에서 여러 개의 붓스트랩 자료를 생성하고 각 붓스트랩 자료에 예측 모형을 만든 후 결합하여 최종 예측모형을 만드는 방법이다. 붓스트랩은 주어진 자료에서 동일한 크기의 표본을 랜던 복원추출로 뽑은 자료를 의미한다.
  • 보팅은 여러 개의 모형으로부터 산출된 결과를 다수결에 의해서 최종 결과를 선정하는 과정이다.
  • 최적의 의사결정나무를 구축할 때 가장 어려운 부분이 가지치기이지만 배기에서는 가지치기를 하지 않고 최대로 성장한 의사결정나무들을 활용한다.
  • 훈련자료의 모집단의 분포를 모르기 때문에 실제 문제에서는 평균 예측 모형을 구할 수 없다. 배깅은 이러한 문제를 해결하기 위해 훈련자료를 모집단으로 생각하고 평균 예측 모형을 구하여 분산을 줄이고 예측력을 향상시킬 수 있다.

 

  1. 부스팅
  • 예측력이 약한 모형들을 결합하여 강한 예측모형을 만드는 방법이다.
  • 훈련 오차를 빨리 그리고 쉽게 줄일 수 있다.
  • 배깅에 비해 많은 경우 예측오차가 향상되어 Adaboost의 성능이 배깅보다 뛰어난 경우가 많다.

 

  1. 랜덥 포레스트
  • Breiman에 의해 개발도니 랜덤 포레스트는 의사결정나무의 특징이 분산이 크다는 점을 고려하여 배깅과 부스팅보다 더 많은 무작위성을 주어 약한 학습기들을 생성한 후 이를 선형 결합하여 최종 학습기를 만드는 방법이다.
  • randomForest 패키지는 random input에 따른 forest of tree를 이용한 분류방법이다.
  • 랜덤한 forest에는 많은 트리들이 생성된다.
  • 수천 개의 변수를 통해 변수제거 없이 실행되므로 정확도 측면에서 좋은 성과를 보인다.
  • 이론적 설명이나 최종 결과에 대한 해석이 어렵다는 단점이 있지만 예측력이 매우 높은 것으로 알려져 있다. 특히 입력변수가 많은 경우, 배깅과 부스팅과 비슷하거나 좋은 예측력을 보인다.
  • 가. 인공 신경망이란?

    • 인간 뇌를 기반으로 한 추론 모델이다.
    • 뉴런은 기본적인 정보처리 단위이다.

     

  • 나. 인공신경망의 연구

     

    • 1943년 매컬릭과 피츠 : 인간의 뇌를 수많은 신경세포가 연결된 하나의 디지털 네트워크 모형으로 간주하고 신경세포의 신호처리 과정을 모형화하여 단순패턴분류 모형을 개발했다.

    • 헵 : 신경 세포 사이의 연결강도(weight)를 조정하여 학습규칙을 개발했다.

    • 로젠블럿 : 퍼셉트론이라는 인공세포를 개발했다.

       

    • 비선형성의 한계점 - xor 문제를 풀지 못하는 한계를 발견했다.

    • XOR의 한계점

      문과생도 이해하는 딥러닝 (1) - 퍼셉트론 Perceptron

       

      → 분류를 함에 있어 1,1과 0,0을 하나의 범주로 분류하는 것이 불가능함!!

    • 홈필드, 러멜하트, 맥클랜드 : 역전파알고리즘을 활용하여 비선형성을 극복한 다계층 퍼셉트론으로 새로운 인공신경망 모형이 등장했다.

    썰로 역전파 공부하기

    44. 데이터마이닝-분류분석 3

     

    역전파 알고리즘(BackPropagation)

    다층 퍼셉트론 실습

  • 신경망의 긴 겨울을 끝낸, 데이빗 럼멜하트
  • 다. 인간의 뇌를 형상화한 신공신경망

    1. 인간 뇌의 특징
    • 100억개의 뉴런과 6조 개의 시냅스의 결합체이다.
    • 인간의 뇌는 현존하는 어떤 컴퓨터보다 빠르고, 매우 복잡하고, 비선형적이며, 병렬적인 정보처리 시스템과 같다.
    • 적응성에 따라 '잘못된 답'에 대한 뉴런들 사이의 연결은 약화되고, '올바른 답'에 대한 연결이 강화된다.
    1. 인간의 뇌 모델링
    • 뉴러은 가중치가 있는 링크들로 연결되어 있다.
    • 뉴런은 여러 입력신호를 받지만 출력 신호는 오직 하나만 생성한다.

     

  • 라. 인공 신경망의 학습

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

    1. 구조
    • 입력 링크에서 여러 신호를 받아서 새로운 활성화 수준을 계산하고, 출력 링크로 출력 신호를 보낸다.

    • 입력신호는 미가공 데이터 또는 다른 뉴런의 출력이 될 수 있다.

    • 출력 신호는 문제의 최종적인 해가 되거나 다른 뉴런에 입력 될 수 있다.

       

    1. 뉴런의 계산
    • 뉴런은 전이함수, 활성화 함수를 사용한다.

    • 활성화함수를 이용해 출력을 결정하며 입력신호의 가중치 합을 계산하여 임계값과 비교한다.

    • 가중치 합이 임계값보다 작으면 뉴런의 출력은 -1, 같거나 크면 +1을 출력한다.

       

    1. 뉴런의 활성화 함수

     

    1. 단일 뉴런의 학습(단층 퍼셉트론)

     

    • 퍼셉트론은 선형 결합기와 하드 리미터로 구성된다.

    • 초평면은 n차원 공간을 두 개의 영역으로 나눈다.

    • 초평면을 선형 분리 함수로 정의한다.

       

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

    1) 입력 변수
    • 신경망 모형은 복잡성으로 인하여 입력 자료의 선택에 매우 민감하다.
    • 입력 변수가 범주형 또는 연속형 변수일 때 아래의 조건이 신경망 모형에 적합하다.

    범주형 변수 : 모든 범주에서 일정 빈도 이상의 값을 갖고 각 범주의 빈도가 일정할 때

    연속형 변수 : 입력 변수 값들의 범위가 변수간의 큰 차이가 없을 때

    • 연속형 변수의 경우 그 분포가 평균을 중심으로 대칭이 아니면 좋지 않은 결과를 도출하기 때문에 아래와 같은 방법을 활용한다.

    변환 : 고객의 소득(평균 미만이고 특정 고객의 소득이 매우 큰) : 로그 변환 범주화 : 각 범주의 빈도가 비슷하게 되도록 설정

    • 범주형 변수의 경우 가변수화하여 적용 하고 가능하면 모든 범주형 변수는 같은 범위를 갖도록 가변수화 하는 것이 좋다.
    1. 가중치의 초기값과 다중 최소값 문제
    • 역전파 알고리즘은 초기값에 따라 결과가 많이 달라지므로 초기값의 선택은 매우 중요한 문제이다.
    • 가중치가 0이면 시그모이드 함수는 선형이 되고 신경망 모형은 근사적으로 선형모형이 된다.
    • 일반적으로 초기값은 0 근처로 랜덤하게 선택하므로 초기 모형은 선형모형에 가깝고, 가중치 값이 증가할수록 비선형 모형이 된다.
    1. 학습모드
    가) 온라인 학습 모드
    • 각 관측값을 순차적으로 하나씩 신경망에 투입하여 가중치 추정값이 매번 바뀐다.

    • 일반적으로 속도가 빠르며, 훈련자료에 유사값이 많은 경우 그 차이가 더 두드러진다

    • 훈련자료가 비정상성과 같이 특이한 성질을 가진 경우가 좋다.

    • 국소 최솟값에서 벗어나기가 더 쉽다.

      나) 확률적 학습 모드

    • 온라인 학습 모드와 같으나 신경망에 투입되는 관측값의 순서가 랜덤하다.

      다) 배치 학습모드

    • 전체 훈련자료를 동시에 신경망에 투입한다.

    1. 은닉층과 은닉 노드의 수
    • 신경망을 적용할 때 가장 중요한 부분이 모형의 선택이다.
    • 은닉층과 은닉노드가 많으면 가중치가 많아져서 과대 적합 문제가 발생한다.
    • 은닉층과 은닉노드가 적으면 과소적합 문제가 발생하다.
    • 은닉층의 수가 하나인 신경망은 범용 근사자이므로 모든 매끄러운 함수를 근사적으로 표현할 수 있다. 그러므로 가능하면 은닉층은 하나로 선정한다.
    • 은닉노드의 수는 적절히 큰 값으로 놓고 가중치를 감소시키며 적용하는 것이 좋다.
    1. 과대 적합 문제
    • 신경망에서는 많은 가중치를 추정해야 하므로 과대적합 문제가 빈번하다.
    • 알고리즘의 조기종료와 가중치 감소 기법으로 해결할 수 있다.
    • 모형이 적합하는 과정에서 검증오차가 증가하기 시작하면 반복을 중지하는 조기종료를 시행한다.
    • 선형 모형의 능형 회귀와 유사한 가중치 감소라는 벌점화 기법을 활용한다.
반응형