안녕하세요 강사님 섹션 2의 CNN 실습(100_CIFAR10_CNN.ipynb) 관련하여 질문드립니다. 아래 코드에서는 train_loss에 배치별 loss를 누적한 뒤, for문이 끝나면 train_loss /= len(train_data) 로 평균을 계산하고 있습니다. 그런데 loss.item()은 이미 각 배치에서 평균이 적용된 스칼라 값입니다. 따라서 다시 전체 데이터 개수(len(train_data))로 나누면 이중으로 평균이 계산되는 것 같습니다. 그래서 저는 train_loss += loss.item() * x.size(0) 형태로 배치 손실의 합계를 누적한 뒤, 마지막에 전체 데이터 수로 나누는 방식이보다 정확하다고 생각하는데, 혹시 어떻게 생각하실까요? 좋은 강의 제공해주셔서 감사합니다. for x, y in train_loader: # 훈련 데이터셋을 배치 단위로 순회 x, y = x.to(device), y.to(device) # 배치 데이터를 현재 디바이스로 이동 optimizer.zero_grad() # 이전 그라디언트를 초기화 z = model(x) # 모델을 통해 예측값 계산 loss = criterion(z, y) # 예측값과 실제 레이블 간의 손실 계산 train_loss += loss.item() # 손실 누적 y_pred = z.argmax(1) # 가장 높은 예측값의 인덱스를 정답으로 선택 train_acc += (y_pred == y).sum().item() # 정확히 예측된 개수 누적 loss.backward() # 손실에 대한 그라디언트 계산 optimizer.step() # 모델의 가중치 업데이트 train_loss /= len(train_data) # 평균 훈련 손실 계산 train_acc /= len(train_data) # 평균 훈련 정확도 계산 LOSS.append(train_loss) ACC.append(train_acc)
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 보시다시피 sum()은 아예 없어요. NumberExpression 클래스에서 집계 함수들을 살펴보니깐 sum() 은 private로 되어있고, 나머지 sum 함수들은 내부에서 sum()을 호출해요. 구글에 검색해보면 다들 sum을 쓸 수 있는 것처럼 보이던데 왜 저만 이럴까요? 그리고 sumBigInteger()는 있는데 정작 sumInteger()는 왜 없을까요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 아니오 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 공부한 내용을 블로그(노션)에 작성하려 하는데, PDF에 있는 그림 이미지 같은 것들을 캡쳐해서 사용해도 괜찮을까요?
안녕하세요. python에서 강의하신대로 코드 입력후 터미널에 python 파일이름.py를 실행하면 아무런 반응이 없이 PS D:\Dev\PYTHON> PS D:\Dev\PYTHON> 글만 다시 뜹니다. (에러코드도 없음) 해결방법을 몰라 진행이 안되는데 코파일럿 통해 질의해도 환경이나, 코드는 정상이라고 합니다. 해결방법을 알려주시면 감사하겠습니다...
안녕하세요 선생님, 현재 데이터 엔지니어 직무 면접을 준비하고 있는 수강생입니다. 저는 이번 면접에서 ETL 아키텍처 및 데이터 파이프라인 구성 과 관련된 주제를 중심으로 준비하고 있습니다. 수업을 통해 많은 내용을 배우고 있지만, 솔직히 말씀드리면 양이 너무 방대하다 보니 모든 부분을 다 소화하기가 쉽지 않습니다. 시간도 빠듯해 점점 불안감이 커지고 있습니다. 그래서 정말 간절한 마음으로 도움을 부탁드립니다. 혹시 면접에서 특히 중요한 핵심 개념 이나 자주 나오는 질문 , 그리고 실제 사례 중심으로 정리하면 좋은 부분 이 무엇인지 방향을 잡아주실 수 있을까요? 혹은 강의만 따로 추천 해주시면 감사하겠습니다. 제가 부족한 부분을 더 보완해서 면접에서 꼭 좋은 결과를 내고 싶습니다. 늘 열정적으로 가르쳐주시는 것에 감사드리며, 간절히 도움을 청합니다. 감사합니다.
안녕하세요. 강의 너무 잘 듣고 제 프로젝트에 필요한 부분들로 리팩토링 하면서 MSA를 처음 공부하려 했습니다! 먼저 제 프로젝트는 거의 똑같은 구조로 게시글이 있습니다. 2가지의 질문이 있습니다. (1) 정보를 취합하기 위해 동기로 API호출을 한다는 것은 장애 전파가 된다고 이해하고 있습니다. 그렇다면 저희 예시에서도 Article-read에서 조회수는 api호출을 통해 받기로 했습니다. 그렇다면 어느정도의 장애 전파는 허용한다고 받아들여집니다. 실제 서비스에서도 여러 정보를 취합해서 줘야하는 경우가 많을텐데 API를 통해 정보를 가져오는것이 절대 안되나요? 아니면 종종 허용하기도 하나요? (2) CQRS의 Query(질의)부분은 데이터 수정이 없어야 한다 이해했습니다. 그런데 데이터를 수정해도 되나요? 예를 들어 제가 게시글 상세 조회를 게시글 모듈에서 분리하려고 합니다. 그런데 게시글 상세 조회를 하게되면 조회수가 올라갑니다. 따라서 게시글 상세조회 발생 -> 조회수 증가 이벤트 발생 ->조회수 증가 이런 식으로 구상을 했습니다. 이러한 질의 부분 모듈에서 데이터를 수정하게 만드는 이벤트가 발생해도 괜찮을지 여쭤봅니다!!