공부/AIFFEL

Exploration 1 : 인공지능과 가위바위보 하기

dong_dong_2 2021. 1. 5. 21:27

1. 인공지능과 가위바위보 하기 
    - 이미지 분류기는 어떤 것이 있을까? 
    - 데이터 준비하기 : MNIST 숫자 손글씨 데이터 
2. 데이터 준비하기 
    - MNIST 숫자 손글씨 불러오기 
    - 검증용 데이터(validatation set), 교차검증(cross validation) 
3. 딥러닝 네트워크 설계하기 
    - Sequenential Model 사용하기 
4. 딥러닝 학습시키기  
    - fit(), epochs, shape, reshape 
5. 얼마나 잘 만들었는지 확인하기 
    - loss 확인, accuracy 확인 
6. 더 좋은 네트워크 만들어 보기 
    - 하이퍼파라미터들을 바꾸면서 학습시켜보기 : channel1, channel2, dense, train_epoch 
7. 프로젝트 : 가위바위보 분류기 만들기 
    - 가위바위보 사진 100장씩 총 300장의 데이터 만들기 
    - 사진들을 각각 28x28로 resize하기 
    - 사진 데이터 읽어오기 
    - 딥러닝 네트워크 설계하기 : Sequential, Conv2D, MaxPool2D, Flatten, Dense 
    - 딥러닝 네트워크 학습시키기 : compile(loss, optimizer, metrics), fit(x_train, y_train, epochs) 
    - 딥러닝 네트워크 평가하기 : evaluate 
8. 루브릭 
    - 이미지 분류기 모델이 성공적으로 만들어졌는가?        : 모델은 잘 학습하며 정상 작동됨. 
    - 오버피팅을 극복하기 위한 적절한 시도가 있었는가?    : Conv2D, MaxPool2D, Flatten, Dense, dropout을 이용하여 4개 계층을 만듬 
    - 분류모델의 test accuracy가 기준 이상 높게 나왔는가? : 간신히 0.6을 넘었다.

9. github에 파일을 업로드하고 제출하기

 

오늘은 일주일의 기간을 주고 과제를 실습하는 시간이다. 가위바위보 이미지를 100장씩 300장의 데이터를 만들고, 사람들과 공유하여 여러개의 트레이닝 셋과 테스트 셋을 만든 다음 딥한 모델을 만들어 내가 만든 모델이 얼마나 잘 학습하고, 학습했는지를 평가한다. 처음에는 0.3 ~ 0.5 점대를 못 넘어서 한참 헤매다가 dropout를 쓰고, filter와 unit의 갯수 그리고 epochs 횟수를 조절하면서 간신히 0.6점대를 만들었다. 아직 실력이 부족해서 왜 테스트 점수가 저조한지는 알지 못하는게 아쉽다.