기계학습 - review + 유전자 알고리즘 -

31
1 기기기기 - review + 기기기 기기기기 -

description

기계학습 - review + 유전자 알고리즘 -. 학습에 필요한 요소 일반화와 개념공간 여러가지 학습방법들 AI 기반 대표적인 알고리즘 인공신경망 알고리즘 유전자알고리즘 ID3 조사하기 : 평가방법 및 Feedback 방법 N-fold validation 지나친 편향이 발생하는 경우 재학습시기 및 비용 학습결과에 대한 평가. 학습 요소 (Learning Element). 실행 요소 (Performance Element). 주위 환경 (Environment). 지식베이스. - PowerPoint PPT Presentation

Transcript of 기계학습 - review + 유전자 알고리즘 -

Page 1: 기계학습 - review +  유전자 알고리즘 -

1

기계학습 - review + 유전자 알고리즘 -

Page 2: 기계학습 - review +  유전자 알고리즘 -

2

• 학습에 필요한 요소

• 일반화와 개념공간

• 여러가지 학습방법들

• AI 기반 대표적인 알고리즘– 인공신경망 알고리즘

– 유전자알고리즘

– ID3• 조사하기 : 평가방법 및 Feedback 방법

– N-fold validation– 지나친 편향이 발생하는 경우

– 재학습시기 및 비용

– 학습결과에 대한 평가

Page 3: 기계학습 - review +  유전자 알고리즘 -

학습

• Simon 의 정의 : – 같은 작업이나 같은 영역내의 비슷한 작업을 반복할 때 처음보다 나중에 하는 작업

효율이 높아지도록 시스템을 변화시키는 것

3

Simon 의 단순모델

주위 환경(Environment)

학습 요소(LearningElement)

지식베이스실행 요소

(PerformanceElement)

Page 4: 기계학습 - review +  유전자 알고리즘 -

4

학습에 필요한 요소

• 데이터

– Example : 유사한 문제해결의 예를 통해 새로운 문제해결을 위한 방법을 학습

– Advice : 문제해결에 필요한 이론 및 방법론 제시

– Analogy( 유사성 ) : 비슷한 개념 설명 → 새로운 개념 학습

• 지식표현

– 논리 , 프레임 , 규칙 , 의미망 등에 의해 표현

• 예 ) size(obj1, small) ∧ color(obj1, yellow) ∧ shape(obj1, cube)size(obj2, large) ∧ color(obj2, blue) ∧ shape(obj2, cube)

Size(X, Y) ∧ color(X, Z) ∧ shape(X, cube)

일반화

Page 5: 기계학습 - review +  유전자 알고리즘 -

5

• 연산

– 주어진 데이터를 이용해서 목적에 맞는 일반화나 휴리스틱한 규칙 , 계획 등을 생성 .

– * 개념공간 : 연산을 통해 생성된 개념들이 들어있는 공간 .– * 휴리스틱 탐색

• 탐색공간에 관한 정보를 탐색에 활용하여 탐색공간을 줄이거나 , • 정확한 답은 아닐지라도 답으로 사용 가능한 근사치를 찾을 수 있도록 하는

유용한 정보를 활용하는 탐색 .

Page 6: 기계학습 - review +  유전자 알고리즘 -

일반화와 개념공간의 예

6

Weights = {light, heavy}Heights = {tall, short} Body_type(Weights, Heights)

하나의 개념공간

Page 7: 기계학습 - review +  유전자 알고리즘 -

7

일반화를 위한 연산• 1. 상수를 변수로 바꿈

• 2. 결합 (Conjunctive) 문장에서 조건을 제거

• 3. 문장에 이접 (Disconjunction) 조건을 추가

• 4. 특성의 유형을 유형계층에서 상위 유형으로 바꿈

– 만일 유형 계층에 sports 가 basketball 의 상위 유형이라면 )

weight(john, heavy) 를 weight(X, heavy) 로 일반화

weight(X, heavy) ∧ height(X, tall) ∧ hobby(X, basketball) 을weight(X, heavy) ∧ height(X, tall) 로 일반화

