차 례 제 1 장 데이터마이닝의 기본 개념 4 제 1 절 데이터 마이닝이란?........................... 4 제 2 절 데이터 마이닝의 주요 모델링 기법.................. 7 제 3 절 데이터마이닝 적용사례................



Similar documents
abstract.dvi

강의록

ASETAOOOCRKG.hwp

슬라이드 1

3 Gas Champion : MBB : IBM BCS PO : 2 BBc : : /45

untitled

OR MS와 응용-03장

untitled

Coriolis.hwp

<C7D1B1B9B0E6C1A6BFACB1B8C7D0C8B828C0CCC1BEBFF85FC0CCBBF3B5B75FBDC5B1E2B9E9292E687770>

PowerPoint 프레젠테이션

제 9 도는 6제어항목의 세팅목표의 보기가 표시된 레이더 챠트(radar chart). 제 10 도는 제 6 도의 함수블럭(1C)에서 사용되는 각종 개성화 함수의 보기를 표시하는 테이블. 제 11a 도 제 11c 도까지는 각종 조건에 따라 제공되는 개성화함수의 변화의

<313120C0AFC0FCC0DA5FBECBB0EDB8AEC1F2C0BB5FC0CCBFEBC7D15FB1E8C0BAC5C25FBCF6C1A42E687770>

제 1 부 연구 개요

Manufacturing6

05.PDF

6자료집최종(6.8))

종사연구자료-이야기방 hwp

목 차 국회 1 월 중 제 개정 법령 대통령령 7 건 ( 제정 -, 개정 7, 폐지 -) 1. 댐건설 및 주변지역지원 등에 관한 법률 시행령 일부개정 1 2. 지방공무원 수당 등에 관한 규정 일부개정 1 3. 경력단절여성등의 경제활동 촉진법 시행령 일부개정 2 4. 대

인천광역시의회 의원 상해 등 보상금 지급에 관한 조례 일부개정조례안 의안 번호 179 제안연월일 : 제 안 자 :조례정비특별위원회위원장 제안이유 공무상재해인정기준 (총무처훈령 제153호)이 공무원연금법 시행규칙 (행정자치부령 제89호)으로 흡수 전면 개

본문01

hwp

歯4차학술대회원고(장지연).PDF

歯CRM개괄_허순영.PDF

Intra_DW_Ch4.PDF

슬라이드 1

제 출 문 한국산업안전공단 이사장 귀하 본 보고서를 2002 년도 공단 연구사업계획에 따라 수행한 산 업안전보건연구수요조사- 산업안전보건연구의 우선순위설정 과제의 최종보고서로 제출합니다. 2003년 5월 연구기관 : 산업안전보건연구원 안전경영정책연구실 정책조사연구팀 연

<C5F0B0E82D313132C8A328C0DBBEF7BFEB292E687770>

DBPIA-NURIMEDIA

hwp


제1절 조선시대 이전의 교육

4 CD Construct Special Model VI 2 nd Order Model VI 2 Note: Hands-on 1, 2 RC 1 RLC mass-spring-damper 2 2 ζ ω n (rad/sec) 2 ( ζ < 1), 1 (ζ = 1), ( ) 1

<3130BAB9BDC428BCF6C1A4292E687770>

PowerPoint 프레젠테이션

untitled

methods.hwp

정보기술응용학회 발표

Multi-pass Sieve를 이용한 한국어 상호참조해결 반-자동 태깅 도구

Microsoft PowerPoint - 3.공영DBM_최동욱_본부장-중소기업의_실용주의_CRM

PowerPoint 프레젠테이션

Overview Decision Tree Director of TEAMLAB Sungchul Choi

歯엑셀모델링

별지 제10호 서식

Buy one get one with discount promotional strategy

1. 펀드의 개요 3 2. 운용경과 및 수익률 현황 3 3. 자산현황 5 4. 투자운용전문인력 현황 6 5. 비용현황 7 6. 투자자산매매내역 8 <참고 - 펀드용어정리> 9

3) 지은이가 4) ᄀ에 5) 위 어져야 하는 것이야. 5 동원 : 항상 성실한 삶의 자세를 지녀야 해. 에는 민중의 소망과 언어가 담겨 있다고 생각하기 때문 입니다. 인간의 가장 위대한 가능성은 이처럼 과거를 뛰어넘고, 사회의 벽을 뛰어넘고, 드디어 자기를 뛰어넘 는

untitled

산선생의 집입니다. 환영해요

2

IPAK 윤리강령 나는 _ 한국IT전문가협회 회원으로서 긍지와 보람을 느끼며 정보시스템 활용하 자. 나는 _동료, 단체 및 국가 나아가 인류사회에 대하여 철저한 책임 의식을 가진 다. 나는 _ 활용자에 대하여 그 편익을 증진시키는데 최선을 다한다. 나는 _ 동료에 대해

<C3D6BFECBCF6BBF328BFEBB0ADB5BF29202D20C3D6C1BE2E687770>

이화여자대학교, 판다코리아닷컴 이종식 대표 초청 특강 개최 지난 17일, 경제학과 대상 유통 산업의 패러다임 전환 주제로 강연 <이화여대 경제학과에서 강연 중인 이종식 대표> 판다코리아닷컴 이종식 대표가 지난 17일 이화여자대학교 포스코관에서 진행된 경제학과 재학생 대

Oracle Apps Day_SEM


nonpara6.PDF

(, sta*s*cal disclosure control) - (Risk) and (U*lity) (Synthe*c Data) 4. 5.

Microsoft Word - SRA-Series Manual.doc

호랑이 턱걸이 바위

Microsoft PowerPoint - 27.pptx

교육정책연구 2005-지정-52 공무원 채용시험이 대학교육, 노동시장에 미치는 영향분석 및 공무원 채용제도 개선방안 연구책임자 : 오 호 영 (한국직업능력개발원 부연구위원) 이 정책연구는 2005년도 교육인적자원부 인적자원개발 정책연구비 지원에 의 한

歯안주엽홍서연원고.PDF

기사스크랩 (160504).hwp

< FC3BBBCD2B3E2C1A4C3A5C0C720C8AEC0E5B0FA20B9DFC0FC28C3D6C1BE31292E687770>

1) 음운 체계상의 특징 음운이란 언어를 구조적으로 분석할 때, 가장 작은 언어 단위이다. 즉 의미분화 를 가져오는 최소의 단위인데, 일반적으로 자음, 모음, 반모음 등의 분절음과 음장 (소리의 길이), 성조(소리의 높낮이) 등의 비분절음들이 있다. 금산방언에서는 중앙

<352E20BAAFBCF6BCB1C5C320B1E2B9FDC0BB20C0CCBFEBC7D120C7D1B1B920C7C1B7CEBEDFB1B8C0C720B5E6C1A1B0FA20BDC7C1A120BCB3B8ED D2DB1E8C7F5C1D62E687770>

< C6AFC1FD28B1C7C7F5C1DF292E687770>

untitled

04_오픈지엘API.key

歯메뉴얼v2.04.doc

Microsoft Word doc

산림병해충 방제규정 4. 신문 방송의 보도내용 등 제6 조( 조사지역) 제5 조에 따른 발생조사는 다음 각 호의 지역으로 구분하여 조사한다. 1. 특정지역 : 명승지 유적지 관광지 공원 유원지 및 고속국도 일반국도 철로변 등 경관보호구역 2. 주요지역 : 병해충별 선단

High Resolution Disparity Map Generation Using TOF Depth Camera In this paper, we propose a high-resolution disparity map generation method using a lo

김기중 - 방송통신심의위원회 인터넷 내용심의의 위헌 여부.hwp

<C3D6C1BEBFCFBCBA2DBDC4C7B0C0AFC5EBC7D0C8B8C1F D31C8A3292E687770>

MS-SQL SERVER 대비 기능


1


<312E B3E2B5B520BBE7C8B8BAB9C1F6B0FC20BFEEBFB5B0FCB7C320BEF7B9ABC3B3B8AE20BEC8B3BB28B0E1C0E7BABB292DC6EDC1FD2E687770>

歯목차45호.PDF

untitled

슬라이드 1

歯49손욱.PDF

09È«¼®¿µ 5~152s

년 충 남 지 역 어 조 사 보 고 서 국 립 국 어 원

중등2단계(최종)-PDF용.hwp

CRM Fair 2004

-주의- 본 교재는 최 상위권을 위한 고난이도 모의고사로 임산부 및 노약자의 건강에 해로울 수 있습니다.

사회통계포럼

래를 북한에서 영화의 주제곡으로 사용했다든지, 남한의 반체제세력이 애창한다 든지 등등 여타의 이유를 들어 그 가요의 기념곡 지정을 반대한다는 것은 더 이상 용인될 수 없는 반민주적인 행동이 될 것이다. 동시에 그 노래가 두 가지 필요조 건을 충족시키지 못함에도 불구하고

15강 판소리계 소설 심청전 다음 글을 읽고 물음에 답하시오. [1106월 평가원] 1)심청이 수궁에 머물 적에 옥황상제의 명이니 거행이 오죽 하랴. 2) 사해 용왕이 다 각기 시녀를 보내어 아침저녁으로 문 안하고, 번갈아 당번을 서서 문안하고 호위하며, 금수능라 비

2힉년미술

27송현진,최보아,이재익.hwp

Microsoft Word - multiple

Preliminary spec(K93,K62_Chip_081118).xls

PDF

> 1. 법 제34조제1항제3호에 따른 노인전문병원 2. 국민건강보험법 제40조제1항의 규정에 의한 요양기관(약국을 제외한다) 3. 삭제< > 4. 의료급여법 제2조제2호의 규정에 의한 의료급여기관 제9조 (건강진단) 영 제20조제1항의 규

노인복지법 시행규칙

ecorp-프로젝트제안서작성실무(양식3)

Transcription:

R 을 이용한 데이터마이닝 박창이 1 김진석 2 2008년 12월 11일 1 서울시립대학교 통계학과 E-mail:park463@uo.ac.kr 2 동국대학교 정보통계학과 E-mail:jineog.kim@gmail.com

차 례 제 1 장 데이터마이닝의 기본 개념 4 제 1 절 데이터 마이닝이란?........................... 4 제 2 절 데이터 마이닝의 주요 모델링 기법.................. 7 제 3 절 데이터마이닝 적용사례........................ 7 제 4 절 데이터마이닝 솔루션들......................... 9 제 5 절 지도학습과 비지도학습......................... 9 제 6 절 모형의 평가............................... 10 제 2 장 선형회귀모형 16 제 1 절 단순선형회귀.............................. 16 제 2 절 다중선형회귀.............................. 20 제 3 절 다항회귀모형.............................. 23 제 4 절 변수 선택................................ 26 제 5 절 R 예제: wi 데이터.......................... 30 제 3 장 로지스틱 회귀분석 33 제 1 절 로지스틱 회귀.............................. 33 제 2 절 예제................................... 36 제 3 절 로지스틱 모형을 이용한 분류..................... 37 제 4 절 로지스틱 모형의 특징.......................... 38 제 5 절 R 예제: Sonar 데이터......................... 39 제 4 장 의사결정나무 41 1

제 1 절 의사결정나무에 대한 소개....................... 41 제 2 절 의사결정나무의 형성과정........................ 43 제 3 절 여러가지 알고리즘........................... 49 제 4 절 의사결정나무의 특징.......................... 50 제 5 절 R 예제.................................. 51 제 5 장 신경망 54 제 1 절 신경망에 대한 소개........................... 54 제 2 절 다층 신경망(MLP)........................... 56 제 3 절 신경망 구축시 고려사항........................ 60 제 4 절 신경망 모형의 특징........................... 61 제 5 절 R 예제.................................. 62 제 6 장 연관성분석 66 제 1 절 연관성 분석에 대한 소개........................ 66 제 2 절 연관성 규칙............................... 67 제 3 절 연관성분석의 측도........................... 68 제 4 절 연관성분석의 절차........................... 72 제 5 절 기타 고려사항.............................. 73 제 6 절 연관성 분석의 특징........................... 74 제 7 절 R 예제.................................. 75 제 7 장 군집분석 79 제 1 절 군집분석에 대한 소개.......................... 79 제 2 절 거리................................... 80 제 3 절 계층적 군집분석............................. 81 제 4 절 비계층적 군집분석........................... 86 제 5 절 군집분석의 고려사항.......................... 89 제 6 절 군집분석의 응용 : 부정탐지...................... 90 제 7 절 군집분석의 특징............................. 91 제 8 절 R 예제.................................. 91 2

제 9 절 SK telecom 기지국 grouping...................... 95 제 8 장 기타 지도학습방법 98 제 1 절 k-근방 분류............................... 98 제 2 절 서포트 벡터 기계(Support Vector Machine)*............ 98 제 3 절 앙상블기법................................ 100 제 4 절 신용평점표................................ 101 제 5 절 RFM 모형................................ 103 제 6 절 R 예제.................................. 104 3

제 1 장 데이터마이닝의 기본 개념 제 1 절 데이터 마이닝이란? 정의 대용량의 데이터로부터 이들 데이터 내에 존재하는 관계, 패턴, 규칙 등을 탐색하 고 모형화함으로써 유용한 지식을 추출하는 일련의 과정들 배경 자료의 효율적 저장을 위한 기술 (데이터 베이스, 압축, 통신)의 발달에 의한 방대한 양의 데이터 집적 지식정보화 사회에서는 새로운 지식의 습득이 경쟁력의 원천 (예: 유전자 정 보, 고객 정보 등) 거대한 데이터의 분석을 통하여 새로운 지식의 발견가능 컴퓨터 성능의 향상으로 인하여 거대한 데이터의 실시간 분석 가능 데이터 마이닝의 활용분야 데이터베이스 마케팅(Databae Marketing) 데이터를 분석하여 획득한 정보를 이용하여 마케팅 전략 구축 예: 목표마케팅(Target Marketing), 고객 세분화(Segmentation), 고객성향변 동분석(Churn Analyi), 장바구니 분석(Market Baket Analyi) 4

