17
. S 2 -Net: SRU 기반 Self-matching Network를 이용한 한국어 기계 독해 강원대학교 1 , 마인즈랩 2 , 한국전자통신연구원 3 박천음 1 , 이창기 1 , 홍수린 2 , 황이규 2 , 유태준 2 , 김현기 3 2017.10.14

S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏.

S2-Net: SRU 기반 Self-matching Network를 이용한한국어기계

독해

강원대학교1, 마인즈랩2, 한국전자통신연구원3

박천음1, 이창기1, 홍수린2, 황이규2, 유태준2, 김현기3

2017.10.14

Page 2: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 2

연구배경및 연구방법

기계 독해 (Machine Reading Comprehension)• 시스템이 주어진 문맥을 이해

• 질의응답 적용질문에 올바른 정답을 문맥 내에서 유추

기계 독해 영어 데이터 셋• bAbi (cloze-style: Children Book Test, Hill et al., 2016)

• WikiQA (answer sentence selection, Yang et al., 2015)

• SQuAD (answer span prediction, Rajpurkar et al., 2016)

• MS-MARCO (answer synthesis, Nguyen et al., 2016)

문맥2004년건조기시장에 ... 의류건조기중 LG전자는점유율 77.4%로 1위를차지했다.

질문 국내건조기시장점유율 1위누구야?

정답 LG전자

Page 3: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 3

연구배경및 연구방법

기계 독해 딥 러닝 모델

제안 방법• 기계 독해 한국어 데이터 셋 구축 MindsMRC Data Set (한국어)

• 기계 독해 딥 러닝 모델 개발 S2-Net (SRU 기반 Self-matching layer 이용)

• 질문에 대한 자질 추출

DrQA, Chen et al., 2017 BiDAF, Seo et al., 2017 R-Net, Microsoft Research Asia, 2017

Page 4: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 4

GRU and LSTM

GRU

LSTM

𝑖𝑡 = 𝜎 𝑊𝑖𝑥𝑥𝑡 + 𝑊𝑖ℎℎ𝑡−1 + 𝑊𝑖𝑐𝑐𝑡−1 + 𝑏𝑖

𝑓𝑡 = 𝜎 𝑊𝑓𝑥𝑥𝑡 + 𝑊𝑓ℎℎ𝑡−1 + 𝑊𝑓𝑐𝑐𝑡−1 + 𝑏𝑓

𝑐𝑡 = 𝑓𝑡⨀𝑐𝑡−1 + 𝑖𝑡⨀tanh(𝑊𝑐𝑥𝑥𝑡 + 𝑊𝑐ℎℎ𝑡−1 + 𝑏𝑐)

𝑜𝑡 = 𝜎 𝑊𝑜𝑥𝑥𝑡 + 𝑊𝑜ℎℎ𝑡−1 + 𝑊𝑜𝑐𝑐𝑡−1 + 𝑏𝑜

ℎ𝑡 = 𝑜𝑡⨀tanh(𝑐𝑡)

𝑦𝑡 = 𝑔(𝑊𝑦ℎℎ𝑡 + 𝑏𝑦)

GRU Gating. Chung, Junyoung, et al. “Empirical evaluation of gated recurrent neural networks

on sequence modeling.”

ℎ𝑡 = 1 − 𝑧𝑡 ℎ𝑡−1 + 𝑧𝑡 ℎ𝑡

𝑧𝑡 = 𝜎(𝑊𝑧𝑥𝑡 + 𝑈𝑧ℎ𝑡−1)

𝑟𝑡 = 𝜎(𝑊𝑟𝑥𝑡 + 𝑈𝑟ℎ𝑡−1)

