딥러닝 3

Deep Learning Applications / 활용

딥러닝에 대한 전반적인 이해를 가지고 계신 분을 위한 포스트입니다. 흐름들을 복습하는 차원에서 읽는 것을 추천하며, 자세한 내용보단 간략한 정리에 초점을 맞추어 작성했음을 알려드립니다!😄 Large Scale Deep Learning Deep Learning은 connectionism 철학에 기반한 학문입니다. 모든 뉴런들이 서로 연결되어있기 때문이다. 그래서 각각의 뉴런들의 상호작용으로 현명한 행동을 하는 네트워크를 구성하는 것을 목표로 한다. neural network의 가장 중요한 요소는 결국 정확성과 복잡성을 해결하는 능력이다. 이를 위해 다음과 같은 노력들이 있었다. Fast CPU Implementations GPU Implementations Large Scale Distributed Imp..

Pytorch 모델 저장하기 & 불러오기

모델을 저장하고 불러올 때는 3가지의 핵심 함수가 있습니다. 1. torch.save() : 직렬화된 객체를 디스크에 저장합니다. 이 함수는 Python 의 pickle을 사용하여 직렬화하고 객체를 저장합니다. 2. torch.load() : 객체 파일을 역직렬화하여 메모리에 올립니다. 이 함수는 데이터를 장치에 불러올 때도 사용합니다. 3. torch.nn.Module.load_state_dict : 역직렬화된 state_dict를 사용하여 모델의 매개변수를 불러옵니다. state_dict 이름에서도 알 수 있듯이 해당 모델의 state(상태)를 dict(딕셔너리) 형태로 가지고 있는 객체입니다. 만약 예를 든다면 다음과 같이 나올 수 있습니다. Model's state_dict: conv1.weigh..

Gradient Descent / Stochastic Gradient Descent 개념적 비교

* 각각의 개념들에 대해선 다른 게시글에서 확인바랍니다 * * 이 게시글은 두 알고리즘을 비교하기 위해 만들어졌습니다 * Gradient Descent (GD) : 경사 하강법 - 1차 근삿값 발견용 최적화 알고리즘 - 기본 개념은 함수의 기울기(approximate gradient)를 구하고 경사의 반대 방향으로 계속 이동시켜 극값에 이를 때까지 반복시키는 것. Stochastic Gradient Descent (SGD) : 확률적 경사 하강법 - 학습 데이터셋에서 무작위로 한 개의 샘플 데이터 셋을 추출하고, 그 샘플에 대해서만 기울기를 계산하는 것이 특징. mini-Batch Gradient Descent (mini-BGD) : 미니 배치 경사 하강법 여기서 mini-BGD가 나오는 이유는 너무 자..