Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×

딥러닝을 활용한 비디오 스토리 질의응답: 뽀로로QA와 심층 임베딩 메모리망

Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Kyung-Min Kim
딥러닝을 활용한 비디오 스토리 질의응답:
뽀로로QA와 심층 임베딩 메모리망
2017-06-22
목차
 문제 정의
 데이터
 모델
 실험 결과
 결론
2
질의응답 에이전트
3
문제 정의
Siri
Pepper Amazon EchoMIT Jibo
IBM Watson Facebook M

Les vidéos YouTube ne sont plus prises en charge sur SlideShare

Regarder la vidéo sur YouTube

Chargement dans…3
×

Consultez-les par la suite

1 sur 33 Publicité

딥러닝을 활용한 비디오 스토리 질의응답: 뽀로로QA와 심층 임베딩 메모리망

Télécharger pour lire hors ligne

발표자: 김경민 (서울대 박사과정)
발표일: 2017.6.

현재 서울대학교 바이오지능연구실 박사과정이고 써로마인드로보틱스 책임연구원으로 있으며, 관심분야는 딥러닝을 활용한 대화/질의응답 시스템, 비디오 마이닝, 지식베이스 구축입니다.

개요:
비디오 스토리에 대한 질의 응답 문제는 실세계의 시각과 언어를 모두 다루고 있기 때문에 인간수준 인공지능을 달성하기 위해 중요한 문제이다.
본 세미나에서는
비디오 스토리 질의응답을 위한 ‘뽀로로QA’ 데이터셋을 소개한다.
‘뽀로로QA’는 20.5시간 분량의 만화 비디오 ‘뽀로로’의 16,066개 화면-대화 쌍, 27,328개의 화면 설명 문장과 8,913개의 스토리 관련 질의 응답 쌍을 포함한다.
그리고
딥러닝을 활용한 비디오 스토리 질의응답 모델인 심층 임베딩 메모리망을 소개한다.
심층 임베딩 메모리망은 비디오의 화면-대화 스트림을 은닉 임베딩 공간에 매핑시킴으로써 스토리를 이해한다.

발표자: 김경민 (서울대 박사과정)
발표일: 2017.6.

현재 서울대학교 바이오지능연구실 박사과정이고 써로마인드로보틱스 책임연구원으로 있으며, 관심분야는 딥러닝을 활용한 대화/질의응답 시스템, 비디오 마이닝, 지식베이스 구축입니다.

개요:
비디오 스토리에 대한 질의 응답 문제는 실세계의 시각과 언어를 모두 다루고 있기 때문에 인간수준 인공지능을 달성하기 위해 중요한 문제이다.
본 세미나에서는
비디오 스토리 질의응답을 위한 ‘뽀로로QA’ 데이터셋을 소개한다.
‘뽀로로QA’는 20.5시간 분량의 만화 비디오 ‘뽀로로’의 16,066개 화면-대화 쌍, 27,328개의 화면 설명 문장과 8,913개의 스토리 관련 질의 응답 쌍을 포함한다.
그리고
딥러닝을 활용한 비디오 스토리 질의응답 모델인 심층 임베딩 메모리망을 소개한다.
심층 임베딩 메모리망은 비디오의 화면-대화 스트림을 은닉 임베딩 공간에 매핑시킴으로써 스토리를 이해한다.

Publicité
Publicité

Plus De Contenu Connexe

Diaporamas pour vous (20)

Les utilisateurs ont également aimé (20)

Publicité

Similaire à 딥러닝을 활용한 비디오 스토리 질의응답: 뽀로로QA와 심층 임베딩 메모리망 (20)

Plus par NAVER Engineering (20)

Publicité

Plus récents (20)