신용평가 (Credit Scoring) 특정인의 신용상태를 점수화하는 과정 신용거래 대출한도를 결정하는 것이 주요 목표 이를 통하여 불량채권과 대손을 추정하여 최소화함 예: 신용카드, 주택할부금융, 소비자 / 상업 대출 생물정보학 (Bioinformatic) 지놈(Genome)프로젝트로부터 얻은 방대한 양의 유전자 정보로부터 가치 있 는 정보의 추출 응용분야: 신약개발, 조기진단, 유전자 치료 텍스트 마이닝 (Text Mining) 디지털화된 자료 (예: 전자우편, 신문기사 등)로 부터 유용한 정보를 획득 응용분야: 자동응답시스템, 전자도서관, Web urfing 부정행위 적발 (Fraud Detection) 고도의 사기행위를 발견할 수 있는 패턴을 자료로부터 획득 응용분야 : 신용카드 거래사기 탐지, 부정수표 적발, 전화카드거래사기, 부당 / 과다 보험료 청구 탐지 데이터마이닝의 특징 대용량의 관측 가능한 (주로 비계획적으로 수집된) 자료를 다룸 컴퓨터 중심의 기법 경험적 방법이 중시됨 일반화 (generalization) 또는 예측이 중요 : 현재의 자료보다 미래의 자료를 잘 설 명할 수 있는 모형을 추구 통계학과 컴퓨터공학(특히 인공지능)에서 함께 방법론을 개발하고 이를 경영, 경 제, 정보기술(IT)분야에서 사용 5

데이터마이닝 관련 분야 KDD (Knowledge Dicoery in Databae) 데이터베이스안에서의 지식발견 데이터마이닝과 가장 유사 KDD는 지식을 추출하는 전 과정 (계획, 자료 획득, 분석, 해석 등)을 의미 하고 데이터마이닝은 KDD의 한 과정(자료의 분석)임 데이터 웨어하우징 (data warehouing), OLAP (On-Line Analytical Proceing) 등도 KDD의 한 과정 기계학습 (Machine Learning) 인공지능 (Artificial intelligence) 의 한 분야 입력되는 자료를 바탕으로 기계(컴퓨터)가 판단을 할 수 있는 방법에 대한 연구 패턴인식 (Pattern Recognition) 거대한 자료로부터 일정한 패턴을 찾아가는 과정 이미지 분류와 깊은 관련이 있음 통계학의 판별 및 분류 분석 통계학 많은 데이터마이닝 기법들이 통계학적 관점에서 비선형 함수추정 문제임 예: 신경망 모형 대 Projection Puruit Regreion 데이터 마이닝 업계 표준 Cro-Indutry Standard Proce for Data Mining (CRISP-DM) 비즈니스 이해 데이터 이해 6

데이터 준비 모델링 평가 전개 제 2 절 데이터 마이닝의 주요 모델링 기법 신경망 (Neural Network) 나무형 분류 / 회귀 (Tree-tructured Model, Deciion Tree): CART, C5.0, CHAID 등 K-평균 군집화 (K-mean Clutering) 예 : 고객 세분화 연관성 규칙 (Aociation Rule): 장바구니 분석 (amazon.com) 제 3 절 데이터마이닝 적용사례 소매업 미국의 할인점 Wall Mart에서 매장내의 상품들과 고객들의 구매패턴의 연관 성을 발견하기 위하여 연관성 분석 알고리즘을 사용 기저귀와 맥주가 강한 연관성을 나타냄 기저귀와 맥주를 가까이 배치하여 매출이 증가 신용카드회사 국내의 한 신용카드회사가 부정행위를 적발하고 이를 예방하기 위한 모형의 구축 기존의 카드 소지자의 구매패턴을 분석하여 현재의 구매패턴이 카드 소지자 의 구매패턴과 틀린 경우 부정사용으로 의심 7

의사결정나무와 신경망 모형이 사용됨 카드의 부정사용 방지를 통하여 고객의 자산 보호 및 회사의 손해액 감소 의료분야 종양의 악성/양성 판단에 의한 암 진단의 정확성을 높이기 위한 판별 및 분 류분석 시행 과거의 환자들에 대해서 종양검사의 결과를 근거로(즉, 종양의 크기, 모양, 색깔 등) 종양의 악성/양성 여부를 구별하는 분류모형을 만든 후, 새로운 환 자에서 얻은 입력변수를 이용하여 암을 진단 지도학습방법 (신경망, 로지스틱 회귀모형, 의사결정나무 등)이 사용 제조업 반도체회사에서 불량품 자동검색장치 개발 연관성 분석과 군집분석 알고리즘을 사용 정상인 반도체를 그 특성에 기반하여 몇 개의 군집으로 나눈 후, 새로운 제 품이 정상제품의 군집의 범위밖에 있는 경우 불량으로 규정 불량품 감소로 인한 이익의 증대 통신회사 미국의 한 장거리 회사의 23%의 고객이 매년 이탈 새로운 고객 한명을 유치하는데 필요한 비용이 $350 고객성향변동관리(churn management) 와 군집분석(clutering) 을 이용하여 이 탈의 원인을 파악 현재 고객의 40%가 이탈 가능성이 높음 이익분석(profit analyi)를 통하여 이탈가능성이 높은 고객을 상대로 한 마 케팅이 효과적임이 입증 무료 통화서비스 등의 목표마케팅(target marketing)으로 이탈고객 감소와 이 를 통한 이익의 증가 8

제 4 절 데이터마이닝 솔루션들 SAS Enterprie Miner (E-miner) SPSS Clementine IBM Intelligent Miner (I-miner) Oracle Darwin Salford CART & MARS 제 5 절 지도학습과 비지도학습 지도학습 (Superied Learning) 회귀 및 분류 모형 (regreion and claification) 회귀 : 연속형 출력변수 분류 : 범주형 출력변수 입력 및 출력변수의 값을 이용하여 주어진 입력변수에 대한 출력변수의 값을 예측 하는 모형을 개발 기법: 판별분석, 회귀분석, 로지스틱 회귀분석, 의사결정나무, 신경망 등 예 : 특정 기업의 정보(재무제표 등)을 이용하여 1년 후의 회사의 파산 여부를 예측 비지도학습 (Unuperied Learning) 출력변수가 없음 입력변수간의(혹은 내의) 관계를 탐색적으로 분석하여 의미 있는 정보 추출 군집 분석, 연관성 분석, 주성분 / 인자분석 9

예 : 한국 성인 남자의 골격을 몇 개의 그룹으로 나눈 후 기성복 사이즈의 종류를 결정 지도학습모형 X 1,..., X p : 입력변수, Y : 출력변수 회귀 모형: 연속형 출력변수 Y = f(x 1,..., X p ) + ε 평가기준: MSP E = E[Y f(x 1,..., X p )] 2 분류 모형: 범주형 출력변수 P(Y = j X 1,..., X p ) = f(x 1,..., X p ) 평가기준: P(Y j X 1,..., X p ), j = 1,..., k 제 6 절 모형의 평가 하나의 자료 분석시 여러가지 가능한 모형을 적합시키게 되는데 이중 최적의 모형 을 선택하기 위해 필요 모형의 평가 방법 예측력: 얼마나 잘 예측하는가? 해석력: 모형이 입력/출력 변수간의 관계를 잘 설명하는가? 효율성: 얼마나 적은 수의 입력변수로 모형을 구축했는가? 안정성: 모집단의 다른 자료에 적용했을 때 같은 결과를 주는가? 모형의 평가: 어떤 모형이 랜덤하게 예측하는 모형보다 예측력이 우수한지, 그리 고 고려된 모형들 중 어느 모형이 가장 좋은 예측력을 보유하고 있는지를 비교 / 분석 10

학습오차와 예측오차 오차 학습오차: 학습자료로부터 구한 오차 예측오차: 미래의 자료로부터 구한 오차 지도학습은 일반화에 관심을 둔다. 따라서, 학습오차보다는 예측오차에 더 많은 관 심을 둔다. 즉, 지도학습의 목적은 예 측오차를 최소화하는 모형의 구축에 있다 모형의 복잡도 예 입력변수를 많이 사용할 수록 모형이 복잡해짐 모형 y = a + b 1 x 1 + b 2 x 2 가 모형 y = a + b 1 x 1 보다 복잡 입력변수와 출력변수의 관계를 나타내는 식이 비 선형적일수록 모형이 복잡 1 모형 y = 가 모형 y = a + bx 보다 복잡 1 + exp(a + bx) 과적합 (Oerfitting) 정의: 매우 복잡한 모형을 사용하여 학습오차를 매우 작게 한 경우 예측오차가 매 우 커질 수 있는데, 이러한 현상을 과적합이라 한다. 학습오차는 사용되어진 자료를 통하여 구할 수 있으나, 예측오차는 미래의 자료에 대한 오차로서 실제로는 구할 수 없다. 따라서 지도학습에서 학습오차를 너무 작게 하는 것이 항상 좋은 것은 아니다. (예)개인 신용평가 목적: 은행 고객의 수입과 나이의 정보로 그 고객의 미래 신용 상태를 예측 입력: 수입, 나이 출력 : 신용 상태 (양호 / 불량) 11

그림 1.1: 개인 신용평가 예제: 훈련자료 그림 1.2: 개인 신용평가 예제: 단순한 모형 그림 1.3: 개인 신용평가 예제: 복잡한 모형 12

모형의 예측력 평가 그림 1.4: 학습오차, 예측오차, 모형의 복잡도 데이터 분할 (data partitioning) 방법 전체 자료를 훈련자료(training data)와 테스트자료(tet data)로 나누고 훈 련자료를 이용하여 모형 적합하고 적합된 모형을 테스트 자료에 적용하여 예 측하며 테스트 자료에 대하여 평가 기준을 이용하여 평가 보통 특정한 분할에 의한 bia를 줄이기 위해 데이터에 대한 랜덤한 분할을 여러 번 반복(repetition) 실시한 후 평가기준 값의 평균을 냄 방법에 따라 훈련, 검증 (alidation), 테스트 자료로 나누어서 검증 데이터를 이용하여 모형을 최적화 하는 경우도 있음 Penalization (Regularization) 방법 학습자료를 이용하여 다양한 복잡도를 갖는 모형을 구축 각 모형의 학습오차에 모형의 복잡도에 대한 적절한 penalty를 더해 비용함 수 생성 (예) AIC, BIC에서 입력변수의 갯수 비용함수를 최소화하는 모형 선택 교차 확인 (Cro Validation, CV) 방법 데이터 분할 방법의 일반화로 볼 수 있음 k-fold CV 알고리즘 13

1. 데이터를 k 개의 셋으로 분할 2. 각 j 에 대해 j 번째 셋을 제외한 나머지를 이용하여 모형 적합 3. j 번째 셋을 테스트 자료로 이용하여 예측오차를 구함 4. k 개의 예측오차의 평균을 예측오차로 활용하여 최적 모형 선택 여기서 j = 1,..., k. 분류모형의 평가 오분류표 그림 1.5: 오분류표 예제 오분류률에 대한 다양한 측도 정분류율=(실제0,예측0)빈도+(실제1,예측1)의 빈도/전체빈도 (예) 정분류율 = (8+3)/13 = 11/13 오분류율=(실제0,예측1)빈도+(실제1,예측0)의 빈도/전체빈도 (예) 오분류율 = 1-11/13 = 2/13 민감도(enitiity)=(실제1,예측1)의 빈도/실제 1의 빈도 (예) 민감도 = 3/4 특이도(pecificity)=(실제0,예측0)의 빈도/실제 0의 빈도 (예) 특이도 = 8/9 민감도는 1에서의 정분류율로 특이도는 0에서의 정분류율 14

ROC 도표 그림 1.6: ROC 도표 예제 ROC : Receier Operator Characteritic 여러 개의 분류 기준값에서 구하여진 민감도 특이도 값의 쌍들을 x 축에는 1-특이 도, y 축에는 민감도를 지정하고 그린 곡선 ROC 곡선의 형태 기타 : Lift chart, repone threhold chart 등 15

제 2 장 선형회귀모형 제 1 절 단순선형회귀 예제 : 에어컨 판매대수 예측 목적: 에어컨 예약대수를 이용하여 내년에 판매되는 에어컨 대수를 예측 자료: 지난 10년간의 에어컨 예약대수와 판매대수 입력변수: 에어컨 예약대수 목적변수: 에어컨 판매대수 단순선형회귀 모형 모형: y = a + bx + ε x: 에어컨 예약대수, y: 에어컨 판매대수, ε: 오차항 (평균이 0이고 분산이 σ 2 ) 선형회귀모형: 입력변수와 출력변수의 관계가 선형방정식 참고: 비선형회귀모형 (예: y = in(2x) + ε) 단순 선형회귀모형: 입력변수가 하나인 선형회귀모형 다중 선형회귀모형: 입력변수가 2개 이상인 선형회귀모형 16

그림 2.1: 에어컨 판매대수 자료 모수의 추정 모수: (a, b) 최소제곱추정치: (â, ˆb) 오차제곱합 n i=1 (y i a bx i ) 2 을 최소로 하는 (a, b) 로 ˆb = n i=1 (x i x)(y i ȳ) n i=1 (x i x) 2 â = ȳ â x 예측 및 모형의 해석 예측 주어진 새로운 입력변수 x 에 대하여 출력변수 y 를 ŷ 로 예측. 여기서 ŷ = â + ˆbx 모형의 해석 x 가 한 단위 증가할 때의 y 의 증가량 17

b 가 양수이면 x 가 증가하면서 y 가 증가 b 가 음수이면 x 가 증가할 때 y 는 감소 예제의 결과 최소제곱법으로 추정된 모형식 y = 9.74 + 1.44x 예측 올해 에어컨 예약대수가 45이면 내년 에어컨 판매대수는 9.74 + 1.44 45 = 74.54 로 예측 해석 에어컨 예약대수가 1단위 증가하면 에어컨 판매대수는 1.44단위 증가 회귀계수의 검정 회귀계수 b 가 0이면 입력변수 x 와 출력변수 y 사이에 아무런 관계가 없다. 즉, 회 귀계수 b 가 0이면 적합 된 추정식은 아무 의미가 없게 된다. 적합 된 추정식이 의미가 있는지(자료를 잘 설명하는지)를 검정하는 것은 회귀계 수 b 가 0인지를 검정하는 것과 같음 검정통계량 검정방법 t = ˆb.e.(ˆb) t 가 크면 b 가 0이라는 가설(귀무가설)을 기각한다. 즉, 추정된 회귀식이 유의하 다라고 결론을 내림 회귀계수 검정 예제 18

