분류 전체보기(289)
-
[Kubernetes in Action] Volumes
Overview 이전 포스팅들에서 파드와, 파드와 상호작용하는 다른 쿠버네티스 리소스들에 대해서 살펴보았습니다. 이번 포스팅에서는 다시 파드로 돌아가서, 파드 안에 있는 컨테이너들이 외부의 Disk Storage나 Shared Storage를 사용하는 방법에 대해서 살펴보려고 합니다. 파드는 하나의 Logical Host 단위로 동작하기 때문에 파드 내에서 돌아가는 프로세스들은 CPU, RAM, Network Interface등을 공유합니다. 그렇지만 파드 내에 있는 개별적인 컨테이너들은 대체적으로 격리된 파일 시스템(isolated filesystem)을 갖는데, 그 이유는 파일 시스템이 컨테이너의 이미지로부터 오기 때문입니다. 컨테이너가 시작될 때, 이미지에 정의된 파일들이 빌드 타임에 추가됩니다. ..
2021.10.09 -
Deep Residual Learning for Image Recognition (ResNet) - 2015
Abstract Neural Network(이하 NN)의 깊이가 깊어질수록 NN을 학습시키기가 어려워진다. NN의 깊이가 깊어질수록 조금 더 추상적인 Feature들을 학습시킬 수 있기 때문에 정확도가 향상될 것이라고 기대했지만, 아래의 그래프에서 볼 수 있듯, 깊이가 깊어질수록 나타나는 문제인 Vanishing / Exploading gradient등의 문제로 인해서 오히려 정확도가 낮아지는 모습을 보인다. 저자는 "Residual" Network는 최적화하기가 비교적 간단하며, 상당히 깊은 NN에서도 높은 정확도를 얻을 수 있다고 이야기한다. 실제로 ILSVRC 우승 모델들 중 ResNet을 사용한 모델부터 레이어의 개수가 22개에서 152개로 급격하게 증가한 것을 확인할 수 있다. Introduct..
2021.10.09 -
ImageNet Classification with Deep Convolutional Neural Networks (AlexNet) - 2012
Abstract AlexNet은 ImageNet LSVRC-2010 Contest (ILSVRC)에서 120만개의 고화질 이미지를 1000개로 분류했고, top1, top5 error rates에서의 상당한 개선을 이루어냈다. AlexNet은 6천만개의 파라미터, 65만개의 뉴런으로 구성되어 있으며 5개의 Conv Layer (그중 몇개의 레이어는 max-pooling Layer를 포함한다), 3개의 FC레이어, 그리고 1000-way Softmax를 통해 분류를 수행하도록 구성되어 있다. (위의 이미지 참고) FC레이어에서의 Overfitting에 따른 에러를 최소화하기 위해 "Dropout"을 사용하였으며 트레이닝 시간을 단축시키기 위해 "non-saturating neuron"(activation ..
2021.10.04 -
[Kubernetes in Action] Services
Overview 이전 포스팅에서 파드의 상태를 관리하고 항상 지정된 개수의 파드가 정상적으로 작동할 수 있도록 보장하는 Replication Controller, ReplicaSet에 대해서 살펴보았습니다. 이번 포스팅에서는 외부 / 내부의 클라이언트가 이렇게 생성된 여러 개의 파드와 안정적으로 연결할 수 있도록 도와주는 쿠버네티스 리소스인 "Service"에 대해서 살펴보려고 합니다. Introducing Services 마이크로 서비스 아키텍쳐에서 대부분의 파드는 클러스터 내부의 다른 파드로부터, 혹은 클러스터 외부의 클라이언트로부터 HTTP Request를 받아 처리합니다. 파드 자체는 클러스터 내부에서 유일하게 식별될 수 있는 IP를 갖지만, 해당 파드의 IP를 통해 파드에 직접 접근하는 것은 다..
2021.10.02 -
[FSDL] CNNs
Full Stack Deep Learning의 2021 Spring Lecture를 정리합니다. CNN CNN(Convolutional Neural Network)은 합성곱(Convolution)을 사용하는 신경망의 한 종류로 "공간적" 정보를 유지한 상태로 정보를 다음 레이어로 보낼 수 있습니다. "공간적" 정보를 유지한 상태로 특징을 뽑아낼 수 있다는 장점 때문에 특히 이미지를 사용한 학습에 굉장히 유용합니다. 잘 알려진 이미지 분류 모델은 이렇게 Convolution Layer를 여러 겹 사용해서 모델의 특징들을 각각 뽑아내고, 뽑아낸 특징들을 바탕으로 FC(Fully Connected Layer)를 적용하여 이미지를 분류하는 형태를 띕니다. Fully Connected Layer(FC) 일반적인 ..
2021.10.01 -
[Kubernetes in Action] Replication and Other Controllers
Kubernetes in Action 2nd Edition을 정리한 글입니다. Overview 이전 포스팅에서 쿠버네티스의 Basic Building Block인 파드에 대해서 자세하게 살펴보았습니다. 이번 포스팅에서는 파드를 생성하고 관리하는 쿠버네티스 매커니즘인 ReplicationController, ReplicaSet, DaemonSets에 대해서 살펴보려고 합니다. Keeping Pods Healthy 쿠버네티스의 장점 중 하나는 사용자가 제공하는 컨테이너들의 정보(어떤 컨테이너를 몇개씩 배포할 것인지)를 쿠버네티스에 제공하기만 하면 쿠버네티스가 이 정보대로 컨테이너들이 동작하도록 "보장"한다는 것입니다. 즉 사용자 입장에서는 파드를 생성한 후에 매뉴얼하게 이를 모니터링하고, 파드를 재시작하는 ..
2021.09.26