본문 바로가기

트랜스포머5

트랜스포머(Transformer) (4) - multi-head attention 4. 어텐션 (Attention) 첫번째 인코더 레이어에 입력 값이 들어오고 여러 개의 인코더 레이어 반복해서 거침 Multi-Head Attention 레이어 Reference https://www.youtube.com/watch?v=AA621UofTUA 이 글은 나동빈님의 'Transformer : Attention Is All You Need' 논문 리뷰 영상을 보고 정리한 글입니다. 2022. 6. 4.
트랜스포머(Transformer) (4) - 인코더와 디코더 인코더 (Encoder) 트랜스포머는 하나의 인코더 층이 총 두개의 서브 층으로 이루어짐 : 셀프어텐션, 피드포워드 신경망 1) 셀프어텐션 : multi-head self-attention 블록으로 셀프 어텐션을 병렬적으로 사용함 2) 피드포워드 신경망 : position-wise FFNN 블록으로 그냥 일반적인 피드 포워드 신경망임 self-attention : 인코더 파트에서 수행하는 어텐션 - 각각의 단어가 서로 어떤 연관성을 가지고 있는지 구하기 위해 사용 ex) I am a teacher : 문장을 구성하는 각각의 단어 I, am, a, teacher 에 대해서 각각의 단어끼리 attention score 을 구해서 서로 어떤 단어와 높은 연관성을 갖는지에 대한 정보를 학습시킴 어텐션을 통해 전.. 2022. 6. 4.
트랜스포머(Transformer) (3) - 구조, 동작원리, 포지셔널 인코딩(Positional Encoding), 어텐션(Attention) 트랜스포머의 구조 - Attention Is All You Need 트랜스포머는 어텐션 기법만 쓰기 때문에 RNN, CNN 은 전혀 사용하지 않음 - 그래도 기존의 seq2seq 의 인코더-디코더 구조는 유지 - 인코더에서 입력 시퀀스를 입력받고, 디코더에서 출력 시퀀스를 출력 그렇기 때문에 문장 안에 포함된 각각의 단어들의 순서에 대한 정보를 주기 어려움 문장내 각각 단어의 순서에 대한 정보를 알려주기 위해 positional encoding 사용 이러한 아키텍쳐는 BERT 와 같은 향상된 네트워크에서도 채택됨 어텐션 과정 한번만 사용하는 것이 아니라 여러 레이어를 거쳐서 반복하도록 만듦 인코더와 디코더 N 번 만큼 중첩되어 사용하도록 만듦. - 이전 seq2seq 구조에서는 인코더 / 디코더 하나에서.. 2022. 6. 4.
트랜스포머(Transformer) (2) - Attention 으로 seq2seq 문제 해결 이 글은 나동빈님의 'Transformer : Attention Is All You Need' 논문 리뷰 영상을 보고 정리한 글입니다. Seq2Seq 의 문제 : 하나의 문맥 벡터가 소스 문장의 모든 정보를 가지고 있어야 하므로 성능이 저하됨 해결 방안 : 그렇다면 매번 소스 문장에서의 출력 전부를 입력으로 받으면 어떨까? ==> 'Attention' 메커니즘 사용해 인코더의 모든 출력 참고 가능 매번 단어가 출력되어서 hidden state 가 나올 때마다 그냥 그 값들을 전부 출력 값으로써 별도의 배열(w)에 다 기록해놓음 각각의 단어를 거치면서 나오는 h1, h2, h3, h4 들을 다 저장. 출력 단어 생성할 때마다 이 소스 단어들(w)을 다 참고하겠다는 아이디어 각 단어들을 다 똑같이 그냥 참고.. 2022. 6. 3.
트랜스포머(Transformer) (1) - Seq2Seq 모델의 한계점 이 글은 나동빈님의 'Transformer : Attention Is All You Need' 논문 리뷰 영상을 보고 정리한 글입니다. 트랜스포머 (Transformer - Attention Is All You Need) '어텐션' 이라는 메커니즘을 전적으로 활용하는 아키텍쳐 많은 최신 자연어 처리 모델이 활용하고 있는 아키텍쳐 - 트랜스포머 제안 Transformer 의 메인 아이디어는 BERT, GPT 와 같은 최신 아키텍처에 채택되어 Google 번역기, 파파고 등에 활용되고 있음 딥러닝 기반의 기계 번역 발전 과정 2021년 기준 최신 고성능 모델들은 트랜스포머 아키텍쳐를 기반으로 하고 있음 GPT : 트랜스포머의 '디코더(decoder)' 아키텍처 활용 BERT : 트랜스포머의 '인코더(enco.. 2022. 6. 2.