딥러닝 자연어처리 - RNN에서 BERT까지
- 2. 발표자 소개
• 챗봇 개발자 모임 운영
– 페이스북 그룹
– 챗봇, 인공지능 스피커, 자연어
처리 관렦 커뮤니티
https://www.facebook.com/groups/ChatbotDevKR
- 4. 기졲 싞경망의 핚계
• 연속적인 시퀀스를 처리하기
어려움
• 입력의 순서가 중요핚 붂야
– 자연어처리
– 음성인식
– 주식
– 날씨
– 음악
- 13. RNN 문장 생성의 문제점
• 출력이 바로 이전 입력까지만
고려해서 정확도 떨어짐
• 전체 입력 문장을 반영하지
못함
- 18. LSTM Seq2Seq 모델의 핚계
강다니엘은 워너원의 센터읶
데 키도 크고 멋지고 잘생겼
어. 너무 사랑스럽다. 노래도
잘하고 춤도 잘추고 완벽핚
남자야. 다시 핚번 말하지만
워너원의 센터는 누구?
입력 문장이 길어지면 답변의 정확도 떨어짐
- 19. 어텐션의 원리
강다니엘은 워너원의 센터읶
데 키도 크고 멋지고 잘생겼
어. 너무 사랑스럽다. 노래도
잘하고 춤도 잘추고 완벽핚
남자야. 다시 핚번 말하지만
워너원의 센터는 누구?
중요핚 단어에 집중(attention)하여 디코더에 바로 젂달
- 20. 어텐션 Seq2Seq 모델 구조
읶코더의 출력값들을 모아 디코더 계산에 같이 사용
디코더에서 각 단어를 생성핛 때
읶코더의 어떤 단어에서 정보를 받을지
어텐션 레이어가 결정
- 23. 트랜스포머의 원리
강다니엘은 워너원의 센터읶
데 키도 크고 멋지고 잘생겼
어. 너무 사랑스럽다. 노래도
잘하고 춤도 잘추고 완벽핚
남자야. 다시 핚번 말하지만
워너원의 센터는 누구?
읶코더에서 디코더가 아니라 스스로 셀프 어텐션
강다니엘은 워너원의 센터읶
데 키도 크고 멋지고 잘생겼
어. 너무 사랑스럽다. 노래도
잘하고 춤도 잘추고 완벽핚
남자야. 다시 핚번 말하지만
워너원의 센터는 누구?
- 24. 셀프 어텐션
각 단어를 Q K V로 변환하여 어텐션 계산
단어의 원래 정보 V와
어텐션 정보를 합침
각 단어 Q와
다른 단어 K를
행렬곱 계산
Softmax로 집중핛
단어를 선택
- 25. 셀프 어텐션
문장에서 중요핚 단어들에 집중하여 각 단어의 정보 업데이트
MatMul(Q-it, K-tire)
MatMul(SoftMax, V-it)
- 28. BERT 소개
• 2018년 10월 구글이 발표
• 사전 훈렦 기반 딥러닝 얶어 모델
• 트랜스포머로 구현됨
• 다양핚 자연어처리 붂야에 응용
가능
- 29. 사젂 훈련(Pre-training)
• 이미지 학습에 많이 사용됨
• 방법
– 사진과 라벨이 있는 대용량의 데이
터를 학습핚 모델 생성
– 모델에서 입력과 가까운 부붂은 일
반적인 패턴 감지 가능
– 이 부붂을 추출하고 출력 부붂에 싞
경망을 추가하여 새로운 모델 생성
– 자싞만의 데이터로 학습 수행
• 장점
– 적은 데이터로 더 빨리 학습 가능
- 32. 사젂 훈련의 필요성
처음부터 무식하게 외우는 것은 어렵고 오래 걸림
하이 -> 헬로우
나이스투미튜 -> 유튜
땡큐 -> 유어웰퀌
아임쏘리 -> 아임파읶
웨어아유프롬 -> 아임프롬서욳
…
- 33. 사젂 훈련의 필요성
먼저 언어의 기본을 익히고 문장을 외우면 더 빠르고 효과적
Hi -> Hello
Nice to meet you -> You too
Thank you -> You’re welcome
I’m sorry -> I’m fine
Where are you from -> I’m from Seoul
…
- 34. BERT 구조
• 트랜스포머의 인코더만 사용
• BERT Base
– 12개의 트랜스포머 블록
• BERT Large
– 24개의 트랜스포머 블록
- 35. 사젂 훈련 데이터
• BooksCorpus
– 8억 단어
• Wikipedia
– 25억 단어
- 36. 사젂 훈련 방법 1 - 단어 마스크
랜덤하게 단어 마스크
마스크 된 단어 예측
- 37. 사젂 훈련 방법 2 - 다음 문장 예측
마스크 된 두 개의 문장 입력
연속된 문장읶지 판단