본문 바로가기

전체 글64

딥러닝 소프트맥스 함수 완벽 정리: 정의, 수식, 예제까지 소프트맥스(Softmax)란?Softmax는 실수 벡터(로짓)를 예측 클래스에 대한 확률 분포로 변환하는 수학적 함수입니다. 주로 분류 모델의 출력층, 특히 다중 클래스 분류 문제에서 사용됩니다.수학적 정의실수 벡터 $z = [z_1, z_2, ..., z_K]$가 주어지면, 소프트맥스 함수는 벡터 $\sigma(z)$를 출력합니다. 여기서:$\sigma(Z_i)=\frac{e^{z_i}}{\sum_{j=1}^{K}e^{z_j}} \text{(for i=1, ..., K)}$각 요소 $\sigma(z_i) \in (0, 1)$이며, 모든 요소의 합은 1입니다: $\sum_{i=1}^K \sigma(z_i) = 1$.소프트맥스를 사용하는 이유로짓(raw score)을 확률로 변환해줍니다.모델이 예측에 대해.. 2025. 4. 23.
딥러닝에서 엔트로피와 크로스 엔트로피 손실 함수 완벽 이해 딥러닝에서 엔트로피란?딥러닝에서의 엔트로피는 일반적으로 정보 이론에서 클로드 섀넌(Claude Shannon)이 1948년에 제안한 정보 엔트로피를 의미합니다. 이는 확률 분포에서의 불확실성 또는 무작위성을 측정하는 개념입니다.직관적으로 이해하기:무언가에 대해 매우 불확실하다면 (예: 이미지의 클래스를 예측할 때) 엔트로피는 높습니다.반대로 확신이 높은 예측을 한다면 (예: 모델이 고양이라고 확신하는 경우) 엔트로피는 낮습니다.수학적 정의 (샤논 엔트로피)확률 분포 p = [p1, p2, ..., pn]가 주어졌을 때, 엔트로피 H(p)는 다음과 같이 계산됩니다:이 수식은 가능한 각 결과에서 발생하는 "놀라움" 또는 "정보량"을 합산한 것입니다.딥러닝에서의 엔트로피: 어디에, 왜 사용될까?딥러닝에서 엔트.. 2025. 4. 22.
작업 할당 최적화를 위한 헝가리안 알고리즘 (Hungarian Matching Algorithm) 헝가리안 (Hungarian) 알고리즘은 1955년 Harold Kuhn 에 의해 개발 및 발표되었으며, 이 알고리즘이 두 명의 헝가리 수학자 Dénes Kőnig 와 Jenő Egerváry 의 초기 연구에 크게 기반을 두고 있기 때문에 "헝가리안 방법"이라는 이름을 붙였습니다.헝가리안 알고리즘은 어디에 사용될까?헝가리안 매칭 알고리즘은 할당 문제(Assignment Problem)를 해결합니다:“n개의 작업을 n명의 작업자에게 어떻게 할당하면 총 비용이 최소화되거나 총 이익이 최대화될까?”이 문제는 다음과 같이 생각할 수 있습니다:작업을 직원에게 최적 할당예측 박스와 실제 GT 박스 매칭학생과 학교의 최적 매칭DETR (End-to-End Object Detection with Transformers.. 2025. 4. 22.
정보 이론과 정보 병목 완벽 가이드 정보 이론(Information Theory)란 무엇인가?정보 이론(Information Theory) 은 1940년대 클로드 섀넌(Claude Shannon)이 개발한 수학적 프레임워크로,정보를 어떻게 측정하고, 전송하고, 압축할 수 있는지를 이해하기 위해 만들어졌습니다. 이 글에서는 정보 이론의 핵심 개념인 엔트로피(Entropy) 와, 딥러닝과 밀접한 관련이 있는 정보 병목(Information Bottleneck) 원리에 대해 자세히 설명합니다.정보 이론은 다음과 같은 질문을 다룹니다:하나의 메시지에는 얼마만큼의 정보가 담겨 있을까?그 정보를 얼마나 효율적으로 표현할 수 있을까?정보를 전송할 때 노이즈(잡음)를 어떻게 줄일 수 있을까?핵심 개념: 엔트로피(Entropy)엔트로피는 어떤 사건의 불확.. 2025. 4. 21.
딥러닝 활성화 함수 (Activation Functions) 완벽 가이드 딥러닝 모델, 특히 신경망(Neural Network)에서 활성화 함수(Activation Function) 는 핵심적인 역할을 합니다. 활성화 함수는 각 뉴런이 활성화될지 여부를 결정하며, 모델에 비선형성(Non-linearity) 을 도입해줍니다. 만약 활성화 함수가 없다면, 아무리 많은 층을 쌓아도 신경망은 단순한 선형 회귀(Linear Regression) 모델처럼 작동하게 됩니다.이 글에서는 활성화 함수의 필요성과 발전 과정을 자세히 설명하고, 대표적인 활성화 함수들을 비교합니다.활성화 함수의 역할비 선형성: 현실 세계의 데이터는 대부분 비선형적입니다. 활성화 함수는 신경망이 이러한 복잡한 패턴을 학습할 수 있도록 비선형성을 추가해줍니다.심층 신경망(Deep Learning) 가능: 딥러닝 모델.. 2025. 4. 21.
딥러닝에서 특성 정규화 (Feature Normalization) 기법의 중요성 딥러닝 모델을 훈련할 때 특성 정규화는 모델 성능, 수렴 속도 및 훈련 안정성을 개선하는 데 중요한 역할을 합니다. 특성(feature) 정규화는 다음과 같은 이유로 필수적입니다.1. 수렴 속도 가속화신경망은 일반적으로 SGD(확률적 경사 하강법), Adam 등과 같은 경사 기반 최적화 기법을 사용하여 훈련됩니다. 만일, 입력 특성들이 서로 다른 범위를 가질 경우 (예: 하나는 0에서 1 사이, 다른 하나는 0에서 1000 사이), 손실 함수는 왜곡되거나 불안정해집니다. 이로 인해 기울기가 진동하거나 훈련이 불안정해질 수 있습니다. 이런 이유로 특성을 정규화하면 모델이 비슷한 크기의 데이터를 처리하게 되어 손실 함수가 더 매끄럽게 되며, 훈련 속도가 빨라집니다.2. 수치적 안정성 향상딥러닝 모델은 활성화.. 2025. 4. 21.
CNN에서 Convolution(합성곱) 연산자 역할과 동작 원리 정리 합성곱 층(Convolution Layer) 이란?합성곱 층은 합성곱 신경망(CNNs) 의 기본 구성 요소입니다. 주로 이미지 데이터를 처리하는 데 사용됩니다.완전 연결층(fully connected layer)처럼 입력의 모든 픽셀을 모든 뉴런에 연결하는 대신, 합성곱 층은 작은 필터(커널)를 이미지 위에 슬라이딩하며 엣지(edge), 텍스처(texture), 패턴(pattern)과 같은 특성(features)을 추출합니다.주요 용어들입력(Input): 이미지 또는 특징맵 (예, 6X6 픽셀).커널(Kernel): 이미지 위를 이동하는 작은 행렬 (예, 3X3 or 5X5).스트라이드(Stride): 필터가 한 번에 이동하는 단계 수.패딩(Padding): 출력 크기를 조절하기 위해 이미지 주위에 추가.. 2025. 4. 21.
기울기 소실 (Vanishing Gradient) 문제 기울기 소실(Vanishing Gradient)은 깊은 신경망, 특히 매우 깊은 구조를 가진 신경망을 학습할 때 흔히 발생하는 문제입니다. 이로 인해 모델이 학습 과정에서 데이터로부터 제대로 학습하는 것이 어려워집니다. 기울기 소실 문제란?딥러닝에서는 역전파(backpropagation) 라는 방법을 통해 학습이 이루어집니다. 이 과정에서 모델은 손실 함수(loss function) 를 각 가중치에 대해 미분한 기울기(일종의 변화율) 를 이용해 가중치를 조정합니다. 이 기울기는 각 가중치를 얼마나 변경해야 성능이 향상될지를 모델에게 알려줍니다. 하지만 딥 뉴럴 네트워크에서는, 역전파가 진행될수록 기울기가 점점 작아질 수 있습니다. 이러한 현상을 기울기 소실(vanishing gradient) 이라고 부릅.. 2025. 4. 20.
딥러닝 모델 학습 시 Overfitting 대 Underfitting 딥러닝 모델을 학습시킬 때, 우리는 모델이 학습 데이터로부터 패턴을 잘 익혀서 새로운, 본 적 없는 데이터에 대해서도 정확한 예측을 하기를 원합니다. 하지만 때때로 모델이 너무 적게 배우거나, 반대로 너무 많이 배울 때가 있습니다. 이것은 각각 언더피팅(underfitting) 또는 오버피팅(overfitting)으로 이어집니다. 이제 예시, 시각 자료, 간단한 수학과 함께 이 개념들을 쉽게 풀어보겠습니다..1. 모델 학습의 목표는 뭘까요?집의 크기, 위치, 방 개수 같은 특성을 기반으로 모델이 집값을 예측하도록 가르친다고 가정을 해보시죠. 이때 목표는 입력 특성 x (예: 크기, 방 수 등)를 예측값 ŷ(집값)으로 매핑해주는 함수 f(x)를 찾는 것입니다. 이때 예측값 ŷ는 실제 가격 y에 최대한 가깝.. 2025. 4. 20.
파이썬 mutable과 immutable 변수들 파이썬을 배울 때 꼭 이해해야 할 중요한 개념 중 하나는 가변(mutable) 데이터 타입과 불변(immutable) 데이터 타입의 차이입니다. 이 개념을 쉽게 설명하기 위해, 예제를 활용해 단계별로 풀어보겠습니다!1. "가변"과 "불변"이란 무엇인가요?가변(mutable): 객체가 생성된 후에도 수정할 수 있습니다.불변(immutable): 객체가 생성된 후에는 수정할 수 없습니다.이렇게 생각해보세요:타입실생활 비유Mutable화이트보드: 쓰고 지우는 것이 가능Immutable출력한 사진: 한번 인쇄되면 수정 불가능 2. Immutable 데이터 타입이들은 생성된 후에는 변경할 수 없는 데이터 타입입니다.Immutable 타입 예제:intfloatboolstrtuplefrozenset예제 1: 정수 (.. 2025. 4. 19.
파이썬 'global'과 'nonlocal' 키워드 설명 및 예제 파이썬 키워드들 중 'global'과 'nonlocal'은 파이썬의 "변수의 범위" 를 다룰 때 등장합니다. 즉, 어떤 변수에 접근하거나 수정할 때 "이 변수가 어디에 있는지"를 정하는 키워드 입니다. 1. 변수 범위 리뷰본격적으로 들어가기 전에, 스코프(scope)는 변수에 접근할 수 있는 프로그램의 범위를 의미한다는 것을 기억하세요.지역 스코프(Local scope): 함수 안에서전역 스코프(Global scope): 모든 함수 바깥에서포함 스코프(Enclosing scope): 다른 함수 안에 있는 함수에서2. global 키워드'global' 키워드는 현재 함수 바깥, 특히 전역 스코프(global scope)에 있는 변수를 수정할 때 사용합니다.보통 함수 안에서 변수를 할당하면 지역 변수(loc.. 2025. 4. 19.
정보시스템감리사 자격증 갱신 간단 설명 한국지능정보사회진흥원에서 주관하는 정보시스템 감리사 자격증을 취득한 후 2-3년 정도 1년에 한두번 정도 수석감리원으로 감리에 참여한 후 재직중이던 직장에 근무를 하느라 감리사 자격증에 대해서 크게 신경을 쓰지 않고 살았었다. 그러다 5년 마다 자동 갱신이 되는 자격증을 2011년 경에 받았고 이 때 이 자격증의 유효기간이 2016년 이었다.그후 제도가 변경되어 감리사 자격증 갱신을 위해서는 재교육이 필수가 되었고 더 이상 자동 갱신되는 자격증을 받을 수 없는 상태가 되었지만 여전히 회사에 소속되어 다른 일을 하고 있었던터라 크게 신경을 쓰지 않고 있었다. 하지만 2024년 하반기에 재직중이던 미국계 회사에서 대규모 구조조정이 있었고, 이 때 내가 속했던 한국과 유럽 조직이 없어지면서 레이오프 상태가 되.. 2025. 4. 19.