품질관리(QAQC) 데이터 부트캠프(본캠프)

본캠프_16주차(화)_TIL(최종 프로젝트)

Wat_zy 2025. 12. 30. 08:50

✅ 오늘 한 것

최종 프로젝트


✏️ 오늘 배운 점

[Today] 백신 개발을 위한 B-cell Epitope 데이터 분석 및 전처리

데이터 탐색 및 컬럼 재정의 (Data Renaming)

데이터의 가독성을 높이고 코드 작성의 효율성을 위해 기존의 긴 컬럼명들을 직관적인 명칭으로 변경하였습니다.

  • 주요 변경 사항:
    • epitope_seq → epitope
    • antigen_seq → antigen
    • start_position start
    • end_position end
    • assay_method_technique → method
    • assay_group → assay
    • disease_type → disease
    • disease_state → state
    • qualitative_label → q_label

데이터 정제 (Data Cleaning)

모델의 노이즈를 줄이고 데이터의 무결성을 확보하기 위해 필터링 및 제거 작업을 수행했습니다.

  • Epitope 길이 필터링: Linear Peptide의 특성을 고려하여 서열 길이가 8~25자인 데이터만 선별.
  • 결측치(NaN) 제거: 분석의 맥락을 결정짓는 핵심 정보인 state(질병 상태) 컬럼의 결측치 행 제거.
  • 이상치 제거: 서열 길이 계산값이 실제 데이터와 일치하지 않는 특정 ID(356551) 행 제거.
  • 인덱스 초기화: 행 제거 후 reset_index(drop=True)를 통해 데이터 프레임의 번호를 재정렬.

고유값 분석 및 도메인 지식 파악 (Domain Knowledge)

각 컬럼의 고유값(unique)을 추출하여 실험 기법과 질병 환경이 실제 면역학적으로 무엇을 의미하는지 분석했습니다.

  • 질병 유형(disease): 감염병 발생, 자가면역질환, 암 등 12가지 면역 배경 파악.
  • 실험 기법(method/assay):
    • 3D structure: 구조 기반의 확실한 에피토프 증거.
    • Neutralization: 백신 효능과 직결되는 기능적 지표.
    • Binding: 항원-항체 결합의 기본 근거.
  • 데이터 불일치 확인: antigen_seq와 antigen_code의 개수 차이를 분석하여, 동일 서열이 여러 논문(Reference)에서 서로 다른 이름으로 불렸음을 확인 (GroupKFold 기준 수립).

단순히 데이터를 지우는 것이 아니라, 왜 이 데이터가 생겼는지(Reference 중복)와 이 실험이 무엇을 의미하는지(Neutralization의 중요성)를 이해함으로써 모델의 방향성을 더 명확히 잡을 수 있었던 과정이었다.

 

[Next Plan] Epitope-Context 상관관계 및 Label Noise 분석

[1] Label 신뢰도 분석 (Assay Group)

실험 목적에 따른 결과의 일관성을 검토합니다.

  • Assay별 통계: assay 그룹별 양성(Positive) 비율 계산.
  • 불일치 검증: 동일한 epitope가 서로 다른 assay에서 양성/음성으로 엇갈리는 사례 확인.
  • 신뢰도 정립: 분석 결과를 바탕으로 신뢰도가 높은 assay 후보군 선정.

[2] 관측 변동성의 원인 파악 (Method & Technique)

실험 기법에 따른 결과의 차이를 분석합니다.

  • 기법별 비교: method별 양성 비율 비교 분석.
  • 실험 환경 대조: In vivo(생체 내) vs In vitro(시험관 내) 실험 결과의 불일치율 계산.
  • 변동성 매핑: 동일 epitope 기준, 특정 기법에서 유독 라벨이 변하는 패턴 포착.

[3] 생물학적 맥락 분석 (Disease Context)

피험자의 상태가 면역 반응에 미치는 영향을 파악합니다.

  • 질병별 반응성: disease 타입별 양성 비율 확인.
  • 맥락 의존성: 동일 epitope가 질병 종류에 따라 label이 바뀌는 '질병 의존적 반응' 후보군 정리.

심화 분석: 유사 Epitope 및 가설 설립

단순 일치를 넘어 유사한 서열 간의 관계를 분석합니다.

  • 유사성 정의: 유사한 epitope를 판별할 기준(Edit distance 등) 결정.
  • 불일치 원인 매핑: 유사 서열 간 라벨이 다를 경우, 그 원인이 assay, method, disease 중 무엇인지 데이터 기반으로 매칭.
  • 가설 수립: 발견된 패턴을 바탕으로 이 데이터셋의 Label Noise 발생 원인에 대한 최종 가설 설립.

4. 기대 효과

  • 데이터 필터링: 신뢰도가 낮은 실험 조건에서 온 데이터를 식별하여 학습 가중치 조절 가능.
  • 피처 엔지니어링: 단순 서열 정보 외에 라벨에 영향을 주는 '맥락 변수'의 중요도 파악.
  • 모델 강건성: Label Noise에 강한 학습 전략(Label Smoothing, Grouping 등) 수립 근거 마련.

✏️ 오늘의 질문

1. BioPython이 무엇인가? (대시보드 활용시 제약 데이터의 분류 과정은 BioPython으로 진행되어야 하는가?)

2. epitope_seq의 경우, 아미노산 서열(문자열)을 수치형으로 변환해야 하는가?


📌추가로 해야 할 점

최종 프로젝트