Vision Transformer

An Image is Worth 16x16 Words: Transformers for Image Recognition at Scale vit.png

Transformer 모델은 토큰의 유사도를 비교하는 self-attention 구조의 유연성 덕분에 높은 수준의 task-agnostic performance 를 보여주었다. 또한 학습에 사용되는 데이터 규모가 일정 수준을 넘어서면 downstream task 에서도 일관된 성능을 보이는 zero-shot learning 현상이 감지되기도 한다. 본 논문의 저자들은 Patch embedding 기법을 고안해서 Transformer 인코더 구조에 어떠한 변형도 가하지 않고 비전 인식 분류 문제에 적용하는 기발한 아이디어를 제시한다.

Kubernetes

k8s.svg

Kubernetes(K8s) 는 컨테이너화된 애플리케이션의 배포, 확장, 관리를 자동화해주는 오픈소스 클러스터 서비스이다. 구글이 내부적으로 사용하던 Borg 클러스터 설계 노하우를 바탕으로 제작되었으며, 현재는 Container Orchestration 분야의 표준으로 자리잡았다. Docker 가 애플리케이션을 "어떻게 배포할 것인지"를 해결했다면, 쿠버네티스는 "수많은 컨테이너를 어떻게 운영하고 자동화할지"를 해결한다.

  1. 자동 회복: 컨테이너가 다운되거나 응답하지 않을 경우 자동으로 재시작
  2. 로드 밸런싱: 트래픽을 여러 파드로 분산시켜 안정적인 서비스를 제공
  3. 오토 스케일링: 자원 사용량에 따라 자동으로 컨테이너 개수를 늘리거나 줄이고 트래픽 요구사항에 대응
  4. 무중단 배포: 서비스 중단 없이 롤링 업데이트를 진행하고, 문제 발생 시 이전 버전으로 롤백

무중단 서비스를 운영하거나 규모 있는 개발을 진행한다면 DevOps 와 함께 쿠버네티스 도입을 적극 고려해보자. 필자는 클러스터를 직접 구축했던 경험을 가이드라인 형태로 공유하고자 한다.

멀티캐스트 DNS

멀티캐스트 DNS는 중앙 DNS 서버 없이 로컬 네트워크 환경에서 호스트 이름을 IP 주소로 확인하는 프로토콜이다. 일반적인 DNS 서버는 FQDN 을 IP 주소로 변환하지만, 멀티캐스트 DNS는 네트워크 안에서 호스트 이름을 IP 주소로 변환한다. IETF RFC 6762 로 정의된 기술 규격으로, 별도의 설정 없이 네트워크 장치 간에 호스트 이름을 인식할 수 있다. 기본적으로 로컬 Link 전용 도메인인 .local 로 끝나는 호스트 이름만 확인된다.