인공지능/딥러닝

    딥러닝 : 원본 파일을 Train / Test 파일로 분리하여 사용하는 방법과 디렉토리를 만드는 방법

    import os import zipfile import random import tensorflow as tf from tensorflow.keras.optimizers import RMSprop from tensorflow.keras.preprocessing.image import ImageDataGenerator from shutil import copyfile 필요 라이브러리 import # /tmp 경로에 압축파일을 다운로드 받고 압축 푼다. !wget --no-check-certificate \ "https://block-edu-test.s3.ap-northeast-2.amazonaws.com/kagglecatsanddogs_5340.zip" \ -O "/tmp/cats-and-dogs.zip..

    딥러닝 : 이미지 데이터 증강 / Image Augmentation

    텐서플로우 케라스 이미지 데이터 증강 관련 API는 https://keras.ip/api/preprocessing/image/ 여기를 참고한다. 사용하는 파라미터들을 사진으로 몇 가지 표현 하면 아래 사진들과 같다. 파라미터 사용은 위 사진과같이 사용한다. 실제 사용 코드 def build_model() : model = Sequential() model.add(Conv2D(16,(3,3),activation='relu',input_shape=(150,150,3))) model.add(MaxPooling2D((2,2),2)) model.add(Conv2D(32,(3,3),activation='relu')) model.add(MaxPooling2D((2,2),2)) model.add(Conv2D(64,(3..

    딥러닝 : CNN 말과 사람 분류하기 / CNN모델링 방법 , 이미지파일을 학습 데이터로 만드는 방법(ImageDataGenerator)

    모델링 이미지는 300X300 칼라 이미지다. 간단한 모델링 하기. 사진의 결과는 2개중의 하나이므로, 맨 마지막 액티베이션 함수는 'sigmoid' 사용 import tensorflow as tf from keras.layers import Dense,Flatten,Conv2D,MaxPooling2D from keras.models import Sequential 필요 라이브러리 임포트 def build_model() : model = Sequential() model.add(Conv2D(16,(3,3),activation='relu',input_shape=(300,300,3))) model.add(MaxPooling2D((2,2),2)) model.add(Conv2D(32,(3,3),activatio..

    CNN의 convolution,Stride,Padding,Pooling / feature map의 사이즈를 구하는 공식

    CNN CNN이란 Convoulutional Neural Networks이다. Convolution 컨볼루션 계층은 이미지 features를 학습하는 계층이므로 CNN에서 가장 중요한 부분이다. Image features란, Edges,Colors 그리고 Patterns/Shapes와 같은 것들을 말한다. Stride 커널을 이동할 때 몇 칸 이동할 것이냐를 정해주는 것이 Stride=number이다. 위 사진은 Stride=1 위사진은 Stride=2이다. Padding 5X5의 이미지를, 3X3의 feature로 컨볼루션 하면 결과는 3X3의 featuremap이 된다. 이렇게 되면 이미지의 사이즈가 줄어드므로, 사이즈를 조절하기 위해서 패딩을 사용한다 그림으로 표현하면 아래 사진과 같다. Pooli..