ℎ𝑡 = tanh(𝑊𝑥𝑡 + 𝑈(𝑟𝑡⨀ℎ𝑡−1)

Page 5: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 5

Simple Recurrent Unit

Simple Recurrent Unit (SRU)

• Gate 입력에서 이전 hidden state를 지운 recurrent unit 모델

• 출력 hidden state에 highway network 적용

𝑥

𝑓

𝐶

𝑟

𝑥𝑡 = 𝑊𝑥𝑡

)𝑖𝑡 = (1 − 𝑓𝑡

𝑓𝑡 = 𝜎(𝑊𝑓𝑥𝑡 + 𝑏𝑡

)𝑟𝑡 = 𝜎(𝑊𝑟𝑥𝑡 + 𝑏𝑟

𝑐𝑡 = 𝑓𝑡 ⊙ 𝑐𝑡−1 + 𝑖𝑡 ⊙ 𝑥𝑡

ℎ𝑡 = 𝑟𝑡 ⊙ 𝑔 𝑐𝑡 + (1 − 𝑟𝑡) ⊙ 𝑥𝑡

FFNN

FFNN

HighwayNetwork

LSTM

GRU

GRU Gating. Chung, Junyoung, et al. “Empirical evaluation of gated recurrent neural networks

on sequence modeling.”

Page 6: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 6

S2-Net을 이용한한국어 기계 독해

Hidden Layer (Encoding)• 질문과 문단에 자질 사용

Self-Matching Layer• 자기 자신에 대한 attention

weight 계산• 상호참조해결 효과

Modeling Layer

• 추상화 시도

Output Layer• Pointer Networks

Page 7: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 7

S2-Net: Question and Passage Feature Layer

Feature Layer

• 𝑝 = [𝑓𝑒𝑚𝑏 𝑝𝑡 ; 𝑓𝑐_𝑒𝑚𝑏 𝑝𝑡 ; 𝑓𝑒𝑥𝑎𝑐𝑡_𝑚𝑎𝑡𝑐ℎ 𝑝𝑡 ; 𝑓𝑡𝑓 𝑝𝑡 ; 𝑓𝑎𝑙𝑖𝑔𝑛(𝑝𝑡)]

• 𝑞 = [𝑓𝑒𝑚𝑏 𝑞𝑡 ; 𝑓𝑐_𝑒𝑚𝑏 𝑞𝑡 ; 𝑓𝑒𝑥𝑎𝑐𝑡_𝑚𝑎𝑡𝑐ℎ 𝑞𝑡 ; 𝑓𝑡𝑓 𝑞𝑡 ; 𝑓𝑎𝑙𝑖𝑔𝑛(𝑞𝑡)]

• 단어 표현 (word embedding)𝑓𝑒𝑚𝑏 𝑝𝑡 = 𝐸(𝑝𝑡)

• 음절 표현 (character embedding)𝑓𝑐_𝑒𝑚𝑏 𝑝𝑡 = 𝐶𝐸(𝑝𝑡)

• 정확한 매치 (exact match)𝑓𝑒𝑥𝑎𝑐𝑡_𝑚𝑎𝑡𝑐ℎ 𝑝𝑡 = ∏(𝑝𝑡 ∈ 𝑞)

• 토큰 자질 (token feature)𝑓𝑡𝑓 𝑝𝑡 = 𝑇𝐹(𝑝𝑡)

• 정렬된 질문 표현 (aligned question embedding)

𝑓𝑎𝑙𝑖𝑔𝑛 𝑝𝑡 = 𝑗 𝛼𝑡,𝑗𝐸(𝑞𝑗) 𝛼𝑡,𝑗 =exp 𝛼 𝐸 𝑝𝑡 ⋅𝛼 𝐸 𝑞𝑗

𝑗′ exp 𝛼 𝐸 𝑝𝑡 ⋅𝛼 𝐸 𝑞𝑗′

Page 8: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 8

S2-Net: Hidden Layer (Encoding)

Question Hidden Layer

Passage Hidden Layer

𝒒 = 𝑗 𝑏𝑗𝑞𝑗

𝑏𝑗 =exp 𝑤 ∙ 𝑞𝑗

𝑗′ exp(𝑤 ∙ 𝑞𝑗′)

𝑢𝑡𝑃 = 𝐵𝑖𝑆𝑅𝑈𝑃(𝑢𝑡−1

𝑃 , 𝑝𝑡)

Page 9: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 9

S2-Net: Self-Matching and Modeling Layer

Self-Matching Layer

Modeling Layer

𝑐𝑡 = 𝑖=1𝑛 𝑎𝑖

𝑡𝑢𝑖𝑃

𝑠𝑗𝑡 = 𝑣𝑇tanh(𝑊𝑢

𝑃𝑢𝑗𝑃 + 𝑊𝑢

𝑝𝑢𝑡

𝑃)

𝑎𝑖𝑡 = exp 𝑠𝑖

𝑡 / 𝑗=1𝑛 exp(𝑠𝑗

𝑡)

ℎ𝑡𝑃 = 𝐵𝑖𝑆𝑅𝑈(ℎ𝑡−1

𝑃 , 𝑢𝑡𝑃; 𝑐𝑡

∗)

𝑔𝑡 = 𝑠𝑖𝑔𝑚𝑜𝑖𝑑(𝑊𝑔 𝑢𝑡𝑃; 𝑐𝑡 )

𝑢𝑡𝑃; 𝑐𝑡

∗ = 𝑔𝑡 ⊙ 𝑢𝑡𝑃; 𝑐𝑡

Page 10: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 10

S2-Net: Output Layer

Bi-linear sequence attention

출력 결과 answer span

최대 span 길이: 50 형태소

𝑃𝑠𝑡𝑎𝑟𝑡(𝑡) ∝ exp(ℎ𝑡𝑃𝑊𝑠𝒒)

𝑃𝑒𝑛𝑑(𝑡) ∝ exp(ℎ𝑡𝑃𝑊𝑒𝒒)

Page 11: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 11

한국어 기계독해데이터 셋

연예, 일반 도메인 대상

뉴스와 위키피디아 문단 수집, 질문-정답 쌍

한국어 기계 독해 데이터 셋 구조

Page 12: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 12

한국어 기계독해데이터 셋

한국어 기계 독해 데이터 셋 예제Title

장마철에도 빳빳하게... 물 만난 의류건조기

Paragraphs

Context_original

2004년 건조기 시장에 가장 먼저 뛰어든 LG전자를 비롯해 올해 초 삼성전자와 중견 기업까지 건조기 판

매에 나서면서 국내 건조기 생산량은 급격히 늘고 있다. 건조기의 대당 판매가격을 고려했을 때 1~2년 내

에 연간 시장 규모는 1조 원을 넘을 것으로 예상된다. 국내 건조기 시장은 LG전자가 주도하고 있다. 가격

비교사이트 다나와리서치에 따르면 올 1월부터 6월까지 판매된 의류 건조기 중 LG전자는 점유율 77.4%

로 1위를 차지했다. 가스식·전기식을 모두 판매하는 LG전자는 올해 초부터 전기식 건조기 사업에 주력하

고 있다. 회사는 올해 용량과 사용 편의성을 업그레이드한 트롬 전기식 건조기 신제품 2종을 출시했다. 올

해 제품에는 냉매를 순환시켜 발생한 열을 활용하는 ‘인버터 히트펌프’ 기술을 적용했다.

Context

[[['2004/sn', '년/nnb'], ['건조기/nng'], ['시장/nng', '에/jkb'], ['가장/mag'], ['먼저/mag'], ['뛰어들/vv', 'ㄴ/etm'],

['LG/sl', '전자/nng', '를/jko'], ['비롯하/vv', '어/ec'], ['올해/nng'], ['초/nnb'], ['삼성전자/nng', '와/jc'], ['중견/nng'], ['

기업/nng', '까지/jx'], ['건조기/nng'], ['판매/nng', '에/jkb'], ['나서/vv', '면서/ec'], ['국내/nng'], ['건조기/nng'], ['생

산량/nng', '은/jx'], ['급격히/mag'], ['늘/vv', '고/ec'], ['있/vx', '다/ef', './sf']], ... ]]

Question_original 한국 건조기 시장 점유율 1위 어딘지 알려줘

Question[[['한국/nng'], ['건조기/nng'], ['시장/nng'], ['점유율/nng'], ['1/sn', '위/nnb'], ['어디/np', '이/vcp', 'ㄴ지/ec'], ['알려

주/vv', '어/ec']]]

Answers

text_original LG전자

text [[['LG/sl', '전자/nng']]]

answer_start 95

answer_end 97

Page 13: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 13

실험설정

본 논문에서 적용한 문제• 한국어 기계 독해

데이터 셋• 한국어 기계 독해 데이터 구축

• MindsMRC Data Set

• 학습 셋과 개발 셋 9:1 비율

실험 환경• Intel i7-4790 CPU (3.60 GHz)

• 32GB RAM

• Ubuntu 16.04 OS

• TITAN X (Pascal), GeForce GTX 1080, 1070

Dataset

문단수 질문수 고유질문수Dev set 6,221 16,107 8,054

Train set 55,986 141,424 70,712

Page 14: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 14

실험설정

S2-Net 하이퍼 파라미터• 학습 알고리즘 Adam이용

• 학습율 (learning rate): 0.1

• 활성함수 (activation function): 모두 tanh 적용

• 모든 RNN 레이어에 SRU (CUDA level optimization) 적용

• 드랍아웃 (dropout): 모든 레이어 0.2 적용

• 히든 레이어 차원 수: 128

• 워드 임베딩 차원 수: 100

• 음절 임베딩 차원 수: 50

• Char CNN 윈도우 사이즈: [2,3,4,5,6]

• Char CNN 필터 크기: 30

• 미니 배치 (mini batch) 배치 크기: 24 or 32

• 최대 epoch: 70

• 매 epoch마다 dev셋으로 평가

성능척도 (measure)• Exact Match (EM)와 F1 이용

Page 15: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 15

실험및 결과

Baseline: DrQA [3, 1, LSTM] (EM) 59.25% (F1) 74.37%

S2-Net (our) [3, 1, SRU] (EM) 64.37% (F1) 78.16%

S2-Net (our) [5, 2, SRU] (EM) 65.84% (F1) 78.98%

ModelHidden

layers

Modeling

layers

RNN

typeEM F1

DrQA(baseline)[4]

3 1

LSTM 59.25 74.37

DrQA+BiSRU[14]

SRU

64.16 77.55

BiDAF 64.01 77.29

BiDAF+SM 63.97 77.71

S2-Net (our) 64.37 78.16

DrQA+BiSRU[14]

5 2 SRU

64.94 78.16

BiDAF 64.76 78.03

BiDAF+SM 61.78 75.67

S2-Net (our) 65.84 78.98 +4.61

+3.79

Page 16: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 16

결론

한국어 기계 독해 데이터 셋 구축

기계 독해를 위한 S2-Net 모델 제안

S2-Net과 DrQA, BiDAF, BiDAF+SM 모델 비교 실험 수행

실험 결과• Baseline DrQA에 비하여 성능 향상

• DrQA (EM) 59.25% (F1) 74.37%

• S2-Net (EM) 65.84% (+6.59%) (F1) 78.98% (+4.61%)

• 그 외의 다른 모델들(BiDAF, BiDAF+SM) 에 비하여 좋은 성능

향후 연구• 더 많은 학습 데이터 구축

• 성능 향상을 위한 자질 튜닝

• Hierarchical RNN 모델 확장

Page 17: S -Net: SRU 기반 Self-matching Network를이용한한국어기계 독해cs.kangwon.ac.kr/~parkce/seminar/20171014_S2-net.pdf · 2017. 10. 13. · 𝐼 J H𝑖 O K N 𝐿 . 3 연구배경및연구방법

𝐼𝑛𝑡𝑒𝑙𝑙𝑖𝑔𝑒𝑛𝑡 𝑠𝑜𝑓𝑡𝑤𝑎𝑟𝑒 𝐿𝑎𝑏. 17

감사합니다

박천음, 이창기강원대학교

Email: [email protected]