졸전 질문리스트

.·2020년 11월 27일

졸업작품 회고록

목록 보기
7/7

졸업작품에 대해 간단히 설명해 주세요

딥러닝을 이용한 서비스를 웹사이트상 에서도 즐길수 있게 구현해보는 것이 목적이었습니다.
애묘인들이 쉽게 사용할수 있는 어플리케이션으로써 고양이들의 정보와 식단 관리가 가능합니다.

cnn 모델설계

데이터 수집은 얼마나 어떤 방식으로?

  • 고양이 이미지를 검색엔진을 통해서 직접 데이터를 하나씩 모았습니다. 원본 이미지 1000장씩 수집
  • Data Augmentation을 통하여 원본 이미지 1000장을 인위적 변화를 주어서 학습에 활용될수 있는 데이터로 만들었습니다.

이미지가 데이터셋으로 변환되는 과정을 설명해 주세요

  • 각 이미지를 RGB 형태로 변환해준 뒤 resize를 합니다.
  • 이미지의 특징을 numpy 배열로 바꾸고 배열에 추가해 줍니다.

모델링한 과정을 설명해 주세요

  • 선형계층(Sequential()) 모델 사용하여 순차적으로 층을 더해주도록 설계하였습니다.
  • 2D 컨볼루션 2개와 Maxpooling2D, Dropout 을 반복하여 설계하였습니다
  • input_shape 에는 128,128,3 값이 들어갑니다.
  • MaxPooling2D는 2X2사이즈로 지정합니다.
  • 각 padding은 same, 마지막 출력층을 제외한 actication은 reru로 합니다

모델계층을 자세하게 설명해 주세요

  • Conv2D를 통해 크기가 3*3인 필터으로 특징을 추출합니다. 특징을 한번 더 추출한후
    이때 2X2 픽셀값중 가장 큰 값을 뽑아내기 위해 Maxpooling으로 이미지 사이즈를 줄여줌니다. Dropout으로 뉴런의 연결을 임의로 삭제합니다.

Maxpooling은 왜 하는 건가요?

  • 필터를 통해 생성된 feature가 많아지면 새로운 데이터는 예측하지 못하는 overfitting의 우려가 있기 때문에 이를 조절하기 위함입니다.

Dropout은 왜 하는 건가요?

  • 뉴런을 임의로 생략해 줌으로써 생략되는 뉴런의 조합만큼 다양한 모델을 학습시키는 것이나 마찬가지의 원리가 되기 때문에, droupout 또한 overfitting을 방지 할 수 있습니다.

tensorflow.js 에대한 질문

tensorflow.js란 무엇인가요?

딥러닝을 브라우저에서도 사용할수 있게 클라이언트 측에서 동작하는 자바스크립트 라이브러리 입니다.

python으로 설계한 모델을 웹에서 사용가능한 모델로 어떻게 변환하였습니까

tensorflow.js 라이브러리 api를 보고 만들었습니다.

profile
yi

1개의 댓글

comment-user-thumbnail
2021년 3월 2일

대박이에요

답글 달기