묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
실습환경
오래 전에 공부하려고 결제했다가 이제서야 공부하려는데, 그때 구글 gpu 크레딧을 다 사용해버렸는데 혹시 그냥 주피터에서도 실습할 수 있나요?
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part4]
Pooling layer 사용하는 이유가 궁금합니다. (CNN 이론 부분이에요)
먼저 질문을 드린 이유는 CNN의 이미지 특징을 추출하는 과정에서 쓰이는, Convolution layer와 Pooling layer의 기능이 동일하고, Padding을 쓰는 이유에 대한 궁금증이 들었기 때문입니다.CNN 이론 강의 내용에서, CNN의 구조는 크게 (1)이미지 특징을 추출하는 부분과 (2)클래스를 분류하는 부분이 있다고 배웠습니다.(2)의 경우는 특징을 추출하고 난 뒤에 softmax나 , logsoftmax activation function을 통해, 분류하는 것이기 때문에, CNN 앞 시간에서 배웠던 1차원 형태의 데이터 처리하는 방법과 유사하다고 하셨습니다.Convolution layer는 filter(kenel)이 창문 닦듯이(알고리즘으로 보면 슬라이딩 윈도우 느낌으로) 슥슥 움직이면서 Feature Map(특성 맵)을 추출하는데, 이 부분은 칼라이미지나 흑백이미지의 경우 기존의 1차원 형태의 데이터로 바로 만들어주는 과정에 비해, 공간적/지역적 정보를 유지할 수 있으며, 특정 부분을 추출할 수 있기 때문에 해당 이미지의 특징을 확인할 수 있는 장점을 가집니다. 하지만 영상에서 설명하셨듯이, filter가 적용되면서 중복되는 부분이 발생해서 계산양이 많아지고, 무엇보다 5x5이미지의 경우 3x3필터를 사용했을 때 3x3 크기가 되기 때문에 데이터가 소실되는 문제가 발생한다고 하셨습니다. 따라서, 이를 해결하기 위해, Zero padding을 적용하여, 이미지 가장자리를 0으로 감싸줌으로써 3x3필터를 사용하더라도, 5x5의 원본 이미지의 크기가 3x3 크기가 아닌 5x5로 보존되기 때문에, 데이터 소실을 방지할 수 있다고 들었습니다.Q1:그래서 여기 까지 들었을 때, 특징을 잘 추출하기 위해 커널의 크기를 작게 했을 때, 원본 크기에 비해, output이 작아질 수도 있으니까 zero padding을 쓰는 것이 중요하구나... 하는 생각과 zero padding을 통해 원본 크기를 보존하는 것이 중요하구나 라고 생각했습니다. 혹시 맞을 까요? 그리고 나서, Pooling 설명을 들었는데, Pooling layer는 convolution layer에서 얻어진 output에서 특징을 뽑아 내는 과정이기 때문에, 얻어진 feature map의 사이즈가 줄어드는 현상이 발생하는데, 특징을 뽑아내는 것도 이해는 가지만, 데이터가 소실되는 문제가 발생할 수 있지 않을까...? 하는 생각이 들었습니다.CNN의 구조가 Convolution layer와 pooling layer가 같이 순서쌍으로 동작하기 때문에, 각각의 기능에 대해서 특징을 추출하는 과정이다는 부분에는 이해는 갔지만, padding의 기능때문에, 특징 맵의 크기를 보존하는 것이 원래 input가 비슷하게 보존하는 것이 좋은건지, 줄여나가는 건지 헷갈립니다.
-
해결됨최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지
비전 트랜스포머 - 최신 모델 강의에서 positional embedding
안녕하세요!비전 트랜스포머 - 최신 모델 강의에서예시로 설명해주신 R^65*128에 Epos 인 positional embedding을 더하는데도 R^65*128의 크기에는 변화가 없나요?? 이전에 클래스 정보를 더했을 때는 64에서 +1해서 65가 되었는데 positional embedding을 했을 때는 값에 변화가 없나 궁금해서 질문드립니다.
-
미해결최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지
비전 트랜스포머 - 최신 모델' 강의에서 B*N*K 와 1*K*D 를 연산
안녕하세요! 항상 좋은 강의 해주셔서 감사드립니다.'비전 트랜스포머 - 최신 모델' 강의에서 B*N*K 와 1*K*D 를 연산하면 B*N*D 가 된다고 하셨는데 어떤 연산을 통해서 어떻게 B*N*D로 변환되는지 궁금합니다. 그냥 B*N*K에서 단순히 K의 형태를 바꾸는 연산만 하면 안되는 건가요?? 어떤 원리로 연산을 통해 변환이 되는 건지 궁금해서 질문 드립니다.그리고 연산에서 R^N*D 에서 기호 R은 무엇을 뜻하는지 궁금합니다.감사합니다.
-
미해결최신 딥러닝 기술 Vision Transformer 개념부터 Pytorch 구현까지
'어텐션 기법 - 키, 쿼리, 밸류는 무엇인가?' 강의에서 (QK^T)
안녕하세요!'어텐션 기법 - 키, 쿼리, 밸류는 무엇인가?' 강의에서 (QK^T)쿼리와 키 transpose한 것이 어떻게 쿼리와 키의 유사도를 나타내는지 잘 이해가 가지 않습니다.
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part4]
10_ADVANCE_EXAMPLE-에서 MNIST 함수 작성할 때 index_error가 나타납니다 ㅠㅠ
항상 강의들으면서, 따라치면서, 여러번 반복해서 익히려고 하고 있습니다. 지금까지 별 문제 없이 쏙쏙 이해가 잘 가서, 지금까지 질문을 드리지 않았는데요.. 함수를 작성하는 부분에서 자꾸 인덱스 에러가 나타나서, 제가 어느 부분을 잘못 쓴 건지 모르겠습니다. 선생님께서 작성하신 코드를 그대로 복사해서 넣었는데도 index error가 호출되어서 왜 그런지 모르겠습니다...
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
Tensorflow c++과 subclassing에 관해 질문드립니다.
선생님 안녕하세요! 새해 복 많이 받으세요!!올려주신 강의 정말 감사드립니다. 저는 선생님 강의를 파이썬 머신러닝 부터 컴퓨터 비전, CNN을 통해 혼자 딥러닝을 공부하고 있는 전자공학 전공 학생입니다.앞으로의 진로와 공부 방향에 관해 몇가지 질문을 드리고 싶습니다.현재 선배들 중 제조업(반도체,자동차, 배터리)에 종사하는 선배 중 딥러닝쪽 업무를 하는 선배들로 부터 요즘은 모델링을 파이썬으로 하지만 C++을 이용해서 많이 진행한다고 하고, Tensorflow를 더 잘 사용하기 위해서는 subclassing을 통한 모델을 만들 수 있어야 한다고 들었습니다. (https://www.tensorflow.org/guide/keras/custom_layers_and_models)하지만 인터넷으로 검색을 해봐도 Tensorflow와 C++을 연동해서 사용하는 경우에 대한 정보를 얻기 힘들고 subclassing 또한 정보를 얻기 어려웠습니다. 혹시 관련하여 알고계신 정보가 있다면 공부방법과 강의계획이 있으신지 여쭤봐도 될까요?
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
tensorflow api 질문
안녕하세요 교수님. 최근에 텐써플로우로 작업을 해야할 필요가 있어서 텐서플로우 도커를 사용하여 작업을 진행하고 있습니다. 작업을 함에 있어서 최근에 api가 이상하게 바뀐거같아서 여쭈어봅니다. 코렙에서 또한 해당 에러가 있는거 같아서 혹시 해결을 하셨는지 궁금해서 여쭈어봅니다. 현재 쓰고 있는 버전은 2.11.0입니다 <바뀐 api><기존 api>작동은 하지만 하위 함수들을 자동적으로 호출을 못해오는 현상
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
실습코드
제2강에 있는 실습코드는 어떻게 다운로드 받는건가요??호형님 아이디 비번이 있는건가요?? 제가 찾아봐도 잘 모르겟네요.
-
미해결모두를 위한 딥러닝 - 기본적인 머신러닝과 딥러닝 강좌
tf.placeholder 에러
placeholder란 method가 없다고 하는데 업그레이드하면서 없어진건가요? 없어졌다면 뭐로 대체해서 사용하면 될까요?
-
해결됨최신 딥러닝 기술과 객체인식
Yolov2 NIN에 대한 질문
안녕하세요 강의 잘 보고 있습니다Yolov2에서 Darknet-19 백본을 사용하는데, 여기서 NIN 기술이 적용되었다고 나오는데논문이나 코드에서 이 부분에 대한 언급을 알 수 있을까요?또한 해당 기술이, 보통 채널은 변경하는데 아웃풋 사이즈를 안바꾸는 1x1 컨벌루션과 다른건가요?감사합니다
-
미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
실습 동영상 관련 질문
#Xception 모델 학습, 성능평가 및 예측 후 결과 분석하기 안녕하세요 선생님선생님의 코딩을 토대로 실습연습을 하고 있는데 질문이 있습니다 1.검증 데이터 성적이 너무 높으면 이 부분은 과적합이라고도 볼 수 있을까요(test-score가 아니라도)? 아니면 데이터의 양이 그냥 너무 적어서 발생하는 것일까요? (early stop으로 16에서 멈추고 val score = 0.97이 나옵니다)*데이터 크기: (5856, 2) 2.해당 자료가 0또는 1인데 (정상폐, 폐렴폐 ct)인데 loss =binary_crossentropy를 쓰면 될까요? (만약 categorical_crossentropy를 쓰면 문제가 발생하나요?) 3.만약에 데이터가 불균형하면 머신러닝에서 배웠던 것 처럼 -양성 데이터를 판별하는게 중요하다고 하면 metrics=['accuracy'] 이부분을 precision으로 할 수 있을까요? (반대로 음성이면 재현율)*model.compile(optimizer=Adam(lr=initial_lr), loss='binary_crossentropy', metrics=['accuracy'])4.선생님이 여기 실습에서 해당 데이터를 local? 영역에 넣으시고 분석하셔서 불러오는데 시간을 많이 줄인 것을 보았는데 바탕화면에 있는 데이터도 선생님이 하신 것 처럼 불러올 수 있을까요? 아니면 구글코랩처럼 따로 경로가 있을까요? (데이터를 불러오는데 1초이상이 걸립니다..) 감사합니다
-
해결됨[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
모듈에서 제공하는 것 외 추가적인 Pretrain model 적용방법
안녕하십니까! 배운내용 바탕으로 프로젝트 해보는 와중 해결되지 않는 부분이 있어 문의드립니다.pytorch에서 densenet(pytorch 기본제공)과 SWIN-transformer(pytorch 미제공, git에 공유된 모델 활용)을 backbone으로 활용하고 싶습니다.swin-unet처럼 모듈에서 제공하지 않는 모델의 경우 어떤식으로 코드를 작성해야할까요?dictionary 형태의 pth 파일이라 *****.load_state_dict('~~~~.pth')을 활용해야할것 같은데 *****부분에 모델을 넣어줘야되는데 기본제공 모듈이 아니라 어떤식으로 해야할지 감이 오지 않습니다. 1번 문제가 해결이 된다면, densenet과 swin-transformer을 sequential 형태로 조합하여 pretrain으로 시키고 싶은데 어떻게 접근을 하면 될까요? 아래 코드에서 backbone 부분 어떻게 해야할지 방향 잡아주시면 너무 감사할것 같습니다.path = '/content/drive/MyDrive/swin_tiny_patch4_window7_224.pth' #swin-Transformer 모델 pretrained_weights = torch.load(path, map_location='cpu') class ImgFeatureExtractor(nn.Module): def __init__(self): super(ImgFeatureExtractor, self).__init__() # self.backbone = models.efficientnet_b0(pretrained=True) self.backbone = models.densenet201(pretrained=True) self.backbone = *****.load_state_dict(pretrained_weights) self.embedding = nn.Linear(1000,512) def forward(self, x): x = self.backbone(x) x = self.embedding(x) return x
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
메모리 부족으로 Faster R-CNN 학습을 할 수 없습니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 강의 내용을 질문할 경우 몇분 몇초의 내용에 대한 것인지 반드시 기재 부탁드립니다. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. (노션에 다운받을 수있습니다)mm_faster_rcnn_train_kitti.ipynb여기에 바로 올리고 싶었는데 인프런이 허용을 안해주네요 MMdetection의 이해와 Faster R-CNN 적용 실습 부분입니다. 문제 및 상황인식:학원 가상환경에서 문제메모리가 부족하다고 뜨면서 커널이 끊겼습니다.(목차 3번 사진 참고)저는 이 문제가 배치 사이즈가 커서 생긴 문제라고 보았습니다. 하지만 아래의 목차 5번과 같이 배치 사이즈를 줄여도 메모리 부족이 뜹니다. 어떻게 하면 해결할 수있을까요?배치나 기타 하이퍼 파라미터를 조정해도 학원 가상환경의 메모리 자체가 적어서 생기는 문제일까요? (참고로 구글 코렙에서는 잘 작동했습니다. 다만 GPU 사용량이 초과해서 None으로 학습을 하면 cuda를 못쓴다고 에러가 납니다.) 목차상황설명상황설명문제발생 및 사진해결시도1, 실패해결시도2, 실패 (상황설명) 저는 AI 국비지원 학원을 다니는 학생입니다. 학원에서 배우는 것만으로는 MMdetecrtion을 다룰 수 없어서 이 강의를 듣게 되었습니다. 이걸 듣고 난 후 MMdetecrtion으로 학원 과제를 수행하고자 했습니다. 그리고 구글 코랩은 공짜로 돌리다가 GPU 제한으로 못쓰고 학습이 안되었습니다.(상황설명) 학원에서 아래와 같은 성능의 전용 가상환경을 제공합니다. 그래서 경로만 조정하고 그대로 똑같이 돌렸습니다.3. (문제발생)그런데 학습을 하는데 아래의 그림과 같이 메모리가 부족하다고 뜨면서 커널이 끊겼습니다. 4. (해결시도1, 실패) cfg.data.samples_per_gpu = 4 넣기아래의 그림과 같이 cfg.data.samples_per_gpu = 4를 넣었지만,auto_scale_lr = dict(enable=False, base_batch_size=16)는 그대로 16이었습니다. 일단 무시하고 돌려보았지만 여전히 실패했습니다. 5.( 해결시도2, 실패) defaul_runtime.py에 들어가서 batch size를 1로 바꾸기그결과 auto_scale_lr = dict(enable=False, base_batch_size=1)로 바뀌었습니다. 학원 가상환경에서 문제메모리가 부족하다고 뜨면서 커널이 끊겼습니다.(목차 3번 사진 참고) 어떻게 하면 좋을까요?
-
미해결[PyTorch] 쉽고 빠르게 배우는 NLP
torchtext.data 에러
안녕하세요. 강사님. torchtext 모듈 import간 에러가 나타나 문의합니다.섹션 2 sequence Tagging 실습편의 코드를 연습하던 중 load_dataset() 함수를 불러올 때 다음과 같이 AttributeError: module 'torchtext.data' has no attribute 'Field' 라는 에러가 출력됩니다. 찾아보니 torchtext의 버전문제로 현재 최신버전에서는 torchtext.legacy로 import를 사용해야한다고 합니다만 그럴 경우 ImportError: cannot import name 'unicode_csv_reader' from 'torchtext.utils'라는 에러가 출력되어 어떻게 해결해야할지 궁금합니다.실습환경: 코랩운영체제: 우분투 18.04해당 에러 관련 사이트 링크: https://stackoverflow.com/questions/66516388/attributeerror-module-torchtext-data-has-no-attribute-field
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
mmcv v2.0.0 문제
선생님 안녕하세요 좋은 강의 감사합니다.from mmdet.apis import init_detector, inference_detector import mmcv를 하면 아래와 같은 경고 메시지가 뜨는데요./usr/local/lib/python3.7/dist-packages/mmcv/__init__.py:21: UserWarning: On January 1, 2023, MMCV will release v2.0.0, in which it will remove components related to the training process and add a data transformation module. In addition, it will rename the package names mmcv to mmcv-lite and mmcv-full to mmcv. See https://github.com/open-mmlab/mmcv/blob/master/docs/en/compatibility.md for more details. 'On January 1, 2023, MMCV will release v2.0.0, in which it will remove ' 혹시 이것에 맞춰서 코드의 내용이 많이 변할까요? 뒷부분은 이름이 바뀐다는 것 같은데, 앞부분에서 "it will remove components related to the training process and add a data transformation module." 부분이 무슨뜻인지 잘 모르겠어서요!
-
해결됨U-Net 구현으로 배우는 딥러닝 논문 구현 with TensorFlow 2.0 - 딥러닝 의료영상 분석
evaluate isbi 2012.py 실행관련 문의드립니다.
안녕하세요. evaluate 중 문제가 발생해서 문의를 드립니다. train과 evaluate py의 경로 부분은 아래와 같이 수정을 하였습니다.flags.DEFINE_string('checkpoint_path', default='saved_model_isbi_2012/unet_model', help='path to a directory to save model checkpoints during training') 그 결과 생성된 파일은 다음과 같습니다. python evaluate_isbi_2012.py실행 결과 나타난 오류는 다음과 같습니다. Traceback (most recent call last):File "evaluate_isbi_2012.py", line 89, in <module>app.run(main)File "C:\Users\Song\anaconda3\envs\unet_test3\lib\site-packages\absl\app.py", line 308, in runrunmain(main, args)File "C:\Users\Song\anaconda3\envs\unet_test3\lib\site-packages\absl\app.py", line 254, in runmainsys.exit(main(argv))File "evaluate_isbi_2012.py", line 66, in mainunet_model.load_weight(FLAGS.checkpoint_path)AttributeError: 'UNET_ISBI_2012' object has no attribute 'load_weight' 해결방법 알려주시면 정말 감사하겠습니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
tensorboard error
안녕하세요 강사님,저는 보완 문제로 폐쇄 네트워크환경(소스내에서 downloac 차단)에서 object detection AutoML을 실행하고 있습니다. yolov3 소프 포팅후 자체 host pc에서 running이 되도록 해야 하는데 환경구축이 만만치 않네요.. 모든 datasets zip 파일들을 따로 다운 받아 집에서는 vs code나 jupyter notebook으로 작업하고 회사에서는 kubeflow notebook 환경에서 테스트 진행하고 있습니다.질문 1: coco val & coco test에서 --data coco.yaml 대신 --data coco128.yaml로 실행해도 되는 건지 알고 싶습니다.질문 2: train.py 전에 tensorboard launch 시 에러가 나옵니다. 해결 방법을 알려 주시면 감사 하겠습니다.질문 3: 질문2의 에러가 해결되어 train.py 실행 되는 건지, 그리고 coco test를 하지 않고 바로 train.py를 진행해도 되는건지 알고 싶습니다. 집에서 vs code나 jupyter notebook에서 train.py 실행을 하면 아래 같은 에러가 나옵니다.coco128.yaml 에서 download 차단 없이 진행하면 kernel 이 죽어 restarting 이 되고 진행이 안되네요..download 차단하면 맨 아래 캡쳐 화면 처럼 멈쳐 버리고 Dead kernel 이 되어 버립니다. 혹 질문 2의 tensorboard 에러와 관련이 있는 건지 알려 주시기 바랍니다.질문 4: 마지막 질문인데.. 이 질문은 강의 내용에서 벗어나는 질문 이지만 해결을 못하고 있어 조언을 듣고자 합니다. 로컬 호스트 환경에서 yolov5 train.py가 잘 돌고 있는 상황에서 docker 이미지 빌디시 Dockerfile의 베이스 이미지를 FROM nvcr.io/nvidia/pytorch:21.10-py3 로 하면 container 가 바로 죽고 실행이 안되며, FROM python:3.9로 하면 container가 running 되는데 train.py 가 실행되다 epochs를 하다 멈쳐 버립니다. 이 문제가 gpu 문제인건지 아님 단지 memory 부족 문제인지 잘 판단이 안되는데.. 소중한 의견 주시면 감사 하겠습니다.
-
해결됨Python을 이용한 개인화 추천시스템 | 추천알고리즘 | 추천인공지능
model.predict 의 결과 값 index가 왜 movie id ?
predictions = model.predict([tmp_user, tmp_movie_data])아래와 같이 결과 값이 나오잖아요. 그런데, 저 결과의 index가 왜 movie id 인가요? [[3.9839544] [3.178115 ] [2.9170113] ... [2.1295495] [3.9083176] [3.711278 ]]
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
RCNN에서 손실함수 구하기
안녕하세요?RCNN의 경우 classification에 대한 loss는 구할 수 없고 다만 bounding box regression은 구할 수 있는지 이유가 궁금합니다.RCNN의 경우는 최종 값을 판별하는 분류기가 CNN과 분리되어 있어서 역전파를 할 수 없어 classification의 경우는 오차 함수를 구할 수 가 없다고 이해했습니다. 그런데 어떻게 bounding box regression은 Loss 값을 구할 수 있는지 궁금합니다. 구한 Loss 값으로 CNN이 업데이트가 가능한지요?바쁘신 와중에 답변 주셔서 감사합니다^__________^