Variable df Etimate SE T prob> t Intercep 1 9.7364 6.6620 1.471 0.1796 X 1 1.4407 0.2004 7.188 0.0001 x 에 대한 유의확률(p-alue)이 매우 작으므로(0.001) 회귀계수 b 가 0이라는 가설 은 기각 추정된 회귀직선은 자료를 잘 설명함 제곱합의 분할과 결정계수 제곱합의 분할: 전체제곱합 = 회귀제곱합 + 잔차제곱합 전체제곱합: 회귀제곱합: 잔차제곱합: n i=1 (y i ŷ i ) 2 n i=1 (ŷ i ȳ) 2 n i=1 (y i ȳ) 2 결정계수: R 2 = 회귀제곱합/전체제곱합 0 R 2 1 1에 가까울 수록 회귀모형이 자료를 잘 설명 에어컨 판매대수 예제 R 2 = 0.8659: 자료의 전체 변동중 회귀모형이 86.59%를 설명 선형회귀모형에 사용되는 가정들 선형회귀모형에 사용되는 가정 선형성: 입력변수와 출력변수와의 관계가 선형적 등분산성: 오차의 분산이 입력변수와 무관하게 일정 정규성: 오차의 분포가 정규분포 선형모형을 자료에 적합하기 전에 위의 3가지 가정이 만족되는지를 확인 19

선형성은 위의 가정 중 가장 중요한 가정으로 이 가정이 맞지 않은 경우에는 선 형회귀모형은 좋지 않은 결과를 제공 가정들의 검증 방법 선형성: 단순선형회귀모형에서는 입력변수와 출력변수와 산점도를 이용하고 다중선형회귀모형에서는 잔차와 출력변수와의 산점도를 이용 선형회귀모형에 사용된 모든 가정이 만족되는 경우에는 이 잔차는 아무런 정 보가 없는 오차와 비슷할 것임 따라서, 잔차의 산점도에서 어떤 패턴이 발견되면, 선형회귀모형의 가정을 의 심 가정들이 맞지 않은 경우 선형성의 가정이 만족되지 않은 경우 다항회귀(polynomial regreion) 등의 비선형회귀모형이나, 회귀모형에 아무 런 가정도 하지 않는 비모수 회귀모형(예: 의사결정나무, 신경망 모형)등을 사용 등분선성이 만족하지 않는 경우 가중회귀방법(weighted regreion) 을 사용 정규성이 만족하지 않는 경우 로버스트 회귀방법(robut regreion) 을 사용 제 2 절 다중선형회귀 다중선형회귀 모형 입력변수가 2개 이상인 선형회귀모형 입력변수: x = (x 1,..., x p ) R p 출력변수: y R 20

모형 y = β 0 + β 1 x 1 + + β p x p + ε ε 은 오차항으로 평균이 0이고 분산이 σ 2 모수(회귀계수): (β 0, β 1,..., β p ) 다중선형회귀 : 회귀계수의 추정 및 검정 자료: (x 1, y 1 ),..., (x n, y n ), 여기서 x i = (x 1i,..., x pi ) 추정 최소제곱추정치: ( ˆβ 0, ˆβ 1,..., ˆβ p ) 오차제곱합 n i=1 (y i β 0 β 1 x 1i β p x pi ) 2 을 최소로 하는 (β 0, β 1,..., β p ) 유의성 검정 검정통계량: t i = ˆβ i.e.( ˆβ i ) t i 가 크면 회귀계수 β i 는 유의하다, 즉, β i 가 0이 아니다라고 결론 예측 및 모형의 해석 예측 주어진 새로운 입력변수 x = (x 1,..., x p ) 에 대하여 출력변수 y 를 ŷ 로 예측. 여 기서 ŷ = ˆβ 0 + ˆβ 1 x 1 + ˆβ p x p 모형의 해석 x i 가 한 단위 증가할 때의 y 의 증가량 ˆβ i 가 양수이면 x i 가 증가하면서 y 가 증가 ˆβ i 가 음수이면 x i 가 증가할 때 y 는 감소 21

ANOVA 표 및 모형의 유의성 검정 요인 제곱합 자유도 제곱평균 F-값 회귀 회귀제곱합 p MSR F (SSR) = SSR/p =MSR/MSE 잔차 잔차제곱합 n-p-1 MSE (SSE) =SSE/(n-p-1) 계 전체제곱합 n-1 (SST) F-값이 크면 모형이 유의하다고 결론 다중선형회귀 예제 A건설회사가 고객에게 주로 받는 질문은 겨울에 난방비가 얼마나 나오는가 하는 것이 다. 이 질문에 답하기 위하여 A 건설회사는 20개의 아파트를 임의로 추출하여 다음의 3 가지 항목을 조사하였다. 겨울의 평균온도 방열재의 두께 아파트 나이 회귀계수 추정값 입력변수 회귀계수 표준오차 T 유의확률 절편 427.19 59.60 7.17 0.000 온도 -4.58 0.77-5.93 0.000 방열재 -14.83 4.75-3.12 0.007 나이 6.10 4.01 1.52 0.14 ANOVA 표 22

요인 제곱합 자유도 제곱평균 F-값 유의확률 회귀 171220 3 57073 21.9 0.000 잔차 41695 16 2606 계 212916 19 회귀추정식 ŷ = 427.19 4.58x 1 14.83x 2 + 6.10x 3 해석 평균온도 1도가 떨어지면 난방비가 4.58단위 증가 방열재의 두께가 1단위 증가하면 난방비가 14.83단위 감소 아파트의 나이가 1년 증가하면 난방비가 6.10단위 증가 제 3 절 다항회귀모형 다항회귀 예제 예제: 다음의 자료는 특정한 화학제품을 만드는데 있어서 촉매와 산출량과의 관계를 규 명하기 위한 것이다. 촉매 1.0 2.0 3.0 4.0 5.0 6.0 7.0 8.0 9.0 10.0 산출량 10.2 13.71 19.6 23.5 25.6 23.3 25.1 17.5 14.3 0.02 다항회귀 모형 다항회귀모형(polynomial regreion model) 출력변수와 입력변수와 관계가 선형이 아니지만 이차함수로 잘 적합할 수 있음 y = β 0 + β 1 x 1 + + β p x p + ε 모수의 추정 z 1 = x, z 2 = x 2,..., x p = x p 라 놓고 이 새로운 p 차원의 입력변수와 출력변수 사 이의 다중선형회귀모형 적합 23

그림 2.2: 다항회귀 예제 자료 차수 p 의 결정 p = 2 부터 하나씩 증가시키면서 모형을 적합 p 가 증가하면서 결정계수값은 계속해서 증가 결정계수값의 증가가 둔화되는 p 를 선택 다항회귀모형은 차수의 결정에 따라 그 결과가 민감하게 반응하는 경향이 있다. 따라서, 차수(p)의 결정은 매우 신중하게 결정해야 함 다항회귀 예제 분석 차수의 결정: 2차 함수가 적합 회귀계수의 추정 24

입력변수 회귀계수 표준오차 T 유의확률 절편 -1.26 2.71-0.46 0.65 x 10.32 9.11 9.11 0.00 x 2-0.99 0.10 9.88 0.00 이차식의 회귀계수가 유의하므로 이차함수가 적합 범주형 입력변수 범주의 수가 J 개인 경우 (J 1) 개의 가변수가 필요 입력변수가 k 번째 범주에 속하는 경우에 x k = 1 로, 그리고 나머지 (J 2) 개의 x 는 0으로 예: J = 3 범주 x 1 x 2 1 1 0 2 0 1 3 0 0 예제: 다음 자료는 임의로 선택된 10명에 대한 집소유 여부와 월 소득과의 관계를 나타낸 것이다. 집소유 소 소 미 미 미 미 미 미 소 소 월소득 39 49 22 41 28 21 30 47 23 50 소: 소유, 미: 미소유 가변수를 이용 범주가 두개인 경우에는 입력변수가 첫번째 범주인 경우에 x 를 0으로 입력변수가 두번째 범주인 경우에는 x 를 1로 놓음 집소유(x) 0 0 1 1 1 1 1 1 0 0 월소득(y) 39 49 22 41 28 21 30 47 23 50 25

소유:0, 미소유: 1 모형: y = a + bx 회귀계수의 추정 입력변수 회귀계수 표준오차 T 유의확률 절편 40.25 5.63 7.14 0.00 x -8.75 7.27-1.20 0.26 해석: 집을 소유한 사람이 미소유인 사람보다 소득이 8.75단위 높다. 그러나 이 차이는 통계적으로 유의하지 않음 제 4 절 변수 선택 필요한 이유 많은 입력변수를 관리하는데 필요한 노력과 비용의 절약 다중공선성에 의한 예측치의 분산의 증가 방지 적절한 모형의 복잡도(변수의 개수) 유지로 예측오차의 감소가능 유의한 입력변수를 모형에 넣지 않으면, 중요한 정보를 놓칠 수 있으며, 또한 그 결과가 bia된다. 따라서, 변수선택에 있어서는, 너무 많은 변수를 사용해서 생기 는 문제를 피하고, 동시에 중요한 변수를 놓쳐서 생기는 정보의 손실을 최소로 해 야 한다. 즉, 적당한 수의 변수를 선택해야 한다. Bet Subet Selection 기본과정 p 개의 입력변수가 있는 경우 (p + 1) 개의 모형 M 0, M 1,..., M p 를 고려. 여기서 M k 는 k 개의 변수만을 포함하는 모형 주어진 (p + 1) 개의 모형 중 가장 좋은 모형을 선택 26

가장 좋은 모형: 모형선택의 판정기준을 사용 모형선택의 기준으로는 AIC(Akaike Information Creteria), 수정된 결정계수(Adjuted coefficient of determination), Mallow Cp 등이 사용 모형을 만드는 방법 (p + 1) 개의 모형 M 0, M 1,..., M p 를 만드는 방법에 따라 다음과 같은 변수선택방법들이 개발되었음 모든 가능한 회귀 (All poible method) M k 는 k 개의 변수를 포함하는 모든 모형들 중 오차제곱합을 최소로 하는 모 형 M 0, M 1,..., M p 를 만들기 위하여는 2 p 개의 모형을 적합시켜야 함 p 가 큰 경우 현실적으로 사용하기 어려움 전진선택법 (Forward election) M k 1 모형을 구축한 후 M k 1 모형에 사용되지 않은 p (k 1) 개의 변수를 하나씩 모형에 넣어 오차제곱합 구함 오차제곱합을 가장 작게 하는 변수를 M k 1 에 넣어서 k번째 모형 M k 를 만 듬 입력변수가 p 개인 경우에 p(p + 1)/2 개의 모형을 적합하면 됨 단점: 한번 선택된 변수는 절대로 제거되지 않음 후진소거법 (Backward elimination) M k 을 구축한 후 M k 모형에 사용된 k 개의 변수를 하나씩 모형에서 제거하고 오차제곱합을 구함 오차제곱합을 가장 작게 하는 변수를 M k 에서 제거하여 k 1 번째 모형 M k 1 를 만듬 입력변수가 p 개인 경우에 p(p + 1)/2 개의 모형을 적합하면 됨 27

단점: 한번 제거된 변수는 절대로 다시 선택되지 않음 단계적 방법 (Stepwie method) 전진선택법과 후진소거법을 결합 중요한 변수를 하나씩 추가로 선택하면서 이미 선택된 변수들이 제거될 수 있는지를 매 단계마다 검토 이 방법은 (p + 1) 개의 모형을 만드는 것이 아니라, 최적의 모형 하나만을 결 과로 줌 일반적으로 전진선택법이나 후진소거법보다 좋음 p 가 큰 경우 계산량이 매우 많을 수 있음 변수선택 기준 복잡한 모형은 작은 오차제곱합을 갖지만, 모형의 복잡도에 따른 예측오류 증가 모형선택 기준의 기본 아이디어는 오차제곱합과 모형복잡도(변수의 개수) 를 동시 에 고려 기준에 따라 최종 모형이 달라질 수 있음 수정결정계수 R 2 는 변수가 많아질수록 증가 수정결정계수 R 2 adj = 1 n 1 n p (1 R2 ) 변수가 많아지면 1 R 2 는 줄지만 n 1 가 증가하여 수정결정계수는 항상 증 n p 가하지는 않음 최대로 하는 모형을 선택 멜로우의 Cp Mallow Cp = 잔차제곱합/분산 추정량 +2p n 28

변수의 수가 증가하면 오차제곱합은 감소하지만 2p n 이 증가하고, 따라서 Mallow Cp는 처음에는 감소하다 모형이 복잡해지면 다시 증가 Cp를 최소로 하는 모형을 선택한다. Regularization Method* 능형회귀 (Ridge Regreion) 능형회귀 추정량 β ridge = argmin ubject to p k=1 β2 k 또는 β ridge = argmin ( n y i β 0 i=1 ( n y i β 0 i=1 ) 2 p x ik β k k=1 ) 2 p x k β k + λ k=1 p βk. 2 (2.1) k=1 위에서 = 0 이면 모형은 상수항(intercept term)만을 포함한다. 반대로 = 이면 최소제곱법으로 추정된 모형과 동일하다. 이 ridge etimator는 Hoerl and Kennard (1970)이 소개하였고, p > n 일 때 최 소제곱추정량을 계산하기 위해 고안 되었다. 선형회귀에서 통상적인 최소제곱추정량은 아래와 같다. ˆβ = (X X) 1 X y where X = (x 1,..., x n) and y = (y 1,..., y n ). 하지만 p > n 경우, (X X) 1 을 계산할 수가 없다(존재하지 않는다). 보통 이 경 우, 다음 식을 푸는데, 이 경우에는 해가 여러개 존재한다. (X X)ˆβ = X y 29

