개미들을 위한 퀀트 자동 매매 프로그램 개발자 블로그입니다. 프로그래밍과 퀀트 투자를 합니다.

방구석퀀트

네이버카페 : 방구석 퀀트 놀러오세요^^ https://cafe.naver.com/conerquant 가입해 주세요.

2017년 1월 2일 월요일

윈도우에서 Tensorflow slim 모델 사용하기 - 1.5 TF-Slim 소개

1. 윈도우에 Tensorflow GPU 버전 설치하기
1.5 TF-Slim 소개
2.1 딥러닝 slim 라이브러리 설치 및 이미지 셋 다운로드
2.2 딥러닝 모델 학습하기
2.3 딥러닝 모델 평가하기
3. 내 이미지로 학습 하기 ( caltech 이미지 사용 )
4. 학습된 모델 사용하기
5. Python Tkinter GUI 응용 프로그램 만들기


 Google Research에서 발표한 자료에 따른면 TF-Slim은 AlexNet, VGG, ResNet, Inception-V3와 같이 image classification에 사용되는 Deep Learning CNN 모델을 제공하고 있습니다. 단순히 모델 네트워크 구성만 제공하는 것이 아니라, Datasets(ImageNet, CIFAR10, MNIST, FLOWER), 모델 Training과 Evoluating 할 수 있는 코드까지 제공하고 있습니다. 심지어 ImageNet을 이용한 Pre-trained 모델도 제공하며 새로운 이미지에 대한 Fine Tune 기능도 제공하고 있습니다

와우! 그럼 우리는 새로운 이미지만 준비하면 나머지는 TF-Slim이 다 해주겠네요!

네 그렇습니다!

제가 직접 해봤는데 저희는 이미지만 잘 준비하면 됩니다. 딥러닝은 TF-Slim이 해 줍니다. '왼손은 거들 뿐' 이라는 명언이 떠오르네요.

그럼 실제 실습을 해보기 전에 TF-Slim을 더 간략히 알아 보겠습니다.


1) 제공하는 데이터 셋(datasets)



 딥러닝 입문자라면 누구나 해보았을 MNIST, Cifar10 등 4가지 종류의 Datasets이 제공 되고 있습니다. 물론 다른 이미지도 추가 시킬 수 있습니다. 그건 다음 포스팅에서 방법을 말씀 드리겠습니다.

2) TFRecord format 변환 코드 제공


 ImageNet 데이터만 빼고 다른 Datasets는 제공되는 코드에서 바로 다운로드 받고 자동으로 레이블 생성 및 TFRecord format으로 변환 됩니다. TFRecord 포멧이란 이미지 한장 한장 읽어서 학습에 사용될 경우 FILE I/O에 많은 시간이 걸려 학습 시간도 많이 걸리게 되죠. 그 FILE I/O에 들어가는 시간을 거의 없에기 위해서 이미지를 한데 묶어 Binary 형태의 큰 덩어리 파일로 생성 시켜 버립니다. 비슷한 포멧으로는 RecordIO 가 있습니다.

3) Pre-trained Model 제공



 가장 최근에 나온 Inception-ResNet-v2 모델도 제공하네요. Top-5 정확도 95.3%로 Inception V4에 0.1% 근소하게 앞서 1등을 달리는 모델이 되겠습니다.

4) Traning 기능 제공


 제공 되는 네트워크를 이용해 새롭게 학습을 시킬 수도 있고, 이미 만들어진 모델에 새 이미지를 학습 시킬수도 있습니다. 학습 중간에 학습되는 모델 결과들이 업데이트 되기 때문에 다른 설정 코드 추가 없이 Tensor Board로 바로 확인할 수 있습니다.

5) 모델 성능 평가 기능 제공


학습되어진 모델의 Accuracy를 평가하기 위한 코드도 제공됩니다.

 다음으로 알아볼 내용은 기본으로 제공되는 TF-Slim 코드 사용법을 실습을 통해 함께 해보겠습니다. 이후 새로운 이미지를 TF-Slim을 이용해 학습하는 실습을 해보겠습니다.

댓글 없음:

댓글 쓰기

가장 많이 본 글