본문 바로가기

트랜스포머8

Transformer_8(기초부터 심화까지) 안녕하세요 이번 시간엔 Transformer의 Residual Connection 에 대해서 알아 봅시다! 먼저 Residual Connection이란? Transformer에서 Residual Connection은 정보의 흐름을 개선하고, 신경망의 깊이에 대한 효과적인 훈련을 가능하게 하는 중요한 구성 요소입니다. Residual Connection은 아래와 같은 특징을 가집니다: 1. 정보의 흐름 개선: Residual Connection은 각 Transformer 레이어의 입력과 출력 사이에 직접적인 연결을 만듭니다. 이렇게 하면 정보가 더 쉽게 흐르고, 네트워크의 깊이가 더 깊어질 때도 성능 저하를 최소화할 수 있습니다. 그 결과, 깊은 네트워크에서도 효과적으로 학습이 가능합니다. 2. 그래디언트.. 2023. 6. 28.
Transformer_7(기초부터 심화까지) 안녕하세요! 저번 포스팅에서 저희는 Layer Normalization에 대해서 알아보았어요. 이번 시간엔 코드를 통해 Layer Normalization을 이해해보아요. 저번 Transformer 코드에 Class를 단순히 추가를 해보며 Layer Normalization을 적용시켜 볼거에요. Multi Head Attention 코드 기억하시나요? 다시 간단히 설명을 해드리겠습니다. init: 이 메서드에서는 멀티-헤드 어텐션에 필요한 변수와 레이어들을 정의합니다. embed_dim: 입력 임베딩 차원 num_heads: 사용할 어텐션 헤드의 개수 head_dim: 각 어텐션 헤드의 차원 (전체 임베딩 차원을 헤드 수로 나눈 값) 선형 레이어 : self.query: 입력에 대한 쿼리 행렬을 생성하기.. 2023. 6. 28.
Transformer_6(기초부터 심화까지) 지금까지 Self-Attention, 쿼리-키-밸류, embedding, positional encoding 그리고 Multi-Head Attention 까지 알아보았습니다. 이번 시간은 Layer Normalization 에 대해서 알아볼까요? 먼저 Normalization부터 알아 볼까요? Normalization(정규화) 데이터를 특정 범위 또는 규모로 변환하는 과정입니다. 머신러닝 및 딥러닝에서 정규화는 데이터의 스케일을 조정하여 모델의 학습을 돕기 위해 사용됩니다. 정규화는 다음과 같은 목적으로 사용됩니다: 스케일 조정: 데이터의 스케일이 다를 때, 정규화를 통해 데이터를 동일한 범위로 조정할 수 있습니다. 이렇게 하면 모델이 더 빠르게 수렴하고, 최적화 알고리즘이 더 잘 작동할 수 있습니다. .. 2023. 6. 28.
Transformer_5(기초부터 심화까지) 저번 시간 우리는 Multi-Head Attention 에 대해 배웠어요. 이번 시간에는 코드를 통해 Multi-Head Attention을 더 쉽게 이해해 봅시다! transformer_2 포스팅에서 우리는 Self-Attention이 이루어지는 과정을 코드를 통해 이해했어요. 그래서 Self-Attention과 Multi-Head Attention의 코드 구성이 어떻게 다르고 왜 다른지 이해해 봅시다. 먼저 저번 시간 이해했었던 Self-Attention 코드를 다시 한 번 보고 갈까요? 코드에 대해 다시 간단한 설명을 하자면 쿼리, 키, 밸류 선형 레이어를 정의하고, forward 함수에서 입력 시퀀스 내 단어 간의 관계를 반영한 어텐션 출력을 계산합니다. 스케일드 닷 프로덕트 어텐션 계산 - at.. 2023. 6. 28.