묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
예측 그래프
예측 그래프가 이렇게 나오는데, 뭐가 문제인지를 모르겠어요... 도와주세요...
-
해결됨실전 인공지능으로 이어지는 딥러닝 개념 잡기
전이학습 강의 중 질문이 있어서 남깁니다.
전이학습 부분에서 질문이 있습니다! 전이학습 종류는 총 네 가지로 나눌 수 있다고 하셨는데, network-base를 제외하고는 모두 Imagenet 과 같은 대용량의 데이터를 직접 받아 학습에 사용하는 것인가요?저도 지금 딥러닝 관련 분야에서 일을 하고 있는데, network-base 전이학습을 제외하고는 사용해본 적이 없어서 신기해서 여쭤봅니다!
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
데이터 불균형
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 데이터 불균형 수업 관련하여 질문드립니다. 수업중에 알려주신 예시는 classification 문제에서의 데이터 불균형 해결 방법을 알려주셨는데요,혹시 regression 문제에서도 데이터 불균형 해결이 필요한것이 맞을까요? (예를들어 신장(키) 학습 시 평균 키를 가지는 샘플이 많은 경우) regression 문제에서 데이터 불균형이 있을 경우, 어떤 방법으로 해결할 수 있을지 궁금합니다!감사합니다.
-
미해결프로그래머를 위한 강화학습(저자 직강)
MyModel(tf.keras.Model)에 action matrix와 reward와 관련해서
training시에 필요한 action matrix와 reward를 받기위해 inputs에 dummy로 input_action_matrixs와 input_rewards를 정의하고 있는것처럼 보이는데요. 이렇게 하지않고 MyModel에 예를들면 setActionMatrixs, setRewards 이런식으로 함수를 정의하고 fit를 호출하기전에 set함수를 호출하여도 될것 같은데, 이렇게 했을때 단점이 있나요?
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
8강 전이 학습 질문
전이 학습을 하겠다는것은 이전에 학습한 weight를 이용하겠다는 의미로 알고 있는데요 맨앞에 있는 conv1을 수정하게 되면 모델 파라메터랑 weight랑 안맞지 않나요? 그리고 동결 시키지 않으면 결국 기존 weight를 무시하고 처음부터 다시 학습 할꺼같은데 해당 예제에서 어떻게 기존 weight를 활용하게 되는것인지 궁금합니다.
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
data의 gpu처리 질문
cnn에서는 다음과 같이 dataloader로 부터 얻은 data를 gpu로 변경 했습니다. seq, target = data[0].to(device),data[1].to(device),하지만 RNN에서는 다음과 같이 cpu로 처리 합니다. 이유가 무엇 인가요?? seq, target = data
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
nn.Linear(1024, 10) 관련 질문드립니다.
안녕하세요! 수업중 궁금한 부분이 있어 문의 드립니다. self.encoder = nn.Sequential( nn.Conv2d(1, k, 3, stride=2), # 흑백 이미지로 체널이 1개, 나머지는 임의로 설정 nn.ReLU(), nn.Conv2d(k, 2*k, 3, stride=2), nn.ReLU(), nn.Conv2d(2*k, 4*k, 3, stride=1), nn.ReLU(), Flatten(), nn.Linear(1024, 10), nn.ReLU() nn.Linear(1024, 10) 이 부분에서, MNIST의 경우 미리 계산하면 1024가 나온다고 말씀 주셨는데요, 어떻게 계산해야 하는건지 알 수 있을까요? 또한, 이 수치를 코드 작성자가 꼭 계산해서 넣어줘야 하는지도 궁금합니다! 크기(1024)를 코드로 출력해서 확인해 보는 방법이나, 저 부분에 1024 크기가 계산되어 들어가도록 코드를 작성할 수도 있을까요?
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
학습과 평가시 Loss 함수가 다른 이유
학습 할때는 MSE를 쓰고 평가 할때는 RMSE를 쓰는 이유가 있을까요??
-
해결됨[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
전처리 관련해서 질문 있습니다.
Detection 모델 같은 경우에는 라벨에 좌표가 들어 있습니다.Transform을 통해서 crop이나 rotate 같은 행위를 했을때 좌표도 변경이 되어야 하는데요 이런경우에 대한 해결책도 torch가 제공을 해주나요?
-
미해결[딥러닝 전문가 과정 DL1301] 딥러닝 네트워크의 연산
affine function에 대해서(+추가질문)
챕터1의 ppt 10p에 x1,x2,x3들이 각각 fx를 통과한 g(x1*w+b), g(x2*w+b) 이런 식으로 다음 각각 Activation function을 통과하는 것으로 나타내져 있는데 제가 알기론 g((x1*w +b)+(x2*w+b)+(x3*w+b))이렇게 다 더해진 값이 activation 을 통과하는 걸로 알고 있어서 뭐가 맞는건가요?다른 질문이 생겼는데 질문 작성이 금지되어서 여기에다가 작성드립니다 강의자료 2단원 8페이지에서는 a벡터가 1xL1의 차원에 있다고 나오는데 그 다음 페이지 9페이지에서는 첫번째 레이어의 a벡터의 "트랜스포즈"가 1xL1차원에 있다고 나와있어서요그러면 a벡터는 행벡터인가요 열벡터인가요
-
미해결[Pytorch] 파이토치를 활용한 딥러닝 모델 구축
IMDBDataset 파일 다운로드가 안되는데 어떻게 받을 수 있을까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요.IMDBDataset 파일 다운로드가 안되는데 어떻게 받을 수 있을까요? > !gdown https://drive.google.com/uc?id=1RFs-jV18dy9I3cWQ2M80kHfON-fDCerg ------------------------------------------- Access denied with the following error: Cannot retrieve the public link of the file. You may need to change the permission to 'Anyone with the link', or have had many accesses. You may still be able to access the file from the browser: https://drive.google.com/uc?id=1RFs-jV18dy9I3cWQ2M80kHfON-fDCerg
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
실제 캐글(Kaggle) 문제 풀고, 제출해보며, 성능 개선 기법 익히기5 강의에서 질문입니다
실제 캐글(Kaggle) 문제 풀고, 제출해보며, 성능 개선 기법 익히기5 강의에서 질문입니다.해당 강의 2:50 부분부터 Evaluation 코드에 관해 설명을 해주셨는데요,with torch.no_grad() 안쪽의 코드에서는 with torch.no_grad(): model.eval() ret = None for img, fileid in data_loader: img = img.to(device) pred = model(img) ids += list(fileid) # ex) [1, 2] + [3, 4] -> [1, 2, 3, 4] if ret is None: ret = pred.cpu().numpy() else: ret = np.vstack([ret, pred.cpu().numpy()]) return ret, ids pred.cpu().numpy()와 같이detach()를 따로 사용하지 않은 걸 볼 수 있었습니다. detach()의 사용에 관해서 찾아보니, with torch.no_grad() 블록은 역전파(gradient 계산)를 비활성화 하므로,pred는 gradient 계산과 관련이 없기에, detach()를 따로 호출하지 않고 numpy 배열로 변환할 수 있다 라는 내용을 찾을 수 있었습니다. 그 전에 수업 시간에 보여주신 코드에서는 model.eval() with torch.no_grad(): for x_minibatch in x_test_batch_list: y_minibatch_pred = model(x_minibatch) print(len(y_minibatch_pred), y_minibatch_pred.shape) y_pred_list.extend(y_minibatch_pred.squeeze().detach().tolist())이와 같이with torch.no_grad() 안에서도 detach()를 사용하신 코드들을 볼 수 있었는데요,Evaluation 단계에서 detach()의 사용이 필수적인 것인지 여쭙고 싶습니다!
-
해결됨실전 인공지능으로 이어지는 딥러닝 개념 잡기
XOR 파트에서 질문 있습니다.
초반에 bias를 열벡터로 표현시다가 강의 6분부터는 행 벡터로 나오는데요 bias에는 Transpose 표기가 되어 있지 않습니다 왜그런지 궁금합니다
-
해결됨실전 인공지능으로 이어지는 딥러닝 개념 잡기
SGD + 모멘텀 등의 코드
안녕하세요 강사님 ㅎㅎ강의 너무 잘 듣고 있습니다.다름이 아니라.15:40 에 많이 사용하는 것이SGC + 스케줄링 또는 SGD + 모멘텀 + 스케줄링 이라고 말씀하셨는데요.해당 부분을 코드로 나타내면 이렇게 되는게 맞을까요?import torch import torch.optim as optim # SGD + 스케줄링 optimizer = optim.SGD(model.parameters(), lr=0.01) # SGD + 스케줄링 + 모멘텀 optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.9) scheduler = optim.lr_scheduler.StepLR(optimizer, step_size=30, gamma=0.1) for epoch in range(num_epochs): ... for inputs, targets in train_loader: optimizer.zero_grad() outputs = model(inputs) loss = criterion(outputs, targets) loss.backward() optimizer.step() scheduler.step() 감사합니다.
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
실제 캐글 문제 풀고 제출해보며 성능 개선 기법 익히기8 강의에서 질문입니다
실제 캐글 문제 풀고 제출해보며 성능 개선 기법 익히기8 강의의 3:20 부분에서 궁금한 점이 있어 질문 올립니다. 해당 코드에서는 저장된 model_efficientnet-b7_without_scheduler_adam_1e5_epoch20.pth 모델을 load할 때, model_efficientb7 = deepcopy(model) PATH = '/content/drive/MyDrive/Colab Notebooks/Dataset/Dogs vs Cats/' model_efficientb7.load_state_dict(torch.load(PATH + 'model_efficientnet-b7_without_scheduler_adam_1e5_epoch20.pth'))다음과 같이 model의 뼈대를 다시 구성한 후, load_state_dict 메소드를 이용하여 가중치 값을 업데이트 하였습니다. 이때, model_efficientb7 = deepcopy(model) 와 같이 그냥 model 객체가 아닌, deepcopy(model)을 사용한 특별한 이유가 있는지 궁금합니다. deepcopy를 사용할 경우, 'model_efficientb7'과 'model' 객체는 서로 독립적인 객체로 유지된다는 점은 파악할 수 있었는데요,model_efficientb7에 적용되는 변화와는 별개로 model 객체 자체를 유지하려는 의도에서 사용한 것이라고 보면 되는지 여쭙고 싶습니다!
-
미해결[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
데이터 엔지니어의 역량을 기르려면 어떻게 해야할까요?
안녕하세요 강사님 ㅎㅎ사실 인공지능 쪽 열심히 공부하려고 강사님의 강의 거의 전부를 구매해서 듣고 있는 학생입니다. 요새 고민이 있어서 질문을 드립니다.. ㅎㅎ 저는 요새 최신논문 모델 구현 같은 경우 턱턱 막히는 부분도 많아서.. 그부분에서 실력의 한계를 많이 느끼는데요..실력을 기르기 위해서 그저 막연하게 캐글 competition expert가 되면 되지 않을까? 생각해서 일단 달성해보자 생각하면서 캐글팁이나 노하우 이런거 공부하고 EDA 스크립트나 common.py 같은 걸 만들며 최근 도전하는 중입니다. 혹시 강사님은 데이터엔지니어의 역량을 기르기 위한 로드맵이나 루틴이 있으신지, 만약 있으시다면 어떤 것들이 있는지 살짝 공유가능하실까요? 감사합니다.
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
실제 캐글(Kaggle) 문제 풀고, 제출해보며, 성능 개선 기법 익히기2 강의에서 질문입니다
실제 캐글(Kaggle) 문제 풀고, 제출해보며, 성능 개선 기법 익히기2 강의 17:30 부분에서 질문이 있습니다. 이번 강의에서는 transforms.Normalize([0.485, 0.456, 0.406], [0.229, 0.224, 0.225])와 같이 이미지 데이터에 Normalization을 적용하였는데요, from transformers import ViTFeatureExtractor feature_extractor = ViTFeatureExtractor.from_pretrained('google/vit-base-patch32-224-in21k') feature_extractor다음 코드와 같이 vit-base-patch32-224-in21k 모델에서 적용된 image_mean과 image_std를 확인해 보니,"image_mean": [ 0.5, 0.5, 0.5 ], "image_std": [ 0.5, 0.5, 0.5 ] 와 같이 결과가 나왔습니다. 그렇다면, 학습 데이터에 Normalization을 적용할 때에도 [ 0.5, 0.5, 0.5 ], [ 0.5, 0.5, 0.5 ] 값을 적용해야 하는 것이 아닌지 여쭙고 싶습니다. 감사합니다!
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
RNN과 LSTM 구현해보기2(MNIST 데이터셋) 강의에서 질문입니다
RNN과 LSTM 구현해보기2(MNIST 데이터셋) 강의의 15:04 부분에서 질문입니다. 강의에서는 다음과 같이 학습 과정에서 반복문을 작성했습니다. # |x_minibatch| = (128, 1, 28, 28) # |y_minibatch| = (128) for x_minibatch, y_minibatch in train_batches: x_minibatch = x_minibatch.reshape(-1, sequence_length, feature_size) y_minibatch_pred = model(x_minibatch) loss = loss_func(y_minibatch_pred, y_minibatch) optimizer.zero_grad() loss.backward() optimizer.step() train_losses.append(loss.item()) 이때, 아래와 같이 loss_func를 적용하는 부분에서 궁금한 점이 있는데요,loss = loss_func(y_minibatch_pred, y_minibatch)y_minibatch_pred 는 model에 x_minibatch 를 넣어서 값을 예측한 것으로, 그 shape이 (128, 10) 과 같이 2차원으로 나온다고 이해하였습니다.반면, y_miinibatch 는 (128) 과 같이 1차원으로 나오는 것을 확인했습니다. 이렇게 loss_func 안에 넣는 두 텐서의 다른 것으로 보이는데, y_minibatch의 shape을 변형해 줘야 하는 것은 아닌지 여쭙고 싶습니다..!
-
미해결[파이토치] 실전 인공지능으로 이어지는 딥러닝 - 기초부터 논문 구현까지
역전파 내용 중 미분 관련 질문 드립니다
안녕하세요, 섹션2의 역전파 수업을 듣다가 궁금한 점이 생겨서 질문 드립니다. 5분 30초에서 L을 zi에 대해서 미분하면 n분의 1이 된다고 하셨는데 그 이유가 i번째 엘리멘트만 고려해서 미분이 되기 때문인가요? 즉, 1/n*zi라서 미분값이 1/n인건지 궁금합니다!
-
해결됨처음하는 딥러닝과 파이토치(Pytorch) 부트캠프 (쉽게! 기본부터 챗GPT 핵심 트랜스포머까지) [데이터분석/과학 Part3]
데이터로 딥러닝 적용해보기(당뇨병 환자 데이터) 강의에서 질문입니다
데이터로 딥러닝 적용해보기(당뇨병 환자 데이터) 강의에서 질문입니다.해당 강의 11:00 부분에서 입출력 차원의 수를 각각 9와 1로 정해주었습니다.이때, 모델에서의 계산 과정을 아래와 같이 이해하였습니다.우선, 전체 학습 데이터는 (442, 9) 형태이고, 가중치는 (9, 1) 형태이므로(442, 9) x (9, 1) -> (442, 1) 형태가 되고 여기에 (1) 의 형태를 가진 편향을 더해주면서 브로드캐스팅을 거쳐(442, 1) + (1) -> (442, 1) 형태가 되는 것으로 이해하였습니다. 제가 생각한 계산 과정이 맞는지 궁금합니다!감사합니다.