위의 식(1)에서 ridge etimator는 최소제곱추정량의 (X X) 1 부분을 (X X+λI) 1 로 치환한 값이다. 즉, ˆβ ridge = (X X + λi) 1 X y 또는 ˆβ j ridge = ˆβj /(1 + λ), j = 1,..., p. LASSO: Leat Abolute Shrinkage and Selection Operator Ridge regreion의 단점으로는 모든 input 변수들이 모형에 포함되어 있어 모형에 대한 해석이 용이하지 않다는 데 있다. 그렇다면 변수선택과 예측력 향상을 동시에 가능하게 하는 방법은 없을까? 놀랍게도 그런 방법이 있으며, Tibhirani (1996)가 제안한 LASSO (Leat Abolute Shrinkage and Selection Operator) 라는 방법이다. LASSO방법은 다음의 목적함수를 최소화 하는 β 를 찾는다. n l(y i, x iβ) + i=1 λ p β j j=1 } {{ } penalty function. ridge와 다른 점은 penalty function이 제곱에서 절대값으로 바뀌었다는 것밖에 없 다. 이러한 penalty를 l 1 penalty라고 부른다, 반면에 Ridge의 penalty를 l 2 penalty 라고 함 제 5 절 R 예제 : wi 데이터 Swi Fertility and Socioeconomic Indicator (1888) Data Fertility: common tandardized fertility meaure Agriculture: % of male inoled in agriculture a occupation 30

Examination: % draftee receiing highet mark on army examination Education: % education beyond primary chool for draftee. Catholic: % catholic Infant.Mortality: lie birth who lie le than 1 year Cp 5 10 15 20 25 30 35 BIC 35 30 25 20 1 2 3 4 5 ubet ize 1 2 3 4 5 ubet ize 그림 2.3: Swi데이터 변수 선택 library(leap) data(wi) a = regubet(fertility~., data=wi) ummary(a) Subet election object 5 Variable (and intercept) Forced in Forced out Agriculture FALSE FALSE Examination FALSE FALSE Education FALSE FALSE Catholic FALSE FALSE Infant.Mortality FALSE FALSE 1 ubet of each ize up to 5 31

Selection Algorithm: exhautie Agriculture Examination Education Catholic Infant.Mortality 1 ( 1 ) " " " " "*" " " " " 2 ( 1 ) " " " " "*" "*" " " 3 ( 1 ) " " " " "*" "*" "*" 4 ( 1 ) "*" " " "*" "*" "*" 5 ( 1 ) "*" "*" "*" "*" "*" > par(mfrow = c(1,2)) > plot(1:5, ummary(a)$cp, type="b", xlab="ubet ize", ylab="cp", col="red" ) > plot(1:5, ummary(a)$bic, type="b", xlab="ubet ize", ylab="bic", col="red" ) > lm(fertility ~ Agriculture+Education+Catholic+Infant.Mortality, data=wi) Call: lm(formula = Fertility ~ Agriculture + Education + Catholic + Infant.Mortality, data = wi) Coefficient: (Intercept) Agriculture Education Catholic 62.1013-0.1546-0.9803 0.1247 Infant.Mortality 1.0784 32

제 3 장 로지스틱 회귀분석 제 1 절 로지스틱 회귀 범주형 출력변수에 대한 회귀분석 y 가 범주형 일때 (y = 0, 1) 선형회귀모형 y = a + bx + e 적용시 문제점 a + bx 는 [0,1]을 벗어날 수 있음 오차항 e 의 분포가 정규분포가 아님 대안: P(Y = 1 x) = F (a + bx), 여기서 F (x) 는 연속이고 증가하며 [0,1]사이에서 값을 갖는 함수 여러 가지 F (x) Logitic 모형: F (x) = exp(x)/(1 + exp(x)) Gumbel 모형: F (x) = exp( exp(x)) Probit 모형: F (x) 가 표준정규분포의 분포함수 (생물학 독성실험 등) 로지스틱 모형이 계산의 편이성으로 인하여 가장 널리 쓰임 로지스틱 모형과 오즈비 모형: P(Y = 1 x) = exp(a + bx)/(1 + exp(a + bx)) 33

오즈비 (odd ratio)의 정의 P(Y = 1 x + 1)P(Y = 0 x) P(Y = 0 x + 1)P(Y = 1 x) = exp(b) x 가 한 단위 증가 할 때 y = 1 일 확률과 y = 0 일 확률의 비의 증가율 예 x 는 소득, y 는 어떤 상품에 대한 구입여부(1=구입,0=미구입) b = 3.72 소득이 한 단위 증가하면 물품을 구매하지 않을 확률에 대한 구매할 확률의 비(오즈비)가 exp(3.72) = 42 배 증가함 모수의 추정 최대우도(maximum likelihood) 추정량 우도함수(likelihood function) L(a, b) = n F (a + bx i ) y i (1 F (a + bx i )) 1 y i, i=1 여기서 F (x) = exp(x)/(1 + exp(x)) 우도함수를 최대화하는 최대우도추정량 (â, ˆb) 는 수치적 방법을 사용하여 구함 입력변수의 유의성 검정 입력변수 x 가 y 를 설명하는데 유의한지, 즉, 회귀계수 b 가 0인지,를 검정 우도비 검정 통계량 χ 2 = 2(max l(a, 0) l(â, ˆb)), a 여기서, l(a, b) = log L(a, b) χ 2 가 크면 b 가 0이 아니라고 결론 34

근사적으로 χ 2 는 카이제곱분포를 따름 로지스틱 회귀의 확장 다중 로지스틱 회귀 입력변수가 2개 이상이고 출력변수가 범주형 자료 (범주가 2개) 모형 P(Y = 1 x) = F (a + b 1 x 1 + + b p x p ), 여기서 F (x) = exp(x)/(1 + exp(x)) 모수의 추정: 최대우도추정치 회귀계수의 유의성 검정: 우도비 검정을 이용 다항 로지스틱 모형 모형 P(Y = 1 x) = F (a + b 1 x + + b p x p ), 여기서 F (x) = exp(x)/(1 + exp(x)) 모수의 추정: 최대우도추정치 범주형 입력변수 선형회귀모형과 마찬가지로 가변수를 사용 가변수를 사용한 모형에서 추정된 회귀모형에 대한 해석시 주의 변수선택 선형회귀모형과 마찬가지로 모든 가능한 회귀, 전진선택법, 후진소거법 그리고 단 계적방법 등을 사용 선형회귀모형에서 사용하는 오차제곱합 대신에 로그우도함수 값을 사용 35

예를 들면, 전진선택법에서는 각 단계마다 로그우도함수값의 증가량이 가장 큰 변 수를 선택 모형선택기준으로는 AIC(Akaike Information creterion), BIC (Bayeian Information criterion) 등 사용 AIC 또는 BIC가 최소인 모형 선택 제 2 절 예제 회사채의 신용등급(안정 / 위험)과 여러 가지 재무자료들 사이의 관계 입력변수 x 1 : 자산대비 부채현황 지표 x 2 : 현금회전율 x 3 : 종업원 수(50인 이하=0, 50-100인=1, 100인 이상=2) 출력변수: 회사채 신용등급 (안정=1, 위험=0) x 3 가 질적변수이므로 가변수가 필요 x 3 를 위한 가변수 z 1 과 z 2 범주 z 1 z 2 50인 이하 0 0 50-100 인 1 0 100인 이상 0 1 가변수를 포함하는 로지스틱 회귀모형 P(Y = 1 x) = F (a + b 1 x 1 + b 2 x 2 + b 3 z 1 + b 4 z 4 ), 여기서 F (x) = exp(x)/(1 + exp(x)) 회귀계수 추정값 36

입력변수 회귀계수 표준오차 χ 2 유의확률 절편 12.221 3.594 11.562 0.000 x 1-1.072 0.393 7.438 0.006 x 2 11.524 4.131 7.781 0.005 z 1 0.698 0.357 3.940 0.047 z 2 2.614 0.791 10.907 0.001 모든 변수가 작은 유의확률을 갖으므로 출력변수를 설명하는데 유의 x 1 의 회귀계수의 부호가 음수이므로 부채비율이 높을 수록 회사채의 신용이 낮음을 의미하고 x 2 의 회귀계수의 부호가 양수이므로 현금회전율이 높을 수 록 회사채의 신용이 높아짐 z 1 : 50-100인 규모의 회사와 50인 미만의 회사의 회사채 신용등급의 오즈비 는 exp(0.6981) = 2.00 으로, 50-100인 규모의 회사의 화사채가 50인 미만의 회사채에 비하여 약 2배정도 신용이 좋다는 의미 z 2 : 100인 이상 규모의 화사와 50인 미만의 회사의 회사채 신용등급의 오즈 비는 exp(2.6141) = 13.65 으로 100인 이상 규모의 회사의 화사채가 50인 미 만의 회사채에 비하여 약 13.65배정도 신용이 좋다는 의미 가변수인 z 1 과 z 2 의 해석은 항상 50인 미만의 회사(가변수 값이 모두 0인) 와 비교 가변수를 다르게 만들면 회귀계수의 추정치가 달라지나 오즈비는 항상 일정 함. 따라서, 그 결과의 해석에는 차이가 없음. 제 3 절 로지스틱 모형을 이용한 분류 주어진 입력변수 x 에 대하여 로지스틱 함수를 이용하여 출력변수 Y 가 1이 될 확 률 P(Y = 1 x) 를 추정 0과 1사이의 적당한 수 c 를 절단값(cut-off alue)로 선택 P(Y = 1 x) 가 c 보다 크면 자료를 Y = 1 인 그룹에 할당하고 P(Y = 1 x) 가 c 보다 작으면 자료를 Y = 0 인 그룹에 할당 37

절단값의 선택 절단값 c의 결정은 여러 가지를 고려하여 결정 고려사항 1: 사전정보 사전정보에 의하여 두번째 범주의 자료(y = 1 인 자료)가 많다면, 절단값을 작은 값으로 정함 고려사항 2: 손실함수 두 번째 범주의 자료를 잘못 분류하는 손실이 첫 번째 범주의 자료를 잘못 분류하 는 것에 비하여 손실 정도가 심각하게 큰 경우에는 절단값 c 를 작게 잡음 그 외 고려사항: 전문가 의견, 민감도와 특이도 등 로지스틱 모형을 이용한 분류 경계 로지스틱 모형의 분류 경계는 선형 P(Y = 1 x) > c 이면 그룹 1에 분류 log(p(y = 1 x)/(1 P(Y = 1 x)) > log(1 + c)/c 이면 그룹 1로 분류 즉, a + bx > log(c ) 이면 그룹 1에 분류 분류경계가 비선형인 경우 다항 로지스틱 모형으로 추정할 수 있음 의사결정나무나 신경망모형 등은 비선형 분류 경계를 찾는 방법들임 제 4 절 로지스틱 모형의 특징 선형회귀모형과의 유사성으로 인하여 사용이 쉬움 회귀계수와 오즈비를 이용하여 해석이 편리함 불필요한 변수를 제거하고 꼭 필요한 변수만을 골라냄으로써 모형의 예측력과 해 석력을 높일 수 있음 로지스틱 모형의 변수간의 관계는 기본적으로 선형모형으로 비선형 모형을 고려하 기 위하여는 다항 로지스틱회귀모형이나 의사결정나무, 신경망 모형 등의 비모수 적 방법을 사용 38

제 5 절 R 예제 : Sonar 데이터 Gorman and Sejnowki in their tudy of the claification of onar ignal uing a neural network. Input ariable i in the range 0.0 to 1.0. Each number repreent the energy within a particular frequency band, integrated oer a certain period of time. Cla: R if the object i a rock and M if it i a mine (metal cylinder). A data frame with 208 oberation on 61 ariable, all numerical and one (the Cla) nominal. > library(mlbench) > data(sonar) > t.idx = ample(1:208, 104) > Sonar.tr = Sonar[t.idx,] > Sonar.te = Sonar[-t.idx,] > logit1 = glm(cla~., Sonar.tr, family=binomial()) Warning meage: 1: algorithm did not conerge in: glm.fit(x =.. 2: fitted probabilitie numerically 0 or 1 occurred in: glm.fit(x = X, y = Y,... > logit1 Call: glm(formula = Cla ~., family = binomial(), data = Sonar.tr) Coefficient: (Intercept) V1 V2 V3 143.3421-336.9494-195.2610 803.1947 V4 V5 V6 V7-363.9940 37.2100-138.6399 115.5241 V8 V9 V10 V11-7.0440-129.1505 19.7847 46.0523 39

V12 V13 V14 V15 0.5806-175.1533 46.4356-7.6232... Degree of Freedom: 103 Total (i.e. Null); 43 Reidual Null Deiance: 144.1 Reidual Deiance: 1.861e-09 AIC: 122 > prob = predict(logit1, Sonar.te, type="repone") > p.cla = ifele(prob>0.5, "R", "M") > table(cla=sonar.te$cla, pred=p.cla) pred Cla M R M 32 28 R 11 33 > mean(sonar.te$cla!= p.cla) [1] 0.375 40

제 4 장 의사결정나무 제 1 절 의사결정나무에 대한 소개 지도학습 기법으로 각 변수의 영역을 반복적으로 분할함으로써 전체 영역에서의 규칙 생성 적용결과에 의해 if-then으로 표현되는 규칙이 생성 규칙의 이해가 쉽고 SQL과 같은 DB언어로 표현하기 쉬움 해석이 쉬움 예측력과 해석력 예측력만이 중요한 경우 예: 홍보책자 발송회사가 기대집단의 사람들이 가장 많은 반응을 보일 고객 유치 방안을 위한 예측 많은 경우 결정을 내리게 된데 대한 이유를 설명하는 것(해석력)이 중요 예: 은행의 대출심사 결과 부적격 판정이 나온 경우 고객에게 부적격 이유를 설명 하여야 함 의사결정나무는 해석력이 좋음 41

의사결정나무의 구성요소 그림 4.1: 의사결정나무에 대한 예 뿌리마디(root node): 시작되는 마디로 전체 자료로 구성 자식마디(child node): 하나의 마디로부터 분리되어 나간 2개 이상의 마디들 부모마디(parent node): 주어진 마디의 상위마디 끝마디(terminal node): 자식마디가 없는 마디 중간마디(internal node): 부모마디와 자식마디가 모두 있는 마디 가지 (branch): 뿌리마디로부터 끝마디까지 연결된 마디들 깊이 (depth): 뿌리마디부터 끝마디까지의 중간마디의 수 의사결정나무 구축을 위한 질문 앞에서 소개된 의사결정나무를 보면 다음과 같은 질문을 던질 수 있다. 뿌리마디의 질문이 왜 소득인가? : 분할기준(plitting rule) 의 선택 4번, 5번, 7번 마디들은 끝마디인 반면 6번 마디는 왜 중간마디인가? : 분할을 계속할 것인가 그만둘 것인가 (topping and pruning rule) 42

7번 마디에 속하는 자료는 신용상태를 어떻게 결정하여야 하는가? : 각 끝마디에서의 예측값 할당 제 2 절 의사결정나무의 형성과정 나무의 성장(growing): 각 마디에서 적절한 최적의 분리규칙을 찾아서 나무를 성 장 시킴. 정지규칙을 만족하면 중단. 가지치기(pruning): 오분류율을 크게 할 위험이 높거나 부적절한 추론규칙을 가지 고 있는 가지를 제거. 또한, 불필요한 가지를 제거. 타당성 평가: 이익도표(gain chart)나 위험도표(rik chart) 또는 테스트 자료 (tet ample) 를 사용하여 의사결정나무를 평가 해석 및 예측: 구축된 나무모형을 해석하고 예측모형을 설정 분리규칙 각 마디에서 분리규칙은 분리에 사용될 입력변수 (분리변수, plit ariable)의 선 택과 분리가 이루어 질 기준 (분리 기준, plit criterion)을 의미 분리에 사용될 변수(X)가 연속 변수인 경우에는 X 가 분리기준 c 보다 작으면 왼 쪽 자식마디로 X 가 c 보다 크면 오른쪽 자식마디로 자료를 분리 분리변수가 범주형인 경우에는 분리기준은 전체 범주를 두 개의 부분집합으로 나 누는 것이 됨. 예를 들면, 전체 범주가 {1,2,3,4}일때 분리기준의 예로는 {1,2,4} 과 {3}이 되고 분리변수가 범주 {1,2,4}에 속하면 왼쪽자식마디로 범주 {3}에 속 하면 오른쪽 자식마디로 자료를 분리 순수도와 불순도 각 마디에서 분리변수와 분리기준은 목표변수의 분포를 가장 잘 구별해주도록 정 함 43

목표변수의 분포를 얼마나 잘 구별하는가에 대한 측정치로 순수도 (purity) 또는 불순도 (impurity) 를 사용 (예) 그룹0과 그룹 1의 비율이 45%와 55%인 마디는 각 그룹의 비율이 90%와 10%인 마디에 비하여 순수도가 낮다 또는 불순도가 높다라고 함 각 마디에서 분리변수와 분리 기준의 설정은 생성된 두 개의 자식마디의 순수도의 합이 가장 큰 (혹은 불순도의 합이 가장 작은) 분리변수와 분리기준을 선택 불순도의 측도 분류모형 (범주형 목표변수) 카이제곱 통계량 (chi-quare tatitic) 지니지수 (Gini index) 엔트로피지수 (Entropy index) 회귀모형 (연속형 목표변수) 분산분석에 의한 F- 통계량 (F-Statitic) 분산의 감소량 카이제곱 통계량 주어진 분리변수와 분리기준에 의하여 다음의 표가 주어졌다. Good Bad Total left 32 48 80 right 178 42 220 Total 210 90 300 위의 표를 실제도수(O)라고 한다. 앞의 표에서 각 셀에 대한 기대도수(E)를 다음과 같이 구할 수 있다. 44

left 300 80 good bad total 210 300 80 90 80 300 300 300 300 left =56 =24 80 right 154 66 220 total 210 90 300 카이제곱 통계량 = ((기대도수-실제도수)의 제곱/기대도수)의 합 (예) 앞의 표에서 카이제곱통계량은 (56 32) 2 56 + (24 48)2 24 + (154 178)2 154 + (66 42)2 66 = 46.75 카이제곱통계량이 최대가 되는 분리변수와 분리기준을 사용 지니지수 지니지수는 다음과 같이 정의된다. 지니지수 = 2P(left 에서 good)p(left 에서 bad)p(left) +2P(right 에서 good)p(right 에서 bad)p(right) (예) 앞의 표에서 지니지수를 구하면 2 32 48 80 80 80 300 + 2178 42 220 220 220 300 = 0.355 모든 분리변수와 분리기준에서 지니지수를 가장 작게 하는 분리변수와 분리기준 선택 엔트로피 지수 엔트로피는 다음과 같이 정의된다. 엔트로피(left) = P(left에서 good) log 2 P(left에서 good) P(left에서 bad) log 2 P(left에서 bad) 45

엔트로피 지수 = 엔트로피(left)P(left) + 엔트로피(right)P(right) (예) 앞의 표에서 엔트로피 지수를 구하면 ( 32 ( ) 32 80 log 2 + 48 ( )) 48 80 80 80 log 2 80 300 ( ( ) 178 178 220 log 2 + 42 ( 42 220 220 log 2 220 )) 220 300 =.7747 분리방법 예제 아래의 자료에 대하여 지니지수를 이용하여 최적의 분리를 찾아보자. Temperature Humidity Windy Cla Hot High Fale N Hot High True N Hot High Fale P Mild High Fale P Cold Normal Fale P Cold Normal True N Cold Normal True P Mild High Fale N Cold Normal Fale N Mild Normal Fale P Mild Normal True P Mild High True P Hot Normal Fale N Mild High True P Temperature 를 기준으로 분리 left={hot}, right = {Mild,Cold} 46

Gini index=2 1 4 3 4 4 14 + 2 3 7 10 10 10 N P total left 3 1 4 right 3 7 10 total 6 8 14 14 = 0.4071 left={mild}, right = {Hot,Cold} Gini index=2 1 6 5 6 6 14 + 2 5 8 3 8 8 N P total left 1 5 6 right 5 3 8 total 6 8 14 14 = 0.3869 left={cold}, right = {Hot,Mild} Gini index=2 2 4 2 4 4 14 + 2 5 6 10 10 10 Humidity를 기준으로 분리 left={high}, right = {Normal} N P total left 2 2 4 right 4 6 10 total 6 8 14 14 = 0.4860 Gini index=2 3 7 4 7 7 14 + 2 3 7 4 7 7 N P total left 3 4 7 right 3 4 7 total 6 8 14 14 = 0.4897 47

Windy를 기준으로 분리 left={fale}, right = {True} Gini index=2 4 6 2 6 6 14 + 2 4 8 4 8 8 N P total left 4 4 8 right 2 4 6 total 6 8 14 14 = 0.4762 결과를 종합하여 불순도가 가장 작은 분리를 선택하므로 Temperature에 대하여 left = {Mild}, right={hot, Cold}로 분리하는 것이 가장 좋음 회귀모형에서 불순도의 측정 오른쪽 자식마디와 왼쪽 자식마디의 평균의 차이를 검정하는 t- 통계량의 유의확 률이 가장 작은 분리변수와 분리기준을 사용하여 분리 왼쪽 자식마디의 자료의 분산과 오른쪽 자식마디의 자료의 분산의 합이 가장 작은 분리를 선택 불순도에 대한 참고사항 불순도는 각 마디마다 정의됨 불순도를 이용한 분리기준의 선택에서는 자식마디의 불순도의 합을 가장 작게 하 는 분리를 선택 이 방법은 부모마디의 불순도에서 자식마디의 불순도의 합의 차이가 최대가 되는 분리를 찾는 것과 동일함 여러 개의 마디 중에서 최적의 분리를 찾는 경우에는 자식마디의 불순도의 합을 사용하지 않고, 부모마디와 자식마디 사이의 불순도의 차이를 최대로 하는 분리를 찾음 48

정지규칙 현재의 마디가 더 이상 분리가 일어나지 못하게 하는 규칙 규칙의 종류 모든 자료가 한 그룹에 속할 때 마디에 속하는 자료가 일정 수 이하일 때 불순도의 감소량이 아주 작을 때 뿌리마디로부터의 깊이가 일정 수 이상일 때 등이 있음 가지치기 지나치게 많은 마디를 가지는 (복잡한 모형) 의사결정나무는 새로운 자료에 적용할 때 예측오차가 매우 클 가능성이 있음 성장이 끝난 나무의 가지를 제거하여 적당한 크기를 갖는 나무모형을 최종적인 예 측모형으로 선택하는 것이 예측력의 향상에 도움이 됨 적당한 크기를 결정하는 방법은 평가용 자료(alidation data)를 사용하여 예측에 러를 구하고 이 예측에러가 가장 작은 나무모형을 선택 제 3 절 여러가지 알고리즘 CART Claification And Regreion Tree 1984년 Breiman과 그의 동료들이 발명 기계학습(machine learning) 실험의 산물 가장 널리 사용되는 의사결정나무 알고리즘 이지분류(binary plit)를 이용 49

불순도: 목표변수가 범주형인 경우 지니지수를 이용하고 목표변수가 연속형인 경 우에는 분산을 이용 CART에서는 압력변수들의 선형결합 중에서 최적의 분리를 찾기도 함 C4.5 호주의 연구원 J. Ro Quinlan에 의하여 개발 초기버전은 ID 3 (Iteratie Dichotomizer 3)로 1986년에 개발 CART와는 다르게 각 마디에서 다지분리 (multiple plit)가 가능 범주형 입력변수에 대해서는 범주의 수만큼 분리가 일어남 불순도: 엔트로피 지수를 사용 CHAID Chi-quared Automatic Interaction Detection 1975년 J.A. Hartigan이 발표 1963년 J.A. Morgan과 N.A. Souquit에 의해 서술된 AID의 후신 가지치기를 하지 않고 나무를 적당한 크기에서 성장을 중지 입력변수가 반드시 범주형 불순도: 카이제곱 통계량을 사용 제 4 절 의사결정나무의 특징 의사결정나무의 장점 이해하기 쉬운 규칙을 생성 분류작업이 용이 50

연속형 변수와 범주형 변수를 모두 다 취급할 수 있음 가장 좋은 변수를 명확히 알아낼 수 있음 이상치에 덜 민감 모형의 가정 (선형성, 등분산성 등)이 필요 없는 비모수적 모형 의사결정나무의 단점 목표변수가 연속형인 회귀모형에서는 그 예측력이 떨어짐 나무가 너무 깊은 경우에는 예측력의 저하뿐 아니라 해석도 어려움 계산량이 많을 수 있음 분류경계가 비사각인 경우 문제가 있음 결과가 불안정 제 5 절 R 예제 Iri Data > library(mass) > library(tree) > data(iri) > ir.tr = tree(specie ~., iri) > ummary(ir.tr) Claification tree: tree(formula = Specie ~., data = iri) Variable actually ued in tree contruction: [1] "Petal.Length" "Petal.Width" "Sepal.Length" Number of terminal node: 6 51

Reidual mean deiance: 0.1253 = 18.05 / 144 Miclaification error rate: 0.02667 = 4 / 150 > ir.tr node), plit, n, deiance, yal, (yprob) * denote terminal node 1) root 150 329.600 etoa ( 0.33333 0.33333 0.33333 ) 2) Petal.Length < 2.45 50 0.000 etoa ( 1.00000 0.00000 0.00000 ) * 3) Petal.Length > 2.45 100 138.600 ericolor ( 0.00000 0.50000 0.50000 ) 6) Petal.Width < 1.75 54 33.320 ericolor ( 0.00000 0.90741 0.09259 ) 12) Petal.Length < 4.95 48 9.721 ericolor ( 0.00000 0.97917 0.02083 ) 24) Sepal.Length < 5.15 5 5.004 ericolor ( 0.00000 0.80000 0.20000 ) * 25) Sepal.Length > 5.15 43 0.000 ericolor ( 0.00000 1.00000 0.00000 ) * 13) Petal.Length > 4.95 6 7.638 irginica ( 0.00000 0.33333 0.66667 ) * 7) Petal.Width > 1.75 46 9.635 irginica ( 0.00000 0.02174 0.97826 ) 14) Petal.Length < 4.95 6 5.407 irginica ( 0.00000 0.16667 0.83333 ) * 15) Petal.Length > 4.95 40 0.000 irginica ( 0.00000 0.00000 1.00000 ) * 그림 4.2: iri 데이터에 대한 분류 트리와 분할 > ir.tr1 = nip.tree(ir.tr, node = c(12, 7)) 52

