작성
·
195
2
안녕하세요 강의 잘보고 있습니다
강의 내용 중 IF bottleneck관련 설명에서 1번의 계산에서는 SW가 HW보다 빠른데, input node는 그대로 있고 weight를 계속 업데이트해서 반복을 여러번 하면 HW가 SW보다 빠르다고 설명해주셨는데요
HW가속기는 이미 학습된 모델(weight)를 활용해서 새로운 입력 데이터(input node)에 대해 inference를 빠르게 하는게 목적이라고 알고있어서 weight는 그대로 있고 input node를 계속 업데이트해서 반복을 여러번 해야할걸로 생각했는데, 강의 내용은 그 반대여서 질문드립니다.
=================
현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)
강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)
이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)
개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..
글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)
서로 예의를 지키며 존중하는 문화를 만들어가요.
질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )
먼저 유사한 질문이 있었는지 검색해보세요.
잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
==================
답변 2
0
안녕하세요 🙂
말씀해주신 이야기 상황도 맞습니다. "weight는 그대로 있고 input node를 계속 업데이트"
반대로 "input node는 그대로 있고 weight를 계속 업데이트" 상황도 존재해요.
다음과 같은 상황을 가정해보면,
input node : 10 개
output node : 100 개
weight : 10x100 = 1000 개
HW 엔진은 매 cycle 당 input node 10 개를 받아드려서 1 개의 output 을 만들어내는 엔진
위와 같은 가속기를 설계하면, 총 100 cycle 동안 "input node는 그대로 있고 weight를 계속 업데이트" 상황이 재현됩니다.
결국 Architecture 를 어떻게 잡을 것인가에 따라 여러 상황이 만들어 진다고 생각해요.
즐공하세요 🙂
0
안녕하세요, 인프런 AI 인턴입니다.
kimrlatkdgus님 질문에 답변 드리겠습니다.
해당 강의의 내용과 관련하여 IF bottleneck에 대한 부분에서 혼선이 생긴 것 같습니다. HW 가속기는 일반적으로 학습된 모델의 가중치(weight)를 사용하여 새로운 입력 데이터(input node)에 대해 추론(inference)을 빠르게 처리하는 것이 목표입니다. 따라서 input node가 바뀌는 상황에서의 성능을 중점으로 두어야 할 것입니다.
강의 내용에서 언급된 ‘입력 노드는 그대로 있고 가중치를 계속 업데이트해서 반복을 여러 번 한다면 HW가 SW보다 빠르다’는 부분은, 특정 상황에서의 예시를 들어서 설명하신 것으로 생각됩니다. 이는 SW의 경우 매번 새로운 가중치에 대해 계산 과정을 거쳐야 하지만, HW에서는 이러한 계산을 특화된 회로를 통해 보다 효율적으로 수행할 수 있기 때문에 여러 번의 반복 계산이 필요할 때 보다 빨라질 수 있다는 점을 설명하고자 한 것일 수 있습니다.
그러나 구체적인 상황에 따라 HW와 SW의 성능 비교는 달라질 수 있으며, 추론 과정에서 가중치가 고정된 상태에서 입력 노드가 계속 업데이트되는 경우가 일반적인 HW 가속의 사용 사례입니다. 여기서도 HW 가속기의 성능이 더 뛰어날 가능성이 큽니다.
만약 강의 내용이 kimrlatkdgus님의 이해와 다르거나 혼란을 준 부분이 있다면, 해당 부분의 강의를 다시 한 번 확인하시고, 더 자세한 설명이 필요하시다면 강의 페이지의 [수강 전 문의 게시판]을 이용하여 지식공유자님께 직접 문의하시는 것도 좋은 방법입니다.
감사합니다.
감사합니다