데이크루 5기

GPT4가 알려주는 Transformer_1(기초부터 심화까지)

2023.04.03 11:51 3,609 Views

안녕하세요!


요즘 정말 인기많은 Transformer에 대해 여러분들은 잘 아시나요?

혹시라도 모르신다면 괜찮습니다.


이번에 스스로 Transformer에 대해 공부하고 있었는데

마침 데이크루 활동으로 Transformer에 대해 데이커분들과 같이 공부하는 시간을 가지면

좋을 것 같아 글을 작성하게 되었습니다.


이 글을 처음부터 끝까지 다 읽으신다면

여러분들도 Transformer 고수?!



먼저 요즘 Transformer에 대해 알아보아요!





Transformer에 입문하신 분들은

Self-Attention(셀프 어텐션) 단어에 생소하실텐데요

Self-Attention(셀프 어텐션)에 대해 더 알아볼까요?







또 여기서 궁금증이 들만한 요소인

쿼리(Query), 키(Key), 밸류(Value)에 대해서 알아볼까요?






이러고 Chat GPT의 답장이 끊어졌어요.

이럴때는





계속 말해달라고 하면 말해줍니다 ㅎㅎ..



근데 쿼리, 키, 밸류에 들어가는 저 값들은 도대체

어디서 나오는 걸까요?

궁금해서 물어봤습니다!




쿼리, 키, 밸류를 이제 좀 이해하려니

임베딩이라는 또 생소한 단어가 튀어나오네요?

물어봅시다.







정리를 해 봅시다.


Transformer의 핵심 원리는 Self-Attention 메커니즘이며,

이 메커니즘은 입력 시퀀스의 각 단어에 대해 다른 단어들과 관계를 계산해서 단어간의 의존성을 파악 + 문맥을 이해합니다.

또한 Transformer는 RNN과 달리 병렬처리가 가능하며 긴 시퀀스 기울기 소실 문제를 해결했습니다.



Self-Attention

입력 시퀀스의 각 단어에 대해 다른 단어들과의 상대적 중요도를 계산

  1. 입력 시퀀스의 각 단어를 쿼리, 키, 밸류 벡터로 변환
  2. 쿼리 벡터와 키 벡터를 점곱하여 어텐션 점수 구하기(이때 어텐션 점수는 단어간의 상호작용을 의미)
  3. 어텐션 점수를 스케일링 후 Soft-max 적용 후 정규화(어텐션 가중치)
  4. 어텐션 가중치와 밸류 벡터를 곱하고 합산하여 새 어텐션 생성



쿼리 : 다른 단어와의 관계를 살펴보는 기준이 되는 단어

: 쿼리 단어와 비교 대상이 되는 단어

밸류 : 각 단어의 실질적인 정보를 포함하며, 어텐션 가중치와 곱해져서 새로운 문맥정보를 포함한 출력 벡터 생성





오늘은 Transformer의 역사와 Self-Attention, 쿼리-키-밸류, 임베딩까지

알아보았어요!

혹시 모르는 부분이 있으면 댓글 주시면 함께 알아봐요!




다음엔 이번 시간에 해 보았던 이론을

이해해 봅시다!

로그인이 필요합니다
0 / 1000
땅땅이
2023.04.03 14:39

끊겼을때 다시 얘기해달라고 하면 해주는군요... 처음알았습니다...
앞으로도 토크 기대하겠습니다 :)

쥬혁이
2023.04.03 14:59

감사합니다!

엣지
2023.04.10 10:03

와 이게 뭐야! 
그리고 역시 아직은 chatGPT보다는 사람이네요..(역시 뭘 아는 분이 질문을 해야..)
엄청 좋은 설명글 감사드립니다.

쥬혁이
2023.04.10 10:18

감사합니다! 혹시 모르시는 부분 있으시면 질문 부탁드려요~!

지석이의숱가위
2023.05.04 14:05

데이콘 시작한 지 얼마 안되었는데 여기에 재밌는 내용들이 많네요....!
재밌게 잘 읽었습니다!!

쥬혁이
2023.05.04 18:19

감사합니다 ㅎㅎ

의상이의면도날
2023.05.04 21:27

어려워서 계속 피했는데 감사합ㄴ디ㅏ...
근데