weight(X, heavy) ∧ height(X, tall) ∧ hobby(X, basketball) 을weight(X, heavy) ∧ height(X, tall) ∧ hobby( (X, basketball) ∧ hobby(X, volleyball)로 일반화

hobby(X, basketball) 를 hobby(X, sports) 로 일반화

Page 8: 기계학습 - review +  유전자 알고리즘 -

여러가지 학습방법들 : 지도 vs 비지도• 지도학습 ( 교사 , 감독 )

– 설명기반 학습

– 사례기반

– 예제기반

• 비지도학습 ( 비교사 , 무감독 )– 유추에 의한 학습

• 강화학습

8

Page 9: 기계학습 - review +  유전자 알고리즘 -

9

설명기반학습

• 지도 학습 또는 충고에 의한 학습

• 예제를 설명해준 것을 일반화 한 후 학습 수행

– 학습을 위한 데이터 ( 학습예제 ) 대신 도메인 규칙이 있으면 학습이 가능하여

빠른 학습이 가능하지만 , 설명해준 것 이외에 새로운 것을 학습할 수는 없다 .

• 목표개념 : 학습자가 학습하고자 하는 내용

• 학습예제– 도메인 규칙 : 학습예제가 목표개념에 부합하는지 부합하지 않은지 설명하는데 필요한

규칙들의 집합

– 운영기준 : 개념정의에 필요

Page 10: 기계학습 - review +  유전자 알고리즘 -

설명기반 학습방법의 예

10

premise(X) → cup(X)

liftable(X) holds_liquid(X) → cup(X)∧part(Z,W) concave(W) → holds_liquid(Z)∧light(Y) part(Y, handle) → liftable(Y)∧

cup(obj1)

small(obj1)

part(obj1, handle)

owns(tom, obj1)

part(obj1, bowl)

concave(bowl)

color(obj1, red)

small(obj1) part(obj1, handle) part(obj1, bowl) concave(bowl) → cup(obj1)∧ ∧ ∧

small(X) part(X, handle) part(X, W) concave(W) → cup(X)∧ ∧ ∧

목표개념

도메인 규칙

학습 예제

일반화

Page 11: 기계학습 - review +  유전자 알고리즘 -

11

유추에 의한 학습

• 현재 가지고 있는 지식이 적용되었던 상황과 유사한 상황이 발생했을 때 , – 새로운 상황에 대처했을 때 , 현재의 지식을 활용하여 해를 도출하는 과정에 의한

학습방법

• 지도에 의한 학습보다 많은 추론 요구 : – 유사성에 대한 검색 , 새로운 상황에 적용

– Ex) “ 어떤 아파트 단지 내의 같은 크기의 아파트는 가격이 비슷할 것이다”와 같이 비슷한 측면이

많은 것들은 같은 그룹으로 인식하여 학습을 수행

• 승용차만 운전하던 사람이 처음 소형트럭에 탔을 때 그가 갖고 있던 승용차운전에 관한

기술을 트럭운전을 위해 적절히 변화 , 적용시킬 수 있다

• 새로운 상황에 대처하기 위하여 현재의 지식이 다시 조직되거나 변형될 수 있다 .

• 새로운 문제에 적용되어 성공적으로 그 문제를 해결했을 경우 그 상황은 다음의 문제해결을 위해

저장된다 .

Page 12: 기계학습 - review +  유전자 알고리즘 -

12

유추에 의한 학습

• 구조적 매핑 이론 (Structure Mapping Theory)– 유추에 의한 추론을 수행할 수 있는 계산적 모델 제시

– 1. 비교대상에서 특성을 제거

– 2. 매핑되는 것들의 인자는 바뀔 수 있어도 술어는 바꾸지 않음

– 3. 매핑을 구성할 때 차수가 높은 술어에 우선권

• 유추에 의한 학습의 절차

– 1. 특징 추출 : 비교 대상간의 유사점으로 사용할수 있는 특징 선별

– 2. 특징 보강 : 추출된 특징에 보충정보를 추가

– 3. 매핑과 추론수행

– 4. 검증

– 5. 학습

Page 13: 기계학습 - review +  유전자 알고리즘 -

비지도 학습

• 학습하고자 하는 개념을 스스로 형성하고 평가할 수 있어야 함 . • 새로운 사실의 발견에 유용한 학습법

