월 22,000원
5개월 할부 시다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
tf.data
안녕하세요 교수님 최근 들어 tf.data api를 익혀볼려고 합니다 :) 저희가 데이터를 받아올때 수업에서는 Sequence 기반으로 custom dataset을 통해서 받아서 내부에서 전처리를 했는데 tf.data같은 경우 custom dataset을 어떻게 만들어야하는지가 궁금해서 이렇게 질문드립니다 :) 감사합니다.
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
안녕하세요 교수님 질문드립니다.
개인적인 공부를 하면서 Sequence기반 custom dataset을 만들어서 진행하고 있습니다. 수업과 마찬가지로 기본적인 dataframe(이미지 파일 경로, label) 값을 넣고 코드를 작성했습니다. 다름이 아니오라, next(iter(train_ds))를 했을때 KeyError가 발생합니다. 비어있는 값이 없는데 해당 에러가 왜 발생하는지 모르겠습니다. 아래 사진도 같이 첨부합니다. 감사합니다
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
Input Image Size에 대한 질문입니다
안녕하세요 교수님 강의를 열심히 듣고 있는 학생입니다. 다른게 아니고 input image size를 왜 (224,224)를 쓰는지 궁금합니다. VGG도 그렇고 GoogleNet도 그렇고 왜 224를 쓰는 건가요? VGG논문을 다 읽어봤지만 그거에 대한 명확한 답을 찾지 못했습니다. 다양한 이미지를 crop하기 위해서 224로 설정했다는 답변을 본적은 있지만 왜 굳이 224인지는 이해하지 못했습니다. 혹시 말씀해주실 수 있을까요?
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
컴퓨터 비전 완벽가이드 수강 관련하여 질문드립니다!!
항상 강의 잘 수강하고 있는 학생입니다! 제가 머신러닝 완벽가이드 와 cNN 완벽가이드를 수강 완료하여, 컴퓨터 비전 완벽가이드를 수강하려고 하는데, 사전 지식에 pytorch가 있어서 여쭈어봅니다. pytorch에 관하여 학습을 한후, 수강을 하는 것을 추천하는지 pytorch에 관하여 지식이 전무해도 수강하는데 크지 않는지 여쭈어봅니다.
- 해결됨딥러닝 CNN 완벽 가이드 - Fundamental 편
target_size 인수에 대한 질문
안녕하세요? 항상 좋은 강의 감사드립니다. CNN 을 여러가지 소스로 공부하고 있었지만 중간중간 막히는 부분이 많았었는데, 본 강의를 들으며 하나씩 뚫리는 기분이 듭니다. ImageDataGenerator 인스턴스의 flow_from_directory 메소드 에서 사용되는 target_size 인수에 대한 질문입니다. 본 기능을 통해 variety 한 이미지 손쉽게 사이즈들을 단일 사이즈로 통일시켜서 모델에 input 시킬 수 있을 듯 한데요, 예를 들어 input 이미지가 256 X 1024 등과 같이 세로로 wide 하게 찍은 사진인 경우도 224 X224 로 짜부해서 강제로 맞추는 방법인 것으로 이해하면 되는지.. 문의드립니다. 만약 그렇다면 그 방법 자체가 agumentation 이 적용된 것과 같은 효과가 되는 것은 아닌지요..? 이미지가 왜곡되어 학습을 어렵게 한다는 측면에서는 over fit 에 유리한 부분도 있겠지만 사진의 특징을 잡아내는데 어려움을 주게 되고, 모델 성능에 한계를 주는 요인이 될 수 있지 않을까 싶어서요 아직은 잘은 모르고... 개념적으로만 들은 keyword 이지만, segmentation 과 같은 방법으로 전체 이미지 중에서도 관심을 가지는 특정 부분을 잡아낸 이후에 target_size=(224, 224) 와 같이 설정하는 방법이 예측성능 측면에서는 더 좋을 것 같기는 한데요... 제가 이해한 것이 맞을지 문의드립니다.
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
학습된 가중치들에 대해 질문 드립니다.
선생님 안녕하세요, 항상 강의 잘 듣고 있습니다. 다름이 아니라, 해당 강의에서 다룬 pretrained된 모델을 기반으로 classification level만 바꾸어 훈련할 때, pretrained 되어 저희가 가져온 부분에 해당하는 가중치들은 변화하지 않고 오직 저희가 마지막에 추가한 레이어들에 속해있는 가중치들만 학습이 되는걸까요? 전이 학습을 사용할 때 이미 학습된 가중치들을 가져와서 가중치 초기화를 할 때만 이용할 수도 있다고 언급 하셨어서 이 코드에서는 어느 범위까지 미리 학습된 가중치들을 활용하셨는지 궁금합니다. 또 만약에 pretrained된 레이어에 해당하는 가중치들은 변화하지 않고 오직 저희가 새로 추가한 레이어에 해당하는 가중치들만 경사 하강법을 통해 계속 업데이트 되고 있다면, 기존 코드들에 비해 실행 시간이 훨씬 오래 걸리는 이유가 그만큼 back propagation 과정이 길기 때문이라고 이해해도 될까요? 감사합니다!
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
강사님 efficientNet 질문이 있습니다.
1.efficientNet의 B0~B7마다의 리솔루션(이미지 사이즈)가 있는데 해당 모델을 만들 때, 각 B0~B7마다의 이미지 사이즈를 어느정도 맞춰주면 해당 사이즈에 최적화 된 필터수, 레이어 개수를 맞춰주어서 모델이 학습을 하여 성능을 올리려는 게 efficient 모델 맞나요?? 2. 1번이 맞다면 최적의 조합을 맞춰주려는 내부 과정의 코드를 개인이 직접 자신의 데이터 상황에 맞게 수정해볼 수 도 있나요??
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
강사님 Cosine Decay Restart 질문이 있습니다.
해당 Cosine Decay Restart 기법을 적용해서 learning rate를 변화 시킬 때 배치 단위로 변화를 시킨다고 하면 사이클링 한 그래프 형태의 learning rate가 배치 스텝별로 적용 되는 건가요?
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
강의 교재 163p 질문
강의 교재 163p 3번째 동그라미 내용에 질문이 있습니다. '아래 4x4 Feature Map에 2x2 Filter를 적용 시 출력 Feature Map은 3x3이 됨 입력 Feature Map과 출력 Feature Map의 크기를 맞추기 위해 좌우 끝과 상하 끝에 0 값을 채워서 6x6 Feature Map으로 변경 그리고 2x2 Filter를 적용하여 Padding 적용 전 원본 Feature Map 크기와 동일한 4x4 Feature Map 출력' 위 내용에서 최종적으로 출력되는 feature map의 사이즈가 4x4가 아니라 5x5 아닌가요?
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
EfficientNet b7 Scaling 미적용 질문
안녕하세요 권철민 강사님. 열심히 수강하고 있는 수강생입니다. 다름이 아니라 EfficientNet B7 학습 중 질문이 생겨서 이렇게 문의드립니다. 제가 이해하기론 기존까지 Deep Learning 학습할 때 이미지 픽셀의 범위는 -1 ~ 1 혹은 0~1 사이로 scaling 한 다음에 학습을 진행하였는데, 이 모델에서는 픽셀 값이 scaling이 아예 미적용된 것 같습니다. 저번 강의에서 keras가 tensorflow 2.3? 2.4? 버전에서 병합되면서 그 이후로 preprocess _input을 적용해도 스케일링이 잘 안된다고 하셨는데 그 이유 때문인가요? 이렇게 scaling이 적용이 안될 경우에 scaling 적용 없이 학습을 진행해도 무방한 건가요? 무방한 것이 아니라면 torch style의 scaling이라도 해서 학습을 해야되는 건지 궁금합니다. 항상 감사드립니다 강사님!!
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
model.fit() 여러번 실행
안녕하세요. 강의 잘 듣고 있습니다. 실습예제 따라하던 중, 질문이 생겨 여쭤봅니다. model.fit()을 실행하는 과정에서 batch_size 변경을 통한 실행속도 차이 확인을 위해, batch_size만 변경하여 해당 코드를 여러번 실행시켜보았는데요, 처음 실행 이후부턴 accuracy 값이 이전 실행 결과값에 이어 상승하는 것을 확인하였습니다. 또한, 기존 model.compile() 에서, optimizer를 RMSprop로 변경하여 코드 실행 후, model.fit()을 실행해도 이전 결과값부터 시작하였습니다. 제가 질문드리고 싶은 내용은 (1) model.fit() 실행 시, 결과로 도출된 weights와 bias는 해당 model에 자동으로 저장(?)되는 것인가요? (2) model.compile()을 중간에 바꿔도 이전에 model.fit()을 통해 맞춰진 weights와 bias도 그대로 유지되는 것인가요? (3) model을 새롭게 돌리려면 kernel의 재시작, model명 변수를 다르게 하여 새롭게 지정하는 방법 외에 다른 방법이 있나요? 항상 빠르고 정확한 답변 감사드립니다 :)
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
Pretrained Model 활용 질문
안녕하세요? 항상 좋은 강의 감사드립니다. 사전 훈련 모델관련 본 강의의 예제에서는 cifar1000으로 사전 훈련된 모델로 cifar10 의 이미지 분류에 적용해 보았는데요, 어찌 생각해보면 범주 개수만 차이가 나지 유사한 이미지를 분류하는 것 같기도 합니다. cifar1000 분류에 최적화 된 사전 훈련 모델을 전혀 다른 종류의 이미지 분류에 사용하는 경우, 예를들어 가족 얼굴의 분류라든지, 다양한 세포사진 중에서도 암세포를 분류하는 경우라든지, 혹은 제조 부품의 도면에 보여지는 3D math modeling 의 형상 캡쳐 사진을 가지고 design type 을 분류하는 경우 등에도 Pretrained Model 을 적용하면 좋은 성능을 나타낼 수 있다고 이해하면 될지.. 질문 드립니다. 다시말해 꼭 cifar 1000 에 포함된 사물뿐아니라 전혀 다른 종류의 이미지를 분류하는데도 좋은 성능을 보일 수 있는 범용적인 네트워크로 활용 가능하다고 이해하면 될지 질문드립니다. 감사합니다!
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
강사님이 구현하신 코드 질문입니다.
11 강사님 안녕하세요. 항상 강의 잘 듣고 있습니다 :) 다름이 아니라 강사님이 구현하신 Inception 초반부 코드에 관해 질문드리고자 질문을 작성하였습니다. 강사님이 구현하신 코드 중 빨강색으로 표시한 부분이 Conv2D가 2개로 되어 있는데, 그게 논문에서 빨강색으로 표시한 depth가 2여서 Conv2D를 2개로 구현하신건지 궁금합니다. 추가로, 저렇게 구조를 보면서 코드로 구현하고자 할 때, depth는 어떤 의미를 갖는 지 궁금합니다. 제가 못 찾는 것일 수 있지만 검색을 하다가 못 찾아서 질문드립니다..!! 항상 양질의 강의 감사드립니다. 좋은 하루 되세요!!!
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
filter의 종류?는 model 생성 시 지정하지 않는건가요?
안녕하세요. 수업 듣던 중 질문이 생겨 여쭤봅니다. 앞선 강의에서 설명해주셨던 필터는 마치 사진촬영 어플의 필터처럼, 적용 시 변경된 결과물을 도출해주며, GIF 예시로도 보여주셨었는데요. (빨간 필터, 초록 필터; 커널과 피처맵 강의 中 도시 전경 이미지에 필터 적용 예시) 본 강의에서 드는 의문은 Conv2D 레이어를 만들 때, 필터 사이즈만 정하고 정작 해당 필터가 어떤 필터인지는 정하지 않는건가요? (사진 어플의 필터를 예로 들자면, 흑백 필터인지, 스케치 효과의 필터인지 등) 혹은 이후에 특정 크기로 만들어놓은 Feature Map에 각각 filter를 적용하는 과정을 추가로 거치게 되는건가요?
- 해결됨딥러닝 CNN 완벽 가이드 - Fundamental 편
Batch Normalization Layer 의 Training parameter 이해 관련 질문
안녕하세요? 머신러닝 완벽가이드 수강하고 CNN 으로 넘어왔네요~ 요 강의 마치고 컴퓨터 vision 쪽 강의도 수강하려고 미리미리 구매해 놓았습니다. ㅎㅎ 항상 좋은 강의 감사드립니다! Batch normalization 강의를 듣고 실습을 해 보다가 세 가지 궁금한 점이 생겨서 질문 드립니다. (아래 내용 중에서 제가 잘못이해하고 있는 부분 지적해 주시면 감사드리겠습니다. ^^;;) 아래 그림과 같이 Batch Normalization 을 포함시켜서 Model Creation 했을 때 Model Summary 를 보면 Batch Normalization layer 에도 Training paramter 가 할당되는 것을 볼 수 있는데요, 1) Batch normalization layer 의 training paramter 의 갯수는 어떤 수식(?) 에 의해서 결정되는지.. 궁금합니다. 수식을 알 수 있다면 layer 에 대한 이해를 조금 더 높일 수 있을 듯 해서 질문드리고 있습니다. 2) BN 방법이 Batch 별로 Z = (X - Xbar)/S 수식을 적용해서 얻은 평균이 0이고 표준편차가 1로 scaling 이 된 데이터들을 activation function 에 input 하는 방식인 것으로 이해가 되는데요, 각 node 나 feature point 들 중 신호가 약한 부위를 끄거나 (off), 신호가 분명한 부위를 켜는 (on) 역할을 데이터 평준화를 통해 좀 더 일관성 있게 해 주는 거라고 이해하면 될지요? (강의 중 설명에서는 오히려 noise 개념으로 어려운 학습을 하게 해서 overfit을 줄이는 역할을 한다고 해서.... 사실 일반적인 ML 에서의 표준화 개념과는 상충되는 듯 해서 이해하기 쉽지 않습니다.) 요약 드리면 Batch normalization layer 가 전 후 layer 들에게 영향 주는 물리적인 역할이 무엇인지.. 에 대한 질문입니다. Conv 와 Activation 사이에 위치한다면 Conv layer 에는 영향을 주지 않을 것이고, Activation 을 통과하는 결과에만 영향을 줄 것 같아서요. 3. '표준화' 라는 개념으로 BN layer 를 이해해 보면 왠지... 각 배치별 평균 벡터와 표준편차 벡터값 (혹은 분산-공분산 행렬) 들을 저장해 놓았다가, test data 예측시 활용할 것도 같은데요.. (마치 sklearn 의 preprocessing 모듈의 StandardScaler 클래스의 fit 메소드 처럼) 다만 매 batch 별로 표본 평균 벡터와 표본 분산공분산 행렬이 계속 달라질 것일텐데, batch 가 진행되면서 해당 통계량들을 업데이트 했다가 최종적으로 업데이트 된 통계량을 test data 예측할 때 사용하게 되는 것인지요..? 요 개념이 맞다면 대략 어떤 방식으로 weight 들을 업데이트하며 학습하게 되는지.. 개념적으로라도 이해하고 싶습니다. 다른 weight 들과 마찬가지로 결국 loss 를 줄이는 방향으로 최적화 되는 weight 들인 것인지도 궁금하구요~~ (아니면 BN 의 training parameter 들은 일종의 noise 처럼 임시로 저장은 하지만 예측 시 활용이 안되는 weight 들인 것인지요? ) 감사합니다!
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
loss 값의 해석
강사님 안녕하세요. 강의 마지막 부분 중 loss에 대한 질문이 있어 글 남깁니다. accuracy의 경우, 0~1의 값을 가지므로 본 강의의 trained model의 accuracy 값인 0.8828의 수준에 대한 직관적인 이해가 가능합니다. (11:15초 부분의 맨 마지막 코드 결과값) 하지만, loss 값의 경우, 테스트 한 1만개의 이미지에 대해 softmax output 값으로부터 거꾸로 loss가 구해지는 것으로 이해를 했는데요, 이런 경우 0.3675라는 loss값이 정확히 어느정도의 값을 나타내는지 직관적으로 이해하기 어려웠습니다. 0.3675라는 loss 값을 판단할 때, 무엇을 기준으로 보는게 가장 적합할지 여쭤봅니다. (ex, 총 10개의 클래스를 가지는 데이터셋이었으므로 10을 기준으로 판단? 혹은 1만개의 테스트 이미지를 사용하였으므로, 사용한 이미지의 개수를 기준으로 판단? 등)
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
모델 구현 방법론 질문드립니다.
권철민 강사님! 강사님의 강의 정말 감동적입니다. 열심히 듣고 있는 수강생입니다. ResNet을 직접 구현해보는 것이 좋다고 하셨는데, 여기서 어떤 방향으로 말씀하신건지 궁금해서 여쭤봅니다. 1. ResNet 논문을 읽고, 논문코드를 보지 않고 직접 Custom으로 구현해보기 2. ResNet 논문을 읽고, 논문코드를 보면서 따라쳐보기 3. ResNet 논문을 읽고, 논문코드를 보면서 따라쳐보기 + 여러가지 하이퍼파라미터를 수정해보기 (Cumstom) 혹은 1,2,3 다하기 ,혹은 제가 생각치 못한 방향이 있는지 궁금합니다. (어떤 방향이 강사님이 말씀하신 "모델 구현"의 방향인지 궁금합니다) 혼자 공부하고 있는 입장에서 추후 모델 구현을 목표로 하고 있는데, 구체적인 공부 방향을 고민하는데 있어 강사님의 조언을 듣고 싶었습니다. 감사드립니다!! 날씨가 추운데 항상 몸 건강하시길 바랍니다 :)
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
MinMaxScaler 미사용
안녕하세요. 좋은 강의 제공해주셔서 감사합니다. 이번 강의를 듣던 중 몇가지 의문점이 생겼는데, 다음과 같이 여쭤봅니다. 1.경사하강법에서 변수 표준화를 거친 뒤 weight와 bias를 구했을 때, 만약 이후 추가로 적용하는(ex; 동일 데이터 변수를 가지고 boston이 아닌 detroit에 적용해본다고 했을 때) 변수가 RM, LSTAT의 최소~최대 범위 밖에 있다면, 구해진 weight와 bias도 달라져야 하는 것은 아닌지? 2.타겟값은 왜 표준화를 거치지 않는지? 3.변수 표준화 없이 경사하강법을 적용하는건 왜 제대로 작동하지 않는지? (실제로, 코드를 변경하여 표준화 없이 시행해 봤을땐 loss 값이 무한히 커졌음) 4.변수 표준화 없이 경사하강법을 사용할 수 있는 방법은 무엇인지? 5.MinMaxScaler를 사용해야 하는 정확한 이유는 무엇인지? MinMaxScaler의 명확한 사용 이유에 대해 의문이 있다가, 추가적인 의문점이 들었습니다. 한 번에 너무 많은 질문을 드린건 아닌가 하는 생각이 들지만, 답변 해주시면 감사하겠습니다!! :)
- 미해결딥러닝 CNN 완벽 가이드 - Fundamental 편
resnet구현하는 파트에서 CIFAR_Dataset관련하여 질문이 있습니다
안녕하세요 딥러닝 CNN 완벽가이드를 수강하는 학생입니다. 다름이 아니라 resnet을 구현하고 cifar10으로 성능테스트를 해보는 과정에서 의문이 있어 질문드립니다. class CIFAR_Dataset(Sequence): def __init__(self, images_array, labels, batch_size=BATCH_SIZE, augmentor=None, shuffle=False, pre_func=None): self.images_array = images_array self.labels = labels self.batch_size = batch_size self.augmentor = augmentor self.pre_func = pre_func self.shuffle = shuffle if self.shuffle: # self.on_epoch_end() pass 처음 sequence dataset을 설명해주셨을 때(catndog), self.images_filenames = images_filenames를 통해 데이터프레임에 있는 image의 경로를 받아오면 메모리에 문제가 없는데 만약 self.images_filenames에 이미지의 numpy array 형태로 받아오면 메모리가 터질수 있다라고 설명하셨는데요. cifar10의 데이터는 numpy array형태로 되어있는 걸로 알고있는데 self.images_array = images_array를 통해 cifar10의 이미지 array를 받아오면 self.images_array에 cifar10의 모든 image array가 들어오게 되는게 아닌가요?? 그렇게 되면 메모리가 터진다고 말씀하셨던거 같은데... 제가 잘못이해하고 있는건지 이 부분이 좀 헷갈려서 질문드립니다
- 해결됨딥러닝 CNN 완벽 가이드 - Fundamental 편
권철민 교수님 모든 강의를 다 듣고 있는 학생입니다.
안녕하세요 권철민 교수님 교수님의 모든 강의를 다 듣고 있습니다. 좋은 강의 감사합니다.첫번째 질문: 딥러닝 컴퓨터 비전 완벽가이드 초기판부터 개정판까지 수강하고 있고 동시에 CNN 완벽가이드, 파이썬 머신러닝 등 수강을 하면서 저는 늘 궁금했습니다. 제가 pyqt5를 UI디자인하고 Yolov5 모델을 트레이닝하면서 실시간 영상의 결과를 DB로 받아서 알람을 주는 스마트 CCVT 시스템을 한번 구성하고 싶어서 github에서 다른 개발자가 만든 소스도 참고하고 있습니다. 혹시 교수님께서 Github에서 잘 만들어 졌다고 fork 하시거나 추천해주실 만한 실시간 영상 오브젝트 디텍션 오픈소스가 있으신지요? 두번째: 오라클 성능 분석강의도 듣고 있는데 혹시 No SQL 쪽 강의 계속은 없으신지? 위에 부분에서 오브젝트 디텍션으로 받은 결과값을 DB로 저장하여 데이터를 시각화 하는 부분을 시스템으로 확장하고 싶어서 여쭤봅니다. 새로나온 강의도 수강신청 할겸 해서 여줘봅니다. 교수님 지식을 나누어 주셔서 감사합니다.