인공지능

딥러닝 : 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..

딥러닝 : 레이블링된 y값을 원핫 인코딩으로 바꾸기 tf.keras.utils.to_categorical() / Mnist 손글씨 숫자 예측
다음과 같은 ANN을 만들 것이다. 이미지파일(28X28픽셀)이 입력으로 들어오면, 아웃풋으로는 0~9 까지의 10개 숫자로 분류하는 인공지능! 사진은 2차원 데이터이므로, 우리는 ANN의 입력에, 사진의 픽셀값을 flattening 하여 입력을 줄 것이다. 따라서 입력레이어는 784개, 히든1은 512, 히든2는 512, 아웃풋은 10개의 신경망 구축. import numpy as np import matplotlib.pyplot as plt import pandas as pd from PIL import Image %matplotlib inline import tensorflow as tf from tensorflow.keras.datasets import mnist from tensorflow.ke..

딥러닝 : Tensorflow의 모델을 저장하고 불러오는 방법
https://hyunsungstory.tistory.com/161 딥러닝 : Fashion mnist 10개로 분류된 패션 이미지를 tensorflow를 이용해 분류하기 / Flatten , softmax , 분 1. 이미지와 행렬 모든 이미지 사진은 픽셀당 숫자로 되어있습니다. 0~255까지 되어있고 0이 검정색, 255가 흰색입니다. 그 숫자의 데이터 타입은 Uint8(Unsigned int) 이라고 적습니다. 먼저 검정부터 회 hyunsungstory.tistory.com 위 게시글과 똑같은 데이터셋을 이용하여 모델링 과정 이후에 모델을 저장하고 불러오는 방법들에 대해 설명하겠습니다. 1. 전체 네트워크와 웨이트를 통으로 저장하고 불러오기 - 폴더 구조로 저장,불러오기 # 폴더 구조로 저장. mo..