SlideShare a Scribd company logo
1 of 29
제13회 SAC 2018
인공지능, 사람의 인격도 학습 가능할까?
제13회 SAC 2018
Saltlux Annual Conference
앙상블 심층
질의 응답 기술
1
심홍매 · 홍동균
제13회 SAC 2018
2
대화형 AI
제13회 SAC 2018
3
대화형 AI - 핵심 기능
사용자의 목적에 따른 3가지 대화 유형
Goal-Oriented Dialogue
(Task completion)
알람 설정, 상품 주문, 레스토랑 예약
Question & Answering 지식 획득, 정보 검색
General Conversation 일상 대화, 잡담, 유머
제13회 SAC 2018
4
QA의 다양한 질문 유형
일반 상식
전문 지식, FAQ
실시간 변동 정보
공직유관단체 또는 공공기관에서 근무하는
비 정규직근로자도 청탁금지법 적용대상인가요?
현재 대한민국의 대통령은?
포유류 중 가장 느린 동물은?
오늘 날씨 어때? (날씨)
오늘 달러 환율 알려줘 (환율)
넌 누구야?
넌 어디서 태어났어?
대화형 AI 정체성
제13회 SAC 2018
5
왜 앙상블 Deep QA인가?
앙상블[ensemble] : ‘어울림’, ‘통일’, ‘조화’
IRQA
DNQA
PLUGINKBQA
DRQA 앙상블
Deep QA
제13회 SAC 2018
6
ADAM Deep QA 기술 구성 개념도
Data Sources (Deep Web)
Data Scrapping& Curation
Knowledge
Asset
Knowledge Curation
(Dual Spiral Method)
Knowledge
Base
c
User Businesses
Knowledge Reasoning
OWL Reasoner Heuristics
Knowledge
Completion
Knowledge Learning
Entity Linking Property Linking Ensemble
Platform & Service
Admin
Open APIChat Bot Smart Devices
Deep QA
KBQA DNQA
NLU/NLG
DRQA
PLUGIN IRQAEnsemble
제13회 SAC 2018
7
NLU
Semantic Analyzer Entity Ranker
ADAM Deep QA 시스템
QA Manager
QA Controller
PLUGIN
Weather News
Exchange UnitExchange Rate
Time Day of Week
ADAM Resources
KB
Compact
KB
Resource
KB
Dictionary
IR
Resource
Plugin
Resource
ADAM KB
Encyclopedia
Domain
Knowledge
IRQA
Answer Ranker
IR Searcher
Information Retrieval
Question answering
KBQA
Factoid QA
Consecutive QA
Comparison QA Yes/no QA
Question Type Classifier
Multi-constraint QA
Multiple Answer QA
Negative QA
Knowledge Base
Question answering
Natural Language
Understanding NLG
Answer Generation
Natural Language
Generation
ADAM 관리도구
Project KB Curation KB Management KBQA IRQA QA Evaluation MonitoringNLP
DNQA
DRQA
Deep Neural network
Question answering
Document Retrieval Question
answering
QA Controller
QA Manager
QA 컨트롤러
NLU
시멘틱 분석 엔티티 랭킹
PLUGIN
날씨 뉴스
단위환산환율
시간 요일
IRQA
답변 랭킹
IR 검색
Information Retrieval
Question answering
KBQA
사실 QA
연속 QA
비교 QA 판정 QA
질의유형 분류기
다중 조건 QA
다중 답변 QA
부정형 QA
Knowledge Base
Question answering DNQA
DRQA
Deep Neural network
Question answering
Document Retrieval
Question answering
NLG
답변 생성
Natural Language
Generation
ADAM Resources
KB
컴팩트
KB
리소스
KB
사전
IR
리소스
Plugin
리소스
ADAM KB
지식백과 도메인 지식
ADAM 관리도구
프로젝트관리 지식자원관리 언어학습 KB 구축 KBQA관리 IRQA관리 평가관리운영관리
ADAM Deep QA 아키텍쳐
Natural Language
Understanding
Real Time Data
제13회 SAC 2018
자연어 처리와 자연어 이해
질의/대화 입력 “소설 셜록홈즈의 작가가 누구야?“
P - writerC - novel
소설 셜록홈즈
E - 소설_셜록홈즈
의
J
가
Q_WHO
누구
J
야
PUNCT
?작가
J
의미 분석 (Semantic analysis)
자연어 이해
형태소 분석, 구문 분석, 토큰화
자연어 처리
제13회 SAC 2018
ADAM NLU (Natural Language
Understanding)
질의/대화 입력
자연어 처리
리소스 링킹
리소스 랭킹
리소스 조합 랭킹
결과
“소설 셜록홈즈의 작가가 누구야?“
형태소 분석, 구문 분석, 토큰화
제13회 SAC 2018
ADAM NLU (Natural Language
Understanding)
P - Writer
작가
E – 직업_작가
소설
JE - 드라마_셜록홈즈
셜록홈즈
E - 영화_셜록홈즈
E - 소설_셜록홈즈
E - 티비쇼_셜록홈즈
의
J
가
Q_WHO
누구
J
야
PUNCT
?
각 토큰을 지식 베이스 내의 리소스와 연결
* 리소스 – (지식 표현 단위) Entity, Property, Class
질의/대화 입력
자연어 처리
리소스 링킹
리소스 랭킹
리소스 조합 랭킹
결과
“소설 셜록홈즈의 작가가 누구야?“
모호성 (Ambiguity)
E – Book
C – Novel
E - Season
제13회 SAC 2018
ADAM NLU (Natural Language
Understanding)
P - Writer
작가
E – 직업_작가
C - Novel
소설
E - Book
JE - 드라마_셜록홈즈
셜록홈즈
E - 소설_셜록홈즈
E - 영화_셜록홈즈
E - 티비쇼_셜록홈즈
의
J
가
Q_WHO
누구
J
야
PUNCT
?
각 토큰에 연결 된 리소스들에 대하여 랭킹 알고리즘을 적용
* 랭킹 알고리즘 – 연결 된 지식의 수, 임베딩 벡터 간 유사도 계산 등
질의/대화 입력
자연어 처리
리소스 링킹
리소스 랭킹
리소스 조합 랭킹
결과
“소설 셜록홈즈의 작가가 누구야?“
E - Season
제13회 SAC 2018
ADAM NLU (Natural Language
Understanding)
질의/대화 입력
자연어 처리
리소스 링킹
리소스 랭킹
리소스 조합 랭킹
결과
“소설 셜록홈즈의 작가가 누구야?“
지식 베이스에서의 연결성을 이용하여 리소스 조합 간의 순위를 조정
* 연결성 – 그래프에서의 거리, 임베딩 벡터 공간에서의 거리 등을 고려
P - Writer
작가
E – 직업_작가
C - Novel
소설
E - Book
JE - 소설_셜록홈즈
셜록홈즈
E - 드라마_셜록홈즈
E - 영화_셜록홈즈
E - 티비쇼_셜록홈즈
의
J
가
Q_WHO
누구
J
야
PUNCT
?
E - Season
제13회 SAC 2018
ADAM NLU (Natural Language
Understanding)
질의/대화 입력
자연어 처리
리소스 링킹
리소스 랭킹
리소스 조합 랭킹
결과
“소설 셜록홈즈의 작가가 누구야?“
지식 베이스에서의 연결성을 이용하여 리소스 조합 간의 순위를 조정
* 연결성 – 그래프에서의 거리, 임베딩 벡터 공간에서의 거리 등을 고려
P - WriterC - novel
소설 셜록홈즈
E - 소설_셜록홈즈
의
J
가
Q_WHO
누구
J
야
PUNCT
?작가
J
모호성 해소
P - Writer
작가
E – 직업_작가
C - Novel
소설
E - Book
JE - 소설_셜록홈즈
셜록홈즈
E - 드라마_셜록홈즈
E - 영화_셜록홈즈
E - 티비쇼_셜록홈즈
의
J
가
Q_WHO
누구
J
야
PUNCT
?
E - Season
제13회 SAC 2018
ADAM NLU (Natural Language
Understanding)
제13회 SAC 2018
[대한민국]: Entity
(adc:Nation)
[의]: 조사
[수도]: Property
(adp:capital)
[가]: 조사
[어디야]: Q_WHERE
[?]: Question
시맨틱 패턴과 질의 응답
“대한민국의 수도가 어디야?”
(시맨틱 패턴: EP)
“서울 중구의 인구는?”
(시맨틱 패턴: EEP)
중구
13만명
서울
인구
“서울은 대한민국의 수도야?”
(시맨틱 패턴: EEP)
서울
대한민국
수도
“중구와 강남구 중
인구가 더 많은 곳은?”
(시맨틱 패턴: EEP)
강남구
중구
13만명
54만명
인구
인구
대한민국
서울
수도
503명/km^2
문재인
거제시
인구 밀도
대통령
출생지
Knowledge Base
“서울입니다.”
동일한 시맨틱 패턴이지만,
서로 다른 의도를 갖는 질문을 구분해야 함
-> 질의 유형 파악의 필요성
제13회 SAC 2018
질의 유형 분류기
텍스트를 입력으로 하는 CNN 모델 기반
사실 질의
…
𝑛 × 𝑘 representation of
sentence
다중 필터를 이용한
Convolution layer
Max pooling
Layer
Fully connected
layer
판정 질의
비교 질의
대한민국의 수도가
서울이야?
전처리
Convolution layer와 pooling layer를
각각 2개로 설정, drop-out은 0.5
질의 문장을 전처리하여 사용
(조사 제외, 형태소 태그 추가)
- 로마/NNP 가톨릭교회/NNG 지도자/NNG 누구/NP 야/VCP (사실 질의)
- 제주도/NNP 위치/NNG … 미터/NNB 맞/VV 아/EF (판정 질의)
- 인도/NNP 중국/NNP … 은/ETM 나라/NNG (비교 질의)
질의 유형 별 분류 스코어
제13회 SAC 2018
KBQA 질의 유형
간단한 시맨틱 패턴
EP, EEP, CEP …
사실 질의
(Factoid question)
Question
대한민국의 수도가 어디야?
대한민국의 수도는 서울입니다.
Answer
축구 선수 호날두의 나이는?
축구 선수 호날두의
나이는 33세 입니다.
Question
Answer
복잡한 시맨틱 패턴
EEPC, CEPEP, EPEPEC …
판정 질의
(Yes/No question)
축구 선수 호날두의
고향은 서울이야?
호날두의 고향은 서울이
아닙니다.
Question
Answer
비교 질의
(Comparison question)
호날두와 메시 중에
키가 더 큰 사람은?
호날두랑 메시 중에 키가
더 큰 사람 호날두입니다.
Question
Answer
불완전한 시맨틱 패턴
P, PP, C …
연속 질의
(Consecutive question)
축구 선수 호날두의 나이는?
축구 선수 호날두의
나이는 33세 입니다.
국적은 어디야?
국적은 포르투갈 입니다.
Question
Answer
Question
Answer
제13회 SAC 2018
Session id
Question
Base Entity
…
축구 선수
호날두의 나이는?
QA 매니저
세션 매니저
자연어 이해 (NLU)
질의 유형 분류기
자연어 생성 (NLG)
SPARQL 결과 + NLU 결과
앙상블 QA
사실 QA 비교 QA
판정 QA 연속 QA
…
KBQA - 사실 질의 처리 과정
축구 선수
호날두의 나이는
33세 입니다.
사실 QA
축구 선수
호날두의 나이는?
축구 선수
호날두의 나이는
33세 입니다.
컨텍스트 매니저
지식 베이스 (KB)
SPARQL 템플릿 선택
SPARQL 생성
(Slot filling)
SPARQL 질의
CEP
시맨틱 패턴
제13회 SAC 2018
KBQA - 연속 질의 처리 과정
지식 베이스 (KB)
SPARQL 템플릿 선택
SPARQL 생성
(Slot filling)
SPARQL 질의
P (불완전한 패턴)
시맨틱 패턴
EP
: Base Entity(호날두) + P(국적)
패턴 재구성
Q1: 축구 선수 호날두의 나이는?
-> A1: 33세입니다.
Q2: 국적은 어디야?
-> A2: ?
연속 질의
Session id
Question
Base Entity
…
QA 매니저
세션 매니저
자연어 이해 (NLU)
질의 유형 분류기
자연어 생성 (NLG)
SPARQL 결과 + NLU 결과
앙상블 QA
사실 QA 비교 QA
판정 QA 연속 QA
…
사실 QA
컨텍스트 매니저
국적은 어디야?국적은 어디야?
국적은
포르투갈입니다.
연속 QA
제13회 SAC 2018
KBQA - 비교 질의 처리 과정
* 비교 유형 판단:
유형 A: 속성 값이 더 큰 개체를 답으로 반환하는 유형
E.g. “대한민국과 일본 중 인구밀도가 더 높은 나라는?”
유형 B: 속성 값이 더 작은 개체를 답으로 반환하는 유형
E.g. “슈퍼맨과 배트맨 중 키가 더 작은 캐릭터는?”
Step2 비교 질문 요소 분석 Step3 : SPARQL생성 및 질의Step1 NLU 분석
“대한민국과 일본 중 인구 밀도가
더 높은 나라는 ?”
[대한민국] – Entity 1
[중국] – Entity 2
[인구 밀도]– Property 1
[더 높은] – Comparison Type
[나라] – Class 1
비교 요소 추출
비교 유형 판단*
“대한민국입니다.”
비교 B 유형 SPARQL
비교 유형: [더 높은] → B 유형
비교 대상: 대한민국(E1), 일본(E2)
비교 속성: 인구 밀도(P1)
제13회 SAC 2018
KBQA - 판정 질의 처리 과정
질문의 사실 유무를 지식 베이스를 기반으로 판정하여 답변
?do
P1
?ran
?do E1C1’
TYPE
?ran E2C2’
TYPE
Candidate Domain Entity: E1 (구운몽)
Candidate Range Entity: E2 (김만중)
E1
P1
E2
ASK {E1 P1 E2}
True => C1 ? Step5 : YES
False => step6
소설 구운몽의 작가는 김만중이야?
E1 P1 E2
=?
작가
소설 인물,조직
소설, ……,
인물……,
Step1: NLU 분석 Step2: 속성의 Domain, Range Step3: 후보 셋 줄이기
Step4: KB기반 Fact 체크
E1
P1
E2
ASK {E1/E2 rdf:type C1 }
True => YES
False => NO
Step5: KB 기반 class 연결여부 체크
C1
C1
? ?
Step6: 정답 존재 여부 체크
구운몽, 작가, 김만중
소설
구운몽
김만중
구운몽 김만중
작가
E1
ASK {{E1 P1 ?E3} union {?E4 P1 E2}}
True => NO
False => NO ANSWER
?E3
?E4 E2
P1
P1
제13회 SAC 2018
기타 질의 처리 모듈 - IRQA/PLUGIN QA
PLUGIN QA
“지금 뉴욕은 몇 시야?”
“내일 날씨 알려줘”
“125달러가 원화로 얼마야?”
PlugIn
날짜 플러그인 뉴스 플러그인
환율 플러그인환산 플러그인
시간 플러그인 날씨 플러그인
날씨, 뉴스, 세계시간 등 실시간 변동 정보가 필요한 질의처리
IRQA (Information Retrieval Question Answering)
“미국의 1달러 지폐에는 누구
의 초상화가 그려져 있는가?” “조지 워싱턴입니다.”
QA pair
sets
index
Passage Retrieval
Natural Language
Processing
Answer Ranking
입력 질문과 유사한 기존 질문의 답을 찾아 제공
제13회 SAC 2018
연구 개발 중 질의 처리 모듈
DRQA (Document Retrieval Question Answering)
질문에 대한 답을 얻을 수 있을 만한
후보 문서를 위키피디아에서 검색
MRC (Machine Reading Comprehension) 방식으로
후보 문서 내에서 답을 찾음
[D Chen et al, 17]
KBQA가 답변 못하는 일반 상식 질문들에 대한 답변을 보완
제13회 SAC 2018
연구 개발 중 질의 처리 모듈
DNQA (Deep Neural network Question Answering)
대화 형태로 사용자의 의도를 파악하는 진보된 QA 기술 필요
모바일 대화 데이터 사용
(0.1M 문장, 50M Tokens, 12M bytes)
입력 질문의 문맥을 고려하여
자연스러운 답변 생성하도록 학습
Bi-LSTM + attention model
오늘 점심 뭐 먹지?
오늘은 백반 먹는게 어때?
제13회 SAC 2018
ADAM QA 시연 (KBQA)
Factoid QA
Consecutive QA
Yes/No QA
Comparison QA
제13회 SAC 2018
지식 베이스 및 질의 응답 시스템 관리 도구 시연
제13회 SAC 2018
27
일반 상식 질의 응답 -> 전문 지식 질의 응답
퓨퓨퓨
수집 및 변환도메인 및 데이터셋 선정 스키마 매핑
도메인 데이터 분석
WiseKB 스키마 매핑
WiseKB 구조 개선 및 스키마 확장
WiseKB 스키마 매핑 테이블 생성
전문 도메인 데이터 수집
WiseKB 트리플 변환
WiseKB 트리플 통합 및 적용
전문 도메인 지식 재구조화
헬스케어
• 유전자
• 약물
• 질병
법률
• 헌법
• 판례
공공데이터
• 건축
• 교통
• 행정
…
도메인 데이터 상세 정보 트리플 수
헬스
케어
Iproclass 유전자, 게놈 등 3.3B(3,306,107,223)
ncbigene 유전자 2,010,283,833
chembl 생체 화합물 0.4B(409,942,525)
ctd
유전자/단백질 상호
작용
326,720,894
drugbank 약품 3,672,531
도메인 데이터 건수 총 건수
법률
법령 4,736(4,600)
4,736(365,990)
정부입법 정보 20,000
행정규칙 14,000
법령용어 61,000
공공
상가/업소 2.4M(476,184)
2.4M(1,537,896)진료 내역 1,048,576
공원 13,136
전문 도메인 지식 구축 후보 구축완료
향후 계획: 전문 도메인 지식 구축 및 활용
제13회 SAC 2018
28
향후 계획: 대화형 질의 응답 기술 연구
Knowledge (Symbolic) + Neural Network
An End-to-End Model for Question
Answering over Knowledge Base with
Cross-Attention Combining Global Knowledge
A Knowledge-Grounded
Neural Conversation Model
[M Ghazvininejad et al, AAAI 18][Y Hao et al, ACL 17]
제13회 SAC 2018
29
지식 학습의 필요성
코어지식• 정답타입(X) = 직업
• 직업(Y) = X
• 출신대(Y) = 경희대
경상도가 고향인 이 사람은 경희대 재학
중 감옥에 수감된 바 있으며, 같은 대학
출신의 음악가와 결혼 후 부산에서 후에
정치인이 된 유명 인권 변호사와 같은
직장에서 근무했다. 4년전 환갑이었던
이사람의 현 직업은 무엇인가?
NLU
단순탐색
(그래프매칭)
????
복합추론
시맨틱 추론
공간추론
규칙추론
불확실
확률추론
Y :=
문재인(90%)
박영선(17%)
박근혜(5%)
…
노무현
김정숙문재인
아내
대통령 직업
직업
대한민국
수반
경희대
졸업
근무
친구
법무법인 부산
고향
성악
숙명여고
졸업
직업
인권변호
서대문구치소
졸업
1953.1.24
생일
거제도
업무
수감
근무
파편화된 지식의
학습과 증강
• 정답타입(X) = 직업
• 직업(Y) = X
• 출신대(Y) = 경희대
• 고향(Y) = 경상도
• 경험(Y) = 감옥수감
• 출신대(Y.아내) = 출신대(Y)
• 직업(Y.아내) = 음악가
• 직업(Y.동료) = 인권변호사
• 나이(Y) = 환갑 + 4

