728x90

AI | ML 43

Asynchronous Methods for Deep Reinforcement Learning (A3C 리뷰)

논문 소개 ‌ 링크 : https://arxiv.org/pdf/1602.01783.pdf‌ github : https://github.com/ikostrikov/pytorch-a3c ‌ Main Contributions‌ Experience replay 기반 RL 대신, 비동기 병렬 방식을 이용한 새로운 패러다임 제시 GPU 기반의 학습보다, 병렬 처리 기반 CPU 연산으로 학습 속도, 안정성 개선‌ 1. Intro 요약‌ Experience replay 기반의 RL은 메모리와 연산이 더 크고, off-policy여서 업데이트 과정도 필요 본 논문에서는 비동기 병렬 방식을 이용해 새로운 패러다임을 제시 프로세스에서 다양한 스펙트럼이 생기고, Q-Learning 과 같은 다양한 off-policy 알고리즘..

[AWS] SageMaker에서 파이토치를 이용한 딥러닝 학습 (1)

안녕하세요, 오늘은 AWS SageMaker 환경에서 파이토치를 사용하는 과정을 써보겠습니다. AWS SageMaker는 AWS 생태계 내에서 머신러닝 부분을 담당하는 서비스로, AWS에서 제공하는 SageMaker SDK를 이용해 모델의 학습, 배포, 관리까지 이용이 가능합니다. 왜 AWS SageMaker를 써야하는지 이유를 생각해보면 제 생각은 다음과 같습니다. 1. 딥러닝 학습을 시킬 수 없는 환경인 경우 2. AWS 생태계에서 연동 가능성 (아마존의 다른 서비스들과 연동이 되기 때문에 기존에 쓰고 계신 분이라면 배포 및 관리가 용이) 3. 서버 설정 시간 및 비용 단축 도커나 쿠버네티스를 사용하는 경우도 있겠지만, 도커 이미지를 생성하는 경우도 나만의 이미지를 생성하는데는 시간이 소요됩니다. 저..

AI | ML 2021.05.28

[Data Science] matplotplib을 이용한 데이터셋 가시화

1. 이미지를 읽어오는 시간이 느려서 thread를 이용해 동시성을 증가시켰습니다. ( thread가 데이터 개수만큼 생기니 발열 주의 ) 2. 데이터셋마다 평균 표준편차의 값이 다를 수 있으니, np.arange부분의 x축 설정을 주의하셔야합니다. import cv2 import numpy as np import glob import argparse import matplotlib.pyplot as plt from scipy import stats from threading import Thread parser = argparse.ArgumentParser() parser.add_argument('--path', help='input your dataset folder') args = parser.pa..

AI | ML/코드 2021.02.17

Transfer Learning 가이드

많은 사람들이 딥러닝을 처음 접하고 이용할 때, 수많은 논문들의 github 코드를 가져와서 사용하곤 합니다. 이 때, Transfer Learning이라 하여 기존의 학습된 가중치를 이용해 본인이 적용하고자 하는 업무에 조금 변형하여 사용합니다. fine-tuning, Transfer Learning, pre-trained model 등 다양한 이름들이 존재하는데, 언제 어떻게 사용하는게 좋을까요? 스탠퍼드 대학교에서 가르치는 컴퓨터비전 과목에서는 다음과 같이 적혀 있습니다. 정리해서 말하면 Transfer Learning에는 3가지 시나리오가 있는데, 1. Convolutional Network를 특징추출기로 사용하는 경우 : ConvNet의 마지막 FC layer를 제외하고, 새로운 데이터셋의 특징..

AI | ML 2021.01.05

딥러닝 학습 데이터셋 쉽게 찾고 다운받기

최근에 데이터 확보를 위해 다양한 데이터셋을 다운받을 일이 생겼습니다. 하지만, 찾기가 힘든 데이터셋들이 많아지면서 저와 비슷한 분이 있지 않을까 해서 어떻게 하면 데이터셋을 빠르게 모을 수 있는지 써보겠습니다. 1. paperswithcode.com/ 사이트에 검색하기 paperswithcode.com은 제가 자주 애용하는 딥러닝 네트워크의 성능과 코드를 찾아볼 수 있는 사이트입니다. 저의 경우엔 image dehazing 분야의 데이터셋이 필요했는데요 Benchmarks 를 보시면 Dataset 종류들이 나옵니다 다양한 논문들이 좌측처럼 그래프를 보이고 있다면, 그 데이터는 그만큼 접근하기 쉽다는 얘기가 되기도 합니다. 그리고, 해당 분야에 어떤 데이터셋 존재하는지도 알 수 있게 됩니다 그 다음은 단..

AI | ML 2020.12.03

EXPLAINING AND HARNESSINGADVERSARIAL EXAMPLES

왼쪽 이미지는 학습된 모델의 입력으로 넣었을 때 판다로 나오지만, 가운데 이상한 사진을 섞어서 모델에 입력하면 우측과 같이 사람이 보았을땐 여전히 판다지만, 딥러닝의 결과로는 99.3% gibbon이라는 긴팔원숭이가 나옵니다. 위와 같이 원래의 입력에 임의의 노이즈를 추가해 의도적으로 결과를 바꾸는 것을 Adversarial Attack 이라고 하고, 반대로 의도적인 방해에 대응하여 인식에 방해되지 않도록 만드는 것을 Adversarial Defense라고 합니다. 딥러닝을 이용한 학습이 증가하면서, 딥러닝이 얼마나 믿을만한지 혹은 딥러닝이 얼마나 개선할 것이 많은지 에 대한 테스트에 관하여 진행한 논문이 있습니다. 해당 논문은 딥러닝에서 선형 모델로부터 풀어나갑니다. 쉽게, y=Wx 라는 함수를 떠올려..

[TensorFlow] Model Save/Load 관련

TF Model Save tf.saved_model.save(model, path) — Keras Output path/saved_model.pb path/assets path/variables variables.data-00000-of-00001 variables.index model.save_weights(path) path 내 variables (Weights) 만 변경하는 방식 Output variables.data variables.index TF Model Load tf.saved_model.load(path) — Keras pb 파일 불러올 때 쓴다 model.load_weights(path) model 의 weight 값을 불러올 때 쓴다 variables.data → saved_model..

AI | ML/코드 2020.08.27

[TensorRT] Window 환경에서 PyTorch로 TensorRT 사용하기

https://docs.nvidia.com/deeplearning/sdk/tensorrt-install-guide/index.html 위의 사이트에 있는 내용을 한글로 제가 겪은 시행착오에 대해서만 쓰는 것입니다. 저와는 다른 상황일 경우, 위의 홈페이지를 참고하시길 바랍니다. 제가 겪은 부분에서 미리 말씀드리면 Windows환경에서 TensorRT 사용은 불가능한 것으로 보입니다. 저의 환경은 다음과 같습니다. CUDA : CUDA 10.0 CUDNN : CUDNN 7.6 OS : Windows10 GPU : GTX1080Ti Python : 3.6 (Anaconda) https://developer.nvidia.com/tensorrt NVIDIA TensorRT */ developer.nvidia.c..

728x90