> plot(ir.tr1) > text(ir.tr1, all = T) > par(pty = "") > plot(iri[, 3],iri[, 4], type="n", xlab="petal length", ylab="petal width") > text(iri[, 3], iri[, 4], c("", "c", "")[iri[, 5]]) > partition.tree(ir.tr1, add = TRUE, cex = 1.5) 그림 4.3: Iri 데이터에 대한 오분류율을 이용한 가지치기과 가지치기된 트리 > plot(prune.micla(ir.tr)) > fin.tr = prune.micla(ir.tr, bet=4) > plot(fin.tr) > text(fin.tr, all = T) 53

제 5 장 신경망 제 1 절 신경망에 대한 소개 신경망이란? 인간의 두뇌구조를 모방한 지도학습 방법 여러 개의 뉴런들이 상호 연결하여 입력값에 대한 최적의 출력값을 예측 장점: 좋은 예측력 단점: 해석이 어려움 신경망의 배경 1940년대 McCulloch와 Pit에 의해 인간 뇌의 신경노드의 작동 모형 구축 1950년대 Roenblatt에 의하여 지도학습에 응용될 수 있는 단층 신경망 Perceptron 개발 1980년대 이전에는 컴퓨터 성능이 낮아서 그리 널리 쓰이지 않음 1980년대에 Hopfield에 의해 다시 각광을 받기 시작함 다층 신경망 (multi-layer perceptron) 과 역전파 (back propagation) 알고리즘의 결 합은 신경망 모형의 응용분야를 크게 넓힘 54

