프로젝트 4주차 타임라인 (Tue Jan 20 2026)


[8] Two-Stage Ensemble

         CatBoost 및 LightGBM 대비 Ensemble의 MCC 성능         MLP 및 XGBoost 대비 Ensemble의 MCC 성능

 

1️⃣ High Recall Screening

목적: 진짜 epitope를 최대한 놓치지 않기 위해 false negative를 최소화

방법: CatBoost + LightGBM 앙상블을 threshold를 recall 중심으로 고정함으로써 높은 recall을 확보

          candidate space를 대폭 축소하여 downstream 모델의 탐색 공간을 제한함

📌 Stage 1은 예측이 아닌 filtering 단계이며, 성능 목표는 Recall로 설정

 

2️⃣ Score-Based Soft Filtering

목적: binary decision에 따른 정보 손실을 방지하고 confidence-aware filtering을 통해 noisy positive를 과도하게 신뢰하지 않음

방법: 단순한 pass/fail 기준이 아닌 확률 score 기반 soft weighting을 적용하여 최종 점수(FS = α⋅S1+ (1 − α)⋅S2)) 계산

                                                                                                          α = 0.4로 설정하여 Stage 1 score는 보조적 신뢰 신호로 작용

📌 MCC 손실 없이 precision을 유지하면서 실험 부담이 급격히 증가하지 않는 지점을 기준으로 α를 결정

 

3️⃣ High Precision Refinement

목적: Stage 1을 통과한 후보들 중 false positive를 최대한 제거하여 wet-lab validation 비용을 최소화

방법: XGBoost + MLP Ensemble 앙상블을 적용하여 서로 다른 inductive bias를 상쇄하고 precision을 극대화

📌 Stage 2는 balanced classifier가 아니며 Precision을 목표로 설정

4️⃣ Final Candidate Selection

Stage 1 score는 완전히 폐기되지 않고 Stage 2 decision에 연속적으로 반영되며

최종 score가 높은 epitope를 high-confidence candidate로 정의함
📌 실험적으로 검증 가능한 규모의 후보군을 안정적으로 확보함

Note
Recall 중심의 1차 스크리닝과 Precision 중심의 2차 정제를 soft ensemble cascade로 결합하여
실험 가능성과 예측 신뢰도를 동시에 만족하는 epitope 후보를 선별

문제 설명 solution.py
#123 세 개의 기둥과 이 기동에 꽂을 수 있는 크기가 다양한 원판들이 있고, 퍼즐을 시작하기 전에는 한 기둥에 원판들이 작은 것이 위에 있도록 순서대로 쌓여 있습니다. 

(1) 한 번에 하나의 원판만 옮길 수 있습니다.
(2) 큰 원판이 작은 원판 위에 있어서는 안됩니다.

1번에는 n개의 원판이 있고 이 n개의 원판을 3번 원판으로 최소 횟수로 옮기려고 합니다. 1번 기둥에 있는 원판의 개수 n이 매개변수로 주어질 때, n개의 원판을 3번 원판으로 최소로 옮기는 방법을 return하는 solution를 완성해주세요.
def hanoi(f, t, m, n):
     if n == 0:
          return []
     return hanoi(f, m, t, n-1) + [[f, t]]
                 + hanoi(m, t, f, n-
1)

def solution(n):
     return hanoi(1, 3, 2, n)

+ Recent posts