진짜 정말 감사합니다. 더 깊은 이해를 하는데 도움을 많이 주시고, 몇년 전부터 궁금한 이론이 있으면 나동빈님 영상 보면서 공부했습니다! 특히 딥러닝 코드 실습은 선물드리고싶을 정도로 감사하네요 ㅠㅠ 앞으로도 꾸준히 올려주세요!! 한국 코딩발전에 힘써주세요 :) 감사합니다 !!
좋은 정보 감사합니다! 덕분에 이해가 안되던 부분 엄청 이해가 잘됐습니다! 이해가 안가는 부분이 하나 있는데 질문좀 드릴게요. 디코더 부분에 mask self attention을 수행하는데 예측하려는 뒷부분의 참고하지 않고 출력하기 위함이라고 하셨네요. 근데 예측하려는 뒷부분은 예측이 안된, 측 아무것도 없는 상태인데 그것을 안보기 위해 mask를 한다 라는 것이 이해가 잘 안되네요.. 예를 들어 첫번째 디코더 인풋으로 sos토큰이 들어왔을때, 들어온 인풋이 sos토큰 하나밖에 없는데 가릴게 있나요?
13:35 이 부분에서 c_i가 좀 헷갈리네요 오른쪽 그림에서는 alpha_{t,1} 부터 시작해서 alpha_{t,T}로 끝나니까 c_i 에서 i는 t값이 되어야 하는것 같은데 그럼 총 t개 만큼의 c를 만들어서 s_{t-1}와 s_t를도출해 내는건지 ..? 그런데 t는 해당 timestep을 나타내는 것이지 vector의 사이즈를 나타내는 것은 아닌것 같고 ..
영상 너무 잘 보고 있습니다!! 해당 코드를 분석하던 중 궁금즘이 생겨 문의를 남깁니다. ic| query.shape: torch.Size([128, 26, 256]) ic| key.shape: torch.Size([128, 33, 256]) ic| value.shape: torch.Size([128, 33, 256]) multattention레이어에 들어가는 query, key,value 값들을 출력을 해 보았는데 다음과 같이 가운데의 lenth가 다른 경우가 확인이 되어 서로 다른 문장들이 베치에 포함되어 있는 것으로 생각이 되는데 제가 생각하는 것이 맞을까요
좋은 질문 감사합니다. ResNet 논문에서는 residual connection을 이용했을 때 초기 단계에 빠르게 converge 할 수 있기 때문에 최적화를 쉽게 할 수 있었다는 구문이 있어 영상에서 그렇게 말했습니다. 원본 문장: "ResNet eases the optimization by providing faster convergence at the early stage." 다만 이게 직접적으로 global optima를 잘 찾을 수 있다고 주장한 내용은 아니라서, 제 의역은 경우에 따라 틀린 것 같습니다. 영상 찍을 때는 크게 고민하지 않고 말했네요... residual connection으로 인해 gradient vanishing 문제가 완화되어 이로 인해 수렴도 빨라지고, global optima도 쉽게 찾을 수 있다고 보는 게 정확한 표현인 것 같습니다. (단순히 learning rate를 줄이는 방법 등으로 억지로 빠르게 수렴하도록 하면, 되려 global optima가 아닌 local optima를 찾게 될 가능성이 커지므로)