그림 5.1: 인간의 신경세포 그림 5.2: 신경망 모형의 구조 55

용어 정리 MLP (multi-layer perceptron): 입력층, 은닉층, 출력층으로 구성 SLP (ingle-layer perceptron): 입력층과 출력층으로만 구성 입력층: 각 입력변수에 대응되는 노드로 구성. 노드의 수는 입력변수의 개수와 같 음 은닉층: 입력층으로부터 전달되는 변수값들의 선형결합을 비선형함수로 처리하여 출력층 또는 다른 은닉층에 전달 출력층: 목표변수에 대응되는 노드. 분류모형에서는 그룹의 수 만큼의 출력노드가 생성 제 2 절 다층 신경망 (MLP) 각함수구조 Output = f 2 (w 4 + w 5 z), z = f 1 (w 0 + w 1 x 1 + w 2 x 2 + w 3 x 3 ) 함수 f 1 과 f 2 를 활성함수라고 함 회귀모형(출력변수가 연속형인 경우에는)는 f 2 (x) = x 가 많이 쓰임 분류모형인 경우에는 f 2 에 시그모이드(igmoid) 함수가 많이 사용됨 f 1 에는 시그모이드 함수가 사용됨 시그모이드 함수 시그모이드 함수는 단극성, 양극성 두 종류가 있음 단극성 시그모이드 함수: f(x) = 1 1+e x 56

