본문 바로가기

728x90

딥러닝

(19)
[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..
[DeepLearning] 이미지 구분 모델_Pokemon 809 세트_ep.2 지난 시간의 포켓몬스터 데이터셋의 이미지 처리에 이어서, 이번에도 여러가지 신경망 모델을 사용하여 학습하고 시각화 해보는 시간을 갖도록 하겠습니다. 이번에 사용할 모델은 ResNet-50입니다. 1. ResNet에 대한 잠깐 설명 ResNet(잔차 신경망, 레스넷)은 스킵 커넥션을 이용해서 잔차를 학습하도록 만든 알고리즘으로, Resnet 이전의 일반적인 CNN 신경망보다 예측 정확도가 높습니다. Residual(잔차) : 관측치와 회귀식의 예측치와의 차이 Network(신경망) : 기존의 모델보다 진보된 신경망 2. ResNet의 특징 기존의 방식보다 더 빠른 Short cut을 진행시킵니다. 1) 일정 시점마다 input x 자체를 skip connection을 통해서 연결 2) gradient fl..
[DeepLearning] 이미지 구분 모델_Pokemon 809 세트_ep.1 이번시간에는 Kaggle의 데이터셋 중 pokemon image dataset을 활용하여, 이미지를 구분하는 모델을 생성하도록 하겠습니다. Pokemon Image Dataset | Kaggle Pokemon Image Dataset Pokemon image dataset www.kaggle.com 데이터는 809종의 포켓몬 이름과 그에 따른 속성이 있는 csv파일과 포켓몬 이미지 폴더로 나누어져 있습니다. 이번 알고리즘의 경우, 속성이나 범주형 데이터는 제외하려 했기 때문에, csv파일은 없이, 이미지 만으로 진행하고자 합니다. 물론 딥러닝 모델은 지난번과 같이, 파이토치를 사용합니다. 필요한 패키지를 가져오는 것부터 시작합니다. # pytorch 라이브러리 import torch import torc..
[이미지 처리] 타코와 브리또의 이미지 구분 모델 ※ 제이펍의 파이토치 첫걸음을 참조 했습니다. 이번시간에는 ResNet 을 활용한 전이모델을 이미 만들어진 모델인 'resnet18'을 활용해 taco와 burrito를 구분하는 모델을 구현해보겠습니다. 일반적으로 taco는 또르띠야에 고기와 채소를 올린 멕시코 음식으로, 위가 살짝 벌려져 있는 것이 특징입니다. burrito는 같은 멕시코 전통음식이지만 또르띠야를 둘둘 말아서 살짝 구운 것입니다. 재료 자체는 비슷한데, burrito는 돌돌 말려서 위가 닫혀있는 것이 특징입니다. 본의아니게 점심시간에 테스트를 진행하게 되어 먹는 것으로 모델을 골랐는데요. 먼저 사진을 한번 보겠습니다. (matplotlib의 imshow 사용) Reference https://github.com/lucidfrontier..
[자연어 처리 학습] 셰익스피어 비극 대본집_중세말투 학습_2 2023년의 음력 설날이 돌아왔습니다. 찾아와주신 모든 분들에게 행운과 행복이 함께하시길 바랍니다. 파이토치 첫걸음 2020.판본을 리뷰하고 있습니다. 셰익스피어 비극 대본집을 통해, 중세 영어식 어법(말투)를 랜덤하게 생성하는 연습을 진행하고 있습니다. 지난 시간까지는 Pytorch를 활용, 딥러닝 RNN의 향상된 버전으로 LSTM을 사용했었죠. 간단한 규모의 신경망 모델을 생성해보았습니다. (epoch 50회, 최적화 함수 Adam, dropout 0.1 사용) 평균 loss는 epoch 1회에서 50회까지 진행하면서 50회 진행시 4.622로 사실상 번역이 안된 수준이었습니다. 이번 시간에는 epoch 수를 2배 늘리거나 AdamW, Adamax를 사용한 결과를 제시하려 합니다. epoch 100회..

728x90