묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결예제로 배우는 딥러닝 자연어 처리 입문 NLP with TensorFlow - RNN부터 BERT까지
실습 2 - Char-RNN 코드 학습 부분에서 오류가 발생합니다.
안녕하세요.실습 2 - Char-RNN 코드 학습 부분에서 ValueError: Unrecognized keyword arguments passed to Embedding: {'batch_input_shape': [64, None]} 오류가 발생합니다.
-
해결됨딥러닝 이론 + 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를 적용해주어야 하는지 모르겠어서 여쭤봅니다!
-
미해결예제로 배우는 딥러닝 자연어 처리 입문 NLP with TensorFlow - RNN부터 BERT까지
pad_both_ends 사용할 때 n은 왜 사용하나요?
제목 그대로 pad_both_ends 사용할 때 n은 왜 사용하나요?그냥 앞뒤로 붙여주면 될 것 같은데, 3을 넣으니 두개씩 붙던데 n값을 설정하는 이유가 있나요?ngram의 n과 관련이 있나요?
-
해결됨딥러닝 이론 + 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로 보이기 때문입니다)혹시 제가 잘못 이해하고 있는 부분이 있다면, 정정해주시면 감사드리겠습니다!
-
미해결예제로 배우는 딥러닝 자연어 처리 입문 NLP with TensorFlow - RNN부터 BERT까지
트레이닝 에러 발생
for epoch in range(EPOCHS): start = time.time() train_loss.reset_states() train_accuracy.reset_states() # inp -> portuguese, tar -> english for (batch, (inp, tar)) in enumerate(train_batches): train_step(inp, tar) if batch % 50 == 0: print(f'Epoch {epoch + 1} Batch {batch} Loss {train_loss.result():.4f} Accuracy {train_accuracy.result():.4f}') if (epoch + 1) % 5 == 0: ckpt_save_path = ckpt_manager.save() print(f'Saving checkpoint for epoch {epoch+1} at {ckpt_save_path}') print(f'Epoch {epoch + 1} Loss {train_loss.result():.4f} Accuracy {train_accuracy.result():.4f}') print(f'Time taken for 1 epoch: {time.time() - start:.2f} secs\n')위 코드에서 에러 발생합니다. GPT 에도 물어보고 해도 답이 안나와서 조치 방법 질문드립니다.AttributeError Traceback (most recent call last) <ipython-input-109-d5f75ec190c4> in <cell line: 1>() 2 start = time.time() 3 ----> 4 train_loss.reset_states() 5 train_accuracy.reset_states() 6 AttributeError: 'Mean' object has no attribute 'reset_states'
-
미해결예제로 배우는 딥러닝 자연어 처리 입문 NLP with TensorFlow - RNN부터 BERT까지
트랜스포머 인코더 레이어 테스트 에러
sample_encoder_layer = EncoderLayer(512, 8, 2048) sample_encoder_layer_output = sample_encoder_layer(tf.random.uniform((64, 43, 512)), False, None) sample_encoder_layer_output.shape # (batch_size, input_seq_len, d_model)해당 코드에서 아래 에러가 떴어요. 어떻게 조치하면 될까요?Only input tensors may be passed as positional arguments. The following argument value should be passed as a keyword argument: False (of type <class 'bool'>)
-
미해결모두의 한국어 텍스트 분석과 자연어처리 with 파이썬
강의에서 사용하는 csv 파일이 없습니다
0301 KLUE Dacon 데이터셋 소개, 텍스트 길이 분석강의에서 다루는 'topic_dict' csv 파일이 없습니다. 어디서 파일을 구할 수 있나요??
-
미해결모두의 한국어 텍스트 분석과 자연어처리 with 파이썬
적합한 알고리즘이나 라이브러리를 알고싶습니다
안녕하세요제가 구현하고 싶은 내용은 업체명(상호)에서 특정한 문자열 포함여부에 따라 20가지로 분류하고자 합니다제 소견에 로지스틱 회귀 + softmax + 크로스 엔트로피로 하는 것이 효율적인 것 같은데 적용에 적합한 머신러닝 라이브러리나 알고리즘을 알고 싶고 더불어 관련 자료 또는 사례의 출처도 알려주시면 너무 감사하겠습니다
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Auto Differentiation에서 computational Graph 질문있습니다
안녕하세요, 좋은 강의 준비해주셔서 감사드립니다.딥러닝에 대한 흥미가 점점 더 깊어지는 중입니다!한가지 간략히 질문드리고 싶습니다.노드의 정의 문제와 관련된거 같은데요.. computation graph에서의 노드는 x, w, h, y, L 전부를 의미하는 반면, Neural network에서의 노드는 x, h, y, L이라고 이해하면 될까요?미리 감사드립니다.
-
미해결실리콘밸리 엔지니어와 함께하는 랭체인(LangChain)
랭체인 외부 인터넷 사용 관련
안녕하세요~랭체인을 업무에 적용해 보고 싶어 질문 드립니다.현재 근무하는 환경 특성상(금융권)외부 인터넷망을 사용하지 못하는데요.이럴 경우 업무망에서 랭체인을 사용할 수 있는 방법이 없을까요??
-
해결됨차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
커스텀데이터셋을 만들고 싶습니다
labelme를 이용해서 CRAFT 학습용 커스텀데이터셋을 만드려고 하는데선생님이 제공해주신 CRAFT 디텍션 커스텀데이터셋 처럼935 362 1034 362 1034 411 935 411 "YG9X2G"좌표 "정답" txt 파일로 안나오고json 파일로 저장이 되는데어떻게 해야되나요?
-
해결됨딥러닝 이론 + 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)가 된 것이 이해가 안되네요... 그래프로 그려주시면서 설명해주신 것도 잘 이해가 되는데, 어떤 과정으로 위 식이 나왔는지 이해가 안되서 질문드려요.제가 단순 시그마 푸는 법을 잊어서 생긴 것이라면 다시 찾아보겠습니다. 두 값을 대입한다는 말이 어떤 것을 의미하는지 잘 이해가 안되서 질문드립니다. 감사합니다.
-
미해결딥러닝을 활용한 자연어 처리 (NLP) 과정 (기초부터 ChatGPT/생성 모델까지)
Encoder Decoder 부터 Simple Chatbot까지 이상답변
안녕하세요 강사님! Encoder Decoder와 Simple Chatbot 노트북 실행시 아래 스크린샷처럼 이상한 문장들만 출력되던데, 해결책이 있을까요?
-
미해결차량 번호판 인식 프로젝트와 TensorFlow로 배우는 딥러닝 영상인식 올인원
케라스모델을 이용한 소프트맥스 서브클래싱에서 call함수는 내장함수인가요?
내장함수는 __call__과 같이 언더바가 있는 거 같은데...혹시 오버라이딩일까요?
-
해결됨딥러닝 이론 + PyTorch 실무 완전 정복
Section14 관련 질문요청드립니다.
83쪽에 '예를 들어 (3*3) Conv.Kernel 2개를 쌓은 경우 Receptive Field는 (7*7)이 된다!'라고 하셨는데 Kernel이 쌓이는게 아니라 Layer 아닌가요?? 혹시 제가 잘못 이해하고 있었다면 지금까지 각 Layer마다 하나의 kernel만 훑고 지나가는 줄 알고 있어서 Kernel이 쌓인다 라는 개념을 잘 모르겠습니다.기존 ANN에서 Bias를 더하는 개념과 ResNet에서Residual Connection을 더하는 개념의 차이를 잘 모르겠습니다. 둘다 비슷하게 느껴집니다 ㅠㅠ.
-
미해결딥러닝을 활용한 자연어 처리 (NLP) 과정 (기초부터 ChatGPT/생성 모델까지)
seq2seq 모델
seq2seq 모델에 기반으로encoder-decoder, teacherforce 모델이 생긴것인가요?아니면 3개다 각각의 모델인가요?
-
미해결딥러닝을 활용한 자연어 처리 (NLP) 과정 (기초부터 ChatGPT/생성 모델까지)
강의 내용중 질문있습니다.
LSTM 함수 정의전 맨 아래와 같이 정의를하는데B같은 경우 인풋을 의미로sentences = ["hi man", "hi woman"]리스트의 값과 같이 2개를 받는다고 생각하면되나요?T 같은경우에는 time이 정확히 어떤것을 의미하는 것일까요??D 또한 feature인데 어떤것을 의미하는 지모르겠습니다..U는 아웃풋인건 이해했고요..혹시 아래 이미지와 같은 이미지를 기준으로 T값 2는hi를 h, i 로 2개 받는다는 의미일까요?D와 T는 모르겠습니다..U는 이미지 기준 4겠네요? 이부분만해결되면 코드를 더 이해할수있을것같습니다ㅜㅜB = 2 #batch size / 2개의 인풋 값이 들어가도록 설정 T = 5 #time steps D = 1 #features U = 3 #LSTM units / LSTM output 유닛 개수 X = np.random.randn(B,T,D) print(X.shape) print("\n") print(X)