CNN (Convolutional neural network)

category AI 인공지능/AI Vision 2018. 12. 31. 13:48
728x90
반응형

 

CNN 을 왜 사용하는가?

  • stationarity : stationarity는 주로 통계의 시계열 분석에서 사용되는 용어로 시간에 관계없이 데이터의 확률 분포는 일정하다는 가정이다. 쉽게 말해 시간이 이동되어도 동일한 패턴이 반복된다는 뜻이다. 더 정확하게 시간이 지나도 데이터 분포의 파라미터인 평균, 분산등이 변하지 않는다는 가정을 베이스로 예측을 한다.

  • locality : locality of pixel dependencies는 쉽게 이미지는 작은 특징들로 구성되어 있기 때문에 픽셀의 종속성은 특징이 있는 작은 지역으로 한정된다는 의미이다. 즉 이미지를 구성하는 특징들은 이미지 전체가 아닌 일부 지역에 근접한 픽셀들로만 구성되고 근접한 픽셀들끼리만 종속성을 가진다는 가정이다.

 

CNN 데이터 셋 만들기

  • 이미지 : 이미지를 픽셀 데이터로 변환하여 인자값으로 사용해야한다. np.asarray 함수로 이미지를 데이터로 변환하면 (height, width, cannel) 로 변환해준다.

  • 라벨 : 통계학에서는 범주형 변수라고 하는데 머신러닝에 활용할 때에는 One-hot 인코딩이라고 한다.

 

 

CNN 모델

  • batch로 돌리기 위해서 4D 텐서로 변환
    • 299 x 299 x 1 (width : 299, height: 299, channel : 1 (흑백:1, RGB:3)
  • 컨볼루셔널 레이어 1
    • 필터 (filter) 사이즈 : 11 x 11
    • 필터 이동값 (stride) : 4
    • 출력 : 32
  • 맥스 풀링1
    • 사이즈 : 2 x 2
  • 컨볼루셔널 레이어 2
    • 필터 (filter) 사이즈 : 5 x 5
    • 출력 : 64
  • 컨볼루셔널 레이어 3,4,5
    • 필터 (filter) 사이즈 : 3 x 3
    • 출력 : 64
  • 맥스 풀링2
    • 사이즈 : 2 x 2
  • flatten 을 이용하여 이미지 형태의 데이터를 배열 형태로 생성

(CNN의 데이터 타입을 Fully Connected Neural Network의 형태로 변경하는 레이어)

 

Loss, 학습 오퍼레이션, 정답율 설정

  • 코스트(비용) 함수 : 가중치(W)와 오차(b)의 최소값의 평균을 찾는 함수

  • 옵티마이저 : 코스트 함수의 최소값을 찾는 알고리즘을 옵티마이져

 

728x90
반응형

'AI 인공지능 > AI Vision' 카테고리의 다른 글

Fashion MNIST  (0) 2021.09.12
Object Detection 개념  (0) 2021.09.12
Faster-RCNN  (0) 2021.09.09
CNN (합성 신경망) 모델  (0) 2021.01.24
CNN (합성 신경망)  (0) 2020.12.22