묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결딥러닝 기반 이미지·객체 인식: CNN에서 YOLO·DETR까지
실습 강의 화질이 너무 안좋아요
5k모니터로 보고있는데 강의 화질이 별로라 화면상에 코드가 깨지는게 참다참다 더이상 못봐주겠네요.. 강의보다 눈 나빠질거같습니다2025년도 8월 5일에 촬영하셧는데대체 어떻게 녹화를하신건지..고화질로 녹화 하시고 인코딩하셔도 용량얼마 안될텐데.. 아쉽네요
-
해결됨머신러닝, 핵심만 빠르게!
section2는 언제 upload 하나요?
section2는 언제 upload 하나요?
-
해결됨딥러닝 기반 이미지·객체 인식: CNN에서 YOLO·DETR까지
객체 인식에 대한 질문이 있습니다.
안녕하십니까 선생님.강의를 열심히 듣고 있던 중, 문득 그런 궁금증이 생겼습니다.코스매틱 브랜드 중, 여성들의 '아이브로우' 같은 경우 어떻게 객체 인식을 해줄 수 있을까? 에 대한 의구심이 들었습니다.'흑갈색', '갈색' 이거를 사람 육안으로 파악해도 색상보다는 텍스트로 인식하는 것이 더 빠른데, 이런 것은 어떻게 객체 인식을 하면 되는건가요? 바코드, 텍스트 이런 것들이 주어져 있지 않고, 오로지 색상만으로 구분 할 수 있습니까? 이런 것들에 대한 인식의 정확도를 99% 까지 올릴 수 있는지 궁금합니다.빛의 반사, 포장지, 동그란 형태의 케이스에 대한 예외가 떠오릅니다.
-
미해결[AI 기초] AI Research Engineer를 위한 CNN 이해하기
feature map을 더하는 이유가 궁금합니다.
안녕하세요 강사님 무료로 강의를 해주신 덕분에 이해를 잘하면서 따라왔습니다 감사합니다. 다름이 아니라 해당 강의의 2:45에서 질문이 하나 있습니다. 단순한 것인데 궁금한 것이 각각의 RGB채널에 대해서 피처맵 F1r, F1g, F1b가 나오게 되는데 이 피처맵들을 다 더하는 이유가 무엇인가요? 단지 색을 표현하기 위해서는 RGB가 있어서 이 세 개의 조합으로 색을 표현하기 때문에 각각의 피처맵을 더해서 표현되어야한다는 관점인건가요?
-
미해결삼각형의 실전! OpenAI Triton 초급
autotune은 아직 안 올라온 건가요?
다른 강의에 올라온다고 되어있는데 vulcan 일 것 같지는 않고... 여기 아직 안 올라온 건가요?
-
미해결삼각형의 실전! OpenAI Triton 초급
강의만 봐서는 triton 커널이 pytorch에 비해 빨라 보이지 않네요..
어떤 상황에 쓰면 좋은지 궁금합니다.
-
해결됨삼각형의 실전! OpenAI Triton 초급
block ptr 질문
이제 정식 api로 공표되었나요? 정식 api인 것과 그렇지 않은 것의 차이는 무엇인가요?
-
해결됨파이썬을 활용한 머신러닝 딥러닝 입문
섹션 10 비지도 학습에 대하여
지도학습 문제를 비지도 학습으로 바꾸어서 해결할 수도 있나요?
-
미해결딥러닝 CNN 완벽 가이드 - TFKeras 버전
Loss와 매트릭 관계
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요, 교수님 우선 훌륭한 강의로 지식이 부족한 저에게 값을 매길 수 없는 정보를 제공해주셔서 감사의 말씀 먼저 드립니다.강의를 듣다 보니 질문이 생겼습니다. 강의 부제목 "손실(Loss)함수의 이해와 크로스 엔트로피(Cross Entropy) 상세 -02" 3분 30초 쯤에 "Loss가 좋아진다해서 반드시 매트릭이 좋아지지 않는다"라고 말씀하셨는데 이론적으론 Loss가 좋아지면 매트릭이 좋아져야한다 생각하는데 어떤 부분이 있는지 궁금해서 질문 남깁니다.다시 한 번 좋은 강의 제공해주셔서 감사합니다.
-
해결됨딥러닝 기반 이미지·객체 인식: CNN에서 YOLO·DETR까지
Fast R-CNN 강의 관련 질의사항입니다.
안녕하세요 강사님. Fast R-CNN 강의를 들으며 이해가 잘 되지 않는 부분이 있어 질문드립니다. 원본 이미지를 800×800으로 입력하고, (1) Selective Search로 생성한 region proposal과 (2) CNN을 통해 얻은 feature map을 합치는 과정을 저는 RoI Projection이라고 이해했습니다. Q1. 그런데 region proposal 결과가 왜 원본 이미지와 달리 500×700 크기로 나오는지 궁금합니다.Q2. 또한 feature map은 원본 이미지 전체(800×800)를 커버하는 반면, region proposal은 앞선 질문처럼 이미지 일부(500×700)만을 다룹니다. 그런데도 RoI Projection을 적용했을 때, region proposal이 feature map 전체에 반영된 것처럼 보이는 그림이 이해되지 않습니다. 강의 자료에는 5x7 혹시 이는 그림의 단순화/오류인지 궁금합니다. Q3. 추가적으로, Fast R-CNN과 Faster R-CNN은 네트워크 학습을 기반으로 하기 때문에 단순히 입력 이미지에 바운딩 박스를 그리는 것 외에도 라벨링 과정이 필요할 것 같습니다. 이러한 라벨들이 어떻게 생성되는지에 대한 추가 강의도 있으면 좋겠습니다. (예: Fast R-CNN은 최종 예측을 위한 라벨, Faster R-CNN은 RPN 단계와 최종 예측을 위한 라벨) 읽어주셔서 감사합니다.
-
미해결[Pytorch] 파이토치를 활용한 딥러닝 모델 구축
mini-batch gradient descent 시 backpropagation에 대하여
mini-batch gradient descent 시 batch size 단위로 평균값을 가지고 파라미터 업데이트 한다고 설명하신 거 같습니다. 그런데 강의하시는 코드에는 forward() 다음 연속해서 .backward()가 나오고 있어 마치 매번 업데이트를 하는 것처럼 해석되는데요. 제가 어떤 부분에 오해하고 있는 것인지? 문의드립니다.
-
미해결딥러닝 기반 이미지·객체 인식: CNN에서 YOLO·DETR까지
섹션2 코드 관련하여 질의드립니다.
안녕하세요 강사님 섹션 2의 CNN 실습(100_CIFAR10_CNN.ipynb) 관련하여 질문드립니다.아래 코드에서는 train_loss에 배치별 loss를 누적한 뒤, for문이 끝나면 train_loss /= len(train_data) 로 평균을 계산하고 있습니다.그런데 loss.item()은 이미 각 배치에서 평균이 적용된 스칼라 값입니다. 따라서 다시 전체 데이터 개수(len(train_data))로 나누면 이중으로 평균이 계산되는 것 같습니다. 그래서 저는 train_loss += loss.item() * x.size(0) 형태로 배치 손실의 합계를 누적한 뒤, 마지막에 전체 데이터 수로 나누는 방식이보다 정확하다고 생각하는데, 혹시 어떻게 생각하실까요? 좋은 강의 제공해주셔서 감사합니다. for x, y in train_loader: # 훈련 데이터셋을 배치 단위로 순회 x, y = x.to(device), y.to(device) # 배치 데이터를 현재 디바이스로 이동 optimizer.zero_grad() # 이전 그라디언트를 초기화 z = model(x) # 모델을 통해 예측값 계산 loss = criterion(z, y) # 예측값과 실제 레이블 간의 손실 계산 train_loss += loss.item() # 손실 누적 y_pred = z.argmax(1) # 가장 높은 예측값의 인덱스를 정답으로 선택 train_acc += (y_pred == y).sum().item() # 정확히 예측된 개수 누적 loss.backward() # 손실에 대한 그라디언트 계산 optimizer.step() # 모델의 가중치 업데이트 train_loss /= len(train_data) # 평균 훈련 손실 계산 train_acc /= len(train_data) # 평균 훈련 정확도 계산 LOSS.append(train_loss) ACC.append(train_acc)
-
미해결딥러닝 CNN 완벽 가이드 - Pytorch 버전
왜 train epoch에선 0.0 validate epoch에선 0?
안녕하세요강의를 듣다보니 train epoch의 metric은 초기에0.0으로 선언하고validate epoch의 metric은 0으로 선언하는 것을 볼 수 있었습니다.혹시 담겨진 어떤 의미가 있을까요?
-
미해결설계독학맛비'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 가 매우 큰값이 나왔는데 이게 맞는건가요? 강사님이 주신 코드를 그대로 실행해 봐도 매우 큰값이 나오던데 이렇게 큰값이 나와도 괜찮은건가요?