증가함수이며 출력값이 0과 1사이의 값을 갖음 로지스틱함수와 유사 양극성 시그모이드 함수 f(x) = 1 e x 1+e x 증가함수이며 출력값이 -1과 1사이의 값을 갖으며 f(0) = 0 그림 5.3: 시그모이드 함수 그림 다양한 MLP 은닉노드의 수가 k개 인 일반적인 MLP의 함수구조는 다음과 같다. Output = f 2 (w 20 + w 21 z 1 + + w 2k z k, z i = f 1 (w 1i0 + w 1i1 x 1 + + w 1ip x p ), i = 1,..., k 활성함수, 특히, 은닉노드의 활성함수를 바꿈으로써 여러 가지 신경망 모형을 만들 수 있음 (예) RBF (Radial Bai function) 신경망 목적함수 신경망 모형을 구축하는 방법은 크게 두 단계로 이루어 짐 57

1단계: 적절한 수의 은닉층과 은닉노드의 수 결정 2 단계: 연결강도 (weight)를 추정 연결강도의 추정은 주어진 목적함수를 최소화 (또는 최대화)를 통하여 추정 일반적으로 많이 쓰이는 목적함수로는 선형모형에 쓰이는 오차제곱합 (y i p i ) 2 이다. 여기서 y i 는 i 번째 패턴의 실제 값이고 p i 는 i 번쨰 패턴의 예측값 분류 모형에서 사용되는 또 다른 목적함수로는 로그우도함수 (log likelihood)를 사 용. 목적변수가 이진형인 경우 (y i ln(p i ) + (1 y i ) ln(1 p i )) 역전파 (Back propagation) 알고리즘 신경망의 목적함수는 연결강도에 대하여 비선형 함수인데 이의 최적화를 위해 역 전파 방법이 널리 사용됨 역전파 알고리즘 1 단계: 주어진 연결강도을 이용하여 예측값을 계산 2 단계: 실제 출력값과 예측값 사이의 오차를 계산 3 단계: 오차를 은닉층과 입력층으로 역전파 시켜서 연결강도를 새로 조절 위의 3단계를 초기 연결강도를 이용하여 계속 반복. 연결강도의 값이 일정하게 유 지되면 반복을 멈춤 역전파시 학습률 (learning rate)가 필요한데, 이 값은 처음에는 크게, 그리고 반복 수가 증가 하면서 점점 작아지도록 정하는 것이 좋음 신경망 구축 4 단계 자료의 선택 및 적절한 변환 신경망모형의 은닉층의 노드 수와 활성함수의 결정 (신경망 모형 선택) 58

연결강도의 최적화 결과의 해석 불순도에 대한 참고사항 불순도는 각 마디마다 정의됨 불순도를 이용한 분리기준의 선택에서는 자식마디의 불순도의 합을 가장 작게 하 는 분리를 선택 이 방법은 부모마디의 불순도에서 자식마디의 불순도의 합의 차이가 최대가 되는 분리를 찾는 것과 동일함 여러 개의 마디 중에서 최적의 분리를 찾는 경우에는 자식마디의 불순도의 합을 사용하지 않고, 부모마디와 자식마디 사이의 불순도의 차이를 최대로 하는 분리를 찾음 신경망모형 선택 방법 Trial and error 은닉층 수, 은닉층의 노드 수, 활성함수를 변화시켜 가면서 가장 좋은 모형을 찾음 비용과 시간이 많이 소요됨 실제 분석에서는 가장 많이 쓰이는 방법 Contructie algorithm 작은 모형에서 시작해 큰 모형으로 키워나감 은닉층의 노드의 수를 결정 할 때 많이 사용 다른 수의 은닉 노드를 갖는 신경망들을 비교할 수 있는 통계량이 필요 실제 분석에서는 노드 수를 증가시키며 학습오차의 감소량을 측정하고 이 감 소량이 급격히 줄어드는 곳의 노드 수를 최종 모형으로 선택 59

Pruning 큰 모형에서 시작하여 작은 모형으로 축소시키는 방법 의사결정나무의 pruning(가지치기) 방법과 유사 일반적으로, pruning (후진소거법) 이 contructie algorithm (전진선택법) 에 비해 좋은 결과를 제공 하지만, pruning방법은 큰 모형을 결정하는 문제가 쉽지 않으며, 큰 모형에는 많은 수의 모수가 있어서 그 추정이 쉽지 않음 Regularization 모형의 복잡도의 크기에 비례하는 penalty를 넣은 적합도 함수를 최소화 선형모형에서 사용되는 Mallow Cp나 AIC의 사용과 유사 penalty를 결정하기가 쉽지 않음 penalty에 따라 최종 결과가 많은 차이를 보임 제 3 절 신경망 구축시 고려사항 입력자료 선택 신경망모형은 복잡성으로 인하여 입력자료의 선택에 매우 민감 좋은 입력자료란 범주형 입력변수가 모든 범주에서 일정 빈도 이상의 값을 갖음 연속형 입력변수 값들의 범위가 변수 간에 많은 차이가 없음 입력변수의 수가 너무 많지 않음 (물론, 너무 적어도 안됨) 범주형 출력값의 각 범주의 빈도가 비슷함 60

연속형 변수의 변환 / 범주화 연속형변수의 경우 그 분포가 평균을 중심으로 대칭이 아닌 경우에는 안 좋은 결 과를 생성 (예) 소득 : 일반적으로 대부분의 고객의 소득은 평균 미만이고 아주 특정한 고객 의 소득이 매우 큰 패턴을 보임 분포가 대략 대칭이 되도록 변환 (예: log변환) 다른 방법으로는 연속변수의 범주화 (예) 소득을 매우 낮음, 낮음, 중간, 높음, 대단히 높음 등으로 범주화. 각 범주의 빈도가 비슷하게 되도록 설정하는 것이 바람직 새로운 범주의 생성 때로 원 자료의 변수들을 조합하여 새로운 변수를 만든 후 이 변수를 입력변수로 사용하면 아주 좋은 결과를 얻을 수 있음 (예) 고객의 여러 가지 사항을 고려한 (수입, 학력 등) 구매지수를 만든 후 이 지 수를 입력으로 하여 특정한 상품의 구매여부를 예측 범주형 변수의 가변수화 신경망에서도 범주형 변수를 가변수화 시켜야 함 선형모형과는 다르게, 신경망 모형에서는 가변수화를 어떻게 하느냐에 따라서도 그 결과가 민감하게 반응 (예) 남자와 여자를 0과 1로 만든 경우와?1과 1로 만든 경우의 결과가 틀릴 수 있음 모든 범주형 변수는 같은 크기로 가변수화 하는 것이 좋음 제 4 절 신경망 모형의 특징 범용 근사자 (unieral approximator) 61

어떠한 분류함수도 근사적으로 표현할 수 있음 은닉층이 하나인 MLP는 범용 근사자 최적화와 비 수렴성 역전파 알고리즘이 제공하는 모형이 최적이 아닌 경우가 많이 발생 특히 역전파알고리즘의 초기값에 민감 초기 값을 바꾸어 가며 여러 개의 신경망을 만든 후 그 중 최적의 모형을 선 택 해석의 어려움 입력변수와 출력변수와의 관계를 파악하는 것이 거의 불가능 신경망모형은 선형모형이나 의사결정나무에 비해 예측력은 뛰어남 실제 분석에서는 신경망과 의사결정나무를 같이 사용하는 방법도 고려 과적합 신경망모형에서 적절한 크기의 모형을 선택하기가 어려움. 비 숙련자가 사용하기 가 어렵고, 많은 경우 과적합의 위험이 있음 제 5 절 R 예제 Iri 데이터 plot(iri[,1:3], col=a.integer(iri$specie), pch=ubtring((iri$specie),1,1)) Partition data into training data and tet data data(iri) # ue half the iri data amp <- c(ample(1:50,25), ample(51:100,25), ample(101:150,25)) iri.tr<-iri[amp,] iri.te<-iri[-amp,] 62

Sepal.Length 2.0 2.5 3.0 3.5 4.0 4.5 5.5 6.5 7.5 2.0 2.5 3.0 3.5 4.0 Sepal.Width 4.5 5.5 6.5 7.5 1 2 3 4 5 6 7 1 2 3 4 5 6 7 Petal.Length 그림 5.4: Iri 자료 Neural Network modeling ir1 <- nnet(specie~., data=iri.tr, ize = 2, decay = 5e-4) # weight: 19 initial alue 83.513437 iter 10 alue 1.427673 iter 20 alue 0.620816 iter 30 alue 0.526732 iter 40 alue 0.484637 iter 50 alue 0.445681... iter 90 alue 0.370717 iter 100 alue 0.369270 final alue 0.369270 63

topped after 100 iteration View Neural network model > name(ir1) "alue" : 에러함수의 값 "wt" : 모수추정치 "fitted.alue" : output추정치 "reidual" : 잔차 > ummary(ir1) a 4-2-3 network with 19 weight option were - oftmax modelling decay=5e-04 b->h1 i1->h1 i2->h1 i3->h1 i4->h1 #은닉노드 1-6.48-5.24-3.83 8.15 6.37 b->h2 i1->h2 i2->h2 i3->h2 i4->h2 #은닉노드 2 0.39 0.61 1.79-3.02-1.30 b->o1 h1->o1 h2->o1 #출력노드 1-2.48-1.83 9.14 b->o2 h1->o2 h2->o2 #출력노드 2 5.96-9.13-7.81 b->o3 h1->o3 h2->o3 #출력노드 3-3.54 10.84-1.26 Model 평가 : Tet error y<-iri.te$specie p<- predict(ir1, iri.te, type = "cla") tt<-table(y, p) y p etoa ericolor irginica 64

etoa 25 0 0 ericolor 0 21 4 irginica 0 0 25 Hidden unit 의 수에 따른 Tet error tet.err<-function(h.ize) { ir <- nnet(specie~., data=iri.tr, ize = h.ize, decay = 5e-4, trace=f) y<-iri.te$specie p<- predict(ir, iri.te, type = "cla") err<-mean(y!= p) c(h.ize, err) } out<-t(apply(2:10, FUN=tet.err)) pdf("nntet.pdf") plot(out, type="b", xlab="the number of Hidden unit", ylab="tet Error") de.off() 65

제 6 장 연관성분석 제 1 절 연관성 분석에 대한 소개 데이터 안에 존재하는 항목간의 연관규칙 (aociation rule)을 발견하는 과정 연관규칙: 상품을 구매하거나 서비스를 받는 등의 일련의 거래나 사건들의 연관성 에 대한 규칙 연관성 분석을 마케팅에서 손님의 장바구니에 들어있는 품목간의 관계를 알아본다 는 의미에서 장바구니분석 (market baket analyi) 이라고도 함 왜 연관성 분석을 하는가? 고객의 슈퍼마켓에서 구입한 물건들이 담겨져 있는 장바구니의 정보를 생각해보자. 연관성 분석은, 특정한 상품을 구입한 고객이 어떤 부류에 속하는지, 그들이 왜 그 런 구매를 했는지 알기 위해서 고객들이 구매한 상품에 대한 자료를 분석하는 것 이러한 분석을 통하여 효율적인 매장진열, 패키지 상품의 개발, 교차판매전략 구 사, 기획상품의 결정 등에 응용할 수 있음 연관성 분석의 응용 백화점이나 호텔에서 고객들이 다음에 원하는 서비스를 미리 알 수 있음 66

신용카드, 대출 등의 은행서비스 내역으로부터 특정한 서비스를 받을 가능성이 높 은 고객의 탐지 가능 입력층: 각 입력변수에 대응되는 노드로 구성. 노드의 수는 입력변수의 개수와 같 음 의료보험금이나 상해보험금 청구에서 특이한 형태를 보이는 경우 보험사기의 징조 가 될 수 있고 추가적인 조사 필요 환자의 의무기록에서 여러 치료가 같이 이루어진 경우 합병증 발생의 징후 탐지 제 2 절 연관성 규칙 유용한 규칙 (예) 목요일 식료품 가게를 찾는 고객은 아기 기저귀와 맥주를 함께 구입하는 경 향이 있다 자명한 규칙 (예) 한 회사의 전자제품을 구매하던 고객은 전자제품을 살 때 같은 회사의 제품을 사는 경향이 있다 설명이 불가능한 규칙 (예) 새로 연 건축 자재점에서는 변기덮게가 많이 팔린다 식료품 거래내역 예제 다음의 표는 5개 제품을 취급하는 편의점에서 5번의 거래 내역이다. 고객번호 품목 1 오렌지 쥬스,사이다 2 우유, 오렌지 쥬스, 식기세척제 3 오렌지 쥬스, 세제 4 오렌지 쥬스, 세제, 사이다 5 식기 세척제, 사이다 67

동시구매표 작성 연관성 규칙의 조건 오렌지 쥬스 식기세척제 우유 사이다 세제 오렌지 쥬스 4 1 1 2 2 식기세척제 1 2 1 1 0 우유 1 1 1 0 0 사이다 2 1 0 3 1 세제 2 0 0 1 2 동시구매표로부터 간단한 규칙 (예: 사이다를 구입하는 고객은 오렌지 쥬스를 산 다)을 만들 수 있음 연관 규칙은 f A, then B 와 같은 형식으로 표현 모든 if-then 규칙이 유용한 규칙은 아님 찾은 규칙이 유용하게 사용되기 위하여는 두 품목 (품목 A와 품목 B) 이 함께 구매한 경우의 수가 일정 수준 이상 이여야 하며 (일정 이상의 지지도) 품목 A를 포함하는 거래 중 품목 B를 구입하는 경우의 수가 일정수준 이상 이여야 함 (일정 이상의 신뢰도) 제 3 절 연관성분석의 측도 지지도와 신뢰도 지지도(upport) 두 품목 A와 B의 지지도는 전체 거래항목 중 항목 A와 항목 B가 동시에 포함하는 거래의 비율 지지도 = P(A B) = A와 B가 동시에 포함된 거래수/ 전체 거래수 68

신뢰도(confidence) 연관성 규칙 If A, then B 의 신뢰도는 P(A B) P(A) = 품목 A와 B를 동시에 포함하는 거래 수 품목 A를 포함하는 거래 수 식료품 거래내역 예제 연관성 규칙 오렌지 쥬스를 사면 사이다를 구매한다 의 지지도와 신뢰도 지지도= 2/5 신뢰도= 2/4 연관성 규칙 우유와 오렌지 쥬스를 사면 식기세척제를 산다 의 지지도와 신뢰도 지지도= 1/5 신뢰도=1/1 피자 토핑 예제 다음은 세 피자 토핑 A,B,C 의 동시거래 내역이다. 69

항목 거래수 A 100 B 150 C 200 A+B 400 A+C 300 B+C 200 A+B+C 100 추가안함 550 전체 거래수 = 2000 각 품목의 조합에 대한 지지도 항목 품목이 포함된 거래수 확률 A 900 0.450 B 850 0.425 C 800 0.400 A+B 500 0.250 A+C 400 0.200 B+C 300 0.150 A+B+C 100 0.050 모든 연관성 규칙에 대한 신뢰도 70

규칙 신뢰도 X Y P(X Y ) P(X) P(Y X) A B 0.250 0.450 0.556 B A 0.250 0.425 0.588 C B 0.150 0.400 0.375 B C 0.150 0.425 0.353 A C 0.200 0.450 0.444 C A 0.200 0.400 0.500 A + B B 0.050 0.250 0.200 B + C A 0.050 0.150 0.333 A + C B 0.050 0.200 0.250 향상도 3가지 품목을 포함하는 연관성 규칙 중 가장 신뢰도가 높은 규칙은 B와 C를 구 입하면 A도 구매한다 이며 이 연관성 규칙의 신뢰도는 0.333 전체 거래에서 품목 B+C의 거래가 일어날 가능성은 0.15이기 때문에 이 연관성 규칙은 실질적으로 의미 있는 규칙이 못 됨 이 연관성 규칙은 규칙이 없는 경우보다 못한 결과를 줌 이러한 연관성 규칙의 성질을 향상도를 통하여 파악할 수 있음 정의 연관성 규칙 A이면 B이다 의 향상도는 = 품목 A와 B를 포함하는 거래 수 전체 거래 수 품목 A를 포함하는 거래 수 품목 B를 포함하는 거래 수 P(A B) P(A)P(B) = P(B A) = 신뢰도 P(B) P(B) 향상도는 품목 A가 주어지지 않았을 때의 품목 B의 확률 대비 품목 A가 주어졌을 때의 품목 B의 확률의 증가 비율임 71

이 값이 클 수록 품목 A의 구매여부가 품목 B의 구매 여부에 큰 영향을 미 침 해석 품목 A와 품목 B의 구매가 상호 관련이 없다면 P(B A) 와 P(B) 와 같게 되 어 향상도가 1이 됨 어떤 규칙의 향상도가 1보다 크면, 이 규칙은 결과를 예측하는데 있어서 우 연적 기회 (random chance)보다 우수하다는 것을 의미하고 향상도가 1보다 작으면 이러한 규칙은 결과를 예측하는데 있어서 우연적 기 회보다 나쁨 향상도 의미 1 두 품목이 독립적인 관계 < 1 두 품목이 서로 음의 상관 관계 > 1 두 품목이 서로 양의 상관 관계 제 4 절 연관성분석의 절차 연관성 분석의 3단계 첫 번째 단계: 적절한 품목의 선택 두 번째 단계: 동시구매표를 이용하여 연관규칙을 찾아내는 단계 세 번째 단계: 품목의 수가 너무 많아서 생기는 문제점들의 해결 적절한 품목의 선택 어떤 품목을 선택할 것이냐는 문제는 전적으로 분석의 목적에 달려있음 (예) 대형 할인점에서는 술을 하나의 상위 품목으로 고려할 수 있음. 어떤 경우에 는 술을 세분화 하여 술을 소주, 양주, 맥주, 포도주, 막걸리 등 세분화 가상 품목 (예) 디자이너 레벨(예: Calin Klein), 저지방과 무지방 제품 72

탐색해야 할 규칙의 수는 고려되는 품목의 수에 따라 지수적으로 증가 일반적으로 일차단계에서 상위수준의 품목 분류를 이용하여 규칙을 찾은 후 이를 바탕으로 세분화된 품목으로 분석을 진행 연관성분석은 각 품목들의 거래회수가 비슷한 경우에 가장 효율적 연관규칙 발견 규칙을 어떻게 표현 하느냐가 중요 (예) 아기 기저귀와 목요일이 주어지면 맥주가 결과 인 규칙이 목요일이면 아기 기저귀와 맥주 보다 유익 향상도가 1보다 작은 경우에는 결과를 역으로 나타내는 것이 좋음 시차에 따라 이루어지는 구매에서는 시차 연관성분석 (예) 인터넷 쇼핑에서 웹페이지 방문 순서 현실적 문제의 해결 품목의 수가 증가하면 계산량은 기하급수적으로 증가 가지치기 (pruning)을 이용하여 불필요한 부분을 제거 최소지지도 가지치기(Minimum Support Pruning, MSP) : 지지도가 기준보다 작은 품목의 조합은 더 이상 품목을 추가하지 않음 제 5 절 기타 고려사항 음의 연관규칙 연관성 분석의 3단계 향상도가 1보다 작으면, 결과를 역으로 나타내는 것이 좋음 73

음의 연관규칙은 결과에 이다 대신에 아니다 를 씀 (예) B와 C이면 A이다 의 신뢰도가 33%이면 B와 C이면 A가 아니다 의 신 뢰도는 67%가 됨 향상도가 1보다 작은 규칙의 음의 규칙은 1보다 큰 향상도를 갖음 그러나 음의 연관규칙은 원래의 연관규칙만큼 유용하지 않을 수 있음 시차 연관규칙 시계열자료와 같이 사건들이 어떤 순서로 일어날 때 이 사건들 사이의 연관성을 알아내는 것 흔히 같은 고객의 구매 패턴을 기반으로 구매 패턴이 시간에 따라 연관이 있는지 를 알려고 할 떄 사용됨 다음 자료는 환자가 X라는 병명으로 진단과 치료방법간의 시차 연관성 분석을 목적으로 한다. 환자번호 의사 순서 품목 1356 김 1 진단 X 5690 김 2 진단 X 1356 김 3 처방 2 7573 박 4 진단 X 7573 박 5 처방 2 5690 김 6 처방 1 1356 김 7 처방 1 7573 박 8 처방 2 만약 모든 환자들의 정도가 동일하고 처방 1이 처방 2보다 강도가 높다면, 의사 김은 처방 1을 과잉처방하고 있는 것임 제 6 절 연관성 분석의 특징 결과가 분명함 (If-then 규칙) 74

거대 자료의 분석의 시작으로 적합 변수의 개수가 많은 경우에 쉽게 사용될 수 있고 계산이 용이 품목 수의 증가에 따라 계산량이 폭증 연속형 변수를 사용할 수 없음 적절한 품목을 결정하기가 어려움 거래가 드문 품목에 대한 정보를 찾기가 어려움 제 7 절 R 예제 자료변환 library(arule) ## 1. example: <tranaction자료를 리스트 형태로 변환 a_lit = lit( c("a","b","c"), c("a","b"), c("a","b","d"), c("c","e"), c("a","b","d","e") ) ## et tranaction name name(a_lit) = pate("tr",c(1:5), ep = "") a_lit ## coerce into tranaction tran = a(a_lit, "tranaction") ## analyze tranaction 75

ummary(tran) image(tran) ## 2. example: creating tranaction from a matrix a_matrix = matrix( c(1,1,1,0,0, 1,1,0,0,0, 1,1,0,1,0, 0,0,1,0,1, 1,1,0,1,1), ncol = 5) ## et dim name dimname(a_matrix) = lit( c("a","b","c","d","e"), pate("tr",c(1:5), ep = "")) a_matrix ## coerce tran2 = tran2 a(a_matrix, "tranaction") ## example 3: creating tranaction from data.frame a_data.frame = data.frame( age = a.factor(c(6,8,7,6,9,5)), grade = a.factor(c(1,3,1,1,4,1))) ## note: all attribute hae to be factor a_data.frame ## coerce 76

tran3 = a(a_data.frame, "tranaction") image(tran3) ## 3. example creating from data.frame with NA a_df = ample(c(letters[1:5], NA),10,TRUE) a_df = data.frame(x = a_df, Y = ample(a_df)) a_df tran3 = a(a_df, "tranaction") tran3 a(tran3, "data.frame") adult 자료 library(arule) data(adult) tr(adult) ## Mine aociation rule: APRIOR알고리즘을 이용한 연관규칙의 탐색. ## 지지도 >= 0.5, 신뢰도 0.9 이상인 규칙들만 탐색함 rule = apriori(adult, parameter = lit(upp = 0.5, conf = 0.9, target = "rule")) ## 요약함수 ummary(rule) ## 지지도 >=0.4 이상만 rule = apriori(adult, parameter = lit(upport = 0.4)) ## 좌측 아이템집합에 "ex"가 들어 있고 ## 규칙의 향상도가 0.3이상인 ## 규칙만을 선택 rule.ub = ubet(rule, ubet = rh %pin% "ex" & lift > 1.3) ## 선택된 규칙들을 보여줌 77

inpect(sort(rule.ub)[1:3]) 78

제 7 장 군집분석 제 1 절 군집분석에 대한 소개 모집단 또는 범주에 대한 사전 정보가 없는 경우 주어진 관측값들 사이의 거리 또는 유 사성 을 이용하여 전체를 몇 개의 집단으로 그룹화하여 각 집단의 성격을 파악함으로써 데이터 전체의 구조에 대한 이해를 돕고자 하는 분석법 군집화 군집화의 기준 동일한 군집에 속하는 개체는 여러 속성이 비슷하고, 서로 다른 군집에 속한 관찰 치는 그렇지 않도록 구성 군집화를 위한 변수 (예) 고객세분화 인구통계적 변수 (성별, 나이, 거주지, 직업, 소득, 교육, 종교 등) 구매패턴 변수 (상품, 주기, 거래액 등) 생활패턴 변수 (라이프스타일, 성격, 취미, 가치관 등) 군집분석의 활용 고객 세분화 79

고객이 기업의 수익에 기여하는 정도를 통한 고객세분화 우수고객의 인구통계적 요인, 생활패턴 파악 개별고객에 대한 맞춤관리 고객의 구매패턴에 따른 고객세분화 신상품 판촉, 교차판매를 위한 목표집단 구성 군집분석의 특징 그 기준의 설정, 즉 유사성이나 혹은 비유사성의 정의나 군집의 형태 등에 따라 다양한 방법이 존재 군집분석은 자료의 사전정보 없이 자료를 파악하는 방법으로, 분석자의 주관에 결 과가 달라질 수 있음 특이값을 갖는 개체의 발견, 결측값의 보정 등에 사용될 수 있음 변수의 선택이 중요 제 2 절 거리 군집분석에서는 관측값들이 서로 얼마나 유사한지 또는 유사하지 않은지를 측정할 수 있는 측도가 필요 군집분석에서는 보통 유사성(imilarity) 보다는 비유사성(diimilarity) 을 기준으 로 하며 거리(ditance)를 사용 거리의 정의: 두 점 x 와 y 의 거리 d(x, y) 는 다음을 만족한다. d(x, y) = 0 x = y d(x, y) 0 d(x, y)) = d(y, x)) d(x, y) d(x, z) + d(z, y) (triangular inequality) 80

여러가지 거리 유클리드(Euclid) 거리 ( p ) 1/2 d(x, y) = (x i y i ) 2 i=1 Minkowki 거리 표준화 거리 Mahalanobi 거리 ( p ) 1/m d(x, y) = (x i y i ) m i=1 ( p d(x, y) = (x i y i ) 2 / 2 i i=1 d(x, y) = x T Σ 1 x ) 1/2 범주형 자료의 거리 불일치 항목수 개체 성별 학력 출신지역 A 남자 고졸 경기 B 여자 고졸 전남 C 남자 대졸 경기 d(a, B) = 2, d(a, C) = 1, d(b, C) = 3 제 3 절 계층적 군집분석 가까운 관측값들 끼리 묶는 병합(agglomeration)방법과 먼 관측값들을 나누어가는 분할(diiion) 방법 계층적 군집분석에서는 주로 병합 방법이 주로 사용 81

