본문 바로가기

분류 전체보기

(146)
Logistic Regression Sigmoid Function 시그모이드 함수는 어떠한 값이 들어가든 항상 그 값이 1과 0 사이를 가진다는 특징이 존재한다. 이러한 특성을 통해서 regression에 적용을 할 수 있다. Logistic Hypothesis 기존의  hyphothesis 함수 (이하 H(x))는 H(x) = Wx + b의 형태로 정의하였다. 하지만 이렇게 함수를 정의하는 경우 classification을 적용하는 과정에서 인풋 x가 outlier에 해당하는 등의 경우 학습에 취약할 수 있다는 단점이 존재한다.그렇기에 최대한 outlier를 방지하는 과정의 일환으로 기존 H(x) = Wx + b에 sigmoid 함수를 적용한 형태인 logistic hyphothesis를 적용한다. Cost Function의 적용 log..
Kubernetes- Service Service란?  동일한 서비스를 제공하는 Pod 그룹의 단일 진입점을 제공한다. 동일한 Label을 가지고 있는 Pod들을 하나의 ip로 묶어서 Virtual Ip를 부여한다. 이렇게 부여된 Virtual Ip가 단일 진입점이 되고 외부 트래픽이 여러개의 파드 중 특정한 파드로 진입하게끔 로드 밸런싱 기능을 제공한다. 예시- Deployment.yamlapiVersion: apps/v1kind: Deploymentmetadata: name: webuispec: replicas: 3 selector: matchLabels: app: webui template: metadata: name: nginx-pod labels: app: webui ..
Kubernetes- Controller control plane의 구성요소control plane(이하 cp)는 다양한 api들을 관리하는 역할을 하며 cp 내부에는 api server, etcd, scheduler, controller가 있다. 그 중 controller는 pod의 개수를 보장해주는 역할을 한다.Replication ControllerapiVersion: v1kind: ReplicationControllermetadata: name: rc-nginx # replication controller 이름spec: replicas: 3 # 보장할 pod 개수 selector: app: webui # 보장할 pod의 라벨 template: metadata: name: nginx-pod ..
Kubernetes- Multi Container Pod 생성 yaml 파일로 pod 생성하기 도커 컴포즈에서도 compose를 위한 yaml 파일로 여러개의 컨테이너를 동시에 관리했듯이, 쿠버네티스에서도 yaml 파일로 여러개의 컨테이너를 하나의 파드에 동시에 생성 및 관리할 수 있다. apiVersion: v1 # Pod의 api version은 v1이다.kind: Pod # 관리하려는 apimetadata: name: multipod # pod 명spec: # Pod의 내용 정의 containers: - name: nginx-container image: nginx:1.14 ports: - containerPort: 80 #..
Kubernetes- Context 쿠버네티스의 설정 확인하기$ kubectl config view 쿠버네티스의 설정 정보를 확인할 수 있다. 해당 명령어의 출력의 디폴트 상태는 아래와 같다.apiVersion: v1clusters:- cluster: certificate-authority-data: DATA+OMITTED server: https://192.168.0.18:6443 name: kubernetescontexts:- context: cluster: kubernetes user: kubernetes-admin name: kubernetes-admin@kubernetescurrent-context: kubernetes-admin@kuberneteskind: Configpreferences: {}users..
Kubernetes- 동작원리 컨트롤 플레인은 API Server를 통해 사용자로 부터 kubectl 명령어를 받아서 명령어 검증을 진행한다. 정상적인 명령어인 경우 해당 명령을 실행하도록 한다. 워커 노드에는 Kubelet 데몬이 존재하며 Kubelet은 컨테이너를 트래킹하여 관리하는 역할을 한다. 만일 kubectl create deployment --image=nginx라는 명령어가 들어온다면, kubelet은 자신의 노드에서 pod를 실행하라는 요청이 들어올 시 해당 요청을 본인의 노드에 있는 컨테이너 엔진(Docker, containerd, runc...) 명령어로 치환하여 컨테이너를 생성한다. Control Plane 구성요소API사용자로부터 kubectl 명령을 받아서 문법을 체크하고 컨트롤 플레인 내부의 다양한 컴포넌트..
Kubernetes- 기본 개념 정리 Pod쿠버네티스의 최소 단위로서 컨테이너(혹은 컨테이너들)를 추상화한다. 일반적으로 하나의 어플리케이션이 파드에 들어가게 되며 해당 pod들은 여러개의 노드에서 동작할 수 있다. 각 포드는 독립적인 private ip address를 가진다. 파드는 죽거나 다시 시작될 수 있는데 기존의 파드가 재시작 되는 경우, 포드의 ip주소는 변경된다. 기존의 다른 앱과 연결되어있던 파드가 재시작 되어 ip 주소가 변경되게 되었다면 일일히 새로운 주소에 맞도록 이를 수정해 주어야한다. 이는 불편한 과정이므로 쿠버네티스에서는 서비스를 제공하여, 이를 보조한다.  Service서비스는 영구적으로 할당된 ip 주소를 가진다. CNIcontainer network interface의 약자로 컨테이너 간의 통신을 지원하는 V..
Object Detection 알고리즘 별 Label Bounding Box 좌표 COCO(x,y,w,h)의 (x,y)를 좌측 최상단의 좌표로 선택함. YOLO(x,y,w,h)의 (x,y)를 Bounding Box의 중심 좌표로 선택함. KITTI, VOC(x1,y1,x2,y2)의 (x1,x2)는 좌상단의 좌표, (x2,y2)는 우하단의 좌표이다.