- 2020년 7월 2일 오후 1:44
- 조회수: 3759
INFORMATION
- 2020년 7월 3일
- 오후 1시 ~
- 고려대학교 신공학관 224호
TOPIC
OVERVIEW
Image Captioning 문제는 현재 컴퓨터 비전과 자연어 처리를 연결하는 중요한
연구분야이다. Image Captioning는 이미지를 보고 어떤 이미지인지를 언어로 설명해주는 알고리즘으로
합성곱 신경망과 순환 신경망이 결합된 형태의 모델이 주를 이루고 있다. 해당 분야는 영상 자막 자동
생성부터 심리치료에 이르는 다양한 분야에서 사용되고 있다. 이번 세미나에서는 Image Captioning이 어떠한 문제를 해결하고자 하는지, 어떠한
방향으로 발전되어 왔는지, 어떠한 응용 분야가 있는지에 대해 소개하고자 한다.
발표자 후기
이번 세미나는 image captioning에 Sematic Attention기법이 적용된 Image Captioning with Semantic Attention이라는 주제를 가지고 세미나를 진행하였다. Image captioning이란 입력 데이터로 이미지를 받게 되면 결과로 문장을 생성해주는 알고리즘이라고 볼 수 있다. 본 논문에서는 이미지에 해당하는 문장 생성의 성능을 높이기 위해 Semantic Attention을 사용하였으며 Semantic Attention을 사용함으로써 이미지의 특징을 더 잘 파악하게 되어 보다 좋은 이미지 설명 문장을 생성 할 수 있다.
이번 세미나를 준비하면서 내가 이해한 내용을 청중에게 쉽게 전달하기 위해서는 내가 이해한 내용을 계속해서 보는 것이 중요하다는 것을 느꼈다. 또한 이번 발표를 준비하면서 공부했던 내용을 향후 연구에 어떻게 적용할지에 대해서도 좀 더 깊이 생각해 보아야겠다.
청취자 후기
금일 세미나는 진혁이가 'Image captioning with semantic attention' 이라는 주제로 진행했다. Image captioning 문제는 이미지에 대한 서술 문장을 생성하는 문제이며 의료 분야, 영상 자막 생성 등 많은 분야에서 응용되고 있다. 해당 문제를 풀기위해서 기본적으로는 CNN을 이용한 이미지 내 특징 추출을 진행하고 해당 특징을 RNN 계열 모델에 입력하여 문장을 생성한다. 또한 생성 모델 평가는 BLEU 점수를 이용해 평가를 진행한다. 본 세미나에서 중점으로 다룬 두번의 attention 연산을 통해 문장 생성의 성능 및 입력 이미지에 대한 해석을 가능하게 하였다.
진혁이가 이번 세미나를 진행하면서 많은 고민을 한 흔적이 느껴졌다. Image captioning에 대해서만 초점을 맞춘 세미나는 진행된적이 없었지만 진혁이의 세미나를 통해 많은 연구원들이 해당 태스크에 대해 명확히 이해 할 수 있었다고 생각한다. Attention에 대해서도 쉽게 설명해주어 다시 한번 해당 개념에 대해 리마인드할 수 있었다. 세미나를 준비하면서 많은 것을 학습한 것으로 하는데 이 모든것들이 연구에 잘 녹아들 수 있길 바란다.
컴퓨터 비전과 자연어 처리 계열을 접목, CNN과 RNN 구조를 같이 쓸 수 있다면 어디에 적용할 수 있을까?? Image Captioning 분야는 CNN으로 이미지의 Top down feature와 Bottom up feature를 뽑은 후, 해당 feature를 기반으로 Attention Score와 RNN 구조를 사용하여 이미지를 묘사하는 문장을 생성하는 분야이다.
해당 논문에서 독특한 것은 CNN을 두 번 써서, Top down 방식으로 전체 이미지에 대한 feature를 한번 뽑고, FCN을 통해 Bottom up feature를 뽑는다는 것, 그리고 RNN Input에 Attention이 들어가고, RNN Cell 이후에 한번 더 Attention이 들어가는 것이다. Attention 에 대해 아직은 공부하지 않아 완전히 이해 한 것은 아니지만, 이전 time step에 예측 했던 단어와의 유사성 등을 암시하는 듯 하다.
논문에서는 GoogLeNet을 Feature Extraction을 위한 Backbone으로 사용하였지만, VGG나 Resnet 등 다양한 CNN 아키텍처을 접목해서 비교실험을 해봐도 좋을 것 같다. 생성된 문장은 어떠한 measure로 성능을 평가하는지가 궁금했는데, BLEU 라는 measure를 사용한다고 한다. 번역 등의 NLP 분야에서 많이 쓰는 measure라니 나중에 찾아볼 계기가 되었다.
Image Captioning은 CT나 MRI Image의 의사소견, 혹은 차량 전 후방의 상황 설명, 그리고 영상 설명 등 적용될 분야가 무궁무진하다. CV와 NLP 두 분야의 결합이라는 것도 의의가 크다. Attention, FCN, Embedding 등의 기반 사전지식을 이해해야 하므로 세미나에서 풀어서 설명하기 상당히 힘들었을텐데, 열심히 설명해준 진혁이형께 감사의 말씀을 드린다.
오늘 세미나는 Image captioning with semantic attention을 주제로 진혁이가 진행하였다. Image captioning은 Image 데이터가 주어졌을 때, 그 Image에 대해 설명하는 Text를 생성하는 방법이다. 오늘 소개해준 논문에서는 이미지에 전체적인 특징 (top down), 세부 범주에 대한 특징(bottom up)을 각각 CNN을 기반으로 추출하고 RNN을 이용해 문장을 생성한다. RNN의 input이 되는 값은 이미지로부터 추출된 특징들인데, top down 특징은 그대로 RNN의 초기값이 되며, bottom up의 특징들은 Training data 문장 내 키워드들로부터 유도된다. 즉, 사전에 정의한 k개의 Training data 문장 내 빈도가 높은 단어들을 CNN이 예측하는 확률을 나타내고, 상위 단어(예측확률이 높은 단어)들을 attribute라고 지정한다. 이 attribute 단어들을 embedding 까지 적용한 특징들이 RNN모델에 Input되며 input과 hidden state, hidden state와 output 모두 attention을 적용한게 바로 Image captioning 을 위한 모델 구조다. 개념뿐만 아니라 슬라이드로 설명하기 까다로운 framework를 최대한 쉽게 설명하기 위한 노력이 엿보였던 세미나였다. BLEU라는 Text 생성 정확도를 나타내는 지표도 새롭게 접했는데 오타가 있어서 아쉬웠다. 방법론에 대해 단계적으로 과정을 설명해주었으니 전체적인 프레임워크를 한눈에 볼수 있는 장표도 포함되면 좋을 것 같다. 소개해준 방법론을 기반으로 폐 이미지 데이터를 이용해 그 증상을 글로 설명하는 생성모델을 연구하는 중으로 말해주었는데 좋은 접근으로 생각한다. Fruitful 연구자로서 좋은 결과 맺기 바란다.
오늘 세미나는 ‘Image Captioning with Semantic Attention’ 주제로 진혁오빠가 진행하였다. Image Captioning은 이미지를 보고 이미지와 맞는 설명을 생성하는 작업이다. 해당 논문은 Image Captioning의 Bottom up 방식에 Input 과 Output Attention을 적용한 방법론을 소개했다. 프레임 워크는 크게 3가지로 구성되어 있다.
1. CNN을 통해 이미지의 전체적인 Feature 추출 (ν)
(문장 생성 과정에서 t=0 시점에만 input으로 사용)
2. 이미지로부터 Bottom-up 방식을 통해 Attribute 추출 ({Ai})
(N개 단어에 해당하는 Embedding Vector)
-추출 방식(KNN): 캡션이 존재하는 Dataset과 CNN을 통해 추출한 Feature를 이용하여 이미지간 거리를 구함 -> 거리가 가장 가까운 K개 이미지 뽑기 - > K개 이미지 중 가장 많이 등장하는 N개의 단어 뽑기({Ai})
3. RNN을 통해 문장의 각 단어를 순서대로 출력
-(1) Input model: RNN에 입력가능한 형태로 바꿔주는 역할
- t=0일 때, ν를 input으로 받음
- t>0일 때, {Ai}와 이전 단어인 Yt-1을 input으로 받음
- Input attention: t 시점에서 i번째 attribute의 집중되는 정도
-(2) Output model: RNN의 Output인 ht를 받아 다음에 올 단어를 예측하는 역할
- ht와 {Ai}를 input으로 받음
- Output attention: 다음 단어를 예측하는 Softmax 확률 벡터를 출력
이미지와 자연어처리 분야를 모두 아우르는 Image Captioning 분야에 대해 알 수 있는 유익한 세미나를 진행해준 진혁오빠께 감사의 말 전하고 싶다.
금일 세미나는 “Image Captioning with Semantic Attention” 주제로 진혁이가 발표하였다. Image Captioning이란 Image가 주어졌을 때 Image에 대한 description을 출력하는 방법이다. 이때 CNN (Convolutional Neural Network)을 사용하여 Image의 특징 정보를 추출하고 RNN (Recurrent Neural Network)의 인풋 정보에 사용하여 보조 역할을 해준다. 이 논문에서는 문장을 더욱 잘 생성하기 위해 Attribute 라는 개념을 사용하여 RNN의 보조 역할을 한다. Attribute는 RNN의 입력과 출력 부분에 Attention score를 계산할 때 사용되는 단어를 의미하며 최종적으로 의미 있는 문장 생성을 하도록 한다. 이번 세미나에서는 Attribute를 어떻게 정의하고 사용하는지가 핵심이었던 것 같다. 또한 소개한 방법론을 진혁이의 개인 연구인 폐 image에 적용하여 어떤 결과가 나올지 궁금했던 세미나였다.
금일 세미나는 'Image Captioning with Semantic Attention'이라는 주제로 진혁형이 발표를 진행해주었다. 세미나 주제 배경에는 의료 분야에 Image Captioning 을 적용해서 폐 이미지를 입력받아 이미지 내 해당 폐의 건강 상태에 대한 문장을 생성하고자 하는 개인 연구에 따라 선정되었다고 한다. 진혁이형이 무엇을 연구하고자 하는 것이고, 본격적인 설명에 앞서 컴퓨터 비전, 자연어 처리, 이미지 캡셔닝에 대한 핵심들에 대해 설명하는 부분을 준비해줘서 세미나의 핵심적인 설명을 듣는데 이해가 편했다. 설명을 들은 논문의 전반적인 구조는 이미지를 입력받아 CNN 모델을 통해 feature를 추출하고, 동시에 학습 데이터 셋 내에 단어들에 대해 빈도수가 높은 단어들만 고려하여 입력받은 이미지에 적절한 단어를 찾기 위한 어텐션 적용 과정으로 이루어져 있었다. 세미나를 듣기 전에는 Image captioning을 통해 시각 장애인의 안경으로 사진을 찍어 현재 보고 있는 장면을 설명해줄 수 있고, 영상 내에서 자동으로 자막을 설정하는 경우도 있어 실생활에 유용하게 사용되고 있는 것만 알고 있었고 이론적인 원리는 잘 모르고 있었는데 금일 세미나를 통해서 Image captioning with semantic attention이 어떤 원리로 학습하고 결과를 도출하는지 이해할 수가 있었다. 본 논문에서 다른 모델과의 성능 평가 지표로 BLEU Score를 사용했는데, 해당 스코어에 대해서 개인적으로 공부하고 싶은 마음이 들었다. 오늘도 유익한 주제로 새로운 이론들을 배울 수 있도록 도와준 진혁이형에게 감사하다는 말씀 전하고 싶다.
금일 세미나는 “ Image captioning with semantic attention' 이라는 주제로 박진혁 연구원님이 진행해 주셨다. CNN은 이미지 분야에서 눈부신 기술 발전을 탄생시켰다. CNN 초기 단순히 MNIST와 같이 한장의 이미지를 분류하는 작업을 수행하는 단계에서, 한장의 이미지 안에 들어있는 객체를 탐지하고 위치까지 맞출 수 있게 되는 R-CNN으로 발전하였고, 최근에는 이미지 안에 있는 해당 객체의 Cell까지 정확히 구분하는 이미지 Segmentation까지 발전하였다. 오늘의 세미나 내용은 이러한 이미지 분류를 넘어 이미지를 분석하여 자막을 형성해 주는 Image captioning에 대한 연구이다. 이미지 분류를 넘어 이미지 안에 담겨 있는 의미를 스스로 분석하여 알려주는 단계로 CNN이 발전했다는 점에서 흥미로웠다. Image captioning을 이용한다면 Captioning을 넘어 자막을 소리로 읽어 시각 장애우에게 큰 도움을 줄 수 있겠다고 생각하니 기술 개발의 의미가 큰 연구라고 느껴졌다. 이 놀라운 기술은 CNN과 RNN의 조합을 통해 완성된다. 먼저 Top down + Bottom up 두 번의 CNN을 통해 이미지를 학습하고 미리 Label 된 자막을 RNN울 통해 학습시켜 조합하는 방식으로 정확도 향상을 위해 Attention을 사용하는 방식에 흥미로웠다. NLP 기술 발전과 함께 앞으로 좋은 논문과 아이디어가 많이 나올 수 있는 연구 주제라는 생각이 들었다. 좋은 주제를 선택하여 발표해준 박진혁 연구원님께 감사의 말을 전한다.
오늘 세미나는 이미지 캡셔닝(Image Captioning)을 할 수 있는 Semantic Attention 모듈을 사용한 방법론에 대해서 진혁이가 진행하였다. 이미지 캡셔닝에 대해서 잘 모르는 연구원들을 위해 해당 태스크에 대한 설명부터 차근차근 설명해주려는 노력이 엿보였다. 이미지 캡셔닝은 이미지를 요약할 수 있는 문장을 생성하는 과업으로 보통 CNN으로 이미지를 잘 설명할 수 있는 특징을 요약하여 RNN에 초기 값으로 활용하여 문장을 생성한다. 이런 구조는 CNN을 통해 단순한 특징 벡터로 요약되면서 이미지의 디테일한 부분이 뭉개져서 파악되지 않는다는 단점을 지니고 있다. 따라서 오늘 설명된 방법론에서는 이러한 top-down 방식의 이미지 요약의 한계를 보안하기위해 bottom-up 방식의 이미지 요약을 결합하였다. Bottom-up 방식에서 활용되는 중요한 모듈이 Semantic Attention인대 이 부분은 이미지 세그멘테이션에 활용되는 FCN 네트워크를 사용하여 이미지에서 가장 두드러지는 Corpus내 단어를 찾고 해당 단어의 임베딩 값을 활용하여 RNN의 입력 값과 히든 값을 쿼리로 사용한 두번의 Attention이 활용된다. 이 모듈을 사용하여 top-down 방식으로는 학습될 수 없는 이미지의 디테일한 부분이 포착되어 캡셔닝 성능이 향상된다고 한다. 또한 BLUE라는 성능 지표에 대한 설명도 이뤄졌다. 문서 요약 프로젝트를 할 때 많이 보던 성능지표인대도 구하기만 급급했지 공부하지 않아서 기억나지 않았었는대 설명해주어서 다시 한번 짚고 넘어갈 수 있어서 좋았다. 진혁이의 발표를 많이 보지는 않았지만 그동안 많이 성장한 것을 느낄 수 있던 시간이었고 폐 사진을 사용한 이미지 캡셔닝 연구도 목표 하는대로 잘 수행되길 응원한다고 전하고 싶다.
이번 세미나는 Image Captioning을 주제로 진행되었습니다. Image Captioning은 이미지를 설명하는 문장을 생성하는 문제를 의미합니다. CT 사진을 입력값으로 넣어 환자의 상태에 대해 진단하는 문장을 생성하거나 영상에 대한 자막을 생성하는 등 다양한 분야에 활용될 수 있습니다. 이미지에 대한 분석과 문장을 생성하는 작업을 함께 수행해야 하므로 Computer Vision과 NLP를 연결하는 매우 중요한 문제입니다. Image Captioning에 접근하는 방식은 크게 Top-Down 방식과 Bottom-Up 방식이 존재합니다. Top-Down 방식은 CNN을 통해 이미지를 잘 설명할 수 있는 특징들을 추출한 후 RNN의 입력값으로 넣어서 문장을 생성해내는 방식입니다. End-to-end로 모델을 학습시킬 수 있는 장점이 있지만, 이미지의 디테일한 부분에 집중할 수 없다는 점에서 이미지를 자세히 설명해야 하는 Image Captioning에서 단점으로 작용합니다. Bottom-Up 방식은 이미지에서 이미지를 잘 설명할 수 있는 단어를 추출한 후 해당 단어를 통해서 문장을 생성해내는 방식입니다. End-to-end로 모델을 학습하기 어렵다는 단점이 있지만 직접 단어를 뽑아서 문장을 생성하기 때문에 문장을 생성할 때 디테일한 부분까지 신경 쓸 수 있다는 장점이 있습니다. 해당 논문에서는 두 방식의 장점을 적절히 조합한 모델을 통해 새로운 Image Captioning 모델을 제안하고 있습니다. 모델에 이미지를 넣게 되면 이미지를 잘 설명하는 단어를 추출하고 CNN을 통해서 이미지의 특징을 추출하게 됩니다. t=0 시점에서 CNN을 통해 추출된 특징이 RNN의 입력값으로 사용되며 이후 시점에서는 한 시점 이전에 출력값으로 생성된 값과 이미지를 설명하는 단어들에 attention을 적용하여 RNN의 입력값을 생성합니다. RNN의 출력값을 계산할 때도 이미지를 설명하는 단어들과 hidden state에 attention을 적용하여 최종적인 RNN의 출력값을 계산하게 됩니다. CNN을 통해 이미지의 특징을 추출하여 사용했다는 점에서 Top-Down 방식과 이미지를 설명하는 단어를 활용했다는 점에서 Bottom-Up 방식이 결합된 모델입니다. 이번 세미나를 통해서 Image Captioning에 대해 전반적으로 이해할 수 있었으며 앞으로의 연구에 많은 도움이 될 것 같아 유익한 세미나였습니다.
Image Captioning with Semantic Attention을 주제로 한 세미나를 청취했다. Image Captioning이란 이미지가 의미하는 바를 텍스트로 알맞게 나타내는 작업을 의미한다. 예를 들어 단순한 아기 사진이 아닌 'a baby with a toothbrush in its mouth.'라는 구문을 생성하는 것이다. 이러한 작업을 위해서는 이미지와 텍스트를 동시에 분석할 수 있는 모델이 필요하며, 데이터별 특성에 맞는 CNN, RNN을 본 논문에서는 함께 적용했다. 대략적인 프로세스를 정리하면 1) 이미지 데이터에 CNN - GoogleNet을 적용해서 feature를 추출하고 이를 RNN의 초기 input으로 사용한다 2) FCN을 사용해서 이미지에 등장하는 다양한 사물, 이벤트 등을 검출하며 검출된 부분 이미지에는 각각 그에 해당하는 단어가 존재한다 3) RNN에서 문장의 각 단어를 순서대로 출력하며 최종적으로는 다음에 올 단어를 예측하여 최종 output을 얻는다-가 될 수 있다. Attention은 1) FCN에서 얻은 attribute에 사용하는 input attention 2) 다음에 올 단어를 예측하는 과정에서 사용되는 output attention으로 2가지 종류가 있다. 상당히 복잡하게 작동하는 모델이라서 이해하는데 꽤 많은 노력이 필요했다. 논문의 결과를 봤을 때 2가지 종류의 attention이 바라보는 방식이 약간 다른데, 전체적으로는 output attention이 좀 더 일반적인 상식과 맞다고 생각된다 (최종적으로 단어를 예측할 때 어떤 단어를 봤는지를 나타내기 때문이라고 생각된다). 폐 이미지를 갖고 환자가 갖고 있는 증상을 captioning 하는 것을 연구주제로 삼고 있다고 했는데 어려운 주제인 만큼 추후 연구에서 좋은 결과가 나왔으면 좋겠다.
오늘은 진혁오빠가 ‘Image Captioning with Semantic Attention’이라는 주제로 세미나를 진행하였다. 전반적인 captioning에 대한 설명과 함께 attention mechanism을 활용한 semantic attention에 대해 소개해주었다. Image captioning은 주어진 이미지에 대한 description을 generation해주는 task로 대표적으로 computer vision과 natural language processing영역이 접목된 task이다. 기존 image captioning은 CNN으로 추출한 feature map을 RNN의 입력 값으로 활용되었다. 하지만 해당 연구에서는 이러한 Top-down방식의 입력 값은 이미지의 전체적인 특징만을 고려하기 때문에, 추가적으로 이미지의 자세한 부분에 대한 정보를 반영하고자 하며, 이 때 attention mechanism을 활용한다. Attention연산은 alpha와 beta가 각각 input과 hidden state값, hidden state와 output값에 대해 이루어지며 최종적으로 더 나은 성능의 image captioning을 수행한다. 여러 모델들이 조합 되어 최종산출이 이루어지는 모델구조를 지닌 만큼 설명하는 데에 어려움이 있었을 것 같은데 이러한 점을 잘 고려하여 구조를 잘 나누어 설명하여 이해하기 편했다. 개인적으로 attention연산에 대한 좀더 상세한 설명과 문장길이에 대한 제약 등에 대해 추가적으로 궁금한 점에 대해서 알아보면 좋을 것 같다고 생각했다. 모델이 갖는 구조/의미적인 단계를 잘 설명해준 진혁오빠에게 감사하다는 말을 전하며, 새롭게 수행하고있는 폐사진 의료 데이터 연구 또한 좋은 결실로 마무리하길 응원하며 후기를 마친다.
금일 세미나는 진혁이가 “Image captioning'이라는 주제로 진행해 주었다. 오늘 진혁이가 설명해 준 Image Captioning은 Computer Vision과 Natural Language Processing를 연결하는, 매우 의미있는 연구 분야이다. Image Captioning이란 이미지를 보고 어떤 이미지인지 언어로 설명하는 작업이다. Image Captioning의 접근 방식은 크게 ‘Top-Down Approach’와 ‘Bottom-Up Approach’로 구분된다. Top-Down Approach에서는 전체 이미지로부터 얻은 특징을 언어로 변환하는 반면 Bottom-Up Approach에서는 이미지의 부분들로부터 단어들을 도출해내고, 이를 결합하여 문장을 얻어낸다. 현재는 RNN을 이용하여 학습시킬 수 있는 Top-Down Approach가 더욱 각광을 받고 있다. 하지만, Top-Down Approach의 단점은 이미지의 디테일한 부분들을 놓치게 된다는 점에 있다. 오늘 진혁이가 소개해 준 'Image Captioning with Semantic Attention' 논문의 Visual Attention 기법은 Top-Down Approach와 Bottom-Up Approach의 장점을 합해서 Image Captioning 성능을 올린 방법이다. Visual Attention은 CNN feature를 통해 이미지의 전체적인 특징을 잡아내고 Attention Model을 통해 이미지의 특정 부분에 집중하는 것이다. 해당 모델의 구조를 간략하게 요약하자면 이미지의 전체적인 특징을 잡아주는 CNN으로부터 추출한 feature와, Attribute라고 정의한 이미지와 단어 사이의 Attention 정보를 담은 부분, 이전 출력 단어를 RNN의 input으로 사용하여 문장을 생성하는 모델을 학습한다고 할 수 있다. “Image captioning'은 이번 세미나를 통해 처음 접하였는데 새로운 지식을 전달해 준 진혁이에게 큰 감사를 표한다.
사진을 보고 어울리는 말을 생성해 주는 Image Captioning 테스크는 참 복잡한 테스크임에 틀림 없다. 이 테스크를 수행하기 위해서는 먼저 사진에 어떤 물체들이 있는지, 물체들간의 관계는 어떠한 지, 물체의 운동상태나 외형들은 사진 내 다른 물체들과의 관계 속에서 어떤 의미를 갖는지를 파악해야하며, 이러한 정보들을 문법과 문맥에 맞는 인간의 언어로 다시 표현해야한다. 오늘 발표에서 다룬 'Image Captioning with Semantic Attention'이란 논문에서는 위와같이 복잡한 일련의 과정들을 창의적인 방식으로 단순화하여 해결하였다. 이 연구의 초점은 사진으로부터 사진의 추상적인 의미를 추출하는 방식에 맞춰져 있다. 잘 추출된 사진의 의미를 비교적 단순한 언어모델의 인풋으로 적절히 사용함으로써 문제를 해결하려 하였다.
이 연구에서 크게 두 가지 방식으로 사진으로부터 의미를 추출한다. 첫 번째는 언어라는 다리를 거치지 않고 기존 CNN 방식을 이용해 사진 자체를 추상적으로 요약하는 Top-Down 방식이며, 두 번째는 사진의 특징들을 언어로 표현된 n개의 키워드들로 나타내는 Bottom-Up 방식이다. 이 두 방식으로 추출된 사진의 의미가 언어모델의 인풋으로 사용되는데, Top-Down 방식으로 추출된 의미는 문장을 생성하는 전 과정에 인풋으로 사용되는 반면, Bottom-Up 방식으로 추출된 사진의 키워드들은 문장을 구성하는 단어들을 생성하는 과정 중 적절한 시점에 사용될 수 있도록 Attention 개념을 적용하였다. Attention은 RNN 언어모델의 인풋단과 아웃풋단에서 각각 한번씩 적용된다. 인풋단에 적용되는 Attention은 직전에 생성된 단어와 관련이 높은 키워드를 선택하여 인풋에 사용하기 위함이며, 아웃풋단에 적용되는 Attention은 현재 시점의 단어로써 표현 하려는 의미와 관련이 높은 키워드를 선택하여 현재 시점의 단어를 더 정확히 선택하기 위함인듯 하다. 이렇게 사진의 의미를 서로 다른 방식으로 추출하고 그것을 각 방식의 특성에 맞게 적절히 언어모델에 이용함으로써 좋은 결과를 얻은 것으로 보인다.
Image Captioning이란 복잡한 테스크를 단순화하여 해결한 좋은 연구이지만 사람이 같은 테스크를 수행하는 방식과는 근본적인 접근법에 차이가 있다는 생각이 든다. 사람은 사진에 있는 물체들이 무엇인지 파악하고 물체의 상태와 물체간 관계를 파악함으로써 사진의 의미를 이해하는 반면, 이 연구의 방법론은 물체간의 관계에 대한 고려가 명시적으로 이루어지지 않은 채 관련있는 키워드만 사용하여 사진의 의미를 파악하게 한다. 실험 결과를 확인한 것은 아니지만, 이 방법론 대로라면 사람 A가 사람 B를 때리는 사진과 사람 B가 사람 A를 때리는 사진의 의미를 정확히 구분해내기는 어려울 것으로 보인다. Object Detection을 통해 물체를 찾고 물체간의 관계를 그래프로 표현하는 식으로 사진의 의미를 이해하는것이 어떨까 하는 생각이 들었다.
이미지를 다루는 것은 내가 주로 연구하는 분야는 아니지만, 감각을 추상적의미로 변환하는 사람의 방식을 어떻게 컴퓨터가 표현해낼 수 있을지에 대해 더 고민하는 계기가 되었기에 이번 발표는 나에게도 의미있는 시간이었다.
금일 세미나는 진혁이가 “Image Captioning with Semantic Attention” 주제 발표하였다. Image Captioning 이라는게 아는 분이 CTO로 있는 스타트업에서 한국 유투버들에게 글로벌 컨텐츠로 내보내기 위해 자동 번역 자막을 해주는 AI서비스를 하고 있는데
활용분야가 머리속에 그려지면서 흥미 진진하게 세미나를 보았다. 오랜 시간 발표준비를 했다는걸 느꼈고 그만큼 이해가 쉬웠다. Image가 주어졌을 때 Image에 대한 설명디스크립션을 결과로 내놓는데 어텐션 매커니즘을 이용하여 GoogleNet의 CNN (Convolutional Neural Network) 사용하여 피쳐를 뽑고 단어를 매핑한다는것 그리고 RNN으로 문장을 생성하는 것까지의 매끄럽게 이어지는 것을 보고 좀 더 나도 논문을 보면서 진혁이게 더 물어보고 싶어졌다. 여태까지 RNN이면 시계열 데이터를 주로 다루는데 써봤고 CNN은 이미지쪽으로 썼지만 이 2개의 서로 다른 목적의 모델들이 어텐션과 함께 결합되어서 이런 결과를 내는게 조금 신기하면서도 아직 발전의 가능성이 많을것으로 기대한다.
금일 세미나는 Image captioning with semantic attention을 주제로 진행되었다. 여기서 Image captioning이란 이미지를 설명하는 문장 생성 태스크로, 컴퓨터 비전과 자연어 처리 분야가 결합된 태스크이다. 컴퓨터 비전에서 핵심적으로 사용되는 CNN(Convolution Neural Network)과 RNN(Recurrent Neural Network)이 결합되어 태스크를 수행하는데, 수행 과정 설명에 앞서 컴퓨터 비전 태스크, 자연어 처리 태스크의 어떤 요소가 결합되어 있는지 쉽게 설명해주어 이해를 잘 할수 있었다. 오늘 세미나를 이해하는데 있어서 가장 핵심적인 요소는 N-Attribute와 두 단계의 Attention-score 산출 과정이다. N-Attribute는 주어진 이미지를 설명하는데 있어서 필요한 핵심 단어들이다. 선별 과정은 학습 과정에 구축된 vocab 내 출현 빈도가 높았던 단어들을 대상으로 CNN이 선별한다. 선별된 N-Attribute는 출력 이전 시점 토큰과 Attention score를 산출하게 되며, Attention score가 적용된 출력 이전 시점 토큰이 RNN의 input이 되고, 다시 한번 출력된 RNN hidden state와 N-Attribute가 Attention 과정을 거쳐 최종적으로 해당 시점 토큰에 대한 예측을 진행하게 된다. Attention의 수행 이유는 다음 시점 토큰을 예측하는데 있어서, 주어진 이미지 내 핵심 사물들(N-Attribute)을 함께 고려했을 때 효과적인 성능 개선이 있기 때문이다. 이와 같은 핵심적인 요소들을 세미나 중 선배들의 토론을 들으며 이해할 수 있었고, 생성이 완료된 문장을 평가하는 BLEU score까지 세미나를 통해 알 수 있었다. 마지막에서 진혁이형이 친절하게 세미나 핵심을 짚어주어, 오늘 세미나의 핵심 태스크는 RNN 문장 생성 과정에 CNN을 통해 파악된 N-Attribute 특성들이 Attention으로 반영된 문장 생성하는 것으로 잘 이해할 수 있었다. 발표 처음부터 쉽게, 마지막까지 군더더기 없이 정리해준 진혁이 형에게 감사 말을 전하고 싶다.
오늘 세미나는 “Image Captioning with Semantic Attention”을 주제로 진행되었다. 컴퓨터 비전부터 시작하여 이미지 캡셔닝에 대하여 설명해주어 처음 접하는 분야에 대해서도 쉽게 이해할 수 있었다. 이미지 캡셔닝이랑 이미지를 설명하는 문장을 생성하는 알고리즘으로, CNN과 RNN이 결합된 구조를 사용한다. 이번 세미나에서 설명해주신 논문의 모델같은 경우에는 Top-Down과 Bottom-Up의 두 가지 approach로 구성되어 있다. Top-Down Approach는 CNN구조를 통하여 이미지의 전체적인 특징을 확인하는 방식이며, Bottom-Up Approach는 이미지의 자세한 부분을 확인하는 Semantic Attention의 방법론을 활용하여 실제 이미지를 설명한 문장에 들어갈 단어들을 뽑아주는 방식이다. 이렇게 두 가지 Approach의 결과들을 활용하여 RNN을 통하여 문장을 생성하게 되는데, 이 때 RNN의 input으로 활용되는 알파값과 다음 단어를 예측할 때 활용되는 베타값의 두 가지 종류로 모델 내에 Attention 연산이 활용되어있다. 전체적으로 보면 복잡한 모델이지만 해당 모델을 자세하게 나누어 설명하여주셔서 전체적인 모델의 구조가 직관적으로 이해될 수 있었다. 마지막에 해당 논문에서 활용된 BLEU Score에 대하여 조금 더 정확하게 공부하고 이해해보고 싶다는 생각이 들었다. 오늘 세미나를 통하여 새로운 Image Captioning이라는 분야와 Semantic Attention을 활용한 모델에 대하여 알게되어 유익한 시간이었으며, 실제 해당 모델을 적용시켜 이미지에 대한 문장을 얼마나 잘 생성하는지에 대한 결과물도 궁금해졌다.
진혁이가 준비한 image captioning 관련 세미나를 청취했다. Image captioning은 이미지를 인풋 이미지로 받아 이를 설명하는 문장을 생성해내는 테스크로, 이전에 visual attention 세미나 발표할 때 다뤘던 논문 중 하나인 show attend and tell 논문을 재밌게 읽었던 적이 있어 어떤 부분이 개선되었는지를 생각해보며 흥미롭게 청취할 수 있었다. 이번 세미나의 핵심 논문인 image captioning with semantic attention은 show attend and tell 논문이 발표된 1년 뒤인 2016년 CVPR에 발표된 논문으로, 기존 논문과의 가장 큰 차별점은 N-Attribute라는 장치를 두어 서로 다른 역할을 하는 두번의 어텐션 스코어를 계산하는 과정이며 이 때문에 semantic attention이라는 네이밍이 붙은 것 같다. 먼저 input attention은 이미지를 잘 설명하는 단어들의 집합인 N-Attribute를 생성한 후 해당 집합 내 단어벡터들과 U parameter을 가지고 score을 계산하는 과정이다. input attention의 output으로 도출되는 feature인 x_t는 RNN 디코더의 입력값으로 사용된다. 다음으로 output attention은 RNN 디코더가 t시점에서의 단어를 출력할 때 t-1 시점의 hidden을 query로 사용하여 N-Attribute 내 단어벡터들과의 유사도를 V parameter을 가지고 계산하는 과정이다. 이는 우리가 잘 알고 있는 기계번역에서의 seq2seq attention 컨셉과 유사하다고 볼 수 있다. 막상 알고보면 어렵지 않은 프로세스인데 노테이션이 여러개가 쓰여서 세미나 시간에는 좀 헷갈렸다. 수식과 노테이션들이 갖는 의미를 잘 정리해서 차근차근 설명해주었으면 좋았을 것 같다.
이전에 Hierarchical Attention Network 논문이 사람의 문서 분류할 때의 사고를 가장 잘 모사했다고 생각되는 논문이였다면, 이 논문은 연구자가 사람이 그림을 보고 캡션을 생성할 때 어떤 사고과정을 거쳐 캡션을 생성하는지를 잘 모사하여 프로세스를 구현한 논문이라고 생각된다. 사람의 문장 생성 프로세스를 100% 유사하게 따라할 수는 없겠지만 이미지의 전체 특징을 고려하는 것에 더하여 그림을 보고 어떤 단어들이 포함되어야 할지를 사전에 먼저 생각하는 과정과 이전 시점에 등장하는 단어를 참고하여 다음 단어를 생성해내는 과정을 생각해보면 왜 연구자들이 이렇게 아키텍쳐를 구현하였는지에 대하여 어느 정도 납득이 갔다. 이런 접근방식은 알고리즘 연구에 많은 도움이 될 것 같다. 다만 이번 논문은 발표된지 어느새 4년이나 지났을 뿐만 아니라 self-attention 기반의 visual attention도 연구가 많이 되었기 때문에 이미지 캡셔닝 영역에서 더 최신의 논문들을 찾아 읽어봐야겠다는 생각도 함께 들었다.
이미지 캡셔닝은 NLP와 vision이 결합된 흥미로우면서도 챌린징한 분야이고, 다양한 응용연구가 가능한 분야라는 생각이 든다. 진혁이가 하는 폐 엑스레이를 보고 증상을 설명하는 연구도 재밌어 보이고, 유튜브 자막, 미술 작품 디스크립션, 음식 조리 레시피, 자율주행에서의 네비게이션 등등...재밌는 응용 연구가 가능할 것으로 생각된다. 나도 관심을 갖고 연구해봐야겠다라는 생각이 드는 세미나였다.
이번 세미나의 주제는 Image captioning에 관한 내용이었다. Image captioning은 이미지를 보고 모델이 어떤 문장을 생성해주는 알고리즘이다. 즉 Input으로 이미지가 들어오면 CNN모델을 통해 이미지의 특징이 추출되고, 추출된 특징을 RNN의 Input으로 이용하여 순차적으로 단어를 생성하며 문장을 생성하게 된다. 어떻게 보면 Object detection의 확장판이며 사람들이 흔히 생각하는 AI와 가깝다. 잘 학습된 모델은 카메라를 이용하여 앞에 어떤 물체가 있는지 알려줄 수 있으며 실제로 구글 홍보영상에 시각장애인을 위한 AI로 소개되어 있다. Image captioning은 이미지를 어떤 숫자들로 바꾸고 그 숫자들을 이용해서 다시 문장을 생성하는 방법론이며 이는 딥러닝으로 발달된 computer vision과 nlp를 잘 조합한 태스크이다. Image captioning의 접근 방법으로는 Top-down/Bottom-up approach가 있다. Top-down의 경우는 이미지 전체를 이용하는 방법이고, Bottom-up의 경우는 이미지 부분부분을 이용하여 결합하는 방식이다. 두 방식 모두 장단점이 있으며, 이 논문에서는 visual attention을 이용하여 두 가지 장점을 활용하였다. CNN으로 Googlenet구조를 사용했고, RNN구조에 Semantic attention을 사용했다. Attention을 사용한 이유는 Top-down 방식과 Bottom-up 방식을 적절히 사용하기 위해서이고 Googlenet을 사용한 이유는 여러 사이즈의 필터를 사용하기 때문에 논문 컨셉에 적합했던 것 같다. 여러 형태의 비정형 데이터를 많이 다루는데 어떻게 변환해야 하는지, 어떻게 합쳐야 하는지에 대해서 힌트를 얻을 수 있었던 논문이었다.
금일은 Image captioning with semantic attention을 주제로 세미나가 진행되었다. 이번 주제는 이미지와 NLP 분석 방법이 결합된 내용이었다. Image captioning에 대해서는 CNN 모델으로 이미지 내 주요 특성을 요약한다. 해당 논문에서는 GoogleNet을 사용했지만 Resnet이나 VGG 구조로 변경해서 사용해도 된다. 그리고 semantic attention 부분에서는 Training Data 내에 단어들을 Corpus로 만들고 Attention Score를 활용해 특징을 요약하게 된다. 이렇게 요약된 특징들을 RNN 입력값으로 사용하여 이미지를 설명할 수 있는 문장을 출력하게 된다. 최근 개인적으로 Attention에 대한 공부를 진행하고 있는데 Attention 알고리즘을 활용하는 방법론을 하나 더 배울 수 있어서 좋았다. 그림 하나하나 직접 그리며 청중들의 이해를 도우려 노력해준 진혁이에게 감사함을 표한다.
이번 세미나 주제는 image captioning with semantic attention이었다. Image captioning은 이미지 한 장이 주어졌을 때 이미지를 자연어로 설명하는 task를 의미한다. 발표자가 소개한 모델은 주어진 이미지로부터 다양한 attribute (이미지를 설명하는 단어)를 추출하고, 이미지를 설명하는 문장을 generation할 때 attribute에 대한 attention을 적용한다. Image captioning task를 위해 기존에 어떤 연구들이 진행되어 왔고, 기존 연구들의 어떤 단점을 보완하기 위해 세미나에서 다룬 모델이 제안되었는지를 같이 설명했으면 더 좋은 발표가 되었을 것 같다.
Image Captioning 모델은 주어진 입력 이미지에 대한 설명을 자연어로 생성해준다. 컴퓨터 비전과 자연어 처리 연구를 연결하는 연구로 인공지능 연구에서 중요한 의의를 갖는다. 오늘 다룬 'Image Captioning with Semantic Attention' 논문에서 제안하는 모델은 크게 두 개의 모듈로 구성된다. 이미지의 포괄적인 특징을 추출하는 Top-Down 파트와 이미지 내 지엽적인 부분들의 특징을 단어로 요약하는 Bottom-Up 파트가 존재한다. FCN으로 추출한 특징들에서 attribute을 뽑고, attention 기법을 활용하여 캡션의 품질을 향상시킨다. 기존에 우리 연구실에서 하지 않던 연구라 처음엔 생소했지만 발표자가 꽤나 구체적으로 자료를 준비해주어 이해하기 수월했다.
이번 세미나는 ‘Image Captioning with Semantic Attention’을 주제로 고려대학교 신공학관 224호에서 박진혁 연구원에 의해 진행되었습니다. Image Caption이라는 개념은 컴퓨터 비전과 자연어 처리를 연결하는 연구분야로서, 특정 입력 이미지를 넣어주었을 때 적절한 설명 문장을 생성하는 알고리즘을 말합니다. 전체적인 모델 구조는 크게 3가지로 나뉘어져 있습니다. 첫째는 이미지를 입력으로 받아 GoogleNet을 통해 feature를 추출하는 부분, 둘째는 FCN(Fully Convolutional Network)을 이용하여 semantic attention을 찾아주는 부분 그리고 마지막으로 세번째는 이전 과정에서 얻은 출력값을 RNN 구조의 입력값으로 사용하여 최종 생성 문장을 얻게 되는 형태입니다. Attention이 입력값과 hidden state에 한번, hidden state와 출력값에 한 번 걸리게 되는 구조를 그림을 그려 상세히 설명해주어 쉽게 이해되었습니다. 이렇게 두 번의 attention을 사용하는 방식 때문에 좋은 성능을 보인 것 같습니다. Image captioning을 하는 전체 process가 여러 개의 개념을 합쳐서 만들어진 개념이라 처음에는 한 번에 이해가 되지않았으나 중요 부분 별로 설명해주어 이해되었습니다. 추후에 이러한 방법을 가지고 폐 사진을 통해 환자의 증상을 잘 나타내는 출력값을 보여주고자 하는 연구를 진행한다고 박진혁 연구원이 발표해주었습니다. 어려운 방법론인만큼 좋은 결과가 나왔으면 좋겠습니다.
이번 세미나의 주제는 Image Captioning with Semantic Attention으로 이미지에 대한 문장을 생성하는 내용으로 진행이 되었다. Image Captioning은 컴퓨터 비전과 자연어 처리가 결합된 분야로 알고리즘은 보통 CNN과 RNN이 결합된 구조를 가진다. 소개한 논문에서 Image Captioning은 Top-down approach와 Bottom-up approach 두 방식으로 구성 되어있다. 전자는 주어진 이미지 전체의 특징을 살펴보기 위함이고 후자는 이미지 부분마다의 특징을 추출하고 이와 관련된 키워드를 선정하기 위함이다. 따라서 GoogLeNet 알고리즘으로 추출한 전체 이미지의 특징과 이미지 부분에 대한 키워드의 Attention Weight를 RNN의 입력값으로 사용하고 이에 대한 출력값에 Attention Weight를 다시 적용하는 구조를 가지게 된다. 마지막으로 모델의 성능을 평가할 수 있는 BLEU score에 대해서 설명을 하였다. BLEU score는 생성 문장과 실제 문장이 얼마나 유사한가를 평가하는데 문장을 n-gram으로 나누어서 얼마나 겹치는지와 문장의 길이를 모두 고려하여 score를 산출한다. 어려운 주제였지만 이해하기 쉽게 설명해준 진혁이에게 감사의 말을 전한다.
1. Image Captioning with Semantic Attention 주제로 발표.
2. 직관적인 설명이 가능하도록 정성껏 제작한 발표 자료가 매우 인상적임.
3. CNN과 RNN이 결합한 모델로 꼭 Image Captioning 외에도 많은 응용분야가 있을 것으로 생각.
4. 널리 쓰이고 있는 BLEU score에 대한 설명이 미흡했음. 다음 주에 다시 설명하기로 함.
5. 연구실 졸업생 조수곤 박사, 김영훈 교수, 김영훈 교수의 학부연구생이 참여하여 더욱 뜻 깊었음.
6. 열심히 준비해 준 진혁이이게 칭찬을 보냄. 하지만 발표 시 좀 더 진지한 자세를 가질 필요 있음.