12장. 혼성 모델 오일석, 패턴인식, 교보문고, 2008. © 오일석, 전북대학교 컴퓨터공학
들어가는 말 패턴인식에는 아주 많은 다양한 알고리즘 존재 어느 것이 가장 좋은가? 보편적으로 우수한 알고리즘이 존재하는가? (12.1~12.2 절) 단일 알고리즘의 한계를 인정하고 여러 알고리즘을 결합하는 혼성 모델 (12.3~12.6 절) 여러 알고리즘을 결합하면 가장 좋은 단일 알고리즘보다 좋다는 것이 공통된 의견. 따라서 실용 시스템 구현에서 혼성 모델 많이 사용하는 추세 2019-01-13
12.1 알고리즘의 성능 측정 공학적 관점 특정 문제가 주어진 상황에서 그 문제를 푸는 가장 우수한 프로그램을 설계하는 것이 목표 공학적으로는 ②와 같은 분류기를 선택해야 함 2019-01-13
12.1 알고리즘의 성능 측정 공짜 점심 없음 모든 문제에 대해 다른 모든 알고리즘을 능가하는 알고리즘이 있나? (즉 그림 12.1에서 파란색 성능을 갖는 알고리즘 있나?) 없다. Wolpert 와 Macready의 공짜 점심 없음 정리 2019-01-13
12.2 재 샘플링에 의한 성능 평가 재 샘플링 기법 데이터베이스의 질적 양적 품질은 인식기의 성능을 좌우함 분류기 모델을 선택하는데에는 훈련 집합 이외에 별도의 검증 집합 필요 현실적인 문제 데이터베이스 수집에는 많은 비용이 든다. 대부분 경우 양이 부족하다. 이런 경우 재 샘플링 기법을 사용하면 성능 측정의 신뢰도를 높일 수 있다. 2019-01-13
12.2 재 샘플링에 의한 성능 평가 교차 검증cross validation 훈련 집합을 k 개의 부분 집합으로 등분한 후, k-1 개로 훈련하고 나머지 한 개로 테스트. 이런 과정을 서로 다른 부분 집합으로 k 번 수행하여 얻은 성능을 평균함 이를 k-겹 교차 검증이라 부름 k=N인 경우 (N은 샘플 개수) 하나 남기기leave-one-out 또는 잭나이프jackknife 기법 2019-01-13
12.2 재 샘플링에 의한 성능 평가 붓스트랩bootstrap 2019-01-13
12.3 혼성 모델의 발상 2019-01-13
12.3.1 동기 사람들의 의사 결정 방식을 모방 여러 알고리즘이 협동하는 방식 여러 전문가의 의견을 듣고 그것을 결합하여 최종 결정을 내린다. 혼성 모델은 이러한 동기에서 출발한다. 여러 알고리즘이 협동하는 방식 2019-01-13
12.3.1 동기 세가지 문제를 풀어야 한다. 앙상블 생성: 여러 전문가를 확보하는 일에 해당 앙상블 선택: 전체 전문가 집단에서 보다 유용한 전문가의 선택에 해당 (선택적) 앙상블 결합: 전문가의 의견을 결합하여 최종 의견을 만드는 과정에 해당 2019-01-13
12.3.2 이유 혼성 모델을 사용하는 몇 가지 이유 나쁜 운을 피할 수 있다. 성능 향상을 꾀할 수 있다. 데이터 양에 따른 어려움을 극복할 수 있다. 데이터 질에 따른 어려움을 극복할 수 있다. 다중 센서 시스템에서 효과적이다. 결정 경계가 너무 복잡한 경우에 효과적일 수 있다. 점진 학습이 가능하다. 2019-01-13
12.4 앙상블 생성 여러 방식 앙상블을 구성하는 요소 분류기들의 다양성은 매우 중요하다. 재 샘플링 기법: 배깅, 부스팅 서로 다른 분류 알고리즘 사용 (예, MLP, SVM, k-NN 등) 서로 다른 특징 부분 집합 사용 앙상블을 구성하는 요소 분류기들의 다양성은 매우 중요하다. 2019-01-13
12.4.1 배깅 붓스트랩을 변형한 기법 Boostrap aggregating 2019-01-13
12.4.2 부스팅 2019-01-13
12.4.2 부스팅 라인 5와 라인 10-12의 가중치 관리가 부스팅의 핵심 라인 5 가중치가 큰 샘플을 보다 잘 맞추도록 분류기 ct를 학습 시킴 여러 구현 방식이 가능 라인 10-12 (가중치를 조절해 줌) 맞춘 샘플은 가중치 낮추어 주고, 틀린 샘플은 높여 준다. 왜? 또는 2019-01-13
12.4.2 부스팅 2019-01-13
12.4.2 부스팅 2019-01-13
12.5 앙상블 결합 2019-01-13
12.5 앙상블 결합 분류기들의 출력 특성 베이시언 분류기와 HMM은 엄밀한 부류 확률을 출력한다. 신경망과 SVM은 실수를 출력하지만 확률이 아님. 확률이 필요한 경우 softmax 함수로 변환한 값을 확률로 간주 2019-01-13
2019-01-13
12.5.1 부류 표지 다수 투표majority voting 가중 다수 투표weighted majority voting 최다 득표자 선택 여러 변형: 과반 득표 또는 만장 일치 가중 다수 투표weighted majority voting 분류기의 신뢰도 αt고려 (Adaboost로 생성한 앙상블의 경우에 적용 가능) 2019-01-13
2019-01-13
12.5.2 부류 순위 먼저 순위를 점수로 환산한다. 보다 계수에Borda count 의한 결합 여러 방식 r 순위에 M-r 점 부여 r 순위에 1/r 점 부여 예) ct가 Rt=(4, 5, 2, 1, 3)T을 출력했다면, 첫번째 방법은 St=(1, 0, 3, 4, 2)T가 되고, 두번째 방법은 St=(0.25, 0.2, 0.5, 1, 0.333)T이 됨 보다 계수에Borda count 의한 결합 2019-01-13
12.5.3 부류 확률 합, 가중 합, 최소, 최대, 메디언, 그리고 곱 규칙 (ct의 출력을 Pt=(pt1, pt2,…, ptM)T으로 표기) 위의 규칙으로 구한 값을 사용하여, (12.12) 식으로 ωq로 분류 2019-01-13
2019-01-13
12.6 앙상블 선택 2019-01-13
12.6.1 다양성 척도 2019-01-13
12.6.1 다양성 척도 Q-통계, 상관 계수, 불일치, 이중 과실 두 개 분류기 간의 다양성을 정의하고 그것으로부터 전체 분류기 다양성 측정 분류기 i와 k 간의 다양성 2019-01-13
12.6.1 다양성 척도 Q-통계, 상관 계수, 불일치, 이중 과실 (계속) T 개 분류기 간의 다양성 모두 [0,1]사이의 값을 가짐 불일치를 빼고 값이 클수록 다양성 떨어짐 (불일치는 반대) 2019-01-13
Q-통계를 계산해 보면, (다른 척도도 계산해 보길…) 세 개 분류기의 10 개 샘플에 대한 인식 결과 n11=6, n00=1, n10=2, n01=1 c1과 c2에 대해 계산해 보면, Q-통계를 계산해 보면, (다른 척도도 계산해 보길…) 2019-01-13
12.6.1 다양성 척도 엔트로피, Kohavi-Wolpert 분산, 그리고 평가자 동의 2019-01-13
2019-01-13
12.6.2 선택 알고리즘 특징 선택 (9 장)과 유사 따라서 9 장의 알고리즘을 그대로 활용할 수 있음 2019-01-13
12.6.2 선택 알고리즘 혼성 유전 알고리즘 자식해를 해집단에 넣기 전에 약간 개선함 미세 조정력 향상 2019-01-13
12.7 알고리즘을 바라보는 관점 아주 다양한 알고리즘이 있다. 개성과 통일 해 봐라. 이들은 근본적으로 다른가? 어느 것을 선택하여 사용해야 하나? 개성과 통일 알고리즘도 개성이 있다. 특성을 충분히 이해해야 적재적소에 활용할 수 있다. 개성이 다르지만 통일성도 지닌다. 이들에 대한 깊은 이해와 높은 통찰력을 지녀야 새로운 아이디어를 창출할 수 있다. 해 봐라. 알고리즘 선택에 마술은 없다. 직접 해 보는 것이 최선이다. 2019-01-13
2019-01-13