전체 글55 Diffusion model 노이즈 스케줄러 완전 정복 | Linear Noise Scheduler 개념 & 코드 구현 DDPM 노이즈 스케줄러 완전 정복 | Linear Noise Scheduler 개념 & 코드 구현Diffusion Model 딥러닝 생성 AI · 읽는 데 약 7분 소요💡 이 글에서 다루는 내용Diffusion Model의 Forward Process에서 핵심 역할을 하는 Noise Scheduler의 수식 원리부터, PyTorch로 직접 구현하는 LinearNoiseScheduler 코드까지 단계적으로 설명합니다. Beta schedule → alpha → ᾱ(누적곱) → xt 계산까지 막힘없이 이해하실 수 있습니다.📋 목차Noise Scheduler 개념 — β, α, ᾱ 의 관계LinearNoiseScheduler 코드 구현 분석x_t 계산: add_noise() 메서드 완전 분석핵심 요약1.. 2026. 3. 31. Chunk와 Patch의 차이 Chunk와 Patch의 차이를 잊어버리지 않기 위해 아주 간단하게 정리하여 기록해둔다. 2026. 2. 19. CRPS: Continuous Ranked Probability Score, NMAE: Normalized Mean Absolute Error 개념 정리 확률적 예측에 대한 평가로 널리 사용되는 지표로 CRPS와 NMAE가 있다. 여기서 확률적 예측이란 다음과 같은 상황을 말한다.보통 예측이라고 하면,내일 서울의 최고 기온은 25도일 것이다.이것 숫자 하나를 예측하는 것이다. 이 때 실제 기온 27도 라면, 절대 오차는 2이고 제곱 오차는 4일 것이다.그런데 확률적/통계적 모델은 다음과 같이 예측한다.내일 최고 기온은20~22도일 확률 10%22~24도일 확률 30%24~26도일 확률 40%26~28도일 확률 20% 이런 식으로 기온 전체에 대한 확률 분포를 예측한다. 이러한 확률 예측을 평가 하기 위한 방법이 CRPS나 NMAE가 되는 것이다.CRPS: Continuous Ranked Probability ScoreCRPS는 단변량 데이터에서 스코어를 .. 2025. 11. 17. VSCode에서 Claude Code 설치 및 Error: Claude Code process exited with code 1 모든 해결 방안 Claude Code를 VSCode에서 사용 할 때, 원래 터미널에서 사용하였지만 이제 market place에서 설치할 수 있게 되었다. 이를 통해 사용이 훨씬 편리해졌다. 1. 설치VSCode의 Extension에서 calude를 검색하여 "Claude Code for VS Code" 를 설치한다. 그러면 우측 상단에 아래와 같이 claude 아이콘이 생긴다. 나는 원래 구독중이였기 때문에 별 생각 없이 원래 계정을 연결했다. 연결하고 다시 VSCode 창에서 우측 상단에 뜬 cluade 아이콘을 눌렀는데 이런 에러가 떠있었다.Error: Claude Code process exited with code 1 찾아보니 API 키가 설정되지 않았거나 권한이 없는 경우라고 한다. 2. API 설정하기ht.. 2025. 11. 10. LPIPS (Learned Perceptual Image Patch Similarity) 작동 원리와 코드 LPIPS란?LPIPS는 2018년 UC Berkeley 연구진이 개발한 딥러닝 기반의 이미지 유사도 측정 지표이다. 기존의 PSNR이나 SSIM과 같은 전통적인 메트릭들이 픽셀 단위의 차이를 측정하는 것과 달리, LPIPS는 인간의 시각적 인지와 유사한 방식으로 이미지간 차이를 평가한다.사실 LPIPS에 관하여 설명한 포스팅은 너무나 많은데, 정확하게 어떻게 작동되는지 설명하는 포스팅은 거의 보지 못하여 작동 원리를 기반으로 기록을 남기고자 한다. 참고로 LPIPS에 대한 기초 개념 이해는 아래 블로그에서 많은 도움을 받았다.https://xoft.tistory.com/4 [평가 지표] LPIPS : The Unreasonable Effectiveness of Deep Features as a Perc.. 2025. 9. 15. 이미지에서 Self-Attention이 필요한 이유와 동작 원리 (강아지 예제로 쉬운 설명) 이미지 Self-Attention 완벽 이해이 포스트에서는 이미지에서 Self-Attention이 왜 중요한지, 그리고 실제로 어떻게 동작하는지를 시각적인 예시(강아지 이미지)와 함께 직관적으로 설명합니다. Vision Transformer, 이미지 인식, 객체 탐지 등에 관심 있다면 꼭 이해해야 할 핵심 개념입니다.왜 이미지에서 Self-Attention이 필요한가?1. 픽셀 간 장기 의존성 모델링이미지의 한 픽셀은 멀리 떨어진 픽셀과도 관련될 수 있습니다. 예를 들어 강아지의 귀(왼쪽 위)와 꼬리(오른쪽 아래)는 떨어져 있지만 둘 다 같은 객체에 속합니다. Self-attention은 이런 관계를 효과적으로 학습합니다.2. CNN의 한계 보완CNN은 고정된 커널 크기로 주변 정보만 처리합니다. 반면 .. 2025. 7. 16. Conditional GAN(CGAN)이란? 작동 원리와 구현 방식 완벽 가이드 CGAN 개요Conditional GAN(CGAN)은 GAN(Generative Adversarial Network)의 확장 모델로, 데이터 생성 시 조건(condition)을 입력으로 추가해 보다 제어 가능한 생성 결과를 만들어낸다. 기본적인 GAN은 두 개의 신경망으로 구성된다.Generator (생성자): 무작위 노이즈를 바탕으로 실제와 유사한 데이터를 생성Discriminator (판별자): 입력된 데이터가 실제인지 생성된 가짜인지 구분CGAN에서는 이 두 네트워크에 조건 정보(예: 클래스 레이블)를 함께 제공하여, 특정 조건을 반영한 데이터 생성이 가능하다. 예를 들어 MNIST 숫자 이미지에서 숫자 ‘3’을 생성하고 싶다면, 레이블 ‘3’을 조건으로 입력한다.CGAN 구현을 위한 사전 세팅1... 2025. 4. 20. No module named '***' (상위 디렉토리에 사용자 모듈이 있는 경우) No module named '***'는 사용자가 직접 작성한 모듈이 import 되지 않을 때 발생하는 오류이다. 많은 문제 상황이 있지만 현재 작성 중인 파일에서 디렉토리 설정에 문제가 있을 때 발생하여 이 부분을 기록한다. 문제 상황사용자 작성 모듈이 현재 작업하고 있는 폴더의 하위 폴더에 담겨 있지 않고, 상위 폴더에 있는 경우에 발생 예를 들어, 디렉토리가 다음과 같이 구성되어 있다고 가정 한다.└ module └ user_module└ scripts └ main 이런 상황에서 main 파일에 코드를 작성하고 있다고 가정해보자. 이 때 user_module을 import 하려면 아래와 같이 import 한다.import module.user_module이 경우 다음과 같은 에러가 발생.. 2025. 2. 3. 이전 1 2 3 4 ··· 7 다음