목록머신러닝/머신러닝 (42)
안 쓰던 블로그
steps_per_epoch steps_per_epoch = 훈련 샘플 수 / 배치 사이즈 예시1: 총 45개의 훈련 샘플이 있고 배치사이즈가 3이면 최대 15 스텝으로 지정한다 (그 이하 가능) 예시2: 총 80개의 훈련 샘플이 있고 배치사이즈가 10이면 최대 8 스텝으로 지정한다 사이즈가 너무 크면 이런 에러가 뜬다 Your input ran out of data; interrupting training. Make sure that your dataset or generator can generate at least `steps_per_epoch * epochs` batches (in this case, 150 batches). You may need to use the repeat() functio..
dropout을 적용한 forward propagation(순전파)을 계산할 때 주의할 점이 있다. 최종 cost가 dropout을 사용하지 않았을 때와 동일한 값을 유지하도록 마지막에 keep_prob값으로 나눠주는 것이다. 아래 순전파 코드가 있다. # GRADED FUNCTION: forward_propagation_with_dropout def forward_propagation_with_dropout(X, parameters, keep_prob = 0.5): """ Implements the forward propagation: LINEAR -> RELU + DROPOUT -> LINEAR -> RELU + DROPOUT -> LINEAR -> SIGMOID. Arguments: X -- inp..
logistic regression back propagation derivative 로지스틱 회귀 역전파 미분 유도 로지스틱 회귀 역전파를 구하면 다음과 같다 $$da=-\frac{y}{a}+\frac{1-y}{1-a}$$ $$dz=a-y$$ $$dw=dz x$$ $$db=dz$$ $x$ 는 고정값이므로 $dx$ 를 구하지 않는다 검은색 식은 순전파 때의 식 1. $\frac{\partial L}{\partial a}$ 구하기 2. $\frac{\partial a}{\partial z}$ 구하기 3. $\frac{\partial L}{\partial z}$ 구하기
Transfer Learning(전이 학습)과 함께 Image augmentation(이미지 증식)을 사용 가능할까? Can you use Image augmentation with Transfer Learning? 보기1) 가능할 것이다 사전 훈련된 레이어가 동결되어 있으므로 건들 수 없다. 대신 네트워크에 맨 아래에 새로운 레이어를 추가하면, 그 레이어를 훈련할 때 이미지 증식을 사용할 수 있다 It's pre-trained layers that are frozen. So you are adding new layers at the bottom of the network, and you can use image augmentation when training these 보기2) 불가능할 것이다 레이어들..
기본 개념을 되짚어보며 정리 참고한 책: Deep Learning from Scratch 퍼셉트론 인공 뉴런, 단순 퍼셉트론이라고도 한다 다수의 신호를 입력으로 받아 하나의 신호를 출력한다 (인공지능을 말할 때 흔히 보았던 뉴런 이미지를 생각하면 된다) 여기서 말하는 신호는 흐른다/안 흐른다 두 가지 값을 가진다 입력 신호가 노드=뉴런에 보내질 때 각각 고유한 가중치가 곱해지고, 임계값=세타를 넘어설 때 1, 아니면 0이 된다 임계값을 반대로 넘기고 $b$로 기호를 치환하면 편향이 된다. 이 식을 $h(x)$라는 함수를 거치면 다음과 같이 표현할 수 있다 이 때, $h(x)$를 활성화 함수라고 한다 퍼셉트론으로 AND, NAND, OR을 구현할 수 있다 이 3가지 게이트를 그래프로 그려 보면, 직선 하나..
kaggle - Dogs vs. Cats 1. 소규모 데이터셋에서 CNN 훈련하기(Dogs vs. Cats 데이터셋) https://foxtrotin.tistory.com/473 2. 사전 훈련된 CNN 사용하기 (ImageNet 데이터셋, VGG16 모델) https://foxtrotin.tistory.com/486 3. 미세 조정 https://foxtrotin.tistory.com/507 케라스 창사자에게 배우는 딥러닝 5장을 개인적으로 공부한 내용을 덧붙여 정리한 글입니다. 이전 글에서 캐글의 cats vs. dogs 데이터셋을 가지고 소규모 데이터셋에서 컨브넷을 훈련해 보았다. 데이터 증식 방법을 적용하여 과대 적합을 줄였지만, 전체 데이터 자체가 적기 때문에 컨브넷을 처음부터 훈련해서 더 높은..
ValueError: This model has not yet been built. Build the model first by calling `build()` or calling `fit()` with some data, or specify an `input_shape` argument in the first layer(s) for automatic build. model.summary() 를 사용했을 때 build 가 되지 않은 모델이라는 에러에러 메시지가 하라는 대로 build나 fit을 해 주면 해결된다 아니면 모델을 만들 때 input_shape 옵션을 추가한다 import tensorflow as tf from tensorflow import keras from tensorflow.keras ..