자연어 처리 트랜스포머 2강(Attention, Self-Attention, Multi-Head Attention)

Поділитися
Вставка
  • Опубліковано 20 вер 2024
  • 현재 Chatgpt와 같은 전세계 자연어처리 모델(LLM)들을 이루는 가장 핵심 아키텍처인 트랜스포머(Transformer)에 대해 자세히 알아봅시다. 이번 영상에서는 트랜스포머의 핵심 개념인 Attention에 대해 알아보겠습니다.
    트랜스포머에 대한 더 많은 내용은 아래 제 블로그에 있으니 꼭 한번 들려주세요.
    추가적으로 AI 및 인공지능에 관심있는 여러분들을 위해 현재 오픈 카카오톡방을 운영하고 있습니다. 들어오셔서 AI관련 다양한 정보 공유하시고 가세요.
    그럼 공부한 번 해볼까요?
    1. Attention
    codingopera.ti...
    2. Multi-Head Attention
    codingopera.ti...
    AI 오픈카카오톡방
    open.kakao.com...

КОМЕНТАРІ • 12

  • @LEE_JOHN_LEE
    @LEE_JOHN_LEE 2 місяці тому +1

    진짜 강의 퀄리티 대한민국에서 최고로 높습니다. 초등학생도 이해하겠어요. 채널에 강의가 더 풍성해지면 좋겠습니다.

    • @codingopera9945
      @codingopera9945  2 місяці тому +1

      이렇게 칭찬해주셔서 정말 감사합니다. 제가 유튜브를 이제 제대로 시작해서 앞으로 많은 관심과 사랑 부탁드릴께요 💕

  • @codingopera9945
    @codingopera9945  3 місяці тому +1

    11:37 어떤분께서 오픈카톡방에서 multi-head attention의 value metrics는 어떻게 계산 하냐고 물어보셨는데, 이 부분과 같이 softmax 함수를 사용하여 계산합니다!

  • @thinkicscenter5396
    @thinkicscenter5396 4 дні тому

    1 문장 내에서 단어들간의 관계들을 구하는데 갑자기 embedding 단어에다가 QKV vector를 왜 곱하나요?
    그리거 QKV 값은 어떻게 사전에 결정되나요?
    2. attention value matrix값은 student와 어떤 단어와의 관계 값을 의미하나요?

  • @user-w9qcxxl5va
    @user-w9qcxxl5va 2 місяці тому +1

    Q, K, V에 사용되는 nn.Linear가 2로 설정하여 강의를 진행해주셧는데
    강의의 편의르 위해 2로 설정하신건가요? 아니면 통상적으로 2를 많이 쓰는건가요?
    그리고 nn.Linear의 층 개수는 하이퍼 파라미터에 속하는건가요?
    그렇다면 대표적으로 몇층을 쌓나요?

    • @codingopera9945
      @codingopera9945  2 місяці тому

      @@user-w9qcxxl5va 질문주셔서 감사합니다. 네 맞습니다. nn.Linear 층 수를 몇 층으로 쌓을지는 하이퍼 파라미터입니다. 제 경험상 통상적인 코드를 봤을때는 2층으로 많이 구현했습니다.

  • @davin6021
    @davin6021 2 місяці тому +1

    안녕하세요. 우선 정말 좋은 강의 감사합니다!
    10:40 부터 질문있습니다.
    정규화를 위해서 분모로 나눠준다는 개념은 이해가 잘되었습니다!
    그러나 애초에 4개와 100개로 다른 상황이 어떻게 생기게 되는지 궁금해서 댓글을 남겼습니다.
    1강에서 I/am/student로 예시를 들어주셨을 때, 모두 1x4의 같은 형태의 차원으로 embedding 되는 것으로 보았고,
    Q, K, V 의 layer크기도 계속 변하지 않고 동일할 것 같은데,
    어떤 상황에서 4개와 100개처럼 다른 열의 크기가 나올 수 있는건가요??

    • @codingopera9945
      @codingopera9945  2 місяці тому

      @@davin6021 아주 좋은 질문이십니다. 네 맞습니다, 하나의 모델에서 embedding size는 동일합니다. 그러나 해당 정규화를 진행하면 embedding size가 상이한 다른 모델과도 attention을 비교할 수 있어 말씀드렸습니다. 또한 이 개념은 attention 정규화의 이해를 돕기위해 설명한 개념임을 생각해주시면 감사하겠습니다. 좋은 질문 감사합니다!! 😀

  • @5..4..3..이..일준
    @5..4..3..이..일준 3 місяці тому +1

    Query layer, Key layer, value layer의 weight 값은 어떻게 정해지나요? gradient descent로 정해진다면, loss function은 어떤 정답을 기준으로 잡는 건가요? 감사합니다.

    • @codingopera9945
      @codingopera9945  3 місяці тому

      Query, Key, Value layer들은 Transformer모델의 구성품으로 전체 모든 Transformer 네트워크들이 통합되어 업데이트됩니다. 이때 모델은 통합 loss 값을 줄이기 위해 업데이트 되므로 각 Q, K, V layer의 weight값이 최적화됩니다. 이 과정에서 각 layer간 weight가 달라지게 되는 것이지요. :)

  • @hpcmanleechangsung253
    @hpcmanleechangsung253 2 місяці тому +1

    Q, K, V weight들의 초기 값(initial value)들은 어떻게 셋팅되나요?

    • @codingopera9945
      @codingopera9945  2 місяці тому +1

      질문주셔서 감사합니다. Q, K, V layer의 weight값들은 일반적인 뉴럴네트워크의 초기설정과 마찬가지로 랜덤하게 세팅됩니다 😀. 또 궁금한점이 있으시면 언제든 댓글주세요 :)