제4장 자연언어처리, 인공지능, 기계학습
description
Transcript of 제4장 자연언어처리, 인공지능, 기계학습
제제 44 장장자연언어처리자연언어처리 , , 인공지능인공지능 ,,기계학습기계학습
인공지능인공지능((Artificial Intelligence)Artificial Intelligence)• 지능적인 컴퓨터에 대한 연구지능적인 컴퓨터에 대한 연구
– 인간과 동물의 지능인간과 동물의 지능– 집안청소집안청소– 컴퓨터프로그램컴퓨터프로그램 , , 로봇로봇
• 인공지능의 연구주제들인공지능의 연구주제들– 지식표현지식표현 , , 탐색탐색 , , 추론추론 , , 문제해결문제해결 , , 학습학습 , ,
인지인지 , , 행동행동 , , 자연언어처리…자연언어처리…
자연언어처리자연언어처리
• 인공지능을 위한 자연언어처리인공지능을 위한 자연언어처리– 음성인식음성인식 , , 형태소분석형태소분석 , , 통사분석통사분석 , , 의미분석의미분석– 언어이해 언어이해 인공지능 인공지능
• 자연언어처리를 위한 인공지능자연언어처리를 위한 인공지능– 형태론형태론 , , 구문론구문론 , , 의미론의미론 , , 화용론적 언어지식 화용론적 언어지식
지식표현 지식표현– 지식의 습득 지식의 습득 기계학습 기계학습 (( 대규모의 말뭉치대규모의 말뭉치 ))
• 컴퓨터의 발전컴퓨터의 발전
인공지능과 자연언어처리인공지능과 자연언어처리
• 19501950 년대 년대 ~ 1980~ 1980 년대년대– 다양한 응용분야의 개척다양한 응용분야의 개척– 기계번역기계번역 , , 질의응답시스템질의응답시스템 , , 자료검색자료검색 , ,
언어이해언어이해• 19901990 년대년대
– 컴퓨터의 급속한 발전컴퓨터의 급속한 발전– 인터넷 사용자의 폭발적 증가인터넷 사용자의 폭발적 증가– 대량의 말뭉치 데이터 대량의 말뭉치 데이터 통계적 통계적 , , 경험적 경험적
인공지능기법의 도입인공지능기법의 도입
자연언어처리와 기계학습자연언어처리와 기계학습
컴퓨터의 발전인터넷의 대중화
대규모 말뭉치데이터의 구축
기계학습이론의발전 및 구현
말뭉치 데이터 말뭉치 데이터 ((Corpus)Corpus)• 신문신문 , , 잡지잡지 , , 교과서 등에서 추출한 교과서 등에서 추출한
다양한 문장들로 구성다양한 문장들로 구성• 언어에 대한 다양한 표식언어에 대한 다양한 표식
– 품사품사 , , 문장성분문장성분 , , 구문분석 결과구문분석 결과• Korea Information Base SystemKorea Information Base System
– http://http://kibskibs..kaistkaist.ac..ac.krkr• British National CorpusBritish National Corpus
– http://info.ox.ac.http://info.ox.ac.ukuk//bncbnc
통계적 학습기반의통계적 학습기반의자연언어처리자연언어처리
• 음성인식음성인식• 모호성 해소 모호성 해소 분류문제 분류문제
– 구조표지구조표지 , , 품사표지품사표지 , , 중의성 해소중의성 해소 , , 전치사 접속 결정전치사 접속 결정
• 언어습득 및 이해언어습득 및 이해– 규칙추론규칙추론 , , 정보추출 및 검색정보추출 및 검색 , , 자동요약자동요약 , ,
기계번역기계번역
기계학습 기법기계학습 기법
• 기호적 학습기호적 학습– 사례기반학습사례기반학습 , , 결정트리결정트리 , , 귀납논리귀납논리
• 비기호적 학습비기호적 학습– 신경망신경망 , , 유전자 알고리즘유전자 알고리즘
• 확률적 학습확률적 학습– 베이지안망베이지안망 , , 은닉마코프모델은닉마코프모델 , , 확률문법확률문법
• 변형기반학습변형기반학습 , , 능동학습능동학습 , , 부스팅부스팅 , , 강화학습강화학습 , , 건설적 귀납건설적 귀납
기호적 학습기호적 학습((Symbolic Learning)Symbolic Learning)• 분류문제분류문제
– 주어진 개체의 각종 특성들로부터 그 개체의 주어진 개체의 각종 특성들로부터 그 개체의 종류를 결정하는 문제종류를 결정하는 문제
• 기호적 학습기호적 학습– 특성과 종류간의 관계를 몇 가지 규칙으로 특성과 종류간의 관계를 몇 가지 규칙으로
서술서술– 주어진 데이터로부터 규칙을 학습주어진 데이터로부터 규칙을 학습
• 결정트리결정트리 ((decision tree)decision tree)
결정트리결정트리
• 결정트리결정트리– 귀납적학습을 위한 실용적인 방법귀납적학습을 위한 실용적인 방법– 이산값을 가지는 함수의 추정 이산값을 가지는 함수의 추정 = =
규칙집합의 구축규칙집합의 구축– 생성이 용이생성이 용이 , , 학습을 통해 생성된 학습을 통해 생성된
결정트리를 규칙의 집합으로 이해 가능결정트리를 규칙의 집합으로 이해 가능
결정트리 표현결정트리 표현
• <<outlook, humidity, wind, outlook, humidity, wind, playtennisplaytennis>>
weak
outlook
windhumidity
sunny overcast rain
high low strong
No NoYes
Yes
Yes
결정트리 학습결정트리 학습
• Top-down greedy search through Top-down greedy search through the space of possible decision the space of possible decision trees.trees.
• ID3, C4.5 by QuinlanID3, C4.5 by Quinlan– 결정적 특성결정적 특성 ((attribute)attribute) 의 선정의 선정
결정트리 응용결정트리 응용
• 모호성 해소모호성 해소– 음성인식음성인식 , , 품사태깅품사태깅 , , 중의성 해소중의성 해소 , , 구문 구문
분석분석 , , 문서 분류문서 분류 , , 문서 요약문서 요약 , , 공지시 해소공지시 해소 , , 중심구 찾기중심구 찾기 , , 기계번역을 위한 동사 분류기계번역을 위한 동사 분류
• 구문분석구문분석– 문장의 단어의 품사 결정문장의 단어의 품사 결정 , , 구성 성분의 경계 구성 성분의 경계
결정결정 , , 적절한 구성 성분 결정적절한 구성 성분 결정 , , 접속사의 접속사의 접속 범위 결정접속 범위 결정
결정리스트결정리스트
• 결정리스트결정리스트– 논리곱 형식의 규칙들의 순서화된 리스트논리곱 형식의 규칙들의 순서화된 리스트– 데이터 단편화 문제의 완화데이터 단편화 문제의 완화
변형기반오류에 의한 학습변형기반오류에 의한 학습
• 말뭉치 기반의 자연언어처리를 위한 말뭉치 기반의 자연언어처리를 위한 방법방법– 1990 1990 by Eric Brillby Eric Brill– 규칙의 집합을 구축규칙의 집합을 구축– 품사 태깅품사 태깅 , , 전치사 접속 결정전치사 접속 결정 , , 구문 분석구문 분석 , ,
철자 교정철자 교정 , , 중의성 해소중의성 해소• Lazy TBLLazy TBL
– Monte Carlo samplingMonte Carlo sampling
선형 분리자선형 분리자((Linear Separator)Linear Separator)• 가중치 갱신방법으로 학습가중치 갱신방법으로 학습• 잡음잡음 , , 고차원 문제에 적합고차원 문제에 적합• SNOWSNOW
– 선형분리자의 망선형분리자의 망 ((network of linear network of linear separators)separators)
– 철자교정철자교정 , , 품사태깅품사태깅• Weighted majority algorithm, Weighted majority algorithm,
Widrow-Hoff rule, EGWidrow-Hoff rule, EG
사례기반 학습사례기반 학습
• 귀납적 감독 학습귀납적 감독 학습 ((inductive inductive supervised learning)supervised learning)
• kk-nearest neighbor-nearest neighbor• TiMBL (Tilburg memory-based TiMBL (Tilburg memory-based
learning environment)learning environment)• 정보추출에서의 문장의 어휘정보추출에서의 문장의 어휘 , , 구조구조 , ,
의미 모호성의 해결의미 모호성의 해결
비기호적 학습비기호적 학습((Subsymbolic Learning)Subsymbolic Learning)• 신경망신경망 ((neural network)neural network)
– 인간의 뇌의 정보처리를 모방하려고 하는 인간의 뇌의 정보처리를 모방하려고 하는 학습 모델학습 모델
– 병렬 처리에 기반병렬 처리에 기반– 회귀회귀 ((regression), regression), 분류 문제에 적용분류 문제에 적용
• 유전자 알고리즘유전자 알고리즘 ((genetic algorithm)genetic algorithm)– 생물의 진화를 모방한 학습 방법생물의 진화를 모방한 학습 방법– 전역해전역해 ((global solution)global solution) 를 구할 가능성이 를 구할 가능성이
있음있음 ..
신경망의 표현신경망의 표현
• 입출력간의 사상입출력간의 사상 ((mapping)mapping) 을 학습을 학습– y = f(y = f(xx11, x, x22, ..., x, ..., xnn))
x1xnx2
h1 hk
y
연결가중치연결가중치
x1
x2
xn
w1
w2
wn
w0
n
i iixwwo10
)exp(11
o
신경망 학습신경망 학습
• 가중치 조절가중치 조절– 헤비안 학습 규칙헤비안 학습 규칙 , , 오류 역전파오류 역전파 , , 볼츠만 방법볼츠만 방법
• 다층퍼셉트론다층퍼셉트론 ((multi-layer perceptron)multi-layer perceptron)• 재귀망재귀망 ((recurrent network)recurrent network)• 전문가망전문가망 ((mixture of experts)mixture of experts)• 자기조직신경망자기조직신경망 ((self-organizing map)self-organizing map)
신경망의 응용신경망의 응용
• 필기체문자인식필기체문자인식 , , 음성인식음성인식 , , 얼굴인식얼굴인식• 자연언어처리자연언어처리
– 문자인식문자인식 , , 음성인식과 합성음성인식과 합성– 품사 태깅품사 태깅– 구절경계찾기구절경계찾기 , , 구문분석구문분석 , , 문법추론문법추론 , ,
전치사접속결정전치사접속결정 , , 중의성 해소중의성 해소 , , 문서분류문서분류 , , 철자교정철자교정
유전자 알고리즘유전자 알고리즘((Genetic Algorithm)Genetic Algorithm)• 생물의 진화과정 모델링생물의 진화과정 모델링• 함수 최적화에 이용함수 최적화에 이용• 개체군개체군 ((population)population)
– 적합도적합도 ((fitness function)fitness function)– 선택선택 , , 복제복제 , , 교차교차 , , 돌연변이돌연변이– 군 탐색 방법군 탐색 방법 ((population-based search)population-based search)– 확률적 연산 확률적 연산 전역해 전역해 ((global solution)global solution)
진화 과정진화 과정
00010101011101 00010100001101 0001011111101
00010101011101 00010100011101 1111011111101
reproductioncrossover
mutation
유전자 알고리즘의 응용유전자 알고리즘의 응용
• 결정트리학습결정트리학습 , , 신경망학습신경망학습• 자연언어처리자연언어처리
– 품사태깅품사태깅 , , 구문분석구문분석– 정보검색정보검색 , , 동사분류동사분류
확률적 학습확률적 학습((Stochastic Learning)Stochastic Learning)• 확률모델확률모델
– 관찰되는 데이터를 생성하는 과정을 관찰되는 데이터를 생성하는 과정을 기술하는 모델기술하는 모델
– 확률망확률망 ((probabilistic network) probabilistic network) 형태형태• 확률변수간의 확률적 종속성을 표현확률변수간의 확률적 종속성을 표현
– 결합확률분포결합확률분포 ((joint probability joint probability distribution)distribution) 를 표현를 표현
나이브베이즈분류기나이브베이즈분류기((Naïve Bayes Classifier)Naïve Bayes Classifier)• 개체의 종류가 정해진 경우 각 개체의 종류가 정해진 경우 각
특성들간의 독립을 가정특성들간의 독립을 가정
C
a1 a2 an
나이브베이즈분류기의 나이브베이즈분류기의 확률추론확률추론
• 데이터 데이터 ((aa11, …, a, …, ann)) 의 종류 의 종류 cc**
n
k ikic
iinc
n
iinc
nic
caPcP
cPcaaaPaaaP
cPcaaaP
aaacPc
i
i
i
i
1
21
21
21
21*
)|()(maxarg
)()|,...,,(maxarg),...,,(
)()|,...,,(maxarg
),...,,|(maxarg
나이브베이즈분류기의 응용나이브베이즈분류기의 응용
• 문맥의존 철자교정문맥의존 철자교정 , , 품사태깅품사태깅 , , 의미 의미 중의성 해소중의성 해소
• 문서분류문서분류– 문서표현문서표현 : : term vector (tterm vector (t11, t, t22, …, t, …, tnn))– 문서를 종류별로 구분문서를 종류별로 구분
최대엔트로피원리최대엔트로피원리
• 다양한 통계적 증거들을 다양한 통계적 증거들을 최대엔트로피원리에 의거해 결합최대엔트로피원리에 의거해 결합 , , 활용활용
• 음성인식음성인식 , , 품사태깅품사태깅 , , 전치사접속결정전치사접속결정 , , 구문분석구문분석 , , 문서분류문서분류 , , 문장분할문장분할
은닉마코프모델은닉마코프모델
• Stochastic process modelingStochastic process modeling– 상태집합상태집합– 기호 알파벳기호 알파벳– 전이확률전이확률– 발산확률발산확률
은닉마코프모델 예제은닉마코프모델 예제
• 상태상태 : (: (ss11, s, s22), ), 기호기호 : (: (a, b)a, b)
S1 S2
b:0.2a:0.3
b:0.1
a:0.2
b:0.1
a:0.4
a:0.2
b:0.5
은닉마코프모델 응용은닉마코프모델 응용
• 음성인식음성인식 , , 합성합성• 품사태깅품사태깅 , , 중의성해소중의성해소• 학습학습
– 전진전진 -- 후진후진 ((forward-backward) forward-backward) 알고리즘알고리즘
기타기계학습방법기타기계학습방법
• 클러스터링클러스터링– 문서분류문서분류
• 앙상블머신앙상블머신– 품사태깅품사태깅 , , 철자교정철자교정– 배깅배깅 , , 부스팅부스팅
• SVMSVM– 계산학습이론에 기반계산학습이론에 기반– 문서분류문서분류
결론결론
• 인공지능인공지능– 지능적인 기계의 개발지능적인 기계의 개발– 자연언어처리가 필요자연언어처리가 필요
• 자연언어처리자연언어처리– 자연언어의 이해자연언어의 이해– 기계학습의 이용기계학습의 이용
• 기계학습기계학습– 지능적인 물체의 학습 과정을 모델링지능적인 물체의 학습 과정을 모델링