일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- Python
- groupby
- type hints
- linalg
- dtype
- python 문법
- Numpy data I/O
- unstack
- Operation function
- 정규분포 MLE
- 표집분포
- namedtuple
- 최대가능도 추정법
- VSCode
- subplot
- 부스트캠프 AI테크
- 딥러닝
- ndarray
- BOXPLOT
- Python 유래
- pivot table
- scatter
- 가능도
- seaborn
- Comparisons
- 카테고리분포 MLE
- Array operations
- boolean & fancy index
- Numpy
- Python 특징
- Today
- Total
또르르's 개발 Story
[Stage 3 - 이론] Hybrid Approach 본문
1️⃣ Ontology based vs Open-vocab based
1) Ontology based method
2) Open-vocab based method
2️⃣ Categorical / Non categorical Slot
Slot은 특정 시나리오에서 미리 정의된 informable한 특정 유형의 속성을 의미합니다.
다음 논문에서는 slot을 categorical / non categorical slot으로 분류해서 사용했습니다.
Towards Scalable Multi-Domain Conversational Agents: The Schema-Guided Dialogue Dataset
1) Categorical Slot
범주형으로 나타낼 수 있는 slot : slot에 할당된 value가 범주형으로 표현 가능한 경우 (Ontology)
2) Non - Categorical Slot
범주형으로 나타낼 수 없는 slot : Slot value는 unlimited value입니다.
Dialogue context 안에서 찾을 수 있습니다.
3️⃣ DS-DST
DS-DST 는 categorical, non-categorical slot을 모두 다룰 수 있는 BERT 기반의 모델입니다.
Ontology based, ontology free(Open-vocab) method를 결합한 Hybrid approach이며, Single BERT question answering model을 적용하였습니다.
DS-DST Model의 오른쪽 부분은 Fine-tuning이 가능한 BERT 모델입니다.
- Input : Concatenation of Domain-slot pair, Recent Dialogue context
- Output : representations for input
DS-DST Model의 왼쪽 부분은 Fized BERT 모델이며, feature extractor 역할입니다.
- Input : categorical slot의 candidate-value list
- output : value의 representation
1) Slot-Context Encoder
- Domain-slot types, dialogue context를 encoding 하기 위한 pre-trained BERT 사용
- [CLS], [SEP]은 special token
- BERT는 학습 과정 동안 fine-tuning됨
2) Slot-Gate Classification
- 각 Dialogue turn 에서 slot이 어떤 class 에 속하는지 분류함
- (다른 모델과 비슷하게) none, dontcare, prediction으로 slot을 예측함
3) Non-categorical Slot-Value Prediction
- Non-categorical slot의 value는 start vector와 end vector를 얻기위한 two way linear mapping을 진행함
- Dialogue context 에서 start, end position에 대한 span matching을 진행
4) Categorical Slot-Value Prediction
- Categorical slot은 candidate value들을 가짐
- Other pre-trained BERT(parameter는 고정)를 활용하여 feature extractor의 역할 수행함 (like SUMBT)
- Slot-context encoder와 reference candidate는 relevance score를 계산함 ( cosine similarity )
5) Training Objective
- 세가지 모듈의 joint loss를 활용하여 학습함
- Hinge Loss를 통해 차이를 좁혀나감
6) Result
- DS-Span : 모두 non categorical slot으로 취급했을 때
- DS-Picklist+ : 모두 categorical slot으로 취급했을 때
상위 10개의 slot을 뽑아냈을 때 아래 표와 같습니다. (DS-Span은 turn마다 unfound의 개수)
hotel-parking이나 hotel-internet은 yes, no로 대부분 취급되기 때문에 categorical slot에서 훨씬 좋은 성능을 보입니다.
'[P Stage 3] DST > 이론' 카테고리의 다른 글
[Stage 3 - 이론] DST의 한계점 (0) | 2021.05.11 |
---|---|
[Stage 3 - 이론] Advanced DST Models (0) | 2021.05.11 |
[Stage 3 - 이론] DST의 Computational Complexity (0) | 2021.05.04 |
[Stage 3 - 이론] Ontology-based DST models (0) | 2021.04.27 |
[Stage 3 - 이론] Introduction to Task-Oriented Dialogue System (0) | 2021.04.27 |