딥러닝/NLP

    트랜스포머(Transformer) - 1 (포지셔널 인코딩)

    트랜스포머는 Attention 메커니즘을 이해한 뒤 읽는 것을 추천한다. 트랜스포머는 NLP에서의 예제가 풍부하며, 그외 다른 State-of-the-Art (SOTA) 기술의 기반이 되는 알고리즘이다. 특히 기계 번역 분야에서 이 모델은 seq2seq의 구조인 인코더-디코더를 따르면서도, RNN을 사용하지 않고도 RNN보다 우수한 성능을 보여주었다. 필자는 아직도 트랜스포머에 대해 공부하고 있으며, 트랜스포머 자체가 방대하고 복잡하게 설계된 알고리즘이기에, 여러 차시로 나눠서 트랜스포머에 대해 설명하고자 한다. 요약본의 상당 부분은 유원준 & 안상준 저의 책을 참고하였음을 사전에 밝힌다. 1. 기존 seq2seq 모델의 한계와 Transformer의 동작원리 seq2seq 모델의 기본 구조는 인코더-디..

    [Attention Mechansim] 바다나우 어텐션

    NLP 심화과정 & 딥러닝에서 Transformer와 BERT 레벨의 알고리즘을 공부할 때 필요한 개념인 어텐션 메커니즘, 그중에서도 범용적으로 많이 사용되는 바다나우 어텐션에 대해 알아보자. 이 메커니즘에 대해 알기 위해서는 seq2seq 개념이 선행되어야 이해하기 쉬울 것이다. 단순 닷 프로덕트 어텐션 보다는 조금 더 복잡하지만, 자주 활용하고 한번 테스트 코드라도 작성해 본다면 이해하기가 크게 어렵진 않은 개념이다. 바다나우 어텐션 함수는 Attention(Q, K, V) = Attention Value 로 정의가 되는데, t: 어텐션 메커니즘이 수행되는 디코더 셀의 현재 시점을 의미 Q (Query): t-1시점의 디코더 셀에서의 은닉 상태 K (Keys): 모든 시점의 인코더 셀의 은닉 상태들 ..