묻고 답해요
156만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[AI HW Lab2] CNN Verilog HDL Practice 1 (Simulation) - 문제설명편 ppt
안녕하세요 🙂[1. 질문 챕터] : 6:45[AI HW Lab2] CNN Verilog HDL Practice 1 (Simulation) - 문제설명편 ppt[2. 질문 내용] : AB_BW는 왜 23bit인가요? 20bit+log2(3*3)+8bit 이 되어야 하지 않나요?[3. 시도했던 내용, 그렇게 생각하는 이유] : 8bit - 255까지니까 1bit만 추가하면 255까지 범위를 포함 가능하므로 23bit가 된 거라고 생각했습니다.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
[AI HW Lab1] CNN Core C 코딩 (Golden Model 만들기)
안녕하세요 🙂[1. 질문 챕터] : [AI HW Lab1] CNN Core C 코딩 (Golden Model 만들기)[2. 질문 내용] : 다음 그림에서 input FM이 왜 KX*KY개 만큼 있는지 이해가 잘 되지 않아요. input FM은 input이니까 X*Y개만큼 있고, kernel이 KX*KY만큼 있는 것 아닌가요? 그리고 weight는 kernel을 말씀하시는 것 아닌가요? 밑의 두 그림을 연결지어 보니까 이해가 잘 안 됩니다.제가 이해해보기로는 아래 그림에서 빨간 영역에 해당하는 것 1번의 연산에 해당하는 부분이라고 이해하면 매칭이 되는 것 같은데 맞게 한 것인지 잘 모르겠어요.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
spartan7 fgga484보드
안녕하세요 🙂[1. 질문 챕터] : [AI HW lab3] CNN Verilog HDL Practice4 (FPGA)[2. 질문 내용] : 저는 zynq가 아니라 spartan7 fgga484 xc7s75를 쓰고 있는데, IP integrator를 사용할 때, zynq processing system 대신 어떤 걸 배치해서 해야하나요?[3. 시도했던 내용, 그렇게 생각하는 이유] :
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
Attribute Error(Frame Work 3번째 강의)
''' 질문 내용 강의 수강하며 따로 코드 수정없이 실행해보며 이해해보는 중입니다. 아래와 같은 에러가 나서 수정해보고자 하는데 에러 해결이 안되어서 여쭤봅니다. 상기의 ''' ######### 실행 코드 from torch.optim import Adam BATCH_SIZE = 32 INPUT_SIZE = 28 # train_loader = DataLoader(train_data, batch_size=BATCH_SIZE, shuffle=True, num_workers=4 ) # val_loader = DataLoader(val_data, batch_size=BATCH_SIZE, shuffle=False, num_workers=4) # model, device, optimizer, loss 함수 생성. model = create_simple_linear_model(input_size=INPUT_SIZE, num_classes=10) device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') optimizer = Adam(model.parameters(), lr=0.001) loss_fn = nn.CrossEntropyLoss() # Trainer 객체 생성. trainer = Trainer_01(model=model, loss_fn=loss_fn, optimizer=optimizer, train_loader=train_loader, val_loader=val_loader, device=device) #fit() 을 호출하여 학습과 검증을 epochs 수 만큼 반복 수행. trainer.fit(epochs=10) ########### 에러내용 --------------------------------------------------------------------------- AttributeError Traceback (most recent call last) /tmp/ipykernel_36/3815854863.py in <cell line: 0>() 8 model = create_simple_linear_model(input_size=INPUT_SIZE, num_classes=10) 9 device = torch.device('cuda' if torch.cuda.is_available() else 'cpu') ---> 10 optimizer = Adam(model.parameters(), lr=0.001) 11 loss_fn = nn.CrossEntropyLoss() 12 /usr/local/lib/python3.11/dist-packages/torch/optim/adam.py in init(self, params, lr, betas, eps, weight_decay, amsgrad, foreach, maximize, capturable, differentiable, fused) 97 fused=fused, 98 ) ---> 99 super().__init__(params, defaults) 100 101 if fused: /usr/local/lib/python3.11/dist-packages/torch/optim/optimizer.py in init(self, params, defaults) 375 376 for param_group in param_groups: --> 377 self.add_param_group(cast(dict, param_group)) 378 379 # Allows cudagraph_capture_health_check to rig a poor man's TORCH_WARN_ONCE in python, /usr/local/lib/python3.11/dist-packages/torch/_compile.py in inner(*args, **kwargs) 25 disable_fn = getattr(fn, "__dynamo_disable", None) 26 if disable_fn is None: ---> 27 import torch._dynamo 28 29 disable_fn = torch._dynamo.disable(fn, recursive) /usr/local/lib/python3.11/dist-packages/torch/_dynamo/__init__.py in <module> 1 import torch 2 ----> 3 from . import convert_frame, eval_frame, resume_execution 4 from .backends.registry import list_backends, lookup_backend, register_backend 5 from .callback import callback_handler, on_compile_end, on_compile_start /usr/local/lib/python3.11/dist-packages/torch/_dynamo/convert_frame.py in <module> 31 from torch._C._dynamo.guards import GlobalStateGuard 32 from torch._dynamo.distributed import get_compile_pg ---> 33 from torch._dynamo.symbolic_convert import TensorifyState 34 from torch._guards import compile_context, CompileContext, CompileId, tracing 35 from torch._logging import structured /usr/local/lib/python3.11/dist-packages/torch/_dynamo/symbolic_convert.py in <module> 28 from torch._guards import tracing, TracingContext 29 ---> 30 from . import config, exc, logging as torchdynamo_logging, trace_rules, variables 31 from .bytecode_analysis import ( 32 get_indexof, /usr/local/lib/python3.11/dist-packages/torch/_dynamo/trace_rules.py in <module> 3264 "torch.distributed._composable.replicate", 3265 } -> 3266 if not torch._dynamo.config.skip_fsdp_hooks: 3267 LEGACY_MOD_INLINELIST.add("torch.distributed.fsdp._fully_shard") 3268 AttributeError: partially initialized module 'torch._dynamo' has no attribute 'config' (most likely due to a circular import)
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
이 다음강의
안녕하세요파이토치 강의 잘 듣고 있습니다.이전 글을 봤을 때,객체 탐지 구현하는거 계획중이라고 들었는데,혹시 진행되고 있는지, 한다면 언제쯤 강의 오픈하는지 여쭙고자 합니다 !
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
Frame Work의 근본에 대한 이해
안녕하세요! 강의 너무 잘 듣고 있습니다. 파이썬 언어 정도만 이해한 상태에서 해당 강의를 수강하고 있습니다.딥러닝에서 퍼셉트론이 가지고 있는 정의와 은닉층을 통과하면서 '무언가'를 학습하고 output으로 결과를 도출해낸다.이런 학습 과정을 도와주는 여러 모듈들이 있으며 이는 nn.module이 있다. 정도로 이해 후 현재 Framework2 를 수강중에 있습니다.여기서 이해가 어려운 부분들이 있습니다.이미지 시각화 부분train_data에서[0][0]과 [0][1]은 이미지와 labes로 이미 페어가 된 자료라고 인지하면 될까요? show_images함수에서 class_names도 원래 약속되어있던 이름을 사람이 인지하기 좋게 이름만 매칭시켜준 것일까요?Linear 모델 생성 부분SimpleLinearModel_01 클래스가 초기화를 통해서 linear_01 -> 활성화 함수 -> linear_02 ->활성화 함수 -> linear_03 = output 으로 각 레이어를 지나가는 단계임은 인지가 되나, 왜 점차 features가 줄어드는가? 와 무엇을 학습하면서 layer를 지나가는가? 가 이해가 안됩니다. 결국 10개의 feature로 줄인다는것이 최초에는 28*28롤 784로 한 이미지의 pixel 갯수로 infeture로 받았으니 마지막에는 10개의 픽셀이 남는다는 것으로 이해되는데, 어떤 핵심(?) 또는 학습한 픽셀을 남기게 되는것인가? 가 궁금합니다.처음으로 학습하여 '무엇을 모르는가?' 에 대한 확신이 없어 질문이 조금 난잡하나, 꼭 이해하고 싶어 질문드립니다.추가로 제가 이해가 부족하다고 판단되는 부분이나 추가학습 부분 추천해주시면 감사하겠습니다.감사합니다!
-
미해결6일 만에 배우는 파이토치 딥러닝 기초
2일차 2-2 실습_회귀_모델링 문의
안녕하세요?2일차 2-2 실습_회귀_모델링에서 마지막 평가부분에서 결과가 아래처럼 나오는데요MSE : 31.6591796875MAE : 4.914498329162598MAPE : 127302268616704.0 MAPE 가 매우 큰값이 나왔는데 이게 맞는건가요? 강사님이 주신 코드를 그대로 실행해 봐도 매우 큰값이 나오던데 이렇게 큰값이 나와도 괜찮은건가요?
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
soft reset관련 질문드립니다!!
안녕하세요 맛비님. 항상 질 좋은 강의 감사드립니다!!!<궁금한 부분>[AI HW Lab2] - 설계환경리뷰편의 7:40~ 쯤부분에 cnn_kernel.v파일의 i_soft_reset에 대해 맛비님께서 "register에 1이 저장이 되어 있을 때, 그걸 이용해서 reset을 걸 수 있다~~"이렇게 설명하셨는데요이거에 대해서 3가지 질문을 드리고 싶습니다.<질문내용>1 (제가 이해한 내용이 맞는지)2 (soft_reset을 쓰는 것의 장점)2-1 (2에서 파생된 궁금증) 원래 reset은 사람이 물리적으로 reset을 걸었다. 하지만, soft_reset은 SW가 register(1이 저장되어 있음)를 이용해서 내부에서 reset을 건다. 즉, 사람이 외부에서 reset을 걸지 않아도 내부적으로 reset이 가능하다 맞을까요?그리고 soft_reset의 장점이 궁금해서 gpt한테 물어보고 제가 정리한 장점은 다음과 같은데하나의 프로그램안에 여러개의 모듈이 있을 수 있다.만약, 어떤 모듈은 reset하고 싶고, 어떤 모듈은 reset하기 싫어이때, 구별해서 reset해주기 위해서 soft_reset을 쓴다.(기존의 reset은 모든 모듈을 한번에 reset하기 위한 것으로 남겨둔다)맞을까요?만약에 2가 맞다면 2-1. 각각의 모듈을 개별적으로 soft_reset 해주기 위해서는 거기에 할당되는 register가 또 개별적으로 사용 될 거라고 생각하는데 이러면 'HW자원을 많이 잡아먹는다'는 단점이 생긴다. 맞을까요?감사합니다!!
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
예제 코드 환경설정
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================예제코드 환경설정에 대한 부분을 따로 공개해둔 영상이 있다고 하셨는데, 그 영상이 어디있는 건지 못찾겠습니다..ㅠㅠ
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
안녕하세요! Kaggle import부분 질문이 있습니다.
혹시 원래 import시 대량의 시간이걸리는 것 일까요?import 후 전체적으로 따라가려했으나, 진행이 더뎌져서 학습이 더뎌지는 중이여서 문의드립니다.특정 세팅이 잘못되어있는 것인지... 궁금합니다! 감사합니다.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
HW 언어 for loop 해석
안녕하세요 맛비님 베릴로그 코딩을 하면서 항상 궁금했던 것이 있어 질문드립니다. 제가 HW 언어를 공부하면서 느낀 점은흔히 코딩을 처음 접하는 SW의 C언어와 같이 구현을 하면 안된다는 것입니다. 이렇게 생각한 이유는 HW는 병렬 처리가 가능하기 때문인데요!이렇다보니 SW언어에서의 for 구문과 HW의 for 구문이 어떻게 다르게 동작하는지 궁금했습니다.HW 언어의 for문은 시뮬레이션 환경에서 유효한 것인지? 합성이 될수도 안될수도 있다고 하여 질문드립니다. HW 언어에서 for 문이 합성이 된다면for loop에서의 동작은 병렬로 동시에 처리되는지 아니면 시뮬레이션 처럼 clk에 동기화 시킨다면 실제로 동기화되어 동작하는지 궁금합니다.또한 HW 언어에서의 for문을 어떤식으로 접근하면 설계하는데 도움이 될지 궁금합니다.감사합니다.
-
해결됨설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
수업자료 관련 질문드립니다.
안녕하세요 맛비님! 항상 좋은 강의 감사합니다.다름이 아니라 맛비님이 강의하시고 있는 ppt파일 혹은 pdf파일을 통해 강의를 들으면서 필기를 하고 싶은데 혹시 수강생들이 다운 받을수 있을까요?
-
해결됨설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
FPGA 기반 ASIC 설계 검증 시 다차원 배열 처리 방식 및 강의 수강 순서 고민
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================안녕하세요 디지탈 회로설계 관심많은 학부생인데 우연히 강의를 접하게 되어 정말 많은 도움 받고 있습니다.현재 해당 강의는 실습까지 완료하였는데 실습 중 궁금한 점이 몇가지 생겨 문의드립니다.ASIC 설계를 진행할 때, RTL 시뮬레이션은 주로 Cadence사의 Xcelium 시뮬레이터를 사용하고 있으며, 이 툴은 SystemVerilog의 다차원 배열을 지원하는 것으로 알고 있습니다. 실제로 저도 CNN core를 구현하면서 Xcelium을 통해 다차원 배열을 사용하여 RTL 시뮬레이션까지는 성공적으로 수행했습니다.하지만 FPGA 타겟 합성을 위해 Vivado를 사용하려 하니, Vivado는 SystemVerilog의 다차원 배열을 지원하지 않아 합성이 불가능하다는 점에 부딪혔습니다.궁금한 점은 다음과 같습니다:ASIC을 타겟으로 하는 칩 개발에서도 FPGA 기반의 프로토타이핑이나 검증 단계를 거치는 것으로 알고 있습니다. 그런데 이 경우, 다차원 배열을 사용한 RTL 코드를 Vivado에서 합성하려면 어떻게 처리하나요?xcelium을 사용하더라도 다차원 배열은 모두 일차원 벡터로 평탄화(flatten)해서 작성해야 하는 건가요?혹은 FPGA용 합성을 위해 별도로 변환된 RTL을 따로 관리하는지, 일반적인 업계의 방법이 궁금합니다. 2.현재 시즌 2부터 수강할지, 시즌 1부터 수강할지 고민하고 있습니다.저는 학부 수업에서 vivado 및 Verilog를 사용하여 16bit 기반의 non-pipelined CPU를 직접 설계하고, RTL 시뮬레이션까지 수행한 경험이 있습니다. 카운터, FSM 등 기본적인 디지털 회로 모듈을 RTL로 구현할 수 있는 수준의 기본 지식도 있습니다.다만 FPGA 실습에 필요한 배경 지식(BRAM, Vivado를 이용한 시뮬레이션 이후 합성 및 구현 흐름 등)은 거의 없는 상태입니다.관련해서는 alinx 사의 fpga인 ax7035b 모델에 카운터 정도 구현해서 올려봤습니다.이런 경우, 시즌 1부터 수강하는 것이 좋을까요?아니면 어느정도 RTL 설계 경험이 있으니 시즌 2부터 들어도 괜찮을까요?
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
혹시 강의내용과는 관계없지만
CNN위주의 강의인데 RNN과는 아에 다른 영역인가요?
-
해결됨설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
Fpga에 ai 가속기를 사용하는 이유
안녕하세요 🙂[1. 질문 챕터] : eg) 몇 장, 몇 분 몇 초 쯤. or 수강생 분들이 봤을 때 어디구나?! 할 수 있게 표기 부탁 드려요.[2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂[3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) 초반까지 듣다가 질문 남겨요!결국엔 fpga기반 ai 가속기를 쓰는 이유는 학습+추론을 하는데에 많은 연산과 리소스가 드니그 연산을 가속화하는 가속기를 만들어 hw상에서 계산을 처리하게 만드는것인가요?아니면 단순 추론만을 위한 것인가요?
-
미해결삼각형의 실전! OpenAI Triton 초급
디스코드 커뮤
운영하시는 triton 관련 디스코드 커뮤 주소 알 수 있을까요?
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
feature map 크기 질문
안녕하세요 (퀴즈 - 출력 Feature Map으로 적용된 Conv 찾기 강의)밑의 그림의 27*27*256 feature map이 잘 이해가 가지 않습니다. 5*5 커널을 적용했다면 사이즈가 12*12*256이 되어야 하지 않나 생각이 들어서요~!
-
미해결딥러닝 이론 + PyTorch 실무 완전 정복
섹션12 실습코드 의 initialization 각각 적용 코드 문의
실습코드에서 초기화 각각 적용 부분 self._init_weights(self.fc_layers[0], mode='kaiming') self._init_weights(self.fc_layers[1], mode='kaiming') self._init_weights(self.fc_layers[2], mode='xavier') 모델을 읽어보면 NeuralNetwork( (fc_layers): Sequential( (0): Linear(in_features=784, out_features=196, bias=True) (1): ReLU() (2): Linear(in_features=196, out_features=49, bias=True) (3): ReLU() (4): Linear(in_features=49, out_features=10, bias=True) (5): Sigmoid() ) ) 0, 2,4 번에 초기화를 적용해야 실제 작동을 할 것 같습니다.
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
훈련과 Predict를 분리할수 없나요?
AI강의중 Best였던것 같습니다. 강의 다 듣고 나서 한가지 궁금한게 생기는데강의 코딩에는 모두 한 소스코드에서훈련(fit)하고 바로 predict하는 pattern으로 소스가 제공되었습니다. 혹시 훈련(fit)해서 어딘가에 저장해 두었다가 해당 저장내용을 기반으로 특정 필요한 시점에 predict 해서 결과를 사용하고 싶은데 이런 방법이 있을까요? 이 방법이 설명이 간단하지 안다면 책이나 인터넷 사이트라도 추천해 주시면 감사하겠습니다.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
AI HW 11장 관련 질문드립니다.
안녕하세요 실전 AI HW 강의 11 장 보고 있는데 해당 장 강의에서 의문이 드는 점이 있어 질문드립니다. 6분 25초쯤에 Depthwise Separable Convolution은 Feature Map의 크기와는 상관없다. 그래서 Input과 Output Feature Map Size는 적지 않았다고 말씀하셨습니다. Input과 Ouput Feature Map의 크기는 동일하다는 '가정'이기 때문에 이와 같은 말씀을 하신건가요? 만약 동일하다면 Depthwise Convolution에 의해 Output Feature Map은 감소해야할 것 같은데 왜 동일해야하는지 의문이 들어 질문드립니다.감사합니다.