목록전체 글 (183)
Just Fighting
Box-Jenkins 방법론이란? 시계열 데이터를 분석하고 미래 값을 예측하기 위해George Box와 Gwilym Jenkins가 제안한 통계적 접근 방식이다. 주로 ARIMA(Autoregressive Intergrated Moving Average) 모델을 기반으로 시계열 데이터를 모델링한다. ARIMA 살짝 짚고 넘어가기ARIMA는 대표적인 시계열 예측모델이며, 다음 3가지 개념이 결합되어 만들어졌다. AR (Autoregressive, 자귀 회귀, p)이전 시점의 자기 자신 값(과거 데이터)을 이용해 현재 값을 설명한다.과거 데이터들의 가중합$Y_t = c + \phi_1 Y_{t-1} + \phi_2 Y_{t-2} + \dots + \phi_p Y_{t-p} + \epsilon_t$ I ..
Backbone - Head 구조란?딥러닝 모델을 ‘특징을 뽑는 부분’과 ‘그 특징으로 답을 내는 부분’으로 분리한 설계 패턴이다.컴퓨터 비전에서 표준이 되었고, 지금은 NLP, 멀티모달까지 거의 대부분의 대형모델이 이 구조를 가진다. 입력 → backbone → Neck → Head → 출력 + LossBackbone : 특징 추출 (재사용 가능)Neck : 특징 가공 및 융합 (선택적)Head : 과제별 예측 (과제마다 교체) Backbone(백본)이란?원본 입력(이미지 픽셀, 토큰 시퀀스)을 의미있는 추상 표현으로 변환하는 메인 네트워크이다.백본에서 채널 확장과 공간 차원 축소(spatial downsampling), 계층적 특징 추출이 일어난다. 입력 이미지가 컨볼루션(Convolution)..
EA-LSTM이란?수문학 및 시계열 예측에서 쓰이는 LSTM 기반 모델이다.표준 LSTM과 달리 정적 특성(static features)을 이용해 입력 게이트를 별도로 조절해 지역별 유역 특성을 학습한다. 동적 입력값(강수량, 기온 등)은 모델 전체에 쓰이지만,고정된 입력값(토양 종류, 지형, 유역 면적 등 정적특성)은 입력 게이트를 조절하는데 따로 사용한다. => 유역마다 다른 고유의 지형적, 환경적 특성을 반영해 미계측 유역에서도 정확한 유출 예측 수행 가능 수식을 정리해보자변수 설명$Wx+Uh_{t-1}+b$의 형태$W$는 입력에 곱하는 가중치, $U$는 이전 은닉상태 $h_{t-1}$에 곱하는 재귀 가중치, $b$는 편향( 은닉 차원 $n$, 정적 입력 차원 $m_s$, 동적 입력 차원 $m_..
Cramér's V란?범주형 변수 간의 연관성 강도를 0~1 사이의 값으로 측정하는 통계적 지표를 의미한다. 카이제곱 검정의 한계보통 범주형 데이터의 연관성을 파악할 때는 카이제곱 독립성 검정을 진행한다.그러나 계산되는 통계량 $\chi^2$에 한계가 존재한다.데이터의 개수가 많아질수록 $\chi^2$값이 함께 커진다.범주의 개수가 많아질수록 $\chi^2$값이 함께 커진다.따라서, 큰 카이제곱 통계량의 값이 큰 값이 나왔을 때,그것이 두 변수가 관련이 있어서 그런 것인지, 단순히 데이터가 많아서 그런 것인지 파악하기 어렵다. 카이제곱의 한계를 극복하기 위해서 Cramér's V가 나타났다! 수식$n$:전체 데이터 수$r$ : 데이터의 행 수$k$ :데이터의 열 수$min(k-1, r-1)$ : 행과..
[kaggle] MLB 야구 타석 예측하기 - (1) 변수생성https://www.kaggle.com/competitions/reds-hackathon-2025 Cincinnati Reds Hackathon 2025The Reds Hackathon is a chance for college students to work with baseball data and design solutions to problems faced by MLB front officeswww.kaggle.com 꽤나 오래전yensr.tistory.com 사실 변수 생성을 마친 뒤, 모델링에 들어가기까지 아주 긴 공백이 존재한다.아주 단순한 모델링을 진행했지만, 마무리를 지은 것에 큰 의의를 둔다! 학습 데이터 생성 1편에서 ..
CatBoost란?CatBoost(Categorical Boosting)란 Order Boosting 기법을 사용해 과적합을 방지하는그래디언트 부스팅(Gradient Boosting)알고리즘이다. 범주형 데이터에 특화된 별도의 인코딩(원-핫 인코딩, 라벨 인코딩 등) 없이원본 그대로 처리할 수 있다는 특징을 가진다. encoding 방식은?target encoding 방식을 사용한다.예측하고 싶은 target과 관련성을 가진 숫자로 변환하는 방식이다.예) 의사 - 연봉 1억 8천 -> 1.8억(타켓인코딩) 이 방식을 사용하면 컬럼을 여러 개 만들 필요없이 1개의 컬럼이 유지된다.또한, 단순한 숫자가 아닌 정답(target)과 직결된 정량적 수치를 가지게 되어모델 입장에서 target을 직관적으로 이해..
https://www.kaggle.com/competitions/reds-hackathon-2025 Cincinnati Reds Hackathon 2025The Reds Hackathon is a chance for college students to work with baseball data and design solutions to problems faced by MLB front officeswww.kaggle.com 꽤나 오래전에 시작했으나, 최근에 끝을 맺어서 작성하는 데이터 모델링 연습!우선 데이터 탐색과 변수 생성부터 진행했다. 데이터는 3년간의 야구 경기의 매 타석에 대한 개별 데이터와 선수들의 정보에 대한 데이터이며,목적은 선수들의 다음해 타석 수를 예측하는 것이다. *재미로 한 데이터..
Prophet + XGBoost로 시계열 예측하기 1 - 개별 모델 예측Prophet은 트렌드와 계절성 같은 전반적인 흐름을 잘 잡고,XGBoost는 잔차(오차) 속에 숨은 복잡한 비선형 패턴을 잡는 데 사용한다. 특징Prophet (통계적 접근)XGBoost (머신러닝 접근)장점**추세(Trend)**yensr.tistory.com Prophet과 XGBoost를 함께 사용하기 앞서, 두 모델의 장단점을 확인하기 위해개별로 모델을 학습해 결과를 확인했다. 이번에는 두 모델을 함께 사용한 결과를 확인하고자 한다.Prophet으로 시계열 데이터의 전체적인 추이를 예측하고, 이 예측 오차를 XGBoost로 예측해 보완해주는 그런 모델을 만들어보자.$$y=Prophet(Trend, Seasonality)+X..
Prophet은 트렌드와 계절성 같은 전반적인 흐름을 잘 잡고,XGBoost는 잔차(오차) 속에 숨은 복잡한 비선형 패턴을 잡는 데 사용한다. 특징Prophet (통계적 접근)XGBoost (머신러닝 접근)장점**추세(Trend)**와 계절성을 기가 막히게 잡음. 데이터가 빠진 구간이 있어도 강함.변수 간의 복잡한 관계와 미세한 패턴을 잘 잡음.단점외부 변수(날씨, 가격 등)의 영향을 단순하게 처리함.데이터 범위 밖의 우상향/우하향 추세를 예측 못 함 (Extrapolation 문제).역할전체적인 "뼈대(흐름)"를 잡음.뼈대에 붙는 "살(디테일)"을 붙임. $$y=Prophet(Trend, Seasonality)+XGBoost(Residuals)$$ Prophet 단계: 시계열의 큰 줄기(추세, 요일..
Prophet이란?meta에서 개발한 가법 모델(Additive Model) 기반의 시계열 예측 오픈 소스 라이브러리Trend, Seasonality, Holidays 3가지 요소의 합으로 분해해 계산 $y(t) = g(t) + s(t) + h(t)+ \epsilon_t$ $g(t)$ : 트렌드. 주기적이지 않은 변화를 반영하는 함수$s(t)$ : 계절성. 일일, 주간, 연간 등 주기적인 변화를 반영하는 계절성$h(t)$ : 휴일. 불규칙한 일정으로 발생하는 휴일 및 이벤트의 영향$\epsilon_t$ : 모델이 설명하지 못하는 오차항 Trend $g(t)$ 트렌드 모델링을 위한 두 가지 설계 Saturation Growth Model (Logistic Curve) 성장의 한계점이 존재하는 경우예..