– 단 . 학습이 계속되면 저장해야 되는 정보의 양이 급격히 늘어나 학습의 효과가 떨어지고 새로운 휴리스틱

규칙을 습득할 수 없다

• 개념분류

– 분류되지 않은 객체들을 서로 비슷한 객체들끼리 따로 모이도록 분류하는 작업

– 응집성 분류 (Agglomerative Clustering) : 객체들간의 유사도 측정 기준 이용• 1. 모든 객체의 쌍을 비교하고 유사도가 가장 높은 쌍을 하나의 범주로 만든다 .• 2. 각 범주의 특성을 함수형태로 정의

• 3. 모든 객체들이 하나의 범주로 군집될 때까지 이러한 작업은 계속된다 .

13

Page 14: 기계학습 - review +  유전자 알고리즘 -

14

생물

동물 식물

사람 호랑이 소나무 사과나무

비단말 노드로서

특성이 유사한 객체들을 모은 범주

분류 전에 갖고 있었던 분류되지 않은 객체

Page 15: 기계학습 - review +  유전자 알고리즘 -

강화학습

• 잘한 행동에 대해 칭찬받고 잘못한 행동에 대해서는 벌을 받은

경험을 통해 자신의 지식을 키워나가는 학습법

15

강화 학습에 필요한 용어

t : 문제 해결 과정에서의 이산적 (Discrete) 시간

st : 시간 t 에서 문제의 상태

at : 시간 t 에서의 행동

rt : 시간 t 에서의 포상 (Reward)

policy ∏ : 한 상태에서의 행동을 취하기 위한 정책

V : 상태 값을 구하는 함수 (v∏(s) 는 정책 ∏를 적용했을 때 상태 s 의 값을 나타냄 )

정책 (∏) 는 어떤 시간에 취해야 되는 행동을 결정하는 것으로 생성규칙이나 테이블 형태로 표현

포상함수 (rt ) 는 각행동과 그에 따르는 포상과의 관계를 나타냄

함수 v 는 환경에서 각 상태가 차지하는 값을 계산

Agent

Environment

State Reward Action

Policy

sss 221100 r a2

r a1

r a0 :::

Page 16: 기계학습 - review +  유전자 알고리즘 -

16

강화학습에 의한 로봇의 미로 탈출

• 컴퓨터 : 현재위치 미로의 A 지점 , 네가지의 행동 ( 전후좌우 ) 선택가능

• 로봇 : 행동 1( 전진 ) 선택

• 컴퓨터 : 출구 쪽에 가까워 졌으니 너는 95 점의 포상을 받았다 . • 현재위치 미로의 B 지점 . 두가지의 행동 (좌우 ) 선택 가능

• 로봇 : 행동 2(오른쪽 ) 선택

• 컴퓨터 : 출구 반대 방향이다 . 그러니 벌로 -50 점을 주겠다 . • 현재위치 미로의 C 지점 .  세가지의 행동 ( 전후좌 ) 선택 가능

• 로봇 : 행동 4( 후진 ) 선택

• 계속 경험을 쌓으면서 미로를 헤매다 보면 자연스럽게 매 지점에서 출구쪽으로 향하게 되는 행동들이 큰 포상을

받도록 학습이 완성 . • 강화학습을 한 로봇은 미로에 빠지더라도 큰 포상을 주는 행동들을 선택해 쉽게 미로를 빠져 나올 수 있음 .• 그러나 최종 목적을 이루기까지 상태마다 어떤 행동이 최선이 되는지는 모름 .• 따라서 로봇은 자신이 처할 수 있는 여러 가지 상태 , 행동과 , 행동의 선택에 따른 포상 등 유용한 경험들을

저장해 두어야 함 .

Page 17: 기계학습 - review +  유전자 알고리즘 -

AI 기반 대표적인 알고리즘

• 인공신경망

• 유전자 진화 알고리즘

• ID3• …

17

Page 18: 기계학습 - review +  유전자 알고리즘 -

인공신경망

• 인간의 두뇌와 신경시스템을 닮은 정보처리소자

• 연결주의 기법 : 뉴런들을 연결하여 문제해결모델 생성

