전체 글 120

연차 어따 쓰지?

안녕하세요. 다들 무더운 여름 잘 지내고 계신가요? 저는 지금 여름휴가를 보내며 2026년 7월의 마지막 주말을 보내고 있습니다. 어느덧 2026년도 절반을 훌쩍 넘겼습니다. 이맘때쯤이면 여름휴가를 계획하게 되는데요. 연차를 언제 써야 공휴일과 주말을 이어서 가장 오래 쉴 수 있을까요? 직접 달력을 보면서 날짜를 하나씩 계산하기는 생각보다 번거로운 일입니다.저는 올해 처음 취업을 하면서 연차를 사용해 여름휴가를 계획합니다.그러다 보니 앞으로도 매년 비슷한 고민을 하게 될 것 같았습니다.“연차를 며칠 써야 가장 오래 쉴 수 있을까?” “공휴일 앞뒤로 연차를 붙이면 며칠이나 쉴 수 있을까?” “휴가 날짜는 정했는데, 어디로 가야 할까?” 이런 고민을 조금 줄여보고 싶어서 ‘연차 어따 쓰지?’라는 서비스를 만..

z-score의 본질: 차이를 표준편차 단위로 바꾸는 것

1. z-score를 왜 헷갈렸는가?t-test를 공부하면서 이런 식으로 이해했었다.t = 평균 차이 / 표준오차즉 t-test는 단순한 평균 차이를 보는 것이 아니라,그 차이가 표본 평균의 흔들림에 비해 얼마나 큰가?를 보는 방법이었다.그러다 보니 z-score도 비슷하게 보였다.처음에는 단순히:평균에서 얼마나 떨어져 있는가?정도로 이해했다.하지만 조금 더 정확히 보면 z-score는 단순 거리 개념이 아니다.관측값이 평균에서 표준편차 몇 개만큼 떨어져 있는지를 나타내는 값이다.2. 단순 차이만 보면 왜 부족할까?예를 들어 어떤 상품의 평균 무게가 다음과 같다고 하자.평균 무게 = 100g관측 무게 = 120g단순 차이는 다음과 같다.120 - 100 = 20g그런데 여기서 바로:20g 차이면 꽤 크다..

AI/Statistics 2026.05.20

t-test란 평균 차이가 아니라 "흔들림 대비 거리"를 보는 것

0. 들어가며처음에는 t-test를 단순히 다음과 같이 이해했습니다.두 평균이 다른지 확인하는 방법하지만 실제로 개념을 공부해 보니, 단순히 평균 차이를 비교하는 것과는 조금 달랐습니다.예를 들어:기준 평균 = 100g표본 평균 = 105g평균 차이 = 5g라고 했을 때, 정말 중요한 질문은 이것입니다.이 5g 차이는 실제로 의미 있는 차이일까?아니면 데이터를 측정하다 보면 충분히 나올 수 있는 흔한 흔들림일까?t-test는 바로 이 질문에 답하기 위한 방법입니다.핵심은 단순한 평균 차이가 아니라:그 차이가 흔들림에 비해 얼마나 큰가를 보는 데 있습니다.1. 어떤 상품의 무게를 측정한다고 가정해 보자어떤 상품의 기준 평균 무게가 다음과 같다고 가정해 보겠습니다.기준 평균 무게 = 100g그런데 실제 상품..

AI/Statistics 2026.05.14

컨테이너의 운영 본질: "실행이 아니라 운영이다" (Control Plane · Pod · Service · 선언형 시스템)

1. 왜 쿠버네티스(Kubernetes)가 필요한가?"컨테이너는 잘 띄웠는데, 운영이 지옥이다."Docker가 해결한 문제는 실행 환경의 표준화였습니다."내 PC에서는 되는데 서버에서는 안 된다."이 문제의 원인은 실행 환경 차이였고, Docker는 이를 이미지 기반 실행 환경 표준화로 해결했습니다.자세한 건 [Infra | DevOps/K8S] - 컨테이너의 운영 본질: "실행이 아니라 운영이다" (Control Plane · Pod · Service · 선언형 시스템) 참조 부탁드립니다. 하지만 실제 서비스 운영에는 여전히 남는 문제가 있습니다.컨테이너가 죽으면 누가 다시 띄우는가?트래픽이 늘어나면 어떻게 확장하는가?여러 서버 중 어디에서 실행할 것인가?업데이트는 어떻게 무중단으로 수행할 것인가?이 ..

Infra | DevOps/K8S 2026.03.08

컨테이너의 본질: "OS가 아니라 프로세스다" (Engine·Image·CAS까지)

1. 서론 - Docker를 한 문장으로"내 PC에서는 되는데 서버에서는 안 된다."이 문제의 본질은 단 하나입니다.실행 환경이 다르기 때문입니다.Docker는 실행 환경을 표준화합니다.그리고 그 표준화의 단위는 "가상 OS"가 아니라 컨테이너입니다.2. Docker VS VM - 격리 단위가 다릅니다.2.1. 구조 비교┌─────────────────────────────┐ ┌─────────────────────────────┐│ 가상머신 (VM) │ │ 컨테이너 (Docker) ││ │ │ ││ ┌──────────┐ ┌──────────┐ │ │..

