묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Mini-batch Gradient Descent computation time 질문
안녕하세요 선생님시간과 체력이 더 많았으면 좋겠다는 생각이 들 정도로 강의를 너무 재밌게 보고 있습니다Mini batch Gradient Descent 이론 편에서 Mini batch Size에 비례하지 않는다는 설명을 보았는데요.물론 병렬처리를 하기 때문에 정비례하지 않겠지만 GPU에 올릴 수 있는 최대 데이터양이 100개라고 가정한다면 미니배치를 200, 300, .. 이런 식으로 키운다면 미니 배치크기에 따라 비례하는 것은 맞지 않나요?혹시 제가 잘못 생각하고 있다면 말씀해주세요 감사합니다!
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
혹시 AI 관련 강의도 Zybo Board가 필요한가요?
혹시 AI 관련 강의도 Zybo Board가 필요한가요?
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Huber Loss에 대한 질문
안녕하세요?: 선생님강의 정말 재밌게 잘 보고 있습니다.강의 내용 중에 Huber Loss는 전미분이 한 번밖에 되지 않는다는 단점을 언급해주셨는데요Gradient Descent를 적용할 때는 weight에 대한 편미분만 적용하기 때문에 역전파 시에는 무관한 거 아닐까요?따라서 Epoch를 2 이상의 숫자를 두고 학습하는데 전혀 지장이 없는 거 아닌가요?왜 전미분이 1번만 된다는 게 단점이 된다는 것인지 이해가 잘 되지 않습니다.
-
미해결설계독학맛비's 실전 AI HW 설계를 위한 바이블, CNN 연산 완전정복 (Verilog HDL + FPGA 를 이용한 가속기 실습)
cnn_kernel.v 코드질문입니다.
안녕하세요 맛비님 강의 잘 보고있습니다.🙂[1. 질문 챕터] : lab2 cnn설계 rtl 중 cnn_kernel 부분에 궁금한 점이 있어서 질문드리게됐습니다. [2. 질문 내용] : eg) 질문 내용을 자유롭게 작성해주시면 되겠습니다 🙂맛비님 솔루션 코드 부분인데,acc_idx가 +1 되는건 1cycle이 지나고 아닌가요?always @(*) begin으로 시작해서 acc_kernel을 0으로 초기화 해주셨고그 아래줄에 r_mul의 인덱스에 해당하는 부분을 for문으로 loop를 돌면서 acc_kernel의 각 인덱스에 값을 할당하는 걸로 보이는데 clk edge 마다 acc_kernel을 0으로 초기화해주는데 아래 for문이 무슨 의미가 있나 싶어 질문하게되었습니다. [3. 시도했던 내용, 그렇게 생각하는 이유] : eg) 설치영상은 이렇게 시도했는데 안되더라 or 본인의 생각을 적어주세요. (실습 내용 중에 이해가 안되거나 잘못된 내용이 있는데, 이러 이러한 근거로 나는 이렇게 생각합니다.) ================ 다음 내용은 읽어보시고 지우시면 됩니다.=================질문 내용을 작성해주실 때, 위의 3단계로 제가 이해할 수 있게 작성해주시면 정확한 답변을 드릴 수 있을 것 같아요!!현업자인지라 업무때문에 답변이 늦을 수 있습니다. (길어도 만 3일 안에는 꼭 답변드리려고 노력중입니다 ㅠㅠ)강의에서 다룬 내용들의 질문들을 부탁드립니다!! (설치과정, 강의내용을 듣고 이해가 안되었던 부분들, 강의의 오류 등등)이런 질문은 부담스러워요.. (답변거부해도 양해 부탁드려요)개인 과제, 강의에서 다루지 않은 내용들의 궁금증 해소, 영상과 다른 접근방법 후 디버깅 요청, 고민 상담 등..글쓰기 에티튜드를 지켜주세요 (저 포함, 다른 수강생 분들이 함께보는 공간입니다.)서로 예의를 지키며 존중하는 문화를 만들어가요.질문글을 보고 내용을 이해할 수 있도록 남겨주시면 답변에 큰 도움이 될 것 같아요. (상세히 작성하면 더 좋아요! )먼저 유사한 질문이 있었는지 검색해보세요.잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.==================
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Batch size 가 극단적으로 작은 경우 (예를들어 batch_size =1) Normalization 적용 방안
강사님, 본 강의 들으면서 정말 많은 도움을 받고 있습니다. normalization 에 대해서 이렇게 상세하게 설명해 준 온라인 강의는 본 적이 없네요 🙂 CNN 을 기반으로 하되 모델 파라메터도 엄청 크고, 데이터셋 크기도 매우 큰 경우, 예를 들어 3D Unet 을 구성해서 3차원의 고해상도 (256 x 256 x 256) 이미지를 input 과 output 으로 사용하다보니 GPU 메모리를 너무 많이 잡아먹어서 batch 에 복수의 샘플을 적용하지 못하고 하나의 batch 에 단일 샘플만 적용하는 경우를 study 하고 있는데요, BatchNormalization 을 적용했을 경우 오히려 학습이 잘 안 되는 것 같아서 Normalization layer 를 야예 제거한 후 모델 학습 진행 중이었습니다. 경험적으로 했던 것이었지만 본 강의를 보다 보니 그 이유가 조금 이해가 되기도 하는데요, 이와 같이 batch size 가 극단적으로 작은 경우에 Normalization layer 을 적용 안하는게 더 좋을 수 있나요? 혹은 설명해 주신 table 에 나와 있는 것 처럼 Group Normalization layer 나 Instance Normalization을 적용하는 것이 개념적으로 더 나은 방법일까요? (설명을 들었을 때는 Group Normalization 을 적용하는 것이 필요한 상황으로 이해가 되기도 하는데.. 제가 이해한 것이 맞는지 확인 부탁드립니다 ^^;) 그리고 Group Normalization 에서 "Group" 의 의미가 무엇인지 잘 와닿지가 않아서 (Batch 나 Width, Height, Sample Number 이외에 그룹이 될 수 있는 경우가 무엇인지가 잘 이해가 되지 않습니다.) ... 요 부분에 대해서 좀 더 설명해 주시면 감사드리겠습니다!
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
섹션9 First Autoencoder 인코더, 디코더 모델 생성 오류 해결 방법
강의 14분쯤에서 모델을 변경하는 부분입니다.케라스가 업데이트 된 건지는 잘 모르겠지만 아래 부분에서 시퀀셜 모델이 레이어를 단일 값으로 받을 수 없어 에러가 납니다.encoder = Sequential(Dense(2, input_shape=(3, ))) decoder = Sequential(Dense(3, input_shape=(2, ))) autoencoder = Sequential([encoder, decoder]) autoencoder.summary()아래 처럼 괄호로 감싸 리스트로 넘기면 해결됩니다.encoder = Sequential([Dense(2, input_shape=(3, ))]) decoder = Sequential([Dense(3, input_shape=(2, ))]) autoencoder = Sequential([encoder, decoder]) autoencoder.summary()
-
미해결
Yolov9의 백본 바꾸기 Resnet50으로
https://github.com/WongKinYiu/yolov9/tree/main욜로에서 models.yolo.py나 models.detect.custon.yaml을 제작해 pth로 저장하고자합니다..기존 욜로백본 yolov9.yaml을 수정해도 상관없고, 새로 얌파일을 추가해도 상관은 없는데, 전혀 갈피가 안잡혀서 도움 요청드립니다. 사실 백본을 바꾸기보단 파이토치로 새로 짜보려했는데, 제가 그냥 학습에서 엔지니어링으로 옵션 건드는건 했어도, 아예 레이어 설계하거나 저장하도록 만들어본 적이 없어서 계속 헷갈리네요.. 지금은 프로젝트 코드 다 엎어버렸습니다.
-
미해결TensorFlow Object Detection API 가이드 Part1 - 코드 10줄 수정으로 물체검출하기
버전 오류 23.05파일 포함.
2023 05 버전 해도 오류 납니다. 그리고 4강을 먼저 공부하고 싶어서 해봤는데 버전 오류 나느거 같은데 새로운 버전으로 수정된 강의가 필요합니다----------------------------------import matplotlib import matplotlib.pyplot as plt import io import scipy.misc import numpy as np from six import BytesIO from PIL import Image, ImageDraw, ImageFont import tensorflow as tf from object_detection.utils import label_map_util from object_detection.utils import config_util from object_detection.utils import visualization_utils as viz_utils from object_detection.builders import model_builder %matplotlib inline-------------------------------/usr/local/lib/python3.10/dist-packages/numpy/_core/_dtype.py:106: FutureWarning: In the future np.bool will be defined as the corresponding NumPy scalar. if dtype.type == np.bool: /usr/local/lib/python3.10/dist-packages/numpy/_core/_dtype.py:106: FutureWarning: In the future np.bool will be defined as the corresponding NumPy scalar. if dtype.type == np.bool: --------------------------------------------------------------------------- TypeError Traceback (most recent call last) <ipython-input-6-49156a41fe80> in <cell line: 15>() 13 from object_detection.utils import config_util 14 from object_detection.utils import visualization_utils as viz_utils ---> 15 from object_detection.builders import model_builder 16 17 get_ipython().run_line_magic('matplotlib', 'inline') 23 frames/usr/local/lib/python3.10/dist-packages/scipy/interpolate/_fitpack_impl.py in <module> 101 102 _parcur_cache = {'t': array([], float), 'wrk': array([], float), --> 103 'iwrk': array([], dfitpack_int), 'u': array([], float), 104 'ub': 0, 'ue': 1} 105 TypeError:
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Normalization 질문
안녕하세요, 수업 설명 감사드립니다. cnn이 아닌 일반적인 fully connected NN (multi-layer perceptron) 에서 혹시 batch/instance/layer normalization 을 어떻게 계산하는지 설명을 부탁드려도 될까요 (그림으로 표현해 주시면 더 좋을거 같습니다.)MLP에서라면 small c가 특정 hidden layer의 node/unit에 대응될거 같고 large C가 layer 전체를 표현할거 같은데, H,W는 무엇인지 이해가 잘 되지 않습니다. 특히, MLP에서 instance normalization의 평균/분산을 구할 수가 있을지 궁금합니다 (단일 값 하나일거 같은데..)강사님께서는 어떻게 생각하시는지 알려주시면 감사드리며, 제가 잘못 이해한 부분이 있으면 코멘트 부탁드리겠습니다. 추가로 하나만 더 질문드리고 싶습니다.강의안에서 x_nhwc는 벡터일까요? 아니면 scalar 값일까요? Normalization의 경우에 feature간 (예, 인풋 변수) 평균도 구하는지, element-wise로 구하는지 궁금해서 여쭤봅니다.바쁘실텐데 시간내주셔서 미리 감사드립니다.
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
섹션7 텐서플로 허브 Trained_MobileNet 모델 생성 오류 해결 방법
"Only instances of keras.Layer can be " 97 f"added to a Sequential model. Received: {layer} " ValueError: Only instances of keras.Layer can be added to a Sequential model. Received: <tensorflow_hub.keras_layer.KerasLayer object at 0x791605217610> (of type <class 'tensorflow_hub.keras_layer.KerasLayer'>)위와 같은 오류가 나서 한참 찾았는데요. 원인은 tensorflow_hub와 tensorflow 간의 keras 필요 버전 차이에 있다고 합니다. 아래와 같이 keras를 별도 설치하여 임포트하여 사용하시면 정상 작동됩니다. 같은 에러로 고민이신 분에게 도움이 됐으면 좋겠네요. 수정 소스 코드!pip install tf_kerasimport tf_keras as tfk Trained_MobileNet_url = "https://tfhub.dev/google/tf2-preview/mobilenet_v2/classification/2" Trained_MobileNet = tfk.Sequential([ hub.KerasLayer(Trained_MobileNet_url, input_shape=(224, 224, 3)) ]) Trained_MobileNet.input, Trained_MobileNet.output
-
미해결차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
Custom Dataset 실전 프로젝트 실습 1 - CRNN를 이용한 License Plate OCR 모델(Custom Dataset) 학습
결과 30만 나오는 현상 무엇이 잘못되었을까요?데이터 전부 30만 나옵니다
-
미해결차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
Custom Dataset 실전 프로젝트 실습 1 - CRNN를 이용한 License Plate OCR 모델(Custom Dataset) 학습
recognizer = keras_ocr.recognition.Recognizer()여기서 인식할 수 없는 키워드가 Dense에 전달되었다고 하면서 진행이 되질 않습니다.
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section 7 [Activation Function의 종류] Softmax logit 분포와 Entropy 질문이 있습니다
안녕하세요 선생님해당 강의 마지막 참고사항: what is entropy 부분에서 Temperature가 낮을수록 softmax logit의 분포가 쏠리면 Entropy가 감소하게 되는 것이 아닌지 궁금합니다! 확인해주셔서 감사합니다!
-
미해결차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
Custom Dataset 실전 프로젝트 실습 1 - CenterNet을 이용한 License Plate Detection 모델(Custom Dataset) 학습 실습 Solution
- CenterNet을 이용한 License Plate Detection 모델(Custom Dataset) 학습 실습 Solution 실습해보는데 계속 버젼이 달라서 그런지 실행이 안되네요
-
해결됨딥러닝 CNN 완벽 가이드 - TFKeras 버전
albumentations ShiftScaleRotate
ShiftScaleRotate에서 Only Scale 변환 후 원본 이미지와 사이즈가 같은 이유가 무엇인지 궁금합니다.ShiftScaleRotate 내부에서 원본 크기로 resize해주는 것인지 내부에서 Super Resolution을 적용해주는 것인지 궁금합니다. 화질이 손상되지 않은거 같아서 여쭈어봅니다.
-
해결됨딥러닝 이론 + 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번 이상 미분가능한 것의 장점이 무엇인가요?확인해주셔서 감사합니다!
-
해결됨딥러닝 이론 + 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 하여도 되는건지 궁금합니다.
-
해결됨딥러닝 이론 + 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로 보이기 때문입니다)혹시 제가 잘못 이해하고 있는 부분이 있다면, 정정해주시면 감사드리겠습니다!
-
미해결파이썬을 활용한 머신러닝 딥러닝 입문
Crash 파일 위치
쥬피터 노트북에서 crash 강의를 수강하려는데 다운 받은 파일집에는 영상과 다른 00.Table of contaent파일로 존재하는데 어떻게 수강해야하나요?