Dialogue System Seminar Deep Reinforcement Learning on Dialogue Systems 2016-11-30 Dong-Sig Han 안녕하세요. 이번 대화 시스템 세미나 발표를 하게 된 한동식입니다. 제가 준비한 내용은 최근 강화학습을 이용해 자연어 처리를 할 수 있는 인공지능에 대한 연구가 얼마나 진행되어 왔는지 개인적으로 조사해본 것들을 정리한 것입니다.
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr INDEX Deep Reinforcement Learning Dialogue Modeling Problem as RL Models Problems Possible Solutions Q&A 순서는 다음과 같습니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Deep Reinforcement Learning Reinforcement Learning (RL) RL is for an agent with the capacity to act Learn to maximize future reward Can consider long-term goals One of the most powerful ML frameworks these days 강화학습이란 행동을 할 수 있는 인공지능 에이전트를 가정하여, 이것이 환경에 받는 보상을 최대화하는 학습 알고리즘이고, 여러가지 장점 중 하나로 상대적으로 장기적으로 해당하는 목적을 고려할 수 있다는 것이 있습니다. 비디오 게임이나 알파고의 바둑 등에서 강화학습은 일부 쓰이고 있습니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Dialogue Modeling in DRL Perspective Agent and Environment observation action agent 𝑜 𝑡 𝑎 𝑡 reward 𝑟 𝑡 이것은 강화학습에서 가정하고 있는 그림입니다. environment © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Dialogue Modeling in DRL Perspective Chatbot Train w/ data action observation 𝑎 𝑡 𝑜 𝑡 TTS STT 𝑟 𝑡 reward User 이러한 관점에서 보자면 현재 챗봇은 LSTM이라는 RNN을 이용해 입력의 단어 시퀀스에 대한 주어진 학습데이터에 가장 적합한 출력을 내는 것입니다. 즉, 사용자가 주는 보상이 아닌 action을 따라하는 방식으로 학습하고 있습니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Dialogue Modeling in DRL Perspective Spoken Dialogue Systems (SDS) Spoken Dialogue Systems에서도 이러한 관점과 비슷하게 모델링을 하고 있는데, 최근 논문에서는 사용자의 발화를 이해하고, 이러한 이 대화에 대한 상태를 계속해서 바꾸면서 대화 정책을 나타내는 시스템으로 SDS를 정의하였습니다. Zhao et al. (2016) © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Natural Language Games Text Games Manually annotated final rewards for all distinct endings in games 이러한 문제를 강화학습으로 풀기 위해 자연어 게임이 제안 되었는데, 실제 문장이 주어지고 이에 대한 선택지 또한 자연어로 주어져 이것을 푸는 문제입니다. 이러한 게임의 끝의 마지막 상태에 따라 보상을 다르게 주었다고 합니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Model 1: Per-Action Deep Q-Network Deep Q-Learning 𝑄 ∗ 𝑠,𝑎 = 𝔼 𝑠 ′ 𝑟+𝛾 max 𝑎 ′ 𝑄 ∗ 𝑠 ′ , 𝑎 ′ 𝑠,𝑎 𝐿 𝐷𝑄𝑁 𝜃 = 𝔼 𝑠,𝑎∼𝜋 𝑟+𝛾 max 𝑎′ 𝑄 𝑠 ′ , 𝑎 ′ ; 𝜃 − −𝑄 𝑠,𝑎;𝜃 2 일단 간단하게 DQN을 해보면 모든 문장에 대한 embedding을 모아 가치함수를 근사하게 학습시킬 수 있는데, 가능한 행동의 수에 따라 CNN의 output에 대한 back propagation이 효율적으로 되지 않기 때문에 잘 학습되지 않는다고 합니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Model 2: Deep Reinforcement Relevance Network He, J et al. 2015 그래서 본 논문에서 쓴 방법은 이러한 임베딩 각각 딥러닝 모델을 써서 은닉층을 추출하고 이에 대한 백터 곱을 통해 이 벡터로 각각 Q값을 뽑아 학습하는 방식을 써서, 이러한 텍스트게임을 매우 잘 풀 수 있었다고 합니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr Model 3: Hybrid-RL 20Q Game as Task-oriented Dialog Selected 100 people from Freebase Zhao, T. et al. 2016 다음 모델은 Hybrid-RL이라고 Task-oriented dialog systems의 예시로서 스무고개를 제안한 논문인데, 이것은 일반적인 RL의 사이클이 아닌 환경을 상화작용하는 user와 DB의 두트랙으로 보아 한번은 질문을하고, 다른 한번은 이러한 대답에 대한 DB서치를 하는 형식으로 진행됩니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr Model 3: Hybrid-RL 네 그러니까 말씀드린대로 첫번째 헤드는 질문 혹은 답변인데, 이러한 문장의 가짓수는 다 정해져 있습니다. 또 두번째 헤드는 DB서치를 결정하는데, 정해진 엔티티에 대한 yes / no형식의 슬롯으로 이루어진 쿼리를 생성해냅니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Model 4: DRL for Dialogue Generation 모델 4는 챗봇이 실제로 이용하고 있는 seq2seq모델을 RL로 발전시킨 것이라고 할 수 있는데, 이 논문은 대화 대이터와 시크2시크 모델를 이용해 세가지 리워드 함수를 정의했고 이에 따라 모델을 학습시켰습니다. 주모해야할 점은 그림과 같이 로봇 사이의 self-play를 실제로 시행해서 학습했다는 점입니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
Model 4: DRL for Dialogue Generation 학습된 모델의 대화 기록은 다음과 같습니다. 정성적으로 보기에 기존의 seq2seq보다는 약간 나은 수준의 대화가 가능한 것 같습니다. 하지만, 저기 보이듯이 사이클 같은게 생기기도 한다고 보고되었습니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr Current Problems Cardinality of Spaces (= # of words) Finite, but impossible to enumerate Correlation Correlation between past sentences, words, and characters in natural language makes observation space even larger (MDP does not holds) 제가 보고있는 RL관점에서의 대화시스템의 문제점은 단어의 수가 너무 많고, 과거의 다양한 문장 단어 들이 현재의 행동에 깊은 연관을 가지고 있다는 점입니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr Possible Solutions Cardinality of Spaces (set of words) Deep Reinforcement Learning in Large Discrete Action Spaces (Dulac-Arnold et al. 2016) Correlation Hierarchical RL DRL with context module e.g. RNN, DB, artificical neural memory, etc. 이를 해결하기 위해 액터가 가능한 action들의 집합을 선택하고 critic이 이를 판별하는 엄청나게 큰 행동 공간에서의 DRL 연구가 필요하다고 보이고, 또 과거와의 연관성 문제를 해결하기 위해 계층적 RL이나 RNN, DB, 메모리 등의 context를 파악할 수 있는 모듈이 있는 인공신경망과 관련 학습알고리즘을 도입할 필요성이 있을 것 같습니다. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr References Zhao, T., & Eskenazi, M. (2016). Towards End-to-End Learning for Dialog State Tracking and Management using Deep Reinforcement Learning. arXiv preprint arXiv:1606.02560. Cuayáhuitl, H. (2016). SimpleDS: A Simple Deep Reinforcement Learning Dialogue System. arXiv preprint arXiv:1601.04574. He, J., Chen, J., He, X., Gao, J., Li, L., Deng, L., & Ostendorf, M. (2015). Deep Reinforcement Learning with an Action Space Defined by Natural Language. arXiv preprint arXiv:1511.04636. He, J., Ostendorf, M., He, X., Chen, J., Gao, J., Li, L., & Deng, L. (2016). Deep Reinforcement Learning with a Combinatorial Action Space for Predicting Popular Reddit Threads. arXiv preprint arXiv:1606.03667. Dulac-Arnold, G., Evans, R., van Hasselt, H., Sunehag, P., Lillicrap, T., & Hunt, J. Deep Reinforcement Learning in Large Discrete Action Spaces. Li, J., Monroe, W., Ritter, A., & Jurafsky, D. (2016). Deep Reinforcement Learning for Dialogue Generation. arXiv preprint arXiv:1606.01541. © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr
© 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr Q&A Thank you! 감사합니다. working memory, triple quadraple © 2016, SNU CSE Biointelligence Lab., http://bi.snu.ac.kr