attention

    Vision Transformer(1): Theory

    Vision Transformer(1): Theory

    차근차근 이해하는 Transformer에 이어 Transformer를 Vision 분야에 적용한 Vision Transformer(ViT)을 이해하고 코드로 구현해보겠습니다. Introduction 자연어 처리 분야에서 Transformer는 표준 모델이 된지 오래이지만, Vision 분야에서는 Attention이 Convolotional Network와 함께 사용되거나, Convolutional Network의 일부가 Attention으로 대체되는 정도에 그쳤습니다. 이런 가운데 Dosovitskiy, Alexey, et al. (2020)은 Vision 문제를 Convolutional Network 대신 Transformer만을 이용하여 해결하는 방법을 제시하였습니다. 그럼 3차원 데이터인 이미지 데..

    차근차근 이해하는 Transformer(5): Positional Encoding

    차근차근 이해하는 Transformer(5): Positional Encoding

    지난 글에서 Transformer의 핵심적인 Building Block인 Attention을 정리해봤습니다. 이어서 Vaswani et al. (2017) 논문을 통해 현재 나오는 수많은 모델의 기반이 되고 있는 Transformer를 차근차근 이해할 수 있도록 정리해보았습니다. 이번 글에서는 Transformer에서 다루지 않은 마지막 요소인 Positional Encoding에 대해 알아보겠습니다. Positional Encoding Positional Encoding이란 말 그대로 위치의 Representation을 벡터로 표현한 것을 말합니다. 조금 더 엄밀하게 표현한다면 $A=[a_0, a_1, \cdots, a_n]$가 주어졌을 때 A의 Positional Encoding은 각 원소의 위치와 ..

    차근차근 이해하는 Transformer(4): Masked Multi-Head Attention과 Decoder

    차근차근 이해하는 Transformer(4): Masked Multi-Head Attention과 Decoder

    지난 글에서 Transformer의 핵심적인 Building Block인 Attention을 정리해봤습니다. 이어서 Vaswani et al. (2017) 논문을 통해 현재 나오는 수많은 모델의 기반이 되고 있는 Transformer를 차근차근 이해할 수 있도록 정리해보았습니다. 이번 글에서는 Encoder에 이어서 Transformer를 구성하는 또 다른 Building Block인 Decoder의 구성 요소를 하나씩 살펴보겠습니다. Revisit: Transformer의 전체 구조 지난 번에 보여드린 Transformer의 전체 구조 그림을 보면 Decoder가 대부분 익숙한 이름을 가진 요소들로 이루어져 있음을 알 수 있습니다. 하지만 조금 다른 부분도 존재합니다. 첫 번째 Multi-Head At..

    차근차근 이해하는 Transformer(3): Multi-Head Attention과 Encoder

    차근차근 이해하는 Transformer(3): Multi-Head Attention과 Encoder

    지난 글에서 Transformer의 핵심적인 Building Block인 Attention을 정리해봤습니다. 이어서 Vaswani et al. (2017) 논문을 통해 현재 나오는 수 많은 모델의 기반이 되고 있는 Transformer를 차근차근 이해할 수 있도록 정리해보았습니다. 이번 글에서는 Transformer의 Encoder를 이해하기 위한 마지막 요소인 Multi-Head Attention에 대해 알아보겠습니다. Multi-Head Self Attention 사실 Multi-Head (Self) Attention은 지난 글에서 다룬 Single-Head (Self) Attention을 여러 개 이용하는 것에 불과합니다. 하나의 Attention Value를 이용하는 대신 여러 개의 Attenti..

    차근차근 이해하는 Transformer(2): Single-Head Attention으로 이해하는 Encoder

    차근차근 이해하는 Transformer(2): Single-Head Attention으로 이해하는 Encoder

    지난 글에서 Transformer의 핵심적인 Building Block인 Attention을 정리해봤습니다. 이어서 Vaswani et al. (2017) 논문을 통해 현재 나오는 수 많은 모델의 기반이 되고 있는 Transformer를 차근차근 이해할 수 있도록 정리해보았습니다. Transformer에서 사용하는 Attention을 다룬 지난 글에 이어 이번에는 Transformer의 Encoder가 어떻게 구성되었는지 정리해보겠습니다. Transformer의 전체 구조 Transformer는 Encoder, Decoder Layer가 Attention과 Feed-Forward Network로 구성된 Encoder-Decoder 구조를 따르고 있습니다. Transformer를 이해하는데 가장 병목이 되..

    차근차근 이해하는 Transformer(1): Scaled Dot-Product Attention

    지난 글에서 Transformer의 핵심적인 Building Block인 Attention을 정리해봤습니다. 이어서 Vaswani et al. (2017) 논문을 통해 현재 나오는 수 많은 모델의 기반이 되고 있는 Transformer를 차근차근 이해할 수 있도록 정리해보았습니다. Transformer 이전의 Sequential Modeling에는 주로 Recurrent, Convolutional Neural Network 기반의 Encoder-Decoder 구조와 Attention Mechanism이 사용되고 있었습니다. 하지만 논문이 발표된 이후 Transformer는 Sequential Modeling을 완전히 평정한 것은 물론, Computer Vision 등 다양한 도메인에서도 사용되는 등 딥러..

    [DL] 쉽게 풀어쓴 Attention Mechanism (2): Luong Attention

    [DL] 쉽게 풀어쓴 Attention Mechanism (2): Luong Attention

    2017년에 등장한 Transformer(Vaswani et al. 2017)는 어느덧 딥러닝의 기본적인 Building Block으로 사용된다고 해도 과언이 아닐 정도로 대중화되었습니다. Transformer를 이해하기 위해 사전 지식으로 필요한 Attention Mechanism의 기본적인 내용을 기록해두고자 Bahdanau, D., Cho, K., & Bengio, Y. (2014)와 Luong, M. T., Pham, H., & Manning, C. D. (2015)를 읽고 정리해보았습니다. 이번 글에서는 지난번 글에 이어 여러 방법을 통해 Bahdanau Attention을 개선할 수 있는 방법에 대해 알아보겠습니다. (지난 글: 2022.04.23 - [Data Science/Maching L..

    [DL] 쉽게 풀어쓴 Attention Mechanism (1): Bahdanau Attention

    [DL] 쉽게 풀어쓴 Attention Mechanism (1): Bahdanau Attention

    2017년에 등장한 Transformer(Vaswani et al. 2017)는 어느덧 딥러닝의 기본적인 Building Block으로 사용된다고 해도 과언이 아닐 정도로 대중화되었습니다. Transformer를 이해하기 위해 사전 지식으로 필요한 Attention Mechanism의 기본적인 내용을 기록해두고자 Bahdanau, D., Cho, K., & Bengio, Y. (2014)와 Luong, M. T., Pham, H., & Manning, C. D. (2015)를 읽고 정리해보았습니다. Attention Mechanism의 등장 배경 Attention이 등장하기 이전에는 Encoder와 Decoder로 이루어진 Sequence-to-Sequence(Seq2Seq) 모델을 통해 Sequenti..