본문 바로가기

전체 글244

초기 객체 탐지 모델(Faster R-CNN) 초창기 객체 탐지 모델인 R-CNN, SPP-net, Fast R-CNN, Faster R-CNN에 대해서 알아볼 것이다. 1. R-CNN은 대표적인 영역 추정 기법인 선택적 탐색을 이용하고, 딥러닝 모델인 CNN과 결합한 객체 탐지 알고리즘이다.이미지에서 선택점 탐색을 통해 객체가 있을 만한 후보 영역을 뽑아낸다. 이 영역을 CNN에 전달해 훈련하고, SVM으로 분류한다.R-CNN은 학습 절차가 복잡하고, 객체 탐지 시간이 너무 오래 걸린다는 치명적인 단점이 있다. 2. SPP-net은 CNN의 합성곱 연산 수를 줄여서 R-CNN을 개선한 모델이다.후보 영역을 추정하고 각 영역들을 모두 CNN으로 전달하는 방식이 아니라, 원본 이미지를 CNN에 한번 전달하고,후보 영역을 원본 이미지 위에 표시하는 방식.. 2026. 4. 6.
Boosting 계열 모델의 응용 (XGBoost, LightGBM, CatBoost) Gradient Boosting 모델을 응용시킨 3가지 모델에 대해서 알아볼 것이다.각 모델의 장단점, 언제 사용해야 하는지, 실제 코드 적용과 파라미터 튜닝 시 어떻게 해야 하는지를 정리할 것이다. 1. XGBoost과적합을 막기 위해 규제 항을 넣고, 가지치기를 진행하는 모델이다.자세한 원리는 복잡하지만 XGBoost를 코드로 구현하고 파라미터 튜닝을 해서 학습을 시키는 방법에 대해서만 알아볼 것이다. 이렇게 많은 파라미터들이 있지만 중요한 파라미터들만 정리해보겠다. 1. n_estimators트리의 개수이다. 100~1000개 정도로 설정한다.n_estimators를 넉넉하게 설정하고 early_stopping_rounds를 50 정도로 설정하면 더 학습이 나아지지 않을 때 멈춘다. 2. eta(l.. 2026. 4. 1.
기본적인 Boosting 계열의 모델(AdaBoost, GradientBoost) 앙상블 학습은 여러 개의 Decision Tree를 결합해 하나의 트리보다 더 좋은 성능을 내는 머신러닝 기법이다.학습법에는 Bagging, Boosting 이렇게 두가지가 있다. 1. Bagging우선 데이터로부터 부트스트랩을 한 데이터로 모델을 학습시킨다. (복원 랜덤 샘플링)카테고리형 데이터는 투표 방식으로 결과를 결정하고, 연속형 데이터는 평균으로 결과를 결정한다.배깅을 활용한 모델이 랜덤포레스트이다. 2. Boosting부스팅은 가중치를 활용해 여러 Decision Tree가 서로 영향을 미칠 수 있게 한다.처음 모델이 예측을 하면 잘못 예측된 데이터에는 가중치를 크게, 맞게 예측한 데이터에는 가중치를 작게 한다.이를 통해 잘못 예측된 데이터는 다음 트리에서 더 집중해 분류할 수 있게 만든다. .. 2026. 4. 1.
Decision Tree(Random Forest) Decision Tree의 기본 아이디어는 스무고개를 하듯 여러 task로 나눠서 질의를 하고 그에 맞는 boundary를 설정하는 것이다.이를 지나치게 많이 하면 아래 그림과 같이 오버피팅이 발생하는 문제가 있다.이를 방지하기 위해 가지치기(Pruning) 기법을 사용한다.min_sample_split으로 한 노드의 최소 데이터 수를 지정한다. 해당 노드의 데이터 수가 너무 적으면 더 이상 가지를 뻗지 않게 만드는 것이다.또한, max_depth를 통해 최대 깊이를 지정할 수 있다. 불순도는 해당 범주 안에 데이터가 얼마나 섞여있는지를 의미한다. 엔트로피는 불순도를 수치로 나타낸 척도이고 이렇게 식으로 표현할 수 있다.엔트로피는 최대 1이고, 엔트로피를 최소화 시키는 것이 불순도를 낮추고 범주를 잘 나.. 2026. 3. 31.
서포트 벡터 머신(SVM) SVM은 데이터의 카테고리를 나누는 이진 선형 분류 모델이다.최대한 적절한 구분선을 그어 데이터를 나누는 것이 기본 아이디어이다.SVM의 중요한 요소 중 하나인 커널 트릭이라는 것이 있다.이 예시가 커널을 이해하기 가장 좋은 것 같다.왼쪽 그래프에서 데이터를 나누는 선을 긋는 것을 불가능하다.이럴 때 새로운 차원 z=x^2+y^2를 도입해 선형 분류가 가능하게 만들 수 있다.이렇게 저차원 공간을 고차원 공간으로 매핑해주는 작업을 커널 트릭이라고 한다. SVM의 중요한 파라미터로 kernel, C, Gamma가 있다.kernel은 linear, polynomial, sigmoid, rbf 등을 선택할 수 있고, default는 rbf이다. 1. 선형 커널 (Linear Kernel) 가장 단순한 형태의 커.. 2026. 3. 31.
나이브 베이즈 분류 모델 베이즈 정리를 기반으로 한 분류 모델이다. 베이즈 정리는 조건부 확률에 대한 공식이다.나이브 베이즈 분류 모델의 원리는 아주 간단하다.데이터를 가지고 미리 P(B/A), P(A), P(B) 를 학습시켜놓고, P(A/B)를 예측한다.예를 들어, 독립변수가 n개 있을 때 해당 데이터의 클래스(레이블)을 예측하려는 모델을 만드려고 할 때,각 레이블마다 데이터의 확률분포를 정해두면 확률을 계산할 수 있다.예를 들어 레이블이 1인 데이터를 평균 3, 표준편차 0.5인 정규분포라고 가정하면, 레이블이 1일 때 독립변수가 1,5,3,2,5,... 일확률을 정규분포의 확률밀도함수로 구할 수 있다. 이 확률이 P(B/A)가 된다.P(B)는 전체 데이터에 대한 확률분포로 구할 수 있고, P(A)는 그냥 각 레이블이 등장확.. 2026. 3. 31.