데이터 전처리: 그래프 데이터 증강 – 노드 샘플링
ㅁ 그래프 데이터 증강
ㅇ 정의:
그래프 데이터에서 일부 노드를 선택적으로 추출하여 원본 그래프의 구조를 유지하면서 데이터의 다양성을 확보하는 기법.
ㅇ 특징:
– 전체 그래프의 크기를 줄이면서도 중요한 구조적 특징을 보존 가능
– 무작위 샘플링, 중요도 기반 샘플링 등 다양한 방식 존재
– 모델 학습 시 과적합 방지 및 일반화 성능 향상에 기여
ㅇ 적합한 경우:
– 대규모 그래프에서 연산 자원 절약이 필요할 때
– 특정 노드 중심의 지역 구조 분석이 필요한 경우
– 그래프 신경망(GNN) 학습 시 미니배치 구성에 활용
ㅇ 시험 함정:
– 노드 샘플링이 항상 성능 향상을 보장하지 않음
– 무작위 샘플링만으로는 중요한 허브 노드가 누락될 수 있음
– 엣지 정보 손실 가능성을 간과하는 경우가 있음
ㅇ 시험 대비 “패턴 보기” 예시:
O: “노드 샘플링은 그래프 데이터의 연산 효율성을 높이기 위해 일부 노드를 선택적으로 추출하는 방법이다.”
X: “노드 샘플링은 항상 그래프 성능을 향상시키는 보장된 방법이다.”
================================
1. 노드 샘플링
ㅇ 정의:
그래프에서 특정 기준에 따라 일부 노드를 선택하여 서브그래프를 생성하는 데이터 증강 기법.
ㅇ 특징:
– 무작위(Random), 층화(Stratified), 중요도 기반(Importance-based) 등 다양한 방법 존재
– 노드 수 감소로 연산량 절감 가능
– 샘플링 전략에 따라 그래프의 연결성 및 정보 보존 정도가 달라짐
ㅇ 적합한 경우:
– 대규모 소셜 네트워크 분석
– 추천 시스템에서 사용자-아이템 그래프 축소
– 네트워크 보안에서 특정 영역 집중 분석
ㅇ 시험 함정:
– 무작위 샘플링 시 중요한 구조적 노드가 제외될 수 있음
– 샘플링 후 그래프의 연결성이 크게 훼손될 수 있음
– 샘플링 비율이 너무 낮으면 학습 데이터 편향 발생
ㅇ 시험 대비 “패턴 보기” 예시:
O: “중요도 기반 노드 샘플링은 중심성이 높은 노드를 우선적으로 선택한다.”
X: “노드 샘플링은 항상 그래프의 모든 구조적 특성을 유지한다.”
ㅁ 추가 학습 내용
노드 샘플링 관련 핵심 개념
– 주요 샘플링 기법: Random Walk 기반 샘플링, Snowball Sampling, GraphSAGE의 Neighbor Sampling
– 샘플링 시 고려할 중심성 지표: Degree Centrality, Betweenness Centrality
– 샘플링 후 그래프 불변성 이해 필요: 연결성(connectedness), 클러스터링 계수(clustering coefficient) 변화 등
시험에서 주의할 점
– “노드 샘플링이 엣지 수 감소와 동일하다”는 함정 문장에 주의
– 노드와 엣지의 관계를 명확히 구분할 것
비교 분석 포인트
– 노드 샘플링과 엣지 샘플링의 차이점
– 각 기법이 그래프 신경망 학습에 미치는 영향