딥러닝을 활용한 비디오 스토리 질의응답: 뽀로로QA와 심층 임베딩 메모리망

  1. 1. Kyung-Min Kim 딥러닝을 활용한 비디오 스토리 질의응답: 뽀로로QA와 심층 임베딩 메모리망 2017-06-22
  2. 2. 목차  문제 정의  데이터  모델  실험 결과  결론 2
  3. 3. 질의응답 에이전트 3 문제 정의 Siri Pepper Amazon EchoMIT Jibo IBM Watson Facebook M
  4. 4. 비디오 질의응답 에이전트 4 문제 정의
  5. 5. 비디오 스토리 질의응답 문제 (1/2) 5 문제 정의
  6. 6.  기계학습을 활용한 전형적인 NLP 문제는 함수 f_1을 근사화  예> 감성분석 f_1(s) ∈ [0,1] where s is a sequence of tokens  때로는 좀 더 어려운 NLP 문제도 존재  예> 문장간 내용 유사도 측정 f_2(s1,s2) ∈ [0,1] * c where c is a rescaling factor  비디오 질의응답 문제는 함수 f_2에서 비디오를 추가로 고려 f_3(v, s1, s2) ∈ [0,1] where v is a video 비디오 스토리 질의응답 문제 (2/2) 문제 정의
  7. 7. 왜 만화 비디오 시리즈를 사용했는가? 7 데이터  어린이 만화 비디오 시리즈 ‘뽀로로’의 특징  쉬운 문장  간단 명료한 스토리 구조 • 에피소드당 평균 7.2 분 • 비슷한 이벤트 반복발생  작은 규모의 환경 • 총 단어 종류: 3,729 • 총 등장인물 수: 13 -> 스토리 질의응답 문제의 테스트베드로써 적절 만화 비디오 ‘뽀로로’
  8. 8. 데이터 수집을 위한 웹사이트 구축 8 데이터 비디오 컨텐츠 QA (또는화면 설명문) 입력칸 QA를 특정 화면&대화쌍에 배치 화면 (animated GIF) 대화 (자막)
  9. 9. 데이터 (1) – 화면 설명문 9 데이터 Loopy, Poby, Crong and Eddy are discussing something except Pororo. Pororo are going to the cave. Pororo is covered up in snow resembling a snowman. Pororo is away from his friends. Someone is taking a book from the shelf. Eddy is holding a book and talking. Poby is saying hello by raising his right paw. • 화면 설명문 예시
  10. 10. 데이터 (2) – QA 10 데이터 -That is we are gonna do -Okay, I am going down the slide -It is all done Let’s go to my place Q: What does Pororo do to listen the secret? -Want to change crongcrongcrong - (Narration) Crong wanted to play with the toy plane -No thanks Q: Does Pororo accept to change the plane with the car? Scene Dialogue QA A1: Pororo becomes a snow man. A2: Pororo hides behind the tree. A3: Pororo becomes a joker. A4: Pororo plays with Crong. A5: Pororo hides behind the Eddy. A1: No, he doesn't accept. A2: Yes, he accepts to change. A3: Yes, He likes the green car. A4: He accepts because he likes Crong. A5: He accepts to give Crong both the car and the plane. Scene Dialogue QA • QA 예시
  11. 11. 데이터 통계 – 화면 설명문  27,328 개 화면 설명문  화면 설명문 하나당 평균 문장 / 단어 개수: 1.7 / 13.6 개  웹사이트에서 문법과 철자 오류 자동 교정  PororoQA와 MovieQA의 화면 설명문의 비교설문조사 결과  각 데이터 셋으로부터 100개의 샘플 추출  10명의 참가자가 0~1점 사이의 점수 부여 11 데이터 MovieQA* PororoQA 화면 설명문이 비디오의 시각정보로 얻을 수 있는 내용만 서술하고 있는가? 0.46 0.75 화면 설명문이 빠뜨린 정보없이 화면을 정확 히 설명하고 있는가? 0.40 0.71 * Makarand Tapaswi, Yukun Zhu, Rainer Stiefelhagen, Antonio Torralba, Raquel Urtasun, and Sanja Fidler. MovieQA: Understanding Stories in Movies through Question-Answering. In Proceedings of CVPR, 2016.
  12. 12. 데이터 통계 - QA  8,913 개 QA 쌍  가이드라인을 따르지 않은 ‘모호한’, ‘스토리 무관한’ 질의 제거  에피소드 1개당 평균 QA 개수: 약 52개  질의 유형별 예제와 통계 12 데이터 Type Example Ratio Action What did Pororo do with the egg? 0.20 Person Who lives in the forest? 0.18 Abstract What is the main event of Pororo day? 0.16 Detail What does the little penguin wear? 0.15 Method How did the Crong introduce himself? 0.06 Reason Why did Pororo take egg to home? 0.06 Location Where is the small village situated? 0.04 Statement What did the dinosaur say first? 0.03 Causality What happens with Crong reaches the bottom of the hill? 0.03 Yes/No Did Pororo took shelter with Poby? 0.03 Time When did Pororo and his friends stop sliding downhill? 0.02
  13. 13. 데이터 통계  질의 유형별 통계  비디오 분석에 대한 다양한 데이터셋 비교 13 데이터 Dataset TACoS M.L [Rohrbach et al., 2014] MPII-MD [Rohrbach et al., 2015] LSMDC [Rohrbach et al., 2015] M-VAD [Torabi et al., 2015] MSR-VTT [Xu et al., 2016] TGIF [Li et al., 2016] MovieQA [Tapaswi et al., 2016] PororoQA (ours) # videos 185 94 202 92 7,000 - 140 171 # clips 14,105 68,337 108,503 46,589 10,000 100,000 6,771 16,066 # sent. 52,593 68,375 108,470 46,523 200,000 125,781 N/A 43,394 # QAs - - - - - - 6,462 8,913 Domain Cooking Movie Movie Movie Open Open Movie Cartoon Coherency X X X X X X X O
  14. 14. 14  U, W, V  은닉 유닛들은 연속된 벡터공간에서 오래 전 데이터 정보를 저장  길이가 매우 긴 입력 데이터가 주어진다면 은닉 유닛 벡터는 제한된 저장 공간에 많은 입력 정보를 저장해야함 ⓒ 2017 SNU Biointelligence Laboratory, http://bi.snu.ac.kr/ input input input hidden hidden hidden output output output time  U U U W W W V V V inputhiddenoutputU W V unfold st = tanh(Uxt + Wst-1) yt' = softmax(Vst) 메모리가 필요한 순환 신경망 모델
  15. 15. 15 2017년은 앞으로의 산업계를 완전히 바꿔 놓을 새로운 기술이 본격 자리 잡는 한 해가 될 것이다. 앞으로 업계 변화를 주도할 기술은 무엇일까. … 두 번째는 머신러닝(기계학습)을 통한 창조성 강한 디자인 등장이다. 머신러닝은 학습을 통해 사물을 구별하고 이를 바탕으로 새로운 것을 창조하는 단계에 이르렀다. 최근 `디자인 그래프`라 불리는 프로젝트로 구현됐다. … Q. 머신러닝으로 새로운 디자인을 창조하고자 하는 프로젝트 이름은 무엇인가? QA 모델 A. 디자인 그래프 input input input hidden hidden hidden U U U W W WW input input input hidden hidden hidden U U U W W W … 문서 정보를 담고 있는 은닉 벡터 Question representation 질의 정보를 담고 있는 벡터 X 답변 생성 순환 신경망으로 QA 모델 만들기 모델
  16. 16. 16  앞방향 재현 신경망: 원본 문장의 가장 앞의 단어부터 인코더 재현 신경 망의 입력으로 주어짐  뒷방향 재현 신경망: 원본 문장의 가장 뒤의 단어부터 인코더 재현 신경 망의 입력으로 주어짐  인코더 재현 신경망의 은닉 유닛은 앞방향 / 뒷방향 재현 신경망의 은닉 유닛을 단순 이어붙임 (concatenation) ⓒ 2017 SNU Biointelligence Laboratory, http://bi.snu.ac.kr/ inp ut inp ut inp ut hidde n hidde n hidde n U U U W W W inp ut inp ut inp ut hidde n hidde n hidde nU U U W W W inp ut inp ut inp ut hidde n hidde n hidde n U U U W W W W hidde n hidde n hidde n W’ W’ W’ hidde n hidde n hidde n W’ W’ W’ hidde n Hidd en' hidde n W’ W’ W’ W’ U’ U’ U’ U’ U’ U’ U’ U’ U’ 해결책1: 양방향 순환 신경망 (bi-directional RNN) 모델
  17. 17. 17ⓒ 2017 SNU Biointelligence Laboratory, http://bi.snu.ac.kr/ 2017년은 앞으로의 산업계를 완전히 바꿔 놓을 새로운 기술이 본격 자리 잡는 한 해가 될 것이다. 앞으로 업계 변화를 주도할 기술은 무엇일까. … 두 번째는 머신러닝(기계학습)을 통한 창조성 강한 디자인 등장이다. 머신러닝은 학습을 통해 사물을 구별하고 이를 바탕으로 새로운 것을 창조하는 단계에 이르렀다. 최근 `디자인 그래프`라 불리는 프로젝트로 구현됐다. … Q. 머신러닝으로 새로운 디자인을 창조하고자 하는 프로젝트 이름은 무엇인가? QA 모델 A. 디자인 그래프 input input input hidden hidden hidden U U U W W WW input input input hidden hidden hidden U U U W W W … Question representation 질의 정보를 담고 있는 벡터 X 답변 생성 RAM 저장 해결책2: 히든 유닛 벡터를 저장 모델
  18. 18. 18  질의 응답 모듈  스토리 (예> 문장) 선택 모듈 • 질의 q에 대해 가장 적절한 답변을 포함하고 있는 스토리 (문장) s*를 탐색 – 적절성 평가를 통해 가장 높은 점수를 받은 스토리가 선택됨 • 스토리 선택 모듈의 출력은 질의 q와 선택된 스토리 s*의 결합 – Ex> 머신러닝으로 새로운 디자인을 창조하고자 하는 프로젝트 이름은 무엇인가? 최근 `디자인 그래프`라 불리는 프로 젝트로 구현됐다.  답변 선택 모듈 • 가능한 답변의 집합 A={ar}1…k. 중 가장 적합한 답변 a*를 선택  적절성 평가 함수 (scoring function)  G(x,y) ∈ [0,1] (H 함수도 동일)  G(x,y) = U G TUG (y)  H(x,y) = U H TUH (y)  U는 임베딩 행렬 ⓒ 2017 SNU Biointelligence Laboratory, http://bi.snu.ac.kr/ * argmax ( , ) i i s s G q s * arg max ( , ) r a r a a H s a 메모리 네트워크 모델
  19. 19.  학습되어야하는 함수 : G, H  G, H 함수: 긍정 예(s* 또는 a*)와 부정 예(sㄱ* 또는 a ㄱ*) 의 점수 차이를 이상 차이가 나 게 만드는 것이 목표  손실값(에러값): max (0, − , ∗ + , )  긍정 예와 질의의 매치 점수가 부정 예와 질의의 매치 점수보다 이상 높을 경우 손실값은 0이 됨  훈련 데이터 전체에 대한 손실값:  경사 하강법을 사용하여 파라미터 UG와 UH를 학습 ⓒ 2017 SNU Biointelligence Laboratory, http://bi.snu.ac.kr/ * argmax ( , ) i i s s G q s * arg max ( , ) r a r a a H s a G(x,y) = UG TUG (y) H(x,y) = UH TUH (y) max (0, − , ∗ + , ) + max (0, − [ ; ∗ ], ∗ + [ ; ∗ ], ) 메모리 네트워크의 학습: Triplet Loss 모델
  20. 20. 메모리 네트워크 20 모델
  21. 21. 심층 임베딩 메모리 네트워크 21 모델 비디오 모달리티 추가 언어 특징 차원으로 임베딩 화면 설명문과 화면-대화 통합 특징 임베딩 화면(설명문)-대화 결합 주의집중 기반 모델 사용
  22. 22. 주의집중 기반 Scoring 함수 22 모델  문장 X와 Y의 유사도 계산 ( ) tanh( ( ) ) exp( ( )) ' ( ) ( ) t t t t o t t t o m W h W X w m h h a y q T ms y y     X averaging Y weighted averaging cosine_similarity(X,Y)
  23. 23. 실험 세팅  데이터 분리  분리 비율: PororoQA 에피소드 171개 중 훈련 60%, 검증 20%, 테스트 20%  데이터 집합별 질의 개수: 5521 / 1955 / 1437개  성능 측정 모델  사람 성능  VQA 모델 (BoW V+Q, W2V V+Q, LSTM V+Q)  기존 스토리 질의 응답 모델의 성능 (메모리 네트워크, 종단 메모리 네트워크)  심층 임베딩 메모리 네트워크 성능  실험 종류 (full ablation experiments)  모델의 입력 조합이 될 수 있는 모든 경우의 수 생성  입력: • 질의 Q • 대화 L • 화면 V • 화면 설명문 E 23 실험 결과
  24. 24.  비디오의 정보를 사용할 수록 성능 향상  기존 스토리 학습 모델에 비해 더 좋은 결과를 보임  주의집중 기작을 사용하면 성능 좀 더 향상  기존 메모리 네트워크 모델은 시각과 언어 정보를 모델의 마지막 부분에 서 결합했음 정량적 평가 결과 - PororoQA Method Q Q+L Q+V Q+E Q+V+E Q+L+V Q+L+E Q+L+V+E Human 28.2 68.2 74.3 70.5 74.6 96.9 92.3 96.9 BoW V+Q 32.1 34.6 34.2 34.6 34.6 34.4 34.3 34.2 W2V V+Q 33.3 34.9 33.8 34.8 34.0 34.5 34.6 34.1 LSTM V+Q 34.8 42.6 33.5 36.2 34.6 41.7 36.3 41.1 MemN2N 31.1 41.9 45.6 50.9 53.7 56.5 MemNN 32.1 43.6 (0.16) 48.8 (0.11) 51.6 (0.12) 55.3 58.9 DEMN w/o attn. 31.9 43.4 (0.15) 48.9 (0.11) 51.6 (0.12) 61.9 (0.19) 63.9 (0.20) DEMN 32.0 47.5 (0.18) 49.7 (0.12) 54.2 (0.10) 65.1 (0.21) 68.0 (0.26) 24 실험 결과
  25. 25. 정량적 평가 결과 – MovieQA  MovieQA  140개 영화에 대해 6,462개의 QA 제공  심층 임베딩 메모리 네트워크가 validation, test 집합에서 기존 스토리 학습 모델에 비해 더 좋은 성능을 보임  MovieQA가 PororoQA에 비해 보다 복잡한 스토리 구조를 갖는 영화를 보유 하고 있음 -> 낮은 성능의 원인 25 실험 결과 Method Val Test Q+L Q+V Q+L+V Q+L Q+V Q+L+V SSCB* 22.3 21.6 21.9 Rand. Rand. Rand. MemN2N 38.0 23.1 34.2 Rand. Rand. Rand. DEMN 42.4 39.5 44.7 28.5 29.4 30.0 * Makarand Tapaswi, Yukun Zhu, Rainer Stiefelhagen, Antonio Torralba, Raquel Urtasun, and Sanja Fidler. MovieQA: Understanding Stories in Movies through Question-Answering. In Proceedings of CVPR, 2016.
  26. 26. 정성적 평가 결과 26 실험 결과
  27. 27. 정성적 평가 결과 27 실험 결과
  28. 28. 정성적 평가 결과 28 실험 결과
  29. 29. 정성적 평가 결과 29 실험 결과
  30. 30. 결론 및 향후 연구  비디오 질의 응답 모델 ‘심층 임베딩 메모리망’과 데이터 ‘PororoQA’ 제시  PororoQA, MovieQA 에 성능을 평가했을 때, 기존 스토리 학습 모델인 imageQA 모델들, 메모리망 앙상블, 종단 메모 리망 앙상블보다 우수한 성능 입증  향후 연구  Curriculum learning 적용 • PororoQA를 사용하여 보다 복잡한 스토리 구조를 갖는 MovieQA 성능 향상  답문장 생성 모델  비디오 이해 모델 개선 30 결론
  31. 31. Appendix 31
  32. 32. The instructions for the AMT QA creators 32 Please read carefully. Your work will be rejected if you don't follow the guide lines. 1. After selecting an episode and watching a Youtube video, please make story-related QAs in English. Please keep in mind that be sure to watch a video before making any data. 2. Please select a scene-subtitle pair that is most likely to match with your question and write down QAs. All questions should be localized in the video contents. 3. Please provide a correct answer to a question that most people would agree on and four wrong answers for deception. 4. Your answer should be a complete sentence with correct grammar. The minimum number of words in a sentence is four. - "lunch" (x) -> "Pororo and Crong are having a lunch" (o) 5. Please avoid vague terms. - "When did Pororo go there?" (x) -> "When did Pororo go Loopy's house?" (o) - "What is Pororo doing?" (x) -> "What is Pororo doing when Crong is crying in the house?" (o) 6. Please avoid completely unrelated questions. - "How old is the earth" (x) 7. Please avoid image-specific (and not story-related) questions. - "How many trees are in the video?" (x) 8. Please avoid creating duplicate questions in an episode. 9. Please use character names as follows.

×