결과를 나무구조인 덴드로그램(dendrogram)을 통해 간단하게 나타낼 수 있고, 이 를 이용하여 전체 군집들간의 구조적 관계를 쉽게 살펴볼 수 있음 병합방법 처음에 n 개의 자료를 각각 하나의 군집으로 취급 n 개의 군집 중 가장 거리가 가까운 두 개의 군집을 병합하여 n 1 개의 군집 형성 n 1 개의 군집 중 가장 가까운 두 군집을 병합하여 군집을 n 2 개로 줄임 이를 반복하여 계속하여 군집의 수를 줄임 이 과정은 시작부분에는 군집의 크기는 작고 동질적이며, 끝부분에서는 군집의 크 기는 커지고 이질적이 됨 군집들간의 거리를 측정하는 방법에 따라 다양한 종류의 방법이 있음 최단거리, 최장거리, 평균거리 방법 등 그림 7.1: 계층적 군집분석 예시 최단연결법 (Single Linkage Method) 두 군집 사이의 거리를 각 군집에서 하나씩 관측값을 뽑았을 때 나타날 수 있는 거리의 최소값으로 측정 82

같은 군집에 속하는 관측값은 다른 군집에 속하는 관측값에 비하여 거리가 가까운 변수를 적어도 하나는 갖고 있음 군집이 고리형태로 연결되어 있는 경우에는 부적절한 결과 고립된 군집을 찾는데 중점을 둔 방법 다음에 주어진 5개의 관측값에 대한 거리 행렬 (유사성 행렬)에 대하여 최단연결법 으로 군집을 얻고 덴드로그램으로 나타내보자. 1 0 2 7 0 3 1 6 0 4 9 3 8 0 5 8 5 7 4 0 1 2 3 4 5 1단계 거리 행렬에서 d(1, 3) = 1 이 최소이므로 관측값 1과 3을 묶어 군집 (1,3)을 만든 다. 군집 (1,3)과 관측값 2,4,5와의 거리 d((2), (1, 3)) = min{d(2, 1), d(2, 3)} = d(2, 3) = 6 d((4), (1, 3)) = min{d(4, 1), d(4, 3)} = d(4, 3) = 8 d((5), (1, 3)) = min{d(5, 1), d(5, 3)} = d(5, 3) = 7 를 구하여 다음과 같은 거리 행렬을 만든다. (1,3) 0 2 6 0 4 8 3 0 5 7 5 4 0 (1,3) 2 4 5 83

2단계 다음의 거리 행렬에서 d(2,4)=3이 최소값을 가지므로 관측값 2와 4를 묶어 군집 (2,4)를 만든다. 군집 (2,4)와 군집 (1,3), (5)와의 거리를 구한 후 거리 행렬을 다시 만든다. d((2, 4), (1, 3)) = min{d((2), (1, 3)), d((4), (1, 3))} = d((2), (1, 3)) = 6 d((5), (2, 4)) = min{d(5, 2), d(5, 4)} = d(5, 4) = 4 (1,3) 0 (2,4) 6 0 5 7 4 0 (1,3) (2,4) 5 3단계 d((5), (2, 4)) = 4 이 최소값을 가지므로 군집 (2,4)와 (5)를 묶어 (2,4,5)를 만든 후 d((1, 3), (2, 4, 5)) = d(2, 3) = 6 을 이용하여 다음의 거리행렬을 얻는다. (1,3) 0 (2,4,5) 6 0 (1,3) (2,4,5) 4단계: 전체가 하나의 군집을 이룸 최장연결법 (Complete Linkage Method) 두 군집 사이의 거리를 각 군집에서 하나씩 관측값을 뽑았을 때 나타날 수 있는 거리의 최대값으로 측정 같은 군집에 속하는 관측치는 알려진 최대 거리보다 짧음 군집들의 내부 응집성에 중점을 둔 방법 84

그림 7.2: 최단연결법 예제에 대한 덴드로그램 다음에 주어진 5개의 관측값에 대한 거리 행렬에 대하여 최장연결법으로 군집을 얻고 덴드로그램으로 나타내보자. 1 0 2 7 0 3 1 6 0 4 9 3 8 0 5 8 5 7 4 0 1 2 3 4 5 1단계 1단계는 최단연결법의 1단계와 같다. 즉, 관측값 1과 3이 최단거리에 위치하고 이를 묶어서 새로운 군집 (1,3)을 만든다. 군집 (1,3)과 관측값 2,4,5와의 거리 d((2), (1, 3)) = max{d(2, 1), d(2, 3)} = d(2, 1) = 7 d((4), (1, 3)) = max{d(4, 1), d(4, 3)} = d(4, 1) = 9 d((5), (1, 3)) = max{d(5, 1), d(5, 3)} = d(5, 1) = 8 를 구하여 다음과 같은 거리 행렬을 만든다. 85

(1,3) 0 2 7 0 4 9 3 0 5 8 5 4 0 (1,3) 2 4 5 2단계 다음의 거리 행렬에서 d(2,4)=3이 최소값을 가지므로 관측값 2와 4를 묶어 군집 (2,4)를 만든다. 군집 (2,4)와 군집 (1,3), (5)와의 거리를 구한 후 거리 행렬을 다시 만든다. d((2, 4), (1, 3)) = max{d((2), (1, 3)), d((4), (1, 3))} = d((4), (1, 3)) = 9 d((5), (2, 4)) = max{d(5, 2), d(5, 4)} = d(2, 4) = 5 (1,3) 0 (2,4) 9 0 5 7 5 0 (1,3) (2,4) 5 3단계 d((5), (2, 4)) = 4 이 최소값을 가지므로 군집 (2,4)와 (5)를 묶어 (2,4,5)를 만든 후 d((1, 3), (2, 4, 5)) = d(1, 4) = 9 을 이용하여 다음의 거리행렬을 얻는다. (1,3) 0 (2,4,5) 9 0 (1,3) (2,4,5) 4단계: 전체가 하나의 군집을 이룸 제 4 절 비계층적 군집분석 관측값들을 몇 개의 군집으로 나누기 위하여 주어진 판정기준을 최적화 86

그림 7.3: 최장연결법 예제에 대한 덴드로그램 최적분리 군집분석이라고도 함 대표적인 비계층적 군집분석 방법이 K-평균 방법 K-평균 군집 사전에 결정된 군집수 K에 기초 전체 데이터를 상대적으로 유사한 K개의 군집으로 구분 K-평균 군집법은 계층적 군집법에 비하여 계산량이 적음 대용량 데이터를 빠르게 처리할 수 있음 알고리즘 군집수 K를 결정 랜덤하게 초기 K개 군집의 중심을 선택 각 관측값을 그 중심과 가장 가까운 거리에 있는 군집에 할당하고 군집 중심을 새 로 계산 위의 과정을 기존의 중심과 새로운 중심의 차이가 없을 때까지 반복 87

그림 7.4: K-평균 군집 알고리즘에 대한 예시 초기군집수의 결정 K-평균 군집방법의 결과는 초기 군집수 K의 결정에 민감하게 반응 여러 가지의 K값을 선택하여 군집분석을 수행한 후 가장 좋다고 생각되는 K값을 이용 어떤 결과가 좋은가 하는 문제는 관측값간의 평균 거리(Within Sum of Square) 와 군집간의 평균거리(Between Sum of Square)를 비교함으로써 수행 가장 좋은 방법은 자료의 시각화를 통한 최적 군집수의 결정인데, 자료의 시각화를 위하여는 차원의 축소가 필수적이고, 이를 위하여 주성분 분석방법(PCA)이 널리 사용됨 시각화가 어려운 경우에는 여러 가지 통계량을 사용하는데, 예를 들면, 각 그룹의 산포행렬의 행렬식을 최소로 하는 군집수를 찾음 K-평균 군집 방법의 변형 K-평균방법의 단점 88

군집이 겹치는 경우에 좋지 않음 이상치에 민감 각 관측값이 할당된 군집에 속하지 않을 불확실성에 대한 측정치 없음 대안으로 가우스 혼합모형 (Gauian mixture model)이 있음 가우스 혼합모형 주어진 군집수 k에 대하여, 각 군집의 관측치의 분포가 미지의 평균과 분산을 따 르는 정규분포 가정 자료를 가장 잘 분리할 수 있는 최적의 평균과 분산을 추정과 우도함수의 최대화 의 두 단계를 반복적으로 구함 (Expectation-Maximization) 결과로 각 관측값에 대하여 그 관측값이 각 군집에 속할 획률을 계산 각 관측값을 가장 높은 확률을 갖는 집단으로 할당 이러한 방법을 소프트 군집화 (oft clutering)이라 함 자기조직화지도 자기조직화지도(Self-Organizing Map) 또는 Kohonen Map 이라 함 비슷한 개체들이 서로 이웃하는 위치에 오도록 배치 K-평균 군집에 비해 계산량이 많음 그리드의 폭과 길이를 사전에 지정해야 함 비선형적 차원축소에 의한 다변량 개체들의 위상적 배열(topological ordering) 제 5 절 군집분석의 고려사항 단위 / 가중치 문제 표준화 89

군집분석은 자료 사이의 거리를 이용하여 수행되기 때문에 자료의 단위가 결 과에 큰 영향을 미침 자료의 표준화 표준화 : 각 변수의 관측값에서 평균을 빼고 표준편차로 나누는 것 표준화된 자료는 모든 변수가 평균이 0이고 표준편차가 1 가중치 각 변수의 중요도가 다를 경우 가중치를 이용하여 각 변수의 중요도를 조절 가중치는 대부분의 경우 단위변환(표준화)를 수행한 후 부여 가중치에 대한 군집의 영향을 평가 하기 위하여는 여러 가지의 가중치에 대 하여 군집분석의 결과를 비교 군집 평가 분석자의 주관에 의하여 결정되는 여러가지 사항들(예를 들면, 초기군집수, 가중치 등)이 군집분석의 결과에 어떻게 영향을 미치는가를 알아보기 위해서는 군집분석 결과의 평가가 필수적 사용되어진 거리의 측도를 이용하여 군집내의 거리의 평균과 군집간의 거리의 평 균을 비교할 수 있음. 즉, 군집내의 거리의 평균이 군집간의 거리의 평균 보다 작 을수록 좋음 제 6 절 군집분석의 응용 : 부정탐지 모터제조 공장에서 모터의 불량원인을 알고자 한다. 정상적인 모터의 자료를 이용하여 군집분석을 수행하여 하나의 군집을 찾음 새로운 모터와 이 군집과의 거리가 크면 이 새로운 모터를 불량모터라 의심 신용카드 사기, 보험료 과다 청구등 부정탐지(fraud detection)에 적용 가능 90

제 7 절 군집분석의 특징 탐색적인 기법: 주어진 자료에 대한 사전정보 없이 의미있는 자료구조를 찾아낼 수 있음 다양한 형태의 데이터에 적용가능: 거리만 잘 정의되면 모든 종류의 자료에 적용 할 수 있음 분석방법의 적용이 쉬움 가중치와 거리 정의의 어려움 초기 군집수 k의 결정이 어려움 결과의 해석이 어려움 제 8 절 R 예제 R librarie tat hclut cluter Cluter Analyi Extended Roueeuw et al. cluterfly Explore clutering interactiely uing R and GGobi clutarel Variable Selection for Model-Baed Clutering gclu Clutering Graphic mclut Model-Baed Clutering / Normal Mixture Modeling 거리 계산 x = matrix(rnorm(100), nrow=5) dit(x) dit(x, method= "manhatan") 91

표 7.1: R Package Function Decription Package hclut Hierarchical Clutering tat kmean K-Mean Clutering tat dit ditance matrix computed by uing the pecified ditance meaure tat cophenetic Cophenetic Ditance for a Hierarchical Clutering tat agne Agglomeratie Neting (Hierarchical Clutering) cluter clara Clutering Large Application cluter diana DIiie ANAlyi Clutering cluter pam Partitioning (clutering) of the data into k cluter cluter around medoid, a more robut erion of K-mean. fanny Compute a fuzzy clutering of the data into k cluter. cluter mona MONothetic Analyi Clutering of Binary Variable cluter bannerplot Plot Banner (of Hierarchical Clutering) cluter pltree Clutering Tree - Generic Function cluter ilhouette Compute or Extract Silhouette Information from Clutering cluter Mclut Model-Baed Clutering mclut hc Model-baed Hierarchical Clutering mclut mclutbic BIC for Model-Baed Clutering mclut plot.mclut Plot Model-Baed Clutering Reult mclut uncerplot Uncertainty Plot for Model-Baed Clutering mclut dit(x, method= "maximum") x = c(0, 0, 1, 1, 1, 1) y = c(1, 0, 1, 1, 0, 1) dit(rbind(x,y), method= "binary") x y 0.4 hamming=function(x,y){um(x!= y)} hamming(x,y) [1] 2 92

계층적 군집분석 x = matrix(rnorm(100), nrow=5) dit(x) par(mfrow=c(2,2)) plot(h<-hclut(dit(x), method = "ingle")) plot(h<-hclut(dit(x), method = "complete")) plot(h<-hclut(dit(x), method = "aerage")) plot(h<-hclut(dit(x), method = "centroid"),hang=-1) 그림 7.5: 계층적 군집분석 예제의 결과 K-평균 군집분석 kmean(x, center, iter.max = 10, ntart = 1, 93

algorithm = c("hartigan-wong", "Lloyd", "Forgy", "MacQueen")) INPUT ARGUMENTS: x :data matrix center : cluter의 개수 혹은 cluter 수에 해당되는 초기값 벡터들. iter.max: 최대 반복수 ntart: If center i a number, how many random et hould be choen? algorithm: 결과: $cluter: A ector of integer indicating the cluter $center: A matrix of cluter centre. $within: The within-cluter um of quare for each cluter. $ize: The number of point in each cluter cluplot(x, rbinom(25,2, 0.5)+1, hade=f, color=t, line=0) K-medoid Function: pam(x, k=#, di=) : Partitioning Around Medoid (K-medoid Cluter Analyi) -the argument x can be either a matrix of data in which cae di=f, or x can be a diimilarity matrix where di=t. The parameter k, i the deired number of cluter > data.pam = pam(data.di, di=t, k=3) # Cluter the data from the diimilarity matrix # data.di into 3 group around medoid. 94