딥러닝 자연어처리 RNN 개념을 30분안에 정리해드립니다ㅣ서울대 AI박사과정

Поділитися
Вставка
  • Опубліковано 26 січ 2025

КОМЕНТАРІ • 46

  • @mcodeM
    @mcodeM  2 роки тому

    ✅ [AI LLM 부트캠프 - 파트타입 환급형] 살펴보기 (25.2.17 시작)
    metacodes.co.kr/edu/read2.nx?EP_IDX=16132&EM_IDX=15955&M2_IDX=30103
    ⏰ AI LLM 부트캠프 과정소개서 받기
    docs.google.com/forms/u/1/d/1L9GU9ZxRsWv9NRbwFVI27QU-wiRRm2os5TkH43YAMUE/edit?usp=forms_home&ths=true

  • @최강재-y9c
    @최강재-y9c Рік тому +8

    진짜 수준이 차원이 다르네요. 당연한 얘기지만 본인이 완벽하게 이해하고 설명한다는 느낌이 듭니다.
    AI 관련해서 다른 영상 찾다보면 본인도 본인이 무슨 말을 하고 있는지 모르는 영상이 너무 많은데말이죠

    • @mcodeM
      @mcodeM  Рік тому +1

      감사합니다 :)
      저희 메타코드 자주 찾아주세요~

  • @seongyonglee5747
    @seongyonglee5747 2 роки тому +6

    와우 강의가 머리에 쏙쏙 들어옵니다. 비전공자인데도 이해가 잘 되네요!

  • @suyeonkim5377
    @suyeonkim5377 11 місяців тому +1

    그 어떤 강의보다도 이해가 잘 됩니다. 정말 완벽히 이해하시고 설명하신다는 생각이 듭니다.

    • @mcodeM
      @mcodeM  11 місяців тому +1

      감사합니다.^^
      풀버전은 mcode.co.kr 에서 보실 수 있습니다.

  • @jaewoochoi-ev2km
    @jaewoochoi-ev2km Рік тому +2

    좋은 강의 감사합니다 :)

  • @임정민-y7v
    @임정민-y7v 8 місяців тому +1

    너무너무 좋은 강의입니다!

    • @mcodeM
      @mcodeM  8 місяців тому

      감사합니다.
      현재 풀버전 강의는
      mcode.co.kr 에서 보실수있습니다 :)
      트랜스포머 관련도 업뎃 예정입니다.

  • @이의형-m9m
    @이의형-m9m Рік тому +3

    짧은 시간 내에 개념을 이해해야 했는데 너무나 명쾌하게 설명을 해주셔서 큰 도움이 되었습니다. 정말 감사합니다.

    • @mcodeM
      @mcodeM  Рік тому

      도움이 되셨다니 다행입니다.
      그리고 감사합니다.^^
      주변에 많이 추천 부탁드립니다.!

  • @성민한-c9v
    @성민한-c9v Рік тому +1

    안녕하세요. 강의 올려주신 것 감사히 잘 보았습니다.
    22:50 구간 설명 주신 곳에서 I like eating의 초기 입력값 x0는 에제의 경우 어떤 값을 갖는지 궁금합니다.
    0, 1, random 중 1에 해당한다고 생각은 되나 해당 값을 상황에 따라 어떻게 정의하는지 궁금하여 문의드리게 되었습니다.
    감사합니다.

  • @leespharmaceuticslab1342
    @leespharmaceuticslab1342 Рік тому +2

    정말 최고입니다. 최고의 강의 감사합니다!!!

    • @mcodeM
      @mcodeM  Рік тому

      감사합니다 :) 열심히 공부하시죠!

  • @태로막이
    @태로막이 6 днів тому +1

    24:03 검은색 형광펜 킹받습니다.

  • @RachelloveK
    @RachelloveK Рік тому +2

    이해가 잘 되고 너무 재밌어요! 감사합니다!!

    • @mcodeM
      @mcodeM  Рік тому

      도움이 되셨다니 다행입니다.! 많이 찾아와주세요~

  • @김정민-b6c1o
    @김정민-b6c1o Рік тому +2

    강의 최고네요.. 감사합니다 이런 명강의를 무료로 듣다니요

    • @mcodeM
      @mcodeM  Рік тому

      감사합니다 :)

  • @TV-pi6oi
    @TV-pi6oi 11 місяців тому +1

    오 완전 이해가 갑니다.!!!!

    • @mcodeM
      @mcodeM  11 місяців тому

      다행입니다~ 풀영상은 mcode.co.kr 에서 보실 수 있습니다.!

  • @jlee1558
    @jlee1558 Рік тому +1

    와 진짜 감탄하면서 봤네요. 진짜 대단하십니다. 감사하게 배웠습니다.

    • @mcodeM
      @mcodeM  Рік тому

      함께 화이팅하시죠~ 메타코드 많이 찾아주세요 :)

  • @thinkicscenter5396
    @thinkicscenter5396 29 днів тому +1

    Q1. 26:58 i like eating (?) 에서 ?를 예측하는 뉴럴넷은 그럼 어떻게 그려지나요? 그 부분까지 정리해주셨으면 전체가 이해될텐데 설명 부탁드려요
    Q2. 13:23 에서 ANN이 상태 변수가 필요하는지? 단순히 Y = sigmoid(WxX +b)로만 정의되지 않는지요?

    • @mcodeM
      @mcodeM  29 днів тому

      강의 관련 질문은 아래 링크 확인해주세요~
      metacodes.co.kr/edu/read2.nx?M2_IDX=30656&page=1&sc_is_discount=&sc_is_new=&EP_IDX=8387&EM_IDX=8213

  • @천세현-g4x
    @천세현-g4x 3 місяці тому +1

    와 감사합니다

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

      풀 버전 강의 링크는, 현재 고정댓글에서 확인 가능하세요!

  • @parkrw
    @parkrw 2 роки тому +1

    다음 강의도 기다려집니다..!!

  • @parkie0517
    @parkie0517 Рік тому +1

    비전만 공부해서 rnn이 처음인데, 설명 너무 좋았습니다!

    • @mcodeM
      @mcodeM  Рік тому +1

      계속 자주 놀러오시죠~

  • @tknam3278
    @tknam3278 2 роки тому +1

    최고!

  • @wonpaper
    @wonpaper Рік тому +3

    우와 사전지식이 하나도 없는 초본데요. 이상하게 이해가 되는데요. 감사합니다. ^^;

    • @mcodeM
      @mcodeM  Рік тому

      감사합니다 :)

  • @DevNicitis
    @DevNicitis 11 місяців тому +1

    정말 직관적인 강의입니다. 좋은 강의 감사합니다.

    • @mcodeM
      @mcodeM  11 місяців тому +1

      좋은 말씀 감사드립니다!
      풀 강의 버전은 아래 링크 통해서, 현재 무료로 시청 가능하십니다 :)
      mcode.co.kr/video/list2?viewMode=view&idx=17

  • @whathappens-x5t
    @whathappens-x5t 6 місяців тому +1

    사랑해요

    • @mcodeM
      @mcodeM  6 місяців тому +1

      @@whathappens-x5t 현재 풀버전 강의는 metacodes.co.kr 에서 시청 가능하시고 향후에는 유료로 변환될 예정입니다7

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

    안녕하세요. 감사히 잘 봤어요.
    수학을 알면 좀 더 확실히 이해할텐데 수박 겉핥는지, 아예 수박도 못 잡고 있는지도 모를 정도이니 답답하네요.
    그래도 공부하려는 이유는 어떤 요소나 변수를 조정하여 원하는 방향으로 계산시킬 수 있나를 배우려해요.
    2024년 11월 13일 수 09시 태평양 시간

  • @lanyi86
    @lanyi86 2 роки тому +1

    Good)

  • @호호브라더즈
    @호호브라더즈 Рік тому +1

    제가 보고 들은 강의중에 최고입니다 감사합니다. 강의 바탕으로 같이 코드 구현 것도 있으면 금상첨화겠어요. 아직 채널을 안둘러봐서 혹시 있으면 좋겠어요^^
    "압축본 이다" 가 아니라 "압축본 이라고 할 수있다" 라는 문구가 기억에 남네요

    • @mcodeM
      @mcodeM  Рік тому

      감사합니다 :)

  • @hsk303
    @hsk303 9 місяців тому

    25:38 에서 W_ux * u_t 일것으로 생각했는데 W_xu 를 가중치로 가집니다. 제가 잘못 이해한 것인지 궁금합니다!
    밑줄 역시 W_yx인 이유가 궁금합니다!

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

      안녕하세요. 수학을 몰라서 하고 싶은 것들을 못 하는 이과 출신에요.
      다시 보실지, 또 제 비수학적 추측을 누군가 바로 잡아 주실지 모르지만 올려요.
      질문하신 덕분에 가중치가 행렬임을 알게 됐어요. 각 함수의 입력과 출력 사이의 관계를 나타내는 가중치라고 설명이 되어 막연히 하나의 값을 더(곱)하는 줄 알았던 무지가 한거풀 벗겨졌어요.
      화면의 제목 다음 줄에
      State-Spave Model에서 근사하는 함수는 2개:
      1. x_(t) = f(x_(t-1), u_(t))
      2. y_(t) = h((x_(t))
      뉴럴 네트워크 셋팅으로 함수 근사:
      3. x_(t) = σ[시그마](W_(xx)x_(t-1) + W_(xu)u_(t) + b_(x))
      4. y_(t) = σ[시그마](W_(yt)x_(t) + b_(y))
      에서
      1.번 줄 함수 f에서 어떤 수식으로 x와 u가 계산될지 모르지만 서로 영향을 줄 정도로 되겠지요.
      제 추측에는 반복하는(시키는) 대상이 x이어서 우선권을 주어 W_(xu)로 계산하는 것으로 이해했어요.
      4.번 줄에서도 y를 찾는 것이니 우선권을 준다고 생각했어요.
      너무 비수학적 추측이어서 인공지능들에게 문의 했어요.
      코파일렅 가중치에 붙는 문자들이 W_(xx), W_(xu), W_(yx)처럼 괄호안의 순서가 가중하는데 영향을 미치나?
      네, 괄호 안의 순서는 가중치 매트릭스가 어떻게 적용되는지를 나타내므로 중요한 역할을 합니다. 이를 좀 더 자세히 설명하자면:
      W_(xx): 이 가중치는 이전 상태 𝑥𝑡−1이 현재 상태 𝑥𝑡에 미치는 영향을 나타냅니다. 여기서 앞의 'x'는 입력이 이전 상태임을, 뒤의 'x'는 출력이 현재 상태임을 나타냅니다.
      W_(xu): 이 가중치는 외부 입력 𝑢𝑡이 현재 상태 𝑥𝑡에 미치는 영향을 나타냅니다. 앞의 'x'는 출력이 현재 상태임을, 뒤의 'u'는 입력이 외부 신호임을 나타냅니다.
      W_(yt): 이 가중치는 현재 상태 𝑥𝑡이 출력 𝑦𝑡에 미치는 영향을 나타냅니다. 앞의 'y'는 출력이 현재 출력임을, 뒤의 't'는 입력이 현재 상태임을 나타냅니다.
      이처럼 괄호 안의 순서는 각 가중치 매트릭스가 어떤 입력과 출력을 다루는지를 명확하게 나타내며, 이를 통해 신경망의 각 층에서 데이터가 어떻게 변환되고 전달되는지 이해할 수 있습니다. 따라서 괄호 안의 순서는 매우 중요한 의미를 가지며, 이를 바꾸면 모델의 동작 방식이 달라질 수 있습니다.
      클로바 엨스 괄호안의 순서가 가중하는데 영향을 미치나?
      가중치에 붙는 문자들은 괄호 안의 순서가 가중치에 영향을 미칩니다.
      State-Space Model에서 근사하는 함수는 다음과 같습니다.
      x_(t) = f(x_(t-1), u_(t)): 상태 전이 함수 (State Transition Function)
      y_(t) = h(x_(t)): 관측 함수 (Observation Function)
      뉴럴 네트워크로 위 두 함수를 근사할 때, 각 함수의 입력과 출력 사이의 관계를 나타내는 가중치 행렬을 정의해야 합니다. 이때, 가중치 행렬의 이름은 해당 함수의 입력과 출력의 순서를 반영하여 정하게 됩니다.
      예를 들어, 상태 전이 함수에서는 이전 상태 x_(t-1)와 입력 u_(t)가 모두 현재 상태 x_(t)에 영향을 미치므로, 두 입력 간의 가중치를 분리하여 W_(xx)와 W_(xu)로 정의합니다. 마찬가지로, 관측 함수에서는 현재 상태 x_(t)만이 출력 y_(t)에 영향을 미치므로, W_(yx)로 정의합니다.
      따라서, 가중치에 붙는 문자들의 괄호 안의 순서는 해당 함수의 입력과 출력의 관계를 나타내는 중요한 요소이며, 이를 잘못 정의하면 뉴럴 네트워크의 학습이 제대로 이루어지지 않을 수 있습니다.
      2024년 11월 13일 수 09시 태평양 시간

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

      15:30 가중치 설정 방법 현상태 변수 먼저 입력 변수 나중
      추가로 다른 인공지능들에게도 가중치 문의했어요.
      뤼튼 괄호안의 순서가 가중하는데 영향을 미치나?
      답변
      네, 가중치에 붙는 문자들은 각 가중치가 어떤 입력에 적용되는지를 나타내며, 이 순서는 함수의 구조와 결과에 큰 영향을 미칩니다.
      예를 들어: 𝑊𝑥𝑥: 이 가중치는 이전 상태 𝑥𝑡−1xt−1 에 곱해지는 가중치입니다. 즉, 이전 상태의 영향을 받아 현재 상태를 결정하는 데 기여합니다.
      𝑊𝑥𝑢: 이 가중치는 현재 입력 𝑢𝑡ut 에 곱해지는 가중치로, 입력이 현재 상태에 미치는 영향을 나타냅니다.
      𝑊𝑦𝑡: 이 가중치는 현재 상태 𝑥𝑡xt 에 기반하여 출력 𝑦𝑡yt 를 생성하는 데 사용됩니다.
      따라서, 각 가중치의 이름에서 나타나는 변수의 순서는 어떤 입력이 어떤 방식으로 영향을 미치는지를 명확히 하며, 잘못된 순서로 가중치를 설정하면 모델이 잘못된 관계를 학습할 수 있습니다. 이런 이유로 가중치의 이름과 그 순서는 매우 중요합니다.
      클로드 괄호안의 순서가 가중하는데 영향을 미치나?
      네, 가중치에 붙는 문자들의 순서가 가중치 행렬의 크기와 계산에 직접적인 영향을 미칩니다.
      RNN (Recurrent Neural Network)의 수식에서:
      x_(t) = f(x_(t-1), u_(t))
      x_(t-1)과 u_(t)가 입력이 되어 현재 상태 x_(t)를 계산하는 함수
      y_(t) = h(x_(t))
      현재 상태 x_(t)를 입력으로 받아 출력 y_(t)를 계산하는 함수
      x_(t) = σ[시그마](W_(xx)x_(t-1) + W_(xu)u_(t) + b_(x))
      W_(xx)는 이전 상태 x_(t-1)에 곱해지는 가중치 행렬
      W_(xu)는 입력 u_(t)에 곱해지는 가중치 행렬
      b_(x)는 바이어스
      y_(t) = σ[시그마](W_(yx)x_(t) + b_(y))
      W_(yx)는 현재 상태 x_(t)에 곱해지는 가중치 행렬
      b_(y)는 바이어스
      이 때, 괄호안의 순서가 가중치 행렬의 크기를 결정합니다.
      예를 들어 W_(xx)는 (hidden_size, hidden_size) 크기의 행렬이 되고,
      W_(xu)는 (hidden_size, input_size) 크기의 행렬이 됩니다.
      이렇게 순서에 따라 가중치 행렬의 크기가 달라지므로, 계산 과정에도 영향을 미치게 됩니다.
      제미니
      RNN 식에서 가중치 괄호 순서의 의미
      결론부터 말씀드리면, RNN 식에서 가중치에 붙는 괄호 안의 문자 순서는 해당 가중치가 연결되는 변수의 종류와 순서를 나타내며, 이는 가중치 행렬의 크기와 계산에 직접적인 영향을 미칩니다.
      괄호 안 문자의 의미
      W_(xx): 이전 시점의 hidden state (x_(t-1))에서 현재 시점의 hidden state (x_(t))로 연결되는 가중치 행렬입니다. 즉, hidden state 자기 자신에게 영향을 주는 가중치입니다.
      W_(xu): 입력 (u_(t))에서 현재 시점의 hidden state (x_(t))로 연결되는 가중치 행렬입니다. 즉, 외부 입력이 hidden state에 미치는 영향을 나타냅니다.
      W_(yx): 현재 시점의 hidden state (x_(t))에서 출력 (y_(t))로 연결되는 가중치 행렬입니다. 즉, hidden state가 출력에 미치는 영향을 나타냅니다.
      괄호 순서가 미치는 영향
      행렬의 크기: 가중치 행렬의 크기는 연결되는 변수들의 차원에 따라 결정됩니다. 예를 들어, hidden state가 100차원이고 입력이 50차원이라면 W_(xu)는 100 x 50 크기의 행렬이 됩니다.
      계산 순서: 괄호 안의 문자 순서는 행렬 곱셈의 순서를 결정합니다. 즉, 어떤 변수와 먼저 곱해야 하는지를 나타냅니다.
      가중치의 의미: 괄호 순서는 가중치가 어떤 정보를 학습하는지에 대한 직관적인 이해를 돕습니다. 예를 들어, W_(xx)는 시퀀스 내의 장기 의존성을 학습하는 데 중요한 역할을 합니다.
      왜 괄호 순서가 중요한가?
      모델 구현: 괄호 순서를 정확하게 이해해야 코드로 구현할 때 오류 없이 모델을 구축할 수 있습니다.
      모델 해석: 괄호 순서를 분석하면 모델이 어떤 방식으로 데이터를 처리하는지 이해하는 데 도움이 됩니다.
      하이퍼파라미터 튜닝: 괄호 순서를 바꾸면 모델의 성능에 영향을 미칠 수 있으므로, 하이퍼파라미터 튜닝 시 고려해야 할 요소입니다.
      결론
      RNN 식에서 가중치 괄호 순서는 단순한 표기법이 아니라, 모델의 구조와 동작 방식을 이해하는 데 매우 중요한 요소입니다. 괄호 순서를 통해 가중치의 의미와 역할을 정확하게 파악하고, 모델을 효과적으로 설계하고 해석할 수 있습니다.
      궁금한 점이 있다면 언제든지 질문해주세요.
      더 깊이 들어가고 싶다면:
      Backpropagation Through Time (BPTT) 알고리즘을 통해 가중치가 어떻게 업데이트되는지 알아볼 수 있습니다.
      LSTM이나 GRU 같은 다른 RNN 변형 모델에서 가중치의 역할이 어떻게 달라지는지 비교해 볼 수 있습니다.
      실제 구현:
      TensorFlow, PyTorch 등 딥러닝 프레임워크를 이용하여 RNN 모델을 직접 구현해보면서 가중치의 역할을 체험해 볼 수 있습니다.
      핵심: RNN에서 가중치 괄호는 해당 가중치가 연결되는 변수의 종류와 순서를 명확하게 나타내며, 이는 모델의 구조와 동작 방식을 이해하는 데 필수적인 정보입니다.
      2024년 11월 13일 수 10시 태평양 시간

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

      6년전 영상에서도 질문하신 순서대로 가중치 행렬을 정한 것을 보니 설정 당시 순서는 원하는 대로 정하되 그 이후 가중치를 순서대로 유지해야 하는 것 같아요.
      cs231n.stanford.edu/slides/2016/winter1516_lecture10.pdf