본문 바로가기

Data science104

클러스터 구성 / 쿠버네티스 설치(master, worker node) 요약 master node에 쿠버네티스를 세팅하고, 각 노드랑 연결해보려고합니다. 쿠버네티스로 클러스터를 구성하는 것은 1) control-plane을 설치해야합니다(단일 control-plane또는 복수의 control-plane도 가능), 2) 또한, 각 워커노드들을 등로갛여 파드들의 네트웍이 클러스터내에서 잘 통신되게 하는 것입니다. 시작전에 앞서 kubeadm을 이용해서 쿠버네티스를 세팅해보려고합니다. kubeadm으로 쿠버네티스를 세팅하는 것이 쿠버네티스 공식홈페이지에서도 "best practice"라고 설명되어있습니다. kubeadm은 쿠버네티스를 간단히 설치해서 사용해보기에 용이합니다. 사용 전 확인사항 쿠버네티스를 사용하기전에 장치에 아래의 스펙요구사항을 만족하는지 확인해야합니다. A co.. 2023. 1. 8.
[5분 컷 이해] 임상시험 IIT(intention to treat)이란? 요약 임상시험은 대부분 무작위 선정(Randomization)으로 시험군(case), 대조군(Control)을 나눈다. 이 시험군과 대조군에 중재를 할 때, 시험군 또는 대조군에 속해있는 대상자들이 모종의 이유로 중재를 못받게 되는 상황이 된다(중도 탈락, 중재 전 사망, 치료 불이행). 이 때, 어쩔수없는 이유로 중재를 못받은 사람을 분석에 포함해서 의학적 성과(outcome)을 측정해야하냐 말아야하나 고민되는 시점이 생긴다. IIT은 모종의 이유가 있다 하더라도, 일단 무작위 배정되었으면, 분석에 포함하는 것을 일컫는다(“once randomized, always analyzed”). 반대의 개념으로는 "Per-Protocol"이라고 하며, 중재를 못받은 샘플을 분석에 포함하지 않는 것을 의미한다. .. 2022. 12. 31.
도커 이미지에서 딥러닝 GPU가속 사용하기 딥러닝을 이용한 서비스를 배포할 목적이 있으면, 운영체제 등에서 독립적으로 S/W가 돌아갈 수 있게끔 배포하는 것이 중요하다. 이 때 주로쓰이는 것이 컨테이너 기술인데, 컨테이너 기술을 이용해서, 딥러닝의 GPU가속을 사용해보자. 단계는 아래와 같다 NVIDA driver (그레픽 드라이버) 와 docker은 설치 CUDA 이미지 풀하기 GPU 지원 컨테이너 만들기 방법 1: Native GPU support 방법 2: Nivida container Runtime을 이용하기 방법 3: Nivida GPus 을 위한 도커엔진 유틸리티 이용하기 확인: GPU 지원 컨테이너 내 접속 후 cuda확인 0. NVIDIA driver 확인 이미 설치된 경우, 다음의 코드로 CUDA Version을 확인한다.아래와 .. 2022. 12. 17.
도커 이미지 푸시하기 0. PUSH할 원격저장소를 만든다. docker hub (https://hub.docker.com/) 에서 로그인 후, 원격저장소를 생성한다. github저장소처럼 "ID/원격저장소명"으로 주소가 만들어진다. 1. 도커 로그인 $ docker login Login with your Docker ID to push and pull images from Docker Hub. If you don't have a Docker ID, head over to https://hub.docker.com to create one. Username: [YourID] Password: ****** Login Succeeded 2. Docker hub에 올릴 이미지를 찾는다. 여기서 필자는 REPOSITOY에 simple-.. 2022. 12. 12.
[쿠버네티스] 서비스(Service) 이용하기, 클러스터IP에 접속이 안될 때, 요약 쿠버네티스를 이용하면,파드를 통해 클라이언트들이 어플리케이션을 호출할 수 있다. 그러나, 클라이언트 입장에서는 각각 파드의 주소가 존재하는하고, 클라이언트는 어느 파드로 갈지 명시하지 않았는데도, 쿠버네티스가 알아서 각각의 파드가 처리하게 만들어준다. 즉, 네트워킹이 쿠버네티스에 의해서, 알아서 처리되는데, 이 네트워크 서비스를 제공할 수 있는 자원이 "서비스(Service)"이다. 즉, 파드로 실행중인 앱을 네트워크서비스로 노출하게 해주는 자원이다. 서비스를 이용하기위해 각 파드, 노드가 만족해야할 사항[1] 각 파드는 노드상의 모든 파드와 통신할 수 있어야함 노드상의 에이전트(데몬, kubelet)은 해당 노드의 모든 파드와 통신할 수 있어야함. 어플리케이션을 네트워크 서비스로 외부에 노출하기 .. 2022. 12. 10.
분류문제: Cross entropy 대신에 MSE을 쓸 수 있나? + 역전파 및 MLE해석 본 포스팅은 naver d2 이활석님의 발표자로를 글과 이해가 쉽도록 만든 Figure들로 재구성했음을 알립니다. 요약 MSE로 최적화하는 것과 MLE로 최적화 하는 것은 동치이다. sigmoid을 출력값으로 하는 경우 MSE로 최적화하는 것보다 CE로 하는 경우, 학습이 더 빨리 된다. 이는 activation function(sigmoid)의 도함수를 한 번 계산하지 않아도 되기 때문이다. 1. Backpropgation (역전파) 과정에 대한 가정(Assumption) 역전파알고리즘을 이용하기 위해서는 2가지 가정이 일단 필요하다 [1]. Average $E = 1/n \sum_{x}E_{x}$: $n$개의 training 데이터에 해당하는 각각의 $x$에 대한 손실함수의 합의 평균은 손실함수 전체.. 2022. 11. 23.