뉴런 : 신경계의 기능적 최소단위 . 세포체 : 일정기간 동안 들어온 자극은 세포체내에 가중되고 임계치 보다 크면 뉴런을 활성 . 수상돌기 : 인접 뉴런들로부터 정보를 받아들이는 통로 역할 . 축색돌기 : 정보를 전달하기 위한 통로 . 시넵스 : 전달되는 신호의 크기를 조절

Page 19: 기계학습 - review +  유전자 알고리즘 -

인공신경망 vs. 다층인경신경망

19

입력값 가중치 중간값 Y

X1 W1

X2 W2 . . . Xn Wn

변형함수 출력값 n∑Xi*Wii=1

PE PE PE

PE PE

PE PE PE PE

출력층

은닉층

입력층

신경회로망이 커지고 복잡해 질수록 , 더 나은 기능 수행

다층 인공 신경망 : 입력층과 출력층 사이에 새로운 층 추가

→ 은닉층 (hidden layer) 또는 중간층 (internal layer)

Page 20: 기계학습 - review +  유전자 알고리즘 -

인공신경망에서의 학습과정• 입력값을 이용하여 인공뉴런의 출력값을 계산

• 인공뉴런이 계산한 출력값과 사용자가 기대하는 출력값을 비교

• 기대하는 출력값을 생성할 수 있도록 가중치 조절

20

Artificial Neural Network Learning Algorithm

Binarv-Valued input Continuous-Valued input

Supervised Unsupervised Supervised Unsupervised

Hopfield Network,Bottzmann Machine

ART I Backpropergation,Perceptron

ART II, Kohonen Self-organizingFeature Maps

인공 신경망 학습 알고리즘의 분류 (from [Lippman89])

Page 21: 기계학습 - review +  유전자 알고리즘 -

인공신경망과 학습

• 패턴인식 , 학습 , 분류 , 일반화 , 추상화 그리고 불완전하고 잡음이

포함된 입력을 이용하는 시스템 등에서 유용하게 사용될 수 있음

• 인공신경망의 장점– 에러허용 (fault tolerance) : 전체 인공 신경망에 영향을 미치지 않음

– 일반화 : 불완전한 입력정보를 가지고도 적정한 결과 생성

– 적응성 : 새로운 환경에서 학습 수행 가능

• 인공신경망의 단점– 설명기능이 약함

– 학습시키는데 많은 데이터와 시간이 필요

– 병렬처리가 가능한 하드웨어 비용이 비쌈

21

Page 22: 기계학습 - review +  유전자 알고리즘 -

유전자 알고리즘

• 다윈의 유전법칙에 기반

• 자연 선택 또는 적자생존의 원칙에 입각한 알고리즘

• 진화의 결과 : 염색체형태로 저장– (DNA : A C G T)

• 개체군 (population) 중에서 환경에 대한 적합도 (fitness) 가

높은 개체일수록 재생산할 수 있게 되며 , 개체군은 환경에 적응

할 수 있게 된다 .

22

Page 23: 기계학습 - review +  유전자 알고리즘 -

유전자 알고리즘의 연산자

• 재생산 (Reproduction)– 새로운 세대 생성시 부모 염색체의 일부를 임의로

선택하여 재조합

– 적합도가 높은 개체일수록 다음 세대에 자식

개체들이 번식할 가능성이 높아짐

• 교배 (Mutation)– 유전자의 일부를 임의로 변화

• 교차 (Corssover)– 염색체상에서 임의의 위치를 저장하여 나뉜

부분의 위치를 서로 바꿈

23

Page 24: 기계학습 - review +  유전자 알고리즘 -

유전자 알고리즘의 수행절차

24

Page 25: 기계학습 - review +  유전자 알고리즘 -

25

일반적인 유전자 알고리즘

• 요구사항 :– 답 표현 방식

– 유전연산자 ( 재생산 , 교차 , 돌연변이 ) 와 적합성 평가함수 필요

• 학습효과 ( 성능 ) : – 문제의 표현 (염색체의 구성 ), 사용 염색체군의 수

– 연산의 종류 , 연산의 빈도수등에 의해 결정된다 .

• 유용한 분야 : – 네트워크의 최적화 , 칩 설계 , 게임 , 시간표 작성등에 응용 .

Page 26: 기계학습 - review +  유전자 알고리즘 -

일반적인 유전자 알고리즘 – procedure genetic algorithm;

beginset time t := 0;initialize the population P(t);

while the termination condition is not met dobegin1. evaluate fitness of each member of the population P(t);2. select most fit members from the population P(t);3. produce the offspring of these pairs using genetic

operators;

4. replace the weakest candidates of P(t) with these offspring;

5. set time t := t+1

endend

26

Page 27: 기계학습 - review +  유전자 알고리즘 -

유전자 알고리즘의 예 : 상대방의 숫자 알아내기

• 0 과 1 로 이루어진 상대방의 6 자리 수를 알아냅니다 .– 정답 : 101001– 2^6 = 64번 , 평균 32번의 추측필요

27

a) 010111 ( 점수 = 1 점 )b) 110101 ( 점수 = 2 점 )c) 100101 ( 점수 = 4 점 )d) 011011 ( 점수 = 5 점 )

도태

결과 : 1010013 점

5 점6 점

Page 28: 기계학습 - review +  유전자 알고리즘 -

유전자 알고리즘의 예 : 벽돌과 시멘트

• 준비 : 벽돌은 B 로 표시하고 시멘트는 C 로 표시한다

• 원하는 결과 : BCBCBC 나 CBCBCB 의 형태

• 다음과 같은 10 개의 염색체에 대하여

– (C B B C C C C B B B) (C C C B C C C C B C) – (B C B C B B C C B B) (C C C C B C C C C B) – (B B B B B B B C B C) (B B C B C B B B B C) – (B B C B B C C C B B) (C B B B B B B C C C) – (C B C B B B B C C C) (C B C B C C B B C C)

• 원하는 결과 (BCBCBCBCBC) 나 (CBCBCBCBCB) 가 나올 때까지 연산을

수행한다면 .• 기존 방법을 개선시켜 새로운 유전자 알고리즘을 제안한다면 기본방법에서 어느

부분을 수정 / 추가 / 변형 해 볼만 한가 ? 28

Page 29: 기계학습 - review +  유전자 알고리즘 -

ID3 알고리즘

• 개념공간 내에서 학습예제에 맞는 개념들의 집합

• 학습결과를 의사결정 ( 하향식 ) 트리형태로 표현

• 루트 노드에서 특성 평가후 자신의 노드 생성– 가장 많은 정보를 제공한다 .

• 각각의 자노드에서도 더 이상의 노드가 생성되지 않을 때까지 반복– 노드 : 개념분류를 위한 평가에 필요한 특성

– 가지 : 특성의 값

– 노드의 특성 선택 → 전체 트리에 영향

• 특성의 평가 순서 : 평가 후 얻게 될 정보의 양이 가장 큰 특성을 먼저 평가

29

Page 30: 기계학습 - review +  유전자 알고리즘 -

ID3 - 대출자료 데이터의 예

30

번 호 수 입 신용도 채무 대출여부

50 만원 이하 나쁨 많음 대출불가150 만원 ~ 100 만원 모름 많음 대출불가250 만원 ~ 100 만원 모름 적음 대출가능3

50 만원 이하 모름 적음 대출불가4100 만원 이하 모름 적음 대출승인5100 만원 이상 모름 적음 대출승인6

50 만원 ~ 100 만원 나쁨 적음 대출불가7100 만원 이상 나쁨 적음 대출가능8100 만원 이상 좋음 적음 대출승인9100 만원 이상 좋음 많음 대출승인10

50 만원 ~ 100 만원 좋음 많음 대출가능12100 만원 이상 좋음 많음 대출승인13

50 만원 ~ 100 만원 나쁨 많음 대출불가14

50 만원 이하 좋음 많음 대출불가11

Page 31: 기계학습 - review +  유전자 알고리즘 -

생성된 의사결정 트리

31

수입은 ?

50 만원 이하 50 만원과 100 만원 사이 100 만원 이상

대출불가 신용도가 좋은가 ?

신용도가 좋은가 ?

좋음 나쁨 모름 좋음 나쁨 모름

대출가능 대출불가 채무가 있는가 ?

적음 많음

대출가능 대출불가

대출승인 대출가능 대출승인