More Related Content

More from DongGyun Hong (7)

20170928 session basedrec_hyu_dake
20170928 session basedrec_hyu_dake20170928 session basedrec_hyu_dake
20170928 session basedrec_hyu_dake
 
20170216 conv mf_hyu_dake
20170216 conv mf_hyu_dake20170216 conv mf_hyu_dake
20170216 conv mf_hyu_dake
 
180212 normalization hyu_dake
180212 normalization hyu_dake180212 normalization hyu_dake
180212 normalization hyu_dake
 
20190901 seq2 sparql_kips
20190901 seq2 sparql_kips20190901 seq2 sparql_kips
20190901 seq2 sparql_kips
 
20181103 kbcqa kips
20181103 kbcqa kips20181103 kbcqa kips
20181103 kbcqa kips
 
20181106 survey on challenges of question answering in the semantic web saltlux
20181106 survey on challenges of question answering in the semantic web saltlux20181106 survey on challenges of question answering in the semantic web saltlux
20181106 survey on challenges of question answering in the semantic web saltlux
 
20200923 open domain-qa_saltlux
20200923 open domain-qa_saltlux20200923 open domain-qa_saltlux
20200923 open domain-qa_saltlux
 

20181217 sac dong_gyun_hong

  • 1. 제13회 SAC 2018 인공지능, 사람의 인격도 학습 가능할까? 제13회 SAC 2018 Saltlux Annual Conference 앙상블 심층 질의 응답 기술 1 심홍매 · 홍동균
  • 3. 제13회 SAC 2018 3 대화형 AI - 핵심 기능 사용자의 목적에 따른 3가지 대화 유형 Goal-Oriented Dialogue (Task completion) 알람 설정, 상품 주문, 레스토랑 예약 Question & Answering 지식 획득, 정보 검색 General Conversation 일상 대화, 잡담, 유머
  • 4. 제13회 SAC 2018 4 QA의 다양한 질문 유형 일반 상식 전문 지식, FAQ 실시간 변동 정보 공직유관단체 또는 공공기관에서 근무하는 비 정규직근로자도 청탁금지법 적용대상인가요? 현재 대한민국의 대통령은? 포유류 중 가장 느린 동물은? 오늘 날씨 어때? (날씨) 오늘 달러 환율 알려줘 (환율) 넌 누구야? 넌 어디서 태어났어? 대화형 AI 정체성
  • 5. 제13회 SAC 2018 5 왜 앙상블 Deep QA인가? 앙상블[ensemble] : ‘어울림’, ‘통일’, ‘조화’ IRQA DNQA PLUGINKBQA DRQA 앙상블 Deep QA
  • 6. 제13회 SAC 2018 6 ADAM Deep QA 기술 구성 개념도 Data Sources (Deep Web) Data Scrapping& Curation Knowledge Asset Knowledge Curation (Dual Spiral Method) Knowledge Base c User Businesses Knowledge Reasoning OWL Reasoner Heuristics Knowledge Completion Knowledge Learning Entity Linking Property Linking Ensemble Platform & Service Admin Open APIChat Bot Smart Devices Deep QA KBQA DNQA NLU/NLG DRQA PLUGIN IRQAEnsemble
  • 7. 제13회 SAC 2018 7 NLU Semantic Analyzer Entity Ranker ADAM Deep QA 시스템 QA Manager QA Controller PLUGIN Weather News Exchange UnitExchange Rate Time Day of Week ADAM Resources KB Compact KB Resource KB Dictionary IR Resource Plugin Resource ADAM KB Encyclopedia Domain Knowledge IRQA Answer Ranker IR Searcher Information Retrieval Question answering KBQA Factoid QA Consecutive QA Comparison QA Yes/no QA Question Type Classifier Multi-constraint QA Multiple Answer QA Negative QA Knowledge Base Question answering Natural Language Understanding NLG Answer Generation Natural Language Generation ADAM 관리도구 Project KB Curation KB Management KBQA IRQA QA Evaluation MonitoringNLP DNQA DRQA Deep Neural network Question answering Document Retrieval Question answering QA Controller QA Manager QA 컨트롤러 NLU 시멘틱 분석 엔티티 랭킹 PLUGIN 날씨 뉴스 단위환산환율 시간 요일 IRQA 답변 랭킹 IR 검색 Information Retrieval Question answering KBQA 사실 QA 연속 QA 비교 QA 판정 QA 질의유형 분류기 다중 조건 QA 다중 답변 QA 부정형 QA Knowledge Base Question answering DNQA DRQA Deep Neural network Question answering Document Retrieval Question answering NLG 답변 생성 Natural Language Generation ADAM Resources KB 컴팩트 KB 리소스 KB 사전 IR 리소스 Plugin 리소스 ADAM KB 지식백과 도메인 지식 ADAM 관리도구 프로젝트관리 지식자원관리 언어학습 KB 구축 KBQA관리 IRQA관리 평가관리운영관리 ADAM Deep QA 아키텍쳐 Natural Language Understanding Real Time Data
  • 8. 제13회 SAC 2018 자연어 처리와 자연어 이해 질의/대화 입력 “소설 셜록홈즈의 작가가 누구야?“ P - writerC - novel 소설 셜록홈즈 E - 소설_셜록홈즈 의 J 가 Q_WHO 누구 J 야 PUNCT ?작가 J 의미 분석 (Semantic analysis) 자연어 이해 형태소 분석, 구문 분석, 토큰화 자연어 처리
  • 9. 제13회 SAC 2018 ADAM NLU (Natural Language Understanding) 질의/대화 입력 자연어 처리 리소스 링킹 리소스 랭킹 리소스 조합 랭킹 결과 “소설 셜록홈즈의 작가가 누구야?“ 형태소 분석, 구문 분석, 토큰화
  • 10. 제13회 SAC 2018 ADAM NLU (Natural Language Understanding) P - Writer 작가 E – 직업_작가 소설 JE - 드라마_셜록홈즈 셜록홈즈 E - 영화_셜록홈즈 E - 소설_셜록홈즈 E - 티비쇼_셜록홈즈 의 J 가 Q_WHO 누구 J 야 PUNCT ? 각 토큰을 지식 베이스 내의 리소스와 연결 * 리소스 – (지식 표현 단위) Entity, Property, Class 질의/대화 입력 자연어 처리 리소스 링킹 리소스 랭킹 리소스 조합 랭킹 결과 “소설 셜록홈즈의 작가가 누구야?“ 모호성 (Ambiguity) E – Book C – Novel E - Season
  • 11. 제13회 SAC 2018 ADAM NLU (Natural Language Understanding) P - Writer 작가 E – 직업_작가 C - Novel 소설 E - Book JE - 드라마_셜록홈즈 셜록홈즈 E - 소설_셜록홈즈 E - 영화_셜록홈즈 E - 티비쇼_셜록홈즈 의 J 가 Q_WHO 누구 J 야 PUNCT ? 각 토큰에 연결 된 리소스들에 대하여 랭킹 알고리즘을 적용 * 랭킹 알고리즘 – 연결 된 지식의 수, 임베딩 벡터 간 유사도 계산 등 질의/대화 입력 자연어 처리 리소스 링킹 리소스 랭킹 리소스 조합 랭킹 결과 “소설 셜록홈즈의 작가가 누구야?“ E - Season
  • 12. 제13회 SAC 2018 ADAM NLU (Natural Language Understanding) 질의/대화 입력 자연어 처리 리소스 링킹 리소스 랭킹 리소스 조합 랭킹 결과 “소설 셜록홈즈의 작가가 누구야?“ 지식 베이스에서의 연결성을 이용하여 리소스 조합 간의 순위를 조정 * 연결성 – 그래프에서의 거리, 임베딩 벡터 공간에서의 거리 등을 고려 P - Writer 작가 E – 직업_작가 C - Novel 소설 E - Book JE - 소설_셜록홈즈 셜록홈즈 E - 드라마_셜록홈즈 E - 영화_셜록홈즈 E - 티비쇼_셜록홈즈 의 J 가 Q_WHO 누구 J 야 PUNCT ? E - Season
  • 13. 제13회 SAC 2018 ADAM NLU (Natural Language Understanding) 질의/대화 입력 자연어 처리 리소스 링킹 리소스 랭킹 리소스 조합 랭킹 결과 “소설 셜록홈즈의 작가가 누구야?“ 지식 베이스에서의 연결성을 이용하여 리소스 조합 간의 순위를 조정 * 연결성 – 그래프에서의 거리, 임베딩 벡터 공간에서의 거리 등을 고려 P - WriterC - novel 소설 셜록홈즈 E - 소설_셜록홈즈 의 J 가 Q_WHO 누구 J 야 PUNCT ?작가 J 모호성 해소 P - Writer 작가 E – 직업_작가 C - Novel 소설 E - Book JE - 소설_셜록홈즈 셜록홈즈 E - 드라마_셜록홈즈 E - 영화_셜록홈즈 E - 티비쇼_셜록홈즈 의 J 가 Q_WHO 누구 J 야 PUNCT ? E - Season
  • 14. 제13회 SAC 2018 ADAM NLU (Natural Language Understanding)
  • 15. 제13회 SAC 2018 [대한민국]: Entity (adc:Nation) [의]: 조사 [수도]: Property (adp:capital) [가]: 조사 [어디야]: Q_WHERE [?]: Question 시맨틱 패턴과 질의 응답 “대한민국의 수도가 어디야?” (시맨틱 패턴: EP) “서울 중구의 인구는?” (시맨틱 패턴: EEP) 중구 13만명 서울 인구 “서울은 대한민국의 수도야?” (시맨틱 패턴: EEP) 서울 대한민국 수도 “중구와 강남구 중 인구가 더 많은 곳은?” (시맨틱 패턴: EEP) 강남구 중구 13만명 54만명 인구 인구 대한민국 서울 수도 503명/km^2 문재인 거제시 인구 밀도 대통령 출생지 Knowledge Base “서울입니다.” 동일한 시맨틱 패턴이지만, 서로 다른 의도를 갖는 질문을 구분해야 함 -> 질의 유형 파악의 필요성
  • 16. 제13회 SAC 2018 질의 유형 분류기 텍스트를 입력으로 하는 CNN 모델 기반 사실 질의 … 𝑛 × 𝑘 representation of sentence 다중 필터를 이용한 Convolution layer Max pooling Layer Fully connected layer 판정 질의 비교 질의 대한민국의 수도가 서울이야? 전처리 Convolution layer와 pooling layer를 각각 2개로 설정, drop-out은 0.5 질의 문장을 전처리하여 사용 (조사 제외, 형태소 태그 추가) - 로마/NNP 가톨릭교회/NNG 지도자/NNG 누구/NP 야/VCP (사실 질의) - 제주도/NNP 위치/NNG … 미터/NNB 맞/VV 아/EF (판정 질의) - 인도/NNP 중국/NNP … 은/ETM 나라/NNG (비교 질의) 질의 유형 별 분류 스코어
  • 17. 제13회 SAC 2018 KBQA 질의 유형 간단한 시맨틱 패턴 EP, EEP, CEP … 사실 질의 (Factoid question) Question 대한민국의 수도가 어디야? 대한민국의 수도는 서울입니다. Answer 축구 선수 호날두의 나이는? 축구 선수 호날두의 나이는 33세 입니다. Question Answer 복잡한 시맨틱 패턴 EEPC, CEPEP, EPEPEC … 판정 질의 (Yes/No question) 축구 선수 호날두의 고향은 서울이야? 호날두의 고향은 서울이 아닙니다. Question Answer 비교 질의 (Comparison question) 호날두와 메시 중에 키가 더 큰 사람은? 호날두랑 메시 중에 키가 더 큰 사람 호날두입니다. Question Answer 불완전한 시맨틱 패턴 P, PP, C … 연속 질의 (Consecutive question) 축구 선수 호날두의 나이는? 축구 선수 호날두의 나이는 33세 입니다. 국적은 어디야? 국적은 포르투갈 입니다. Question Answer Question Answer
  • 18. 제13회 SAC 2018 Session id Question Base Entity … 축구 선수 호날두의 나이는? QA 매니저 세션 매니저 자연어 이해 (NLU) 질의 유형 분류기 자연어 생성 (NLG) SPARQL 결과 + NLU 결과 앙상블 QA 사실 QA 비교 QA 판정 QA 연속 QA … KBQA - 사실 질의 처리 과정 축구 선수 호날두의 나이는 33세 입니다. 사실 QA 축구 선수 호날두의 나이는? 축구 선수 호날두의 나이는 33세 입니다. 컨텍스트 매니저 지식 베이스 (KB) SPARQL 템플릿 선택 SPARQL 생성 (Slot filling) SPARQL 질의 CEP 시맨틱 패턴
  • 19. 제13회 SAC 2018 KBQA - 연속 질의 처리 과정 지식 베이스 (KB) SPARQL 템플릿 선택 SPARQL 생성 (Slot filling) SPARQL 질의 P (불완전한 패턴) 시맨틱 패턴 EP : Base Entity(호날두) + P(국적) 패턴 재구성 Q1: 축구 선수 호날두의 나이는? -> A1: 33세입니다. Q2: 국적은 어디야? -> A2: ? 연속 질의 Session id Question Base Entity … QA 매니저 세션 매니저 자연어 이해 (NLU) 질의 유형 분류기 자연어 생성 (NLG) SPARQL 결과 + NLU 결과 앙상블 QA 사실 QA 비교 QA 판정 QA 연속 QA … 사실 QA 컨텍스트 매니저 국적은 어디야?국적은 어디야? 국적은 포르투갈입니다. 연속 QA
  • 20. 제13회 SAC 2018 KBQA - 비교 질의 처리 과정 * 비교 유형 판단: 유형 A: 속성 값이 더 큰 개체를 답으로 반환하는 유형 E.g. “대한민국과 일본 중 인구밀도가 더 높은 나라는?” 유형 B: 속성 값이 더 작은 개체를 답으로 반환하는 유형 E.g. “슈퍼맨과 배트맨 중 키가 더 작은 캐릭터는?” Step2 비교 질문 요소 분석 Step3 : SPARQL생성 및 질의Step1 NLU 분석 “대한민국과 일본 중 인구 밀도가 더 높은 나라는 ?” [대한민국] – Entity 1 [중국] – Entity 2 [인구 밀도]– Property 1 [더 높은] – Comparison Type [나라] – Class 1 비교 요소 추출 비교 유형 판단* “대한민국입니다.” 비교 B 유형 SPARQL 비교 유형: [더 높은] → B 유형 비교 대상: 대한민국(E1), 일본(E2) 비교 속성: 인구 밀도(P1)
  • 21. 제13회 SAC 2018 KBQA - 판정 질의 처리 과정 질문의 사실 유무를 지식 베이스를 기반으로 판정하여 답변 ?do P1 ?ran ?do E1C1’ TYPE ?ran E2C2’ TYPE Candidate Domain Entity: E1 (구운몽) Candidate Range Entity: E2 (김만중) E1 P1 E2 ASK {E1 P1 E2} True => C1 ? Step5 : YES False => step6 소설 구운몽의 작가는 김만중이야? E1 P1 E2 =? 작가 소설 인물,조직 소설, ……, 인물……, Step1: NLU 분석 Step2: 속성의 Domain, Range Step3: 후보 셋 줄이기 Step4: KB기반 Fact 체크 E1 P1 E2 ASK {E1/E2 rdf:type C1 } True => YES False => NO Step5: KB 기반 class 연결여부 체크 C1 C1 ? ? Step6: 정답 존재 여부 체크 구운몽, 작가, 김만중 소설 구운몽 김만중 구운몽 김만중 작가 E1 ASK {{E1 P1 ?E3} union {?E4 P1 E2}} True => NO False => NO ANSWER ?E3 ?E4 E2 P1 P1
  • 22. 제13회 SAC 2018 기타 질의 처리 모듈 - IRQA/PLUGIN QA PLUGIN QA “지금 뉴욕은 몇 시야?” “내일 날씨 알려줘” “125달러가 원화로 얼마야?” PlugIn 날짜 플러그인 뉴스 플러그인 환율 플러그인환산 플러그인 시간 플러그인 날씨 플러그인 날씨, 뉴스, 세계시간 등 실시간 변동 정보가 필요한 질의처리 IRQA (Information Retrieval Question Answering) “미국의 1달러 지폐에는 누구 의 초상화가 그려져 있는가?” “조지 워싱턴입니다.” QA pair sets index Passage Retrieval Natural Language Processing Answer Ranking 입력 질문과 유사한 기존 질문의 답을 찾아 제공
  • 23. 제13회 SAC 2018 연구 개발 중 질의 처리 모듈 DRQA (Document Retrieval Question Answering) 질문에 대한 답을 얻을 수 있을 만한 후보 문서를 위키피디아에서 검색 MRC (Machine Reading Comprehension) 방식으로 후보 문서 내에서 답을 찾음 [D Chen et al, 17] KBQA가 답변 못하는 일반 상식 질문들에 대한 답변을 보완
  • 24. 제13회 SAC 2018 연구 개발 중 질의 처리 모듈 DNQA (Deep Neural network Question Answering) 대화 형태로 사용자의 의도를 파악하는 진보된 QA 기술 필요 모바일 대화 데이터 사용 (0.1M 문장, 50M Tokens, 12M bytes) 입력 질문의 문맥을 고려하여 자연스러운 답변 생성하도록 학습 Bi-LSTM + attention model 오늘 점심 뭐 먹지? 오늘은 백반 먹는게 어때?
  • 25. 제13회 SAC 2018 ADAM QA 시연 (KBQA) Factoid QA Consecutive QA Yes/No QA Comparison QA
  • 26. 제13회 SAC 2018 지식 베이스 및 질의 응답 시스템 관리 도구 시연
  • 27. 제13회 SAC 2018 27 일반 상식 질의 응답 -> 전문 지식 질의 응답 퓨퓨퓨 수집 및 변환도메인 및 데이터셋 선정 스키마 매핑 도메인 데이터 분석 WiseKB 스키마 매핑 WiseKB 구조 개선 및 스키마 확장 WiseKB 스키마 매핑 테이블 생성 전문 도메인 데이터 수집 WiseKB 트리플 변환 WiseKB 트리플 통합 및 적용 전문 도메인 지식 재구조화 헬스케어 • 유전자 • 약물 • 질병 법률 • 헌법 • 판례 공공데이터 • 건축 • 교통 • 행정 … 도메인 데이터 상세 정보 트리플 수 헬스 케어 Iproclass 유전자, 게놈 등 3.3B(3,306,107,223) ncbigene 유전자 2,010,283,833 chembl 생체 화합물 0.4B(409,942,525) ctd 유전자/단백질 상호 작용 326,720,894 drugbank 약품 3,672,531 도메인 데이터 건수 총 건수 법률 법령 4,736(4,600) 4,736(365,990) 정부입법 정보 20,000 행정규칙 14,000 법령용어 61,000 공공 상가/업소 2.4M(476,184) 2.4M(1,537,896)진료 내역 1,048,576 공원 13,136 전문 도메인 지식 구축 후보 구축완료 향후 계획: 전문 도메인 지식 구축 및 활용
  • 28. 제13회 SAC 2018 28 향후 계획: 대화형 질의 응답 기술 연구 Knowledge (Symbolic) + Neural Network An End-to-End Model for Question Answering over Knowledge Base with Cross-Attention Combining Global Knowledge A Knowledge-Grounded Neural Conversation Model [M Ghazvininejad et al, AAAI 18][Y Hao et al, ACL 17]
  • 29. 제13회 SAC 2018 29 지식 학습의 필요성 코어지식• 정답타입(X) = 직업 • 직업(Y) = X • 출신대(Y) = 경희대 경상도가 고향인 이 사람은 경희대 재학 중 감옥에 수감된 바 있으며, 같은 대학 출신의 음악가와 결혼 후 부산에서 후에 정치인이 된 유명 인권 변호사와 같은 직장에서 근무했다. 4년전 환갑이었던 이사람의 현 직업은 무엇인가? NLU 단순탐색 (그래프매칭) ???? 복합추론 시맨틱 추론 공간추론 규칙추론 불확실 확률추론 Y := 문재인(90%) 박영선(17%) 박근혜(5%) … 노무현 김정숙문재인 아내 대통령 직업 직업 대한민국 수반 경희대 졸업 근무 친구 법무법인 부산 고향 성악 숙명여고 졸업 직업 인권변호 서대문구치소 졸업 1953.1.24 생일 거제도 업무 수감 근무 파편화된 지식의 학습과 증강 • 정답타입(X) = 직업 • 직업(Y) = X • 출신대(Y) = 경희대 • 고향(Y) = 경상도 • 경험(Y) = 감옥수감 • 출신대(Y.아내) = 출신대(Y) • 직업(Y.아내) = 음악가 • 직업(Y.동료) = 인권변호사 • 나이(Y) = 환갑 + 4