제5장 신경망분석
Neural Network Analysis
데이터 마이닝 기법 분류
지도예측
(Supervised Prediction) 입력변수, 목표변수가 존재
입력변수로부터 목표 값을 예측하는 모형 개발이 목적
• Binary Classirier : 이항 분류
• Neural Network : 신경망 모형
• Decision Tree : 의사결정나무
– C5.0, CART, QUEST, CHAID
• Regression : 회귀분석
• Logistic : 로지스틱 회귀분석
• Discriminant : 판별분석
자율예측
(Unsupervised Prediction)
목표변수가 명확히 규정되지 않음
데이터에 존재하는 여러 형태의 특징을 찾는 것이 목적
• K-Means : K-평균 군집화
• Two Step : 2단계 군집화
• Time Series : 시계열 분석
• Apriori : 연관성 규칙
• PCA / Factor : 주성분 / 인자분석
INDEX
1. 신경망의 구조와 개념 – MLP 신경망 2. 신경망의 특징과 적용상의 문제점
3. 분석사례1 신경망과 로지스틱 회귀의 비교 4. 분석사례2 두 개의 은닉층을 가지는 MLP
5. 분석사례3 의사결정나무를 이용한 신경망모형의 해석
5.1 신경망 구조와 개념
제5장 신경망 분석
5.1 신경망 구조와 개념
• 인간의 두뇌구조를 모방한 지도학습 방법
• 여러 개의 뉴런들을 상호 연결하여 입력에 상응하는 최적의 출력 값을 예측
• 1940년대 McCulloch와 Pits에 의해 인간 뇌의 신경 노드의 작동 모형 구축
• 1950년대 Rosenblat에 의하여 지도학습에 응용될 수 있는 단층 신경망 Perceptron 개발
• 1980년대 이전에는 컴퓨터 성능의 저하로 그리 널리 쓰이지 않음
• 1980년대에 Hopfield에 의해 다시 각광을 받기 시작함
• 다층 신경망 모형 (multi-layer perceptron)과 역전의 (Back propagation) 알 고리즘의 결합은 신경망 모형의 응용분야를 크게 넓힘
5.1 신경망 구조와 개념
입력계층 : 각 입력변수에 대응되는 노드 (노드의 수=입력변수의 개수)
은닉계층 : 입력층으로부터 전달되는 변수 값들의 선형결합을 비선형함수 로 처리하여 출력층 또는 다른 은닉층에 전달 출력계층 : 목표변수에 대응되는 노드 (분류모형 : 그룹의 수 만큼 생성) 은닉계층
(Hidden layer)
출력계층 (Output layer) 입력계층
(Input layer)
𝑋𝑋 1 𝑋𝑋 2 𝑋𝑋 𝑛𝑛
𝑌𝑌
5.1 신경망의 구조와 개념
SLP (Single-layer perceptron) 입력층과 출력층으로만 구성된 신경망 모형
MLP (Multi-layer perceptron) 입력층, 은닉층, 출력층으로 구성된 신경망 모형
1X1 X2 X3
output
입력층 출력층
𝑤𝑤
0𝑤𝑤
1𝑤𝑤
2𝑤𝑤
3Σ 𝑓𝑓
입력층
은닉층출력층
Σ 𝑓𝑓 1 Σ 𝑓𝑓 2
1 X1 X2 X3
𝑤𝑤
0𝑤𝑤
1𝑤𝑤
2𝑤𝑤
3output 1
𝑤𝑤
5𝑤𝑤
45.1 신경망의 구조와 개념
종류 활성함수
(Activation Function)
MLP (Multi-Layer Perceptron) 시그모이드함수(sigmoid function)
RBF (Radial Basis function) 원형기준함수(radial basis function) EBF (Elliptical Basis function)
(2개의 은닉층으로 구성) 첫 번째 은닉층 : 선형함수
두 번째 은닉층 : 원형기준함수
MLP
(Multi-layer perceptron) 입력층, 은닉층, 출력층으로 구성된 신경망 모형결합함수 활성함수 결합함수 활성함수
Σ 𝑓𝑓 1 Σ 𝑓𝑓 2
1 X1 X2 X3
𝑤𝑤
0𝑤𝑤
1𝑤𝑤
2𝑤𝑤
3output 1
𝑤𝑤
5𝑤𝑤
45.1 신경망의 구조와 개념
결합함수 (Combination Function)
𝑐𝑐 = 𝑤𝑤0 + 𝑤𝑤1𝑥𝑥1 + ⋯ + 𝑤𝑤𝑝𝑝𝑥𝑥𝑝𝑝 (𝑝𝑝 :입력변수의 수)
• 입력층 또는 은닉층의 마디들을 결합하는 함수
• 대부분의 신경망에서 결합함수로 선형결합을 사용 𝑐𝑐 = 𝑤𝑤0 + 𝑤𝑤1𝑥𝑥1 + 𝑤𝑤2𝑥𝑥2 + 𝑤𝑤3𝑥𝑥3
활성함수 (Activation Function)
𝑓𝑓1 𝑐𝑐 = 1+𝑒𝑒1−𝑐𝑐 : 로지스틱 함수, 𝑓𝑓2 𝑐𝑐 = 1−𝑒𝑒1+𝑒𝑒−𝑐𝑐−𝑐𝑐 : 쌍곡탄젠트
• 입력변수 또는 은닉마디의 결합을 변환하는 함수
• 일반적으로 S자형의 비곡선 형태를 가지며 시그모이드 함수를 사용 𝐻𝐻1 = 𝑓𝑓1 𝑐𝑐 = 𝑓𝑓1 𝑤𝑤0 + 𝑤𝑤1𝑥𝑥1 + 𝑤𝑤2𝑥𝑥2 + 𝑤𝑤3𝑥𝑥3
𝑌𝑌 𝑜𝑜𝑜𝑜𝑜𝑜𝑝𝑝𝑜𝑜𝑜𝑜 = 𝑓𝑓2(𝑤𝑤4 + 𝑤𝑤5𝐻𝐻1)
(그림 5.2참조)
5.1 신경망의 구조와 개념
시그모이드 함수 (sigmoid function)
• 시그모이드 함수는 단극성, 양극성 두 종류가 있다
•
단극성 시그모이드 함수(로지스틱 함수: Logistic Function)
증가함수이며 출력값이 0과 1사이의 값을 갖는다.
𝑓𝑓 𝑥𝑥 = 1 1 + 𝑒𝑒 −𝑥𝑥
• 양극성 시그모이드 함수
(쌍곡탄젠트 함수 : Hyperbolic Tangent Function) 증가함수이며 출력값이 -1과 1사이의 값을 갖는다.
𝑓𝑓 𝑥𝑥 = 1 − 𝑒𝑒 −𝑥𝑥 1 + 𝑒𝑒 −𝑥𝑥
1
0.5
0
𝑋𝑋 𝑓𝑓 𝑥𝑥
𝑓𝑓 𝑥𝑥
1
0
-1
𝑋𝑋
5.2 신경망의 특징과 적용상의 문 제점
제5장 신경망 분석
5.2 신경망의 특징과 적용상의 문제점
범용근사자 (Universal approximator)
• 적절한 활성함수와 적당한 수의 은닉마디를 가지는 MLP는 모든 비선형 곡 선을 매우 정확하게 근사시킬 수 있다는 것을 의미
• 위의 비선형곡선은 아래의 점선과 같은 형태를 가지는 세 개의 은닉마디를 통해 적합이 가능하다 (그림 5.3)
• 비선형 회귀모형으로 적합 한다면, 여러 개의 입력변수를 가지는 함수형태 를 미리 파악 자체가 대부분 불가능하다
신경망은 파악하기 힘든 다차항 or 복잡한 비선형성 근사에 적용 가능하다
5.2 신경망의 특징과 적용상의 문제점
목적 함수 (Objective Function)
2 단계 연결강도 (weight)의 추정을 위한 목적함수
• 연결강도의 추정을 위하여는 적절한 목적함수가 필요하다. 즉, 연결강도의 추정은 주어진 목적함수의 최소화 (또는 최대화)를 통하여 추정한다.
• 일반적으로 많이 쓰이는 목적함수로는 선형모형에 쓰이는 오차제곱합이라 불리는 다음과 같은 함수이다.
𝑆𝑆𝑆𝑆𝑆𝑆 = Σ 𝑦𝑦
𝑖𝑖− 𝑝𝑝
𝑖𝑖 2• 여기서 𝑦𝑦𝑖𝑖는 𝑖𝑖번째 패턴의 실제 값이고 𝑝𝑝𝑖𝑖는 𝑖𝑖번째 패턴의 예측값이다.
• 오차제곱합 목적함수는 분류모형에서는 적절하지 않을 수 있다.
• 분류 모형에서 사용되는 또 다른 목적함수로는 로그우도함수 (log
likelihood)를 사용한다. 그룹이 두 개인 분류모형의 로그우도함수는 다음과
같이 정의 된다.𝐿𝐿𝑜𝑜𝐿𝐿 𝐿𝐿𝑖𝑖𝐿𝐿𝑒𝑒𝐿𝐿𝑖𝑖𝐿𝑜𝑜𝑜𝑜𝐿𝐿 = −Σ 𝑦𝑦𝑖𝑖 ln 𝑝𝑝𝑖𝑖 + 1 − 𝑦𝑦𝑖𝑖 ln 1 − 𝑝𝑝𝑖𝑖
5.2 신경망의 특징과 적용상의 문제점
Modeling시 주의사항
<입력자료의 선택!>
•
신경망 모형은 모형의 복잡성으로 인해 입력자료의 선택에 매우 민감하게 반응한다.좋은 입력자료란?
1. 범주형 입력변수가 모든 범주에서 일정 빈도 이상의 값을 가진다.
범주 합병 등
2. 연속형 입력변수 값들의 범위가 변수간에 많은 차이가 없다.
표준화, 0~1 등 변환
3. 입력변수의 수가 많지 않다.
미리 유의한 변수 선택 후 적합
5.2 신경망의 특징과 적용상의 문제점
Modeling시 주의사항
<자료의 변환 중요!>
•
적절한 자료의 변환은 신경망 모형 성공의 필수 조건이다.1. 연속형 변수 범위의 조절 변수의 값 / (최대값-최소값+양의상수)
2. 연속형 변수의 변환 분포가 평균을 중심으로 대칭에 가깝게 변환
3. 연속형 변수의 범주화 각 범주의 빈도를 비슷하게 설정
4. 범주형 변수의 가변수화 남,여 : 0, 1 or -1, 1 : 다른 결과를 초래 5. 새로운 변수의 생성
5.2 신경망의 특징과 적용상의 문제점
• 목적함수를 최적화하는 계수값을 찾는 것은 매우 어려운 작업이다.
• 비선형모형에서 분석적인 해가 존재하지 않기 때문에 일반적인 최적화 방 법을 사용한다.
1. 각 계수에 대해서 임의의 초기값을 부여
2. 새로운 값 = 이전 값 + 수정 값” 공식을 이용 3. 수렴할 때까지 반복 수행
• 신경망은 다양한 모형을 포함하는 유연한 모형이다.
• 데이터로부터 계수를 추정하기 때문에 실제로 MLP는 이론과 같이 유연하 지 못하다.
• 주어진 함수를 근사화하기 위해 매우 많은 수의 은닉마디가 필요할 수 있다.
• 은닉층과 은닉마디가 많을수록 신경망은 더욱 복잡해지며, 추정해야 할 계 수의 수가 급격히 증가 -> 최적화가 어렵게 된다.
• 적절한 은닉층과 은닉마디의 수를 결정하기 위해서 시행착오적인 방법이외 의 별 다른 대안이 없는 경우가 많다.
5.2.5 결과에 대한 해석의 어려움
• 계수들에 대한 간편한 해석이 불가능
• 어떤 입력변수가 중요한지 파악이 어려움
• 입력변수의 상호작용을 파악하기 어려움
• 신경망모형은 선형모형이나 의사결정나무에 비해 예측력은 뛰어남
• 실제 분석에서는 신경망과 의사결정나무를 같이 사용하는 방법이 있음
데이터 소스 : BUYTEST
분 류 변수 변수의 내용
고객번호 ID 고객번호
인구속성 AGE 나이 (년)
INCOME 년수입 (천달러)
MARRIED 1:결혼, 2:미혼
SEX F:여자, M:남자
COA6 6개월 간의 주소변경여부 (1:변경)
OWNHOME 집의 소유여부 (1:소유)
지역속성 LOC 거주지, A-H
CLIMATE 거주지의 기온 (10, 20, 30)
거래회수 BUY6 최근 6개월 간의 구입회수
BUY12 최근 12개월 간의 구입회수
BUY18 최근 18개월 간의 구입회수
거래금액 VALUE24 지난 24개월 간의 구입총액
신용상태 FICO 신용점수
거래속성 ORGSRC 고객분류(C, D, I, O, P, R, U)
DISCBUY 할인고객여부 (1:할인고객)
RETURN24 지난 24개월 간 상품의 반품여부 (1:반품)
반응 RESPOND DM에 대한 반응 여부 (1:반응)
PURCHTOT DM에 의한 구입총액
C1~C7 DM에 의한 품목별 구입액
N=10,000
Input
Target
∑
==
ni
i i
x w f
y
1
) (
0.65 -0.52 -2.56 4.35
가중치 (연결강도)
Σ 활성함수 𝒇𝒇
∑
==
ni
i i
x w net
1
Parameter Estimate Age_H11 0.65 Income_H11 -0.52 Sex_남자_H11 -2.56 Sex_여자_H11 4.35
Bias_H11 1.73 Bias_RESPOND1 -3.22
RESPOND_H11 3.54
1.73
Respond ) 52
. 0 ( 65
. 0 73 . 1 )
( x Age Income
f = + × + − ×
여자 남자 ) 4 . 35 _
_ 56
. 2
( − × Sex + × Sex +
) ( 54
. 3 22 . 3
arg et f x
T = − + ×
결과해석이 어렵다.
의사결정나무를 통해 근사적으로 해석
Bias -3.22
3.54
Income 남자
Age
Bias 여자
결과의 해석
결과의 해석
RESPOND 1: 168 (52.0 %) 0: 155 (48.0%) Total: 323 (100.0%)
Income < 2130$
Bad: 143 (86.7 %) Good: 22 (13.3%) Total: 165 (51.1%)
Income >= 2130$
Bad: 25 (15.8 %) Good: 133 (84.2%) Total: 323 (48.9%)
SEX=여자 1: 143 (90.5 %) 0: 15 (9.5%) Total: 158 (48.9%)
SEX=남자 1: 0 (0.0 %) 0: 7 (100.0%) Total: 7 (2.2%)
Age < 25 yr 1: 24 (49.0 %) 0: 25 (51.0%) Total: 49 (15.2%)
Age >= 25 yr 1: 1 (0.9 %) 0: 108 (99.1%) Total: 109 (33.8%)