[Metric Learning] 거리 학습의 본질: Spectral 부터 Deep Metric Learning까지의 계보

[Metric Learning] 거리(Distance)로 지능을 정의하다: Spectral부터 Deep Metric Learning까지1. 서론: 분류(Classification)를 넘어 거리(Distance)의 공간으로우리가 흔히 접하는 딥러닝 모델은 대부분 "이 사진은 고양이인가, 강아지인가?"를 맞히는 분류(Classification) 문제를 풉니다. 이때 사용하는 Softmax 함수는 정해진 클래스(Closed-set) 내에서 확률을 계산하는 데에는 탁월하지만, 치명적인 한계가 있습니다.만약 학습 때 본 적 없는 새로운 강아지 품종이 들어오면 어떻게 될까요? 혹은 얼굴 인식 시스템(FaceID)에 등록되지 않은 외부인이 카메라를 본다면요? 일반적인 분류 모델은 이를 억지로 기존 클래스 중 하나로 ..

AI/Deep Learning 2026.02.08

[OSTEP] 12주차 - 39. 파일과 디렉토리 (Files and Directories)

CPU(프로세스)와 메모리(주소 공간)를 가상화했습니다.이제 마지막 퍼즐 조각: 영속적 저장소(Persistent Storage)입니다.메모리는 전원이 꺼지면 데이터가 사라지지만,디스크는 데이터를 영구적으로 보관합니다."OS는 영속적 장치를 어떻게 관리해야 할까?"1. 파일과 디렉터리의 개념파일(File)┌─────────────────────────────────────────┐│ 파일 = 바이트 배열 ││ ││ [0][1][2][3][4][5]...[N-1] ││ H e l l o ! ││ ..

OSTEP 2026.01.18

[OSTEP] 12주차 - 36. I/O 장치 (I/O Devices)

지금까지 우리는 CPU 가상화(프로세스)와 메모리 가상화(주소 공간)를 배웠습니다.이제 세 번째 핵심 주제인 영속성(Persistence)으로 넘어갑니다.그 첫 관문이 바로 I/O 장치입니다.프로그램에 입력이 없다면? → 매번 같은 결과만 출력프로그램에 출력이 없다면? → 실행한 의미가 없음"OS는 I/O 장치를 어떻게 시스템에 통합해야 할까?"1. 시스템 아키텍처: 버스의 계층 구조왜 컴퓨터에는 여러 종류의 버스가 있을까요?답은 간단합니다: 물리학과 비용 때문입니다.┌─────────────────────────────────────────────────────┐│ 시스템 구조 ││ ..

OSTEP 2026.01.17

[OSTEP] 11주차 - 33. 이벤트 기반의 병행성(고급) (Event-based Concurrency (Advanced))

지금까지 우리는 동시성(Concurrency)을 구현하기 위해 스레드(Thread)를 사용해 왔습니다. 락, 컨디션 변수, 세마포어 등으로 스레드 간 동기화를 했죠. 하지만 스레드에는 치명적인 문제들이 있습니다. 락을 빠뜨리면 레이스 컨디션 락을 잘못 걸면 교착 상태(Deadlock). 그래서 등장한 것이 이벤트 기반 동시성입니다.여기서 중요한 질문을 하나 던지겠습니다. "스레드 없이 어떻게 동시성 서버를 만들 수 있을까?"1. 스레드 기반 vs 이벤트 기반먼저 두 방식의 차이를 식당에 비유해서 이해해 봅시다.스레드 기반(e.g. 스레드 식당)┌─────────────────────────────────────────────────┐│ 식당 A ..

OSTEP 2026.01.09

[OSTEP] 11주차 - 32. 병행성 관련 버그(Common Concurrency Problems)

지금까지 우리는 락(Lock), 컨디션 변수(Condition Variables), 세마포어(Semaphore) 등 병행성 문제를 해결하기 위한 도구들을 배웠습니다. 하지만 이런 도구들을 사용하더라도 버그는 여전히 발생합니다. 실제 대규모 소프트웨어(MySQL, Apache, Mozilla, OpenOffice)를 분석한 연구에 따르면, 병행성 버그는 크게 비교착 상태 버그(Non-Deadlock)와 교착 상태 버그(Deadlock)로 나뉩니다.1. 병행성 버그의 유형Lu et al. 의 연구[L+08]에서 실제 오픈소스 프로젝트들의 병행성 버그를 분석한 결과입니다.애플리케이션설명Non-DeadlockDeadlockMySQL데이터베이스 서버149Apache웹 서버134Mozilla웹 브라우저4116Ope..

OSTEP 2025.12.22