묻고 답해요
140만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
Custom Dataset 실전 프로젝트 실습 1 - CenterNet을 이용한 License Plate Detection 모델(Custom Dataset) 학습 실습 Solution
- CenterNet을 이용한 License Plate Detection 모델(Custom Dataset) 학습 실습 Solution 실습해보는데 계속 버젼이 달라서 그런지 실행이 안되네요
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section 3 [실습] PyTorch로 구현해보는 Loss Function의 Cross Entropy 구현 관련하여 질문이 있습니다.
안녕하세요 선생님,batch_size = 16 n_class = 10 def generate_classification(batch_size=16, n_class=10): pred = torch.nn.Softmax()(torch.rand(batch_size, n_class)) ground_truth = torch.argmax(torch.rand(batch_size, n_class), dim=1) return pred, ground_truth def CE_loss(pred, label): loss = 0. exp_pred = torch.exp(pred) # 이 부분 관련 질문이 있습니다. for batch_i in range(len(pred)): for j in range(len(pred[0])): if j == label[batch_i]: print(pred[0], j) loss = loss + torch.log(exp_pred[batch_i][j] / torch.sum(exp_pred, axis=1)[batch_i]) return -loss / len(pred)CE loss를 구현하는 과정에서 exp_pred = torch.exp(pred) 행이 왜 필요한 것인지 궁금합니다!exp를 취해주는 이유는 모델의 출력값 logits에 exp를 적용해 각 클래스에 대한 예측값을 양수로 변환한다고 알고 있는데generate_classification위에서 이미 softmax를 취해서 확률분포로 변환해주기 때문에 음수 값은 나오지 않는데 왜 exp를 적용해주어야 하는지 모르겠어서 여쭤봅니다!
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section 3의 [이론] Regression task의 Loss: L1, L2, Huber, Log Cosh Loss "미분가능"관련 에서 질문이 있습니다.
안녕하세요 선생님!Section 3의 [이론] Regression task의 Loss: L1, L2, Huber, Log Cosh Loss 에서 질문이 있습니다."미분 가능"에 대해서 궁금한 점이 있는데,MAE loss처럼 0에서 미분이 불가능 한 경우에는 gradient를 계산할 수 없는데 어떻게 해당 loss를 사용할 수 있는 것인가요?또 Huber loss는 한 번만 전 구간 한번만 미분가능하고,Log Cosh loss는 전 구간 2번 이상 미분가능하다고 말씀해주셨는데한 번만 미분 가능한 것보다 2번 이상 미분가능한 것의 장점이 무엇인가요?확인해주셔서 감사합니다!
-
미해결C# OpenCV 컴퓨터비전 입문 강좌
20강 threshold 질문이요.
안녕하세요 대희님. 대희님 강의 들으며 컴퓨터비전 맛보고 있는 학생입니다.20강 수강하면서 질문이 생겼습니다. 7분 정도(강의 지점)에서 FindContour 메소드에서 bin 필드 정의할 때bin = this.Binary(src, 150); 이라고 Binary 메소드에 threshold를 150으로 주셨는데150 말고 다른 숫자 이것저것 넣어봤더니 88 미만의 숫자를 입력하면 polygon.png 이미지의 외부에 빨간선이 그려지고, 88 이상의 숫자를 입력하면 polygon.png 이미지의 2열 4행 사각형의 내부에 빨간선이 그려지더라구요.혹시 threshold를 150으로 준 이유가 있으실까요?
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section 15 실습 중, lstm 클래스의 forward 함수 질문
안녕하세요, 먼저 좋은 강의 제공해 주셔서 감사하게 잘 듣고 있다는 감사 말씀 드리고 싶습니다.질문 사항은,수업 중 정의하신 lstm 클래스의 forward 함수를 아래와 같이 정의 하셨는데요,class LSTM(torch.nn.Module): def __init__(self, vocab_size, embedding_dim, hidden_dim, num_layers, n_classes) -> None: super(LSTM, self).__init__() self.vocab_size = vocab_size self.embedding_dim = embedding_dim self.embedding = torch.nn.Embedding(vocab_size, embedding_dim) self.lstm = torch.nn.LSTM(input_size=embedding_dim, hidden_size=hidden_dim, num_layers=num_layers, batch_first=True, dropout=0.2) self.fc = torch.nn.Linear(in_features=hidden_dim, out_features=num_classes) self.sigmoid = torch.nn.Sigmoid() def forward(self, x): x = self.embedding(x) x, (h_n, c_n) = self.lstm(x) x = torch.sum(h_n, dim=0) x = self.fc(x) return xforward 함수의 마지막 부분에서 fc를 통과한 x를 self.sigmod 함수에 통과 시키지 않고 return 하여도 되는건지 궁금합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
Feature 표현에 대한 질문입니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.안녕하세요 교수님. 강의 잘 듣고있습니다.SPPNet의 이해 02 2:30 경에서 SPM으로 균일한 크기의 vector를 표현한다고 했는데 여기서 feature 표현이 3개가 있을 경우 ... 하는게 어떤 말인지 이해가 안 갑니다.예를들어 Max Pooling을 진행한다고 하면 사분면이 나뉘어지지 않았을 때는 1개를 뽑고 4개로 나누어지면 4개, 16개면 16개를 뽑을텐데 여기서 3을 곱하는게 어떨때 곱하는지 이해가 잘 안갑니다. 감사합니다.
-
해결됨최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지
안녕하세요, vit에 관심이 많은 사람입니다.
vit.ipynb 파일에서, 코드 !python vit.py --pretrained 1 --drop_rate 0.1 --weight_decay 2e-4 , 이것을 실행하였더니,Traceback (most recent call last): File "/content/gdrive/MyDrive/인프런/VisionTransformer/VisionTransformer/VisionTransformer/vit.py", line 38, in <module> image_patches, _ = iter(trainloader).next() AttributeError: '_SingleProcessDataLoaderIter' object has no attribute 'next' , 이런 에러가 발생하였는데, 어떻게 해결할 수 있을까요?
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section 16 [이론] Transformer의 Encoder 질문
안녕하세요, 강의 감사드립니다.multi-head attention에서 Q,K,V 차원에 대해 질문드립니다.1. 여기서 H는 multi-head 시킨 후 (concatnation 후)의 최종 feature 차원을 의미하는지 궁금합니다. (단일 self-attention에서도 Q,K,V에서 H와 다른거 같은데 확인부탁드립니다)2. 만약, 1이 맞다면 Q,K,V의 차원은 N x H/M 이 되어야 하는건 아닌가 싶습니다. (m은 M을 표현하기 위한 index로 보이기 때문입니다)혹시 제가 잘못 이해하고 있는 부분이 있다면, 정정해주시면 감사드리겠습니다!
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
mm_faster_rcnn_train_coco_bccd 학습시 수행이 안됩니다
--------------------------------------------------------------------------- AttributeError Traceback (most recent call last) Cell In[20], line 4 2 mmcv.mkdir_or_exist(osp.abspath(cfg.work_dir)) 3 # epochs는 config의 runner 파라미터로 지정됨. 기본 12회 ----> 4 train_detector(model, datasets, cfg, distributed=False, validate=True) File /opt/conda/lib/python3.10/site-packages/mmdet-2.28.2-py3.10.egg/mmdet/apis/train.py:163, in train_detector(model, dataset, cfg, distributed, validate, timestamp, meta) 156 model = build_ddp( 157 model, 158 cfg.device, 159 device_ids=[int(os.environ['LOCAL_RANK'])], 160 broadcast_buffers=False, 161 find_unused_parameters=find_unused_parameters) 162 else: --> 163 model = build_dp(model, cfg.device, device_ids=cfg.gpu_ids) 165 # build optimizer 166 auto_scale_lr(cfg, distributed, logger) File /opt/conda/lib/python3.10/site-packages/mmcv/utils/config.py:524, in Config.__getattr__(self, name) 523 def __getattr__(self, name): --> 524 return getattr(self._cfg_dict, name) File /opt/conda/lib/python3.10/site-packages/mmcv/utils/config.py:52, in ConfigDict.__getattr__(self, name) 50 else: 51 return value ---> 52 raise ex AttributeError: 'ConfigDict' object has no attribute 'device'^캐글--------------------------------------------------------------------------- AttributeError Traceback (most recent call last) <ipython-input-25-adb1a52111f0> in <cell line: 4>() 2 mmcv.mkdir_or_exist(osp.abspath(cfg.work_dir)) 3 # epochs는 config의 runner 파라미터로 지정됨. 기본 12회 ----> 4 train_detector(model, datasets, cfg, distributed=False, validate=True) 2 frames /usr/local/lib/python3.10/dist-packages/mmcv/utils/config.py in __getattr__(self, name) 50 else: 51 return value ---> 52 raise ex 53 54 AttributeError: 'ConfigDict' object has no attribute 'device'^코랩 안녕하세요 좋은 강의 감사드립니다. import os.path as ospmmcv.mkdir_or_exist(osp.abspath(cfg.work_dir))# epochs는 config의 runner 파라미터로 지정됨. 기본 12회train_detector(model, datasets, cfg, distributed=False, validate=True) 이 셀이 실행시 이러한 오류가 뜨는데 이유를 모르겠습니다
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
안녕하세요 라벨 관련 질문드려요
안녕하세요,제가 직접 가지고 있는 jpg 사진으로 labelme 5.21 버전으로 label하여 json 문서로 출력하려 fast-rcnn이나 mask-rcnn,yolo 으로 segmentation하려고 합니다. 혹시 수업 강의 자료로 할수있는지 궁금해서 질문올립니다~
-
미해결따라하면서 배우는 골프 자세 검출, Human Pose를 이용한 Event Detection
Poseformerv2는 카메라로 실시간 동작도 가능한가요?
논문을 보면 3.6M 데이터셋에서 미래 프레임도 이용하는 것으로 보이는데, 실제에서는 어떻게 동작하는 건지 궁금합니다
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
ROI Pooling 질문 드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.R-CNN에서는 기존의 이미지를 CNN모델에 넣기 위해서 변형을 하다보니깐(warp), 원본의 정보가 훼손될 수 있다고도 하셨는데,Fast R-CNN에서 Feature Map에서 SS를 매칭시킨 결과를 ROI Pooling에 넣기 위해서 변형하는 것은 F.M의 정보를 훼손 시키지 않는 건가요?아니면, 훼손되더라도 그 결과가 좋기 때문에 그냥 그렇게 ROI Pooling 사이즈에 일괄적으로 맞추는건가요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
선생님 강의 너무 잘 듣고 있습니다. 질문이 있습니다.
SPP를 통해서 padding 된 이미지를 가지고 Annotation 파일의 정보와 비교해서 유사도를 측정할텐데 Annotation안에 있는 모든 구역의 정보와 비교하는 것인가요? 예) TV, 사람, 의자 사이즈가 홀수인 경우에는 다른 질문에 응답처럼 padding 한다고 되어있는데 다른 모든 경우에도 정보가 부족하다면 해당 공간을 0으로 채우는 건가요?
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Auto Differentiation에서 computational Graph 질문있습니다
안녕하세요, 좋은 강의 준비해주셔서 감사드립니다.딥러닝에 대한 흥미가 점점 더 깊어지는 중입니다!한가지 간략히 질문드리고 싶습니다.노드의 정의 문제와 관련된거 같은데요.. computation graph에서의 노드는 x, w, h, y, L 전부를 의미하는 반면, Neural network에서의 노드는 x, h, y, L이라고 이해하면 될까요?미리 감사드립니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
mmsegmentation 응용
안녕하세요.mmdetection 뿐만 아니라 , mmsegmentation 에서도 적용을 해보고자 합니다. 이때 mmdetection에서 사용하는from mmdet.datasets import build_dataset의 경우mmsegmentation에서는 어떻게 import하는지 궁금합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
선생님 질문입니다!
SS proposal 영역과 GT가 많이 겹칠 수록 그 이미지가 잘 탐지되었다는 것은 알겠습니다. 다만 하나의 예시로 SS proposal은 'TV'를 예측하고 GT의 경우에는 '사람'을 예측했다면 그것은 잘못된거라 생각하는데 GT에는 label 명이 명시가 되어있지만 SS proposal의 경우에는 그런 부분이 어떻게 설정되는가요? - 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
해결됨차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
커스텀데이터셋을 만들고 싶습니다
labelme를 이용해서 CRAFT 학습용 커스텀데이터셋을 만드려고 하는데선생님이 제공해주신 CRAFT 디텍션 커스텀데이터셋 처럼935 362 1034 362 1034 411 935 411 "YG9X2G"좌표 "정답" txt 파일로 안나오고json 파일로 저장이 되는데어떻게 해야되나요?
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
yolov5(yolov8) val.py 결과 저장 질문
안녕하세요. 강사님. yolov5(yolov8) val.py 결과 저장 질문드립니다.아래와 같이 val.py 를 수행한 결과를 엑셀에 저장하려면 어떻게 해야 하나요? results = model.val()로 val을 수행하고, print(results.class_result(class_index))로 클래스의 precision, recall, map50, map50-95값을 확인할 수 있었습니다.하지만 Images, Instances 값은 어디서 가져와야 하는지를 모르겠습니다...그리고, conf_matrix = results.confusion_matrix.matrix로 cm을 가져왔는데, yolo val 에서 제공하는 box precision, box recall 값과cm 을 통해 계산한 precision, recall 값에 차이가 있는데, 왜 그런지 모르겠습니다.yolo 문서 상으로는 box precision, recall은 IoU 만 중요시하고, class의 정답 유무는 중요시하지 않다고 하는데,보고서나 발표자료에는 yolo의 box precision, reall을 평가지표로 삼아야 하는지, 계산한 precision recall 값을 지표로 삼아야하는지 모르겠습니다.답변 부탁드립니다. 감사합니다.
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section 3 이론 classification Loss function 질문
안녕하세요.Section 3 이론 classification Loss function 질문있습니다.ground truth는 각 class별 실제 확률값이라고 하셨는데, 실제 데이터에서 우리가 주어진 정보는 해당 observation이 어떤 클라스를 가지는지 label정보만 주어집니다. (확률이 아님)각 loss function별 비교를 위해 설명해주신부분은 이해가 되었으나, 실제로 모델이 학습할때 class별 ground truth 확률값을 모르는 상황에서 어떻게 학습이 되는지 궁금합니다.혹시라도 강의 후반에 관련 내용이 나온다면 미리 죄송하다는 말씀 드립니다.감사합니다.
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
section4의 entropy 시그마 식 전개에 대한 질문입니다.
안녕하세요, 좋은 강의 잘 듣고 있습니다. 다름이 아니라 entropy를 안내해주실때 entropy의 식이-Σp_i*log(p_i)위 식이고, p와 1-p에 대한 의미도 잘 이해했습니다. 그런데 대입하는 과정에서 갑자기-plogp-(1-p)log(1-p)가 된 것이 이해가 안되네요... 그래프로 그려주시면서 설명해주신 것도 잘 이해가 되는데, 어떤 과정으로 위 식이 나왔는지 이해가 안되서 질문드려요.제가 단순 시그마 푸는 법을 잊어서 생긴 것이라면 다시 찾아보겠습니다. 두 값을 대입한다는 말이 어떤 것을 의미하는지 잘 이해가 안되서 질문드립니다. 감사합니다.