Transcript lec20
기계 학습 (Machine Learning)
(Lecture Note #20)
인공지능
이복주
단국대학교 컴퓨터공학과
1
Outline
개념
기계학습의 정의
학습의 분류
예를 통한 학습
관찰을 통한 학습
암기학습
지도에 의한 학습
유추에 의한 학습
유전자 알고리즘
2
개념
개요
– 지능을 가진 객체의 특징
• 새로운 환경에 적응
• 새로운 문제를 풀 수 있는 능력
– 컴퓨터에게 지능 부여
• 지능을 가진 컴퓨터 프로그램이 가능한가? (많은 학자들이 부정적)
• 주어진 입력을 컴퓨터 성능을 점차적으로 개선하는 방향으로 해석하도
록 하는 방법 제공
– 학습의 일반적 정의
• “주어진 환경 내에서 반복되는 경험으로 인해서 발생되는 어떤 주체의
행동 변화, 일시적인 주체의 상태(피로, 약물복용 상태)로는 설명 불가”
• 컴퓨터 분야를 위한 정의로는 부적절
3
기계학습 (Machine Learning)의 정의
기계학습(Machine Learning)의 정의
– 학습 프로그램과 일반 프로그램과 구별하여 특징지우는 방
법 필요
– 그렇게 만족할 만한 정의가 내려지지 못하고 있음
– 학습의 특성
• 1. 새로운 지식의 습득
– 컴퓨터의 데이터 습득은 용이 ↔ 사람은 어려움
– 데이터의 습득은 진정한 학습 프로그램이 아님
• 2. 문제 풀이
– 추론
• → 굳이 정의하자면, 새로운 지식을 습득하면서(1) 새로운 상황의 문제
를 풀 수 있는(2) 프로그램.
4
기계 학습 시스템 모델
Simon의 단순 모델
주위 환경
(Environment)
학습 요소
(Learning
Element)
지식베이스
실행 요소
(Performance
Element)
– 원: 선언적 정보, 사각형: 절차, 화살표: 자료의 흐름
• 주위환경: 학습요소에 특정 정보 제공
• 학습요소: 입수된 정보로 지식베이스 개선
• 실행요소: 지식베이스의 지식 이용, 특정의 작업 수행
– 네 가지 구성요소의 구현 방식에 따라 학습 시스템 분류
–
→ 주위환경, 지식베이스, 실행 작업들이 학습문제의 본질
을 결정
5
기계 학습의 분류
학습 전략에 의한 기계 학습의 분류
– 학습 전략: 어떻게 학습하는가? → 얼마나 추론을 많이 하는
가?
• 1. 추론 없음: 지식 증대, 직접 프로그램된 시스템
• 2. 풍부한 추론 수행: 새로운 이론 발견, 새로운 개념 도출
• 3. 중간 정도의 추론
– 수학 책의 예제 풀이(교사의 풀이를 학습, 학생이 교사의 풀이를 유추)
– 새로운 이론 발견보다는 추론이 훨씬 적다
– 추론의 양 vs. 교사, 외부환경의 부담
• 추론의 양 증대 → 교사의 지도 부담이 줄어든다.
• 어떤 작업의 지도
– 유사한 작업을 다루는 방법을 보여줌 (what)
–
→ 교사는 쉽게 지도, 학습자는 많은 생각(추론)을 해야 함
– 그 작업의 세부 사항을 단계별로 설명하여 가르침 (how)
–
→ 교사는 지도에 많은 노력 필요, 학습자는 간단히 단계를 실행 (적은 추론)
6
기계 학습의 분류
암기 학습 (Rote Learning)
지도에 의한 학습 (Learning by Advice-taking)
유추에 의한 학습 (Learning by Analogy)
예를 통한 학습 (Learning from Examples)
관찰을 통한 학습 (Learning from Observation)
7
학습의 분류
1. 암기 학습 (Rote Learning): 지식의 직접적 부여
–
–
–
–
학습자 측면에서 추론이나 지식의 변형이 불필요
학습이 외부 객체에 의해 미리 프로그램 됨
주어진 사실, 데이터에 대한 기억만 저장 → 입력에 대한 추론 없음
기초적인 데이터베이스 시스템 수행으로 가능
2. 지도에 의한 학습 (Learning by Advice-taking)
– 교사, 교과서 같은 지식 원천으로부터 지식 습득
– 교사는 학습자의 지식을 증대하기 위해 지식을 잘 조직해야 함 →
부담
– 전문가 시스템의 구축과정과 동일
3. 유추에 의한 학습 (Learning by Analogy)
– 이미 존재하는 지식을 변형하거나 증식하여 새로운 사실, 기술 습
득
• 예) 자동차 운전 기술을 이용, 트럭 운전이 가능(운전 기술의 변형 필요)
– 학습자 입장에서 지도에 의한 학습보다 많은 추론 요구: 유사성에
대한 검색, 새로운 상황에 적용
8
학습의 분류
4. 예를 통한 학습 (Learning from Examples)
– 어떤 개념 묘사를 위해
• 긍정 예 (positive example): 개념을 잘 설명하는 예
• 부정 예 (negative example, counterexample): 개념을 부정하는 예
– 부정적인 예들의 성질을 배제하면서 긍정적인 예들의 성질을 묘사
–
→ 주어진 개념에 대한 일반적인 개념 묘사 추론
–
→ 지도, 유추에 의한 학습보다 추론 양이 많다. (교사는 예제만
제공)
– 귀납적 학습
예가 주어지는 방법
– 교사가 예를 제공: 목표 개념 형성이 유익한 예를 선별 제공
– 학습자가 예를 생성: 목표 개념이 무엇인지 불분명할 때 → 분류
• 경쟁하는 개념들을 식별하는 정보에 기초하여 스스로 예를 생성
• 교사의 긍정, 부정에 대한 지도 필요
• 예, 강자성체 개념 습득 하려함 → 모든 금속 예 생성 → 동전 실험 → 동전은 부
정적인 예제
– 외부환경에서 예 제공: 예제 생성과정에서 외부 환경이 결정
• 관찰에 의존
• 예) 초신성 전조를 추론하려는 천문학자: 개념은 알고 있지만 언제, 어디서 초신
성 발생할 지 모름
9
학습자의 예제 이용 형태
학습자의 예제 이용 형태
– 긍정적인 예제만 이용
• 습득해야 할 개념에 대한 좋은 예시 제공
• 과도하게 일반화되는 것은 막아야 함
• → 최소의 일반화 고려, 추론되는 개념에 제약을 가하는 영역지식에 의존
– 긍정적, 부정적 예제들을 모두 사용
• 긍정적인 예제들의 개념을 일반화 시킴
• 부정적인 예제들은 과도한 일반화를 막는다
• 예를 통한 학습의 가장 근본적인 형태
일괄 학습 (batch learning) vs. 점진 학습 (incremental
learning)
– 일괄 학습: 개념 형성에 필요한 모든 예제들을 한번에 모두 제공
• 무분별한 예제가 주어질 확률이 줄어든다
– 점진 학습: 이용 가능한 자료들을 이용, 하나 이상의 개념 가설 형
성 → 점차적으로 추가적으로 주어지는 예제들을 이용, 가설 수정
• 인간의 개념 학습 방법과 유사
• 여러 개의 개념 습득에 유용
10
학습의 분류
5. 관찰을 통한 학습 (Learning from Observation)
– 귀납적 학습의 가장 일반적인 형태
– 비지도 학습 (unsupervised learning)으로도 분류됨
– 발견시스템, 이론 형성 작업, 분류 계층 형성을 위한 분류 기준 생
성, 외부 교사 부재의 학습 → 다른 어떤 학습보다도 더 많은 추론
요구
– 개념을 위한 적당량의 예제도 주어지지 않음
– 예제들의 긍정, 부정에 대한 정보도 없음
– 한 개념에 초점을 맞추지 않음 → 때에 따라서 습득될 필요가 있는
여러 가지 개념에 대해서 동시에 고려 → 개념 초점 맞추기 문제 발
생
– 외부 환경과의 상호작용 관점
• 수동적 관찰: 주위환경의 여러 양면들을 (단순) 관찰, 분류
• 능동적 관찰: 주위환경을 변동(실험)시키고 그 변동 결과를 관찰
무작위의 실험
다양한 가설
상황에 따라서 필요한 예제 생성
11
암기 학습 (Rote Learning)
기억: 필요할 때를 위해 새로운 지식을 저장
검색이 주요 동작: 계산이나 추론이 아님
기억의 중요성
– 기억이 분리된 학습과정은 의미가 없다
– 기억이 인식 시스템에서 매우 중요한 주체
–
→ 가장 기초적인 학습과정
실행 요소 (performance element)가 해결한 문제
를 받아서 그 문제와 해답을 기억
– 실행 요소는 함수 f: 입력 패턴 (X1, …, Xn) 받아서 출력값
(Y1, …, Yn) 계산
– 학습은 기억 속에 [(X1, …, Xn), (Y1, …, Yn)] 을 저장하는
것
– f의 계산은 기억 속에서 (Y1, …, Yn)을 검색하는 것
12
암기 학습 (Rote Learning)
자료 감축 (data reduction)의 개념: Lenat, Hayes-Roth,
Klahr
– 암기는 자료감축 계층에서 최하위 수준
– 계산은 검색으로 감축됨
• 중간계산 과정 생략할 수 있게 됨
– 연역은 계산으로 감축됨
• 2차 방정식: 연역을 통해 공식 찾음 계산
– 귀납은 연역으로 감축됨
ACCESS
CALCULATE
캐슁(암기)
DEDUCE
알고리즘, 이론
연역 사슬의 탐색 결
과를 세정하여 효율
적인 알고리즘으로
요약
INDUCE
휴리스틱 규칙
대량의 연습 예제들
을 하나의 휴리스틱
규칙으로 변형
13
지도에 의한 학습 (Learning by TakingAdvice)
McCarthy 제안:충고를 이용하여 계획 형성할 것
→
→
→
→
충고 습득의 단계
1)
2)
3)
4)
5)
70년대 후반까지 연구 미약
전문가 시스템 기술 발달로 전문가의 충고(지도, 전문지식)를 변형
전문가의 성능을 발휘하는 프로그램 연구
전문가 시스템 구축에 대한 연구
전문가시스템 구축 과정
요구 (requirement) 단계: 전문가에게 충고 요구 → 전문지식 습득
해석 (interpret) 단계: 내부 표현으로 변환
↘
지식 표현
연산자화 (operationalize) 단계: 연산자로 변환
↗
합병 (integrity) 단계: 지식베이스로 합병
→ 지식베이스 형성
평가 단계 (evaluate): 실행 요소에 의한 결과 평가 → 추론 결과 평가
지식베이스를 유지하는 보조 도구 개발
– 새로운 지식을 합병하는 기능
– 지식 베이스의 평가나 디버깅 기능
14
유추에 의한 학습
이미 존재하는 지식을 변형하거나 증식시켜 새로운
사실이나 기술을 습득하는 학습방법
Carbonell의 추론에 대한 가설
– "어떤 사람이 새로운 문제 상황에 직면하게 되면 그 사람은
현재 상황에 매우 유사한 과거의 상황을 상기(remind)한
다."
15
문제풀이와 유추
고전적 문제풀이 모델들, GPS, STRIPS, NOAH 등은 유사 문
제공간에 있는 다른 문제들의 해결에 대한 경험을 이용하지 않
음
원숭이, 바나나 문제의 2가지 상황
– 원숭이와 바나나 (case 1)
• 방안에 배고픈 원숭이
• 원숭이 손이 닿지않는 천정에 바나나가 걸려 있음
• 방 구석에 큰 상자가 있음(원숭이가 들 수 있고, 올라서면 천정에 손 닿음)
– 실험자와 바나나 (case 2)
•
•
•
•
실험자가 원숭이-바나나 문제 설정하려고 함
방안에 배고픈 원숭이
실험자는 바나나를 가지고 있고, 천정에 고리가 있음
방 구석에 큰 상자가 있음(원숭이가 들 수 있고, 올라서면 천정에 손 닿음)
– 지능적인 원숭이는 실험자가 바나나를 설치하는 과정을 보고 추론
• 목적 수단 방법처럼 초기상태와 목적상태 주어져 푸는 방식이 아님
• Case 2의 문제 해결과정을 case 1 이 이용
과거문제에 대한 기억과 현재 문제에 대한 과거문제의 해결방법
– 인간은 익숙하지 않은 문제보다 익숙한 상황에서 문제를 더 잘 해
결
기존의 목적-수단 방법에 유추적 변형과정을 추가, 과거의 경험
16
을 이용하는 방법
계획-변형 문제 공간 (Plan-Transformation)
고전적 목적-수단 방법 (means-end analysis)의 문제공간
– 현재 상태와 목표 상태 비교
– 차이를 줄일 수 있는 연산자 선택
– 적용: 적용이 불가능할 때 현재 상태 저장 후 부 문제에 대해서 다
시 목적 수단 방법 적용
– 부 문제 해결 후 저장된 상태 복구 후 원 문제에 다시 적용
문제공간에서 과거 문제의 풀이에 대한 지식을 어떻게 이용?
– 연산자, 초기 상태, 최종 상태를 포함하는 일련의 상태
– 풀이를 만족시키도록 하는 경로 제약 조건들
– 매크로 연산자 생성: 과거의 문제풀이에서 유용한 연산자의 나열
매크로 연산자의 문제점
– 모든 풀이과정의 나열은 관리가 어려움
• 적용 가능한 매크로 연산자 검색하는데 많은 시간
– 매크로 연산자의 적용은 새로운 문제에서 경로에 대한 제약조건을
무시
17
계획-변형 문제 공간 (Plan-Transformation)
유사문제에 대한 풀이
– 새로운 문제와 과거 해결된 문제의 초기 및 최종 상태
차이함수: 초기와 최종 상태 비교함수, 유사성 척도로 사용
Carbonell의 가설
– 적절한 유추적 변형을 찾는 것은 그 자체가 문제풀이 과정
– 단지 문제 공간만 다름
변형 문제 공간
–
–
–
–
상태: 원래의 문제공간에서 풀이
초기 상태: 유사한 문제에 대한 검색된 풀이
목표상태: 현재 문제의 요구 조건을 만족하는 풀이
연산자: 풀이 변형 (예, 상태의 연산자를 다른 것으로 대체)
새 문제의 풀이
최종상태
초기상태
본래 문제 공간
(검 색 된 풀 이 )
T-OP
T-공 간
예제:
•피츠버그에서 뉴욕으로의 여행
•비행기 외의 여행 경험 없음
•현재 비행기를 이용할 수 없음
•다른 여행 수단 찾음(열차)
•열차 여행 경험 없음
•비행기 이용 과정 상기
•열차 이용에 적용
18
Summary
개념
기계학습의 정의
학습의 분류
예를 통한 학습
관찰을 통한 학습
암기학습
지도에 의한 학습
유추에 의한 학습
유전자 알고리즘
19