본문 바로가기

728x90

딥러닝/개인구현 정리

(11)
[DeepLearning] MobileNet_V2를 사용한 이미지 추론 IRB기법이 사용됩니다 지난 시간에는 IRB의 개념과 IRB를 사용한 모델, Mobilenet_V2에 대해서 살펴보았습니다. 이번에는 개념만 알고 넘어가기에는 실용적인 부분이 부족한 감이 있어서, 이 Mobilenet_v2를 직접 구동해보고 몇가지 이미지를 입력해서 맞추는지 확인해 보고자 합니다. 먼저 필수 라이브러리를 불러왔습니다. # 필수 라이브러리 import torch # 이미지 파일 오픈하는 데 사용 from PIL import Image from torchvision import transforms import urllib 이미지 파일은 풍경, 생명체(객체), 생명체 풍경이 혼합된 객체, 도시 이미지 등을 사용했습니다. url, filename = ('https://raw.githubuserc..
[DeepLearning] GPU-Net을 활용한 이미지 분류_2_feat.강아지 GPU Net은 특히 단일 객체 - 동물들의 분류에 강한 성능을 보였습니다 이번 시간에는 지난 모델의 미리 훈련된 버전을 통해 새로운 이미지들을 몇가지 더 진행해보겠습니다. 잠시 GPU-Net의 기능에 대해서 요약하자면 검색 영역과 검색 알고리즘을 활용하고, NAS 시스템을 활용해 네트워크에서 추론을 탐지하며, TensorRT와 Inverted Residual block을 사용하는 모델이었습니다. 위 LA-MCTS 기법에 대한 설명 (이전 게시글에 대한 보충입니다) [DeepLearning] LA-MCTS에 관하여 (tistory.com) [DeepLearning] LA-MCTS에 관하여 본 문서는 GPU-Net과 블랙박스 최적화 기법에 대한 설명 중 LA-MCTS에 대한 설명은 찾기 어려워 직접 정리하..
[DeepLearning] GAN을 활용한 새로운 산타클로스 얼굴 만들기 feat_Dropout 기법 지난 시간에 생성한 산타클로스 이미지의 GAN 생성 모델. 이번에는 성능 향상을 위해서 Dropout을 다시 조정해보았습니다 지난번 IS THAT SANTA? 를 활용한 모델에서는 이미지를 학습하고 생성자 VS 판별자를 갖고 있는 GAN을통해 epoch 100회, 200회, 추가적으로 150회 까지 진행했었습니다. (실제로는 공개하지 않았지만 이 코드는 10회 → 20회 → 50회 → 90회 등 수많은 테스트가 존재했습니다) 추가적으로 Discriminator (판별자)에 여러가지 시도를 진행하던 중, 이런 의식이 생겼습니다. 다른 딥러닝 모델에서 사용한 Dropout을 더해서 실험해보면 어떨까? 물론 이미 최적화를 진행해본 생성자, 판별자 구조에 dropout, early stop등 추가적인 기능을 넣..
[DeepLearning] GAN을 활용한 새로운 산타클로스 얼굴 만들기 산타가 오는 겨울이 지나고, 많은 인파들 사이에 숨어버렸다고 합니다. 숨어있는 산타의 얼굴을 찾아 새로운 산타를 만들어 볼까요? 이번 신경망에서도 GAN(생성 적대적 신경망)을 사용할 예정입니다. 오늘 가져올 kaggle 데이터는 Is that santa? (Image Classification) 데이터셋으로 데이터 자체는 분류모델을 통해 실제 santa와 산타로 위장한(전혀 다르게 생길때도 있음) not a santa를 찾는 데이터셋 입니다. 다만 not a santa는 RNN이나 Resnet을 활용해서 많은 분들이 접근하고 있는 코드이기에 필자는 따로 train에서 산타 이미지만 추출해서 새로운 이미지를 만들어볼 계획입니다. 실제 데이터셋 (kaggle) IS THAT SANTA? (Image Cla..
[DeepLearning] GAN 모델 활용_CelebA얼굴 이미지 구분_2 지난 CelebA 데이터셋의 모델 생성에 이어서 더 나아간 GAN 학습 사례를 보겠습니다. 생성자와 판별자 class를 제작하고 celebA의 데이터셋을 2만장만 뽑아 각각 에포크를 한번 돌린 상황이었습니다. 에포크가 높지 않아서인지 이목구비가 뚜렷하게 나오진 않고 형태만 겨우 유지하고 있는 이미지를 보여주고 있습니다. 새로 알아낸 것 문법 착오로 인해서 에포크가 제대로 돌아가지 않았습니다. EPOCHS = 10 for epoch in range(EPOCHS): print(f' 에포크 = {epoch+1}') for image_data_tensor in celeba_dataset: D.train(image_data_tensor, torch.cuda.FloatTensor([1.0])) D.train(G.f..
[DeepLearning] GAN 모델 활용_CelebA얼굴 이미지 구분_1 적대적 생성 신경망, GAN 모델을 활용해서 사람의 얼굴 이미지를 학습시키는 모델을 재현시켜 보겠습니다. 이번 시간에는 딥러닝 세계에서 유명한 데이터셋 중 하나인 CelebA를 활용해서 20만 개 이상의 사람들(유명인)을 학습시키고 아예 새로운 인물의 얼굴 이미지를 만들어주는 신경망 모델을 제작해보겠습니다. ※ 원본 데이터셋의 저작권은 CUHK(The chinese university of Hong Kong)에서 보유하고 있습니다. CelebA Dataset (cuhk.edu.hk) CelebA Dataset Details CelebFaces Attributes Dataset (CelebA) is a large-scale face attributes dataset with more than 200K ce..

728x90