← 홈|L2

CBC 탐색 — 매칭 필터 알고리즘

화면구분선을 드래그해서 크기 조절

세션 목록

1
신호 탐지 파이프라인

신호 탐지 파이프라인

LIGO·Virgo·KAGRA 관측 런에서 데이터가 수집되는 순간부터, 여러 팀이 만든 독립 소프트웨어 파이프라인이 동시에 신호를 탐색합니다. 아래 분석 흐름은 원시 데이터부터 카탈로그 등재까지 각 단계에서 어떤 도구가 쓰이는지를 보여줍니다.


대표적인 탐지 파이프라인 비교

파이프라인방법대상 신호특징
PyCBC매칭 필터CBC (BBH·BNS·NSBH)오픈소스, 연구·학습 모두 접근 용이
GstLAL매칭 필터CBC (BBH·BNS·NSBH)실시간 경보 (~10초 지연), O4 공식 사용
cWB비모수 웨이블릿Burst 신호 전반파형 모델 불필요 — 미지의 신호에도 대응
MBTA매칭 필터CBCVirgo 팀 개발, O3/O4 실시간 운용
SPIIR시간 영역 완전 코히어런트 매칭 필터 (IIR 필터 합 근사)CBC (BBH·BNS·NSBH), BNS/NSBH 조기 경보초저지연(~수 초), GPU 가속, O3/O4 공개 경보 사용

왜 여러 독립 파이프라인을 동시에 운영하나?

하나의 파이프라인만 쓰면 더 간단하지 않을까요? 여기에는 중요한 과학적 이유가 세 가지 있습니다.

① 교차 검증 — "두 팀이 동시에 찾았으면 진짜다"

두 파이프라인이 독립적으로 같은 신호를 찾아내면, 그것이 진짜 중력파라는 확신이 생깁니다. GW150914는 PyCBC와 cWB가 각각 독립적으로 검출했습니다. 만약 한 파이프라인만 있었다면 소프트웨어 버그인지 진짜 신호인지 구분할 수 없었을 것입니다. 마치 중요한 실험은 반드시 다른 연구실에서 재현 검증을 거치는 것과 같은 원리입니다.

② 각자 잘 찾는 신호가 다르다 — "다양성이 탐지 범위를 넓힌다"

매칭 필터 기반 파이프라인(PyCBC, GstLAL)은 이론으로 예측된 CBC 파형에 최적화되어 있습니다. 반면 cWB는 파형 모양을 가정하지 않아서, 아직 이론으로 완전히 예측하지 못한 신호 — 예를 들어 초신성 폭발, 예상 밖의 천체 합병, 또는 완전히 새로운 중력파 신호 — 도 찾아낼 수 있습니다.

③ 오경보율을 독립적으로 추정한다 — "서로를 견제한다"

각 파이프라인은 자체적으로 오경보율(FAR: False Alarm Rate) — "이 신호가 우연히 생긴 잡음일 확률"을 계산합니다. 파이프라인이 독립적이므로, 한 파이프라인의 계산 오류나 편향이 전체 결과를 왜곡하지 않습니다.

검출기 두 대 + 독립 파이프라인 여러 개 — 중력파 천문학의 신뢰도는 이런 중첩 검증 구조에서 나옵니다.

2
매칭 필터를 위한 템플릿 뱅크

템플릿 뱅크

매칭 필터가 제대로 작동하려면 실제 신호와 최대한 가까운 파형 템플릿이 필요합니다. 블랙홀·중성자별 쌍성계는 질량과 스핀이 매우 다양하기 때문에, 가능한 모든 조합을 미리 계산해 뱅크에 저장해둡니다. 하지만 LIGO가 기록한 데이터를 시각화해 보면 중력파 신호는 완전히 노이즈에 파묻혀 있습니다 — 파형의 최대 진폭은 102110^{-21}, 양성자 지름의 10억분의 1 수준이어서 눈으로 보거나 귀로 들어 찾는 것은 불가능합니다.


파라미터 공간 커버리지

파라미터 공간을 촘촘히 덮는 약 250,000개의 템플릿을 사용합니다 (Abbott et al. 2016, §II; Usman et al. 2016, §3.1):

파라미터범위
성분 질량 m1,m2m_1,\,m_2199M1\text{–}99\,M_{\odot}, 총 질량 <100M< 100\,M_{\odot}
스핀 — 중성자별 영역 (M2MM \leq 2\,M_{\odot})χ0.05\lvert\chi\rvert \leq 0.05
스핀 — 블랙홀 영역 (M>2MM > 2\,M_{\odot})χ0.9895\lvert\chi\rvert \leq 0.9895
인접 템플릿 최대 SNR 손실≤ 3% (겹침 ≥ 0.97)

왼쪽 그림은 GW150914 탐색에 사용된 템플릿 뱅크를 성분 질량 평면(m1m_1 vs m2m_2)에 투영해, 탐색이 파라미터 공간을 얼마나 촘촘히 “커버”하는지 보여줍니다 (Abbott et al. 2016, Fig. 1). 뱅크가 이산적(discrete)이기 때문에 GW150914와 가장 잘 일치한 템플릿(동그라미)의 파라미터는 실제 최적 적합(best-fit) 파라미터와 정확히 일치하지 않습니다. 오른쪽 그림은 같은 질량 평면을 천체물리학적으로 어떻게 구획하는지 — 중성자별·블랙홀·그 사이의 불확실한 “질량 간극”을 나누는 관례적 분류 기준을 보여줍니다:

뱅크를 어떻게 배치하는가? 인접한 두 템플릿의 겹침(overlap)이 0.97 이상이 되어야 하므로, 파형이 복잡해질수록(고질량·고스핀) 점들이 더 조밀합니다. 뱅크 배치에는 파라미터 공간의 곡률을 고려한 측지 격자 방법을 사용합니다 (Babak et al. 2012).


파형 직접 탐색해보기

Total MassDistance 슬라이더를 조절하면서 BBH 파형이 어떻게 달라지는지 직접 확인해보세요. GW150914의 파라미터(총 질량 ~65 M☉, 거리 ~410 Mpc)에 맞춰보면 실제 관측된 파형과 비슷한 모양을 탐색할 수 있습니다.

3
중력파 탐지를 위한 통계량

중력파 탐지를 위한 통계량

매칭 필터가 출력하는 SNR 시계열을 바탕으로, 실제 신호를 잡음에서 구별하고 통계적 유의성을 평가하는 두 가지 핵심 통계량인 SNR(ρ(t)\rho(t))과 FAR을 살펴봅니다. (χ²r 검정과 재가중 SNR은 다음 세션에서 자세히 다룹니다.)


신호 대 잡음비(SNR, Signal-to-Noise Ratio): ρ(t)

물리적 의미 — "이 순간, 데이터가 템플릿 파형과 얼마나 일치하는가?"

시끄러운 방에서 특정 멜로디를 찾는 상황을 상상해 보세요. 배경 소음이 클수록, 멜로디가 작을수록 찾기 어렵습니다. LIGO에서는 단순히 "얼마나 큰가"가 아니라 "예측된 중력파 파형과 얼마나 정확히 일치하는가" 를 측정합니다. 이것이 매칭 필터 SNR입니다.

LIGO 데이터 분석에서의 정의

매칭 필터 SNR은 단일 수치가 아닌, 시간에 따른 SNR 시계열 ρ(t)\rho(t)입니다:

ρ(t)=sh(t)hh\rho(t) = \frac{\left|\langle s \mid h \rangle(t)\right|}{\sqrt{\langle h \mid h \rangle}}

의미
sh(t)\langle s \mid h \rangle(t)데이터 ss와 템플릿 hh잡음 가중 교차상관주파수별 노이즈 파워 Sn(f)S_n(f)로 역가중 합산
hh\langle h \mid h \rangle정규화 인수 (템플릿 자기 내적)
tt시간 지연 — 각 tt에서 "합병이 이 시각에 일어났다면 얼마나 일치하는가"를 나타냄

Sn(f)S_n(f)로 역가중하는 이유: LIGO 노이즈는 주파수마다 크기가 다릅니다 (예: 낮은 주파수에서 훨씬 큼). 잡음이 센 주파수 대역은 자동으로 기여가 줄어들어, 신호가 실제로 잘 보이는 대역(~50–300 Hz)이 탐지를 주도합니다.

ρ(t) 값의 해석

ρ 값의미
~21.4\sqrt{2} \approx 1.4신호 없는 가우스 잡음에서의 기댓값
8PyCBC 단일 검출기 트리거 생성 임계값
12–20명확한 검출 후보
20GW150914 H1 (핸포드) 피크
13GW150914 L1 (리빙스턴) 피크

단일 검출기 임계값을 ρ = 8로 두는 이유: 두 검출기가 동시에 ρ ≥ 8을 기록하고 파형 파라미터까지 일치할 확률이 순수 잡음에서는 극히 낮기 때문입니다. 두 검출기의 ρ를 이차합산한 결합 통계량 ρ^c=ρH12+ρL12\hat{\rho}_c = \sqrt{\rho_{H1}^2 + \rho_{L1}^2}이 최종 검출 판단에 사용됩니다.

GW150914의 경우: ρ^c=202+13223.6\hat{\rho}_c = \sqrt{20^2 + 13^2} \approx 23.6

SNR을 이용한 매칭 필터의 구체적인 원리(화이트닝, χ² 판별 등)는 이어지는 세션 PyCBC 매칭 필터 알고리즘에서 자세히 다룹니다. (템플릿 뱅크는 앞서 다룬 매칭 필터를 위한 템플릿 뱅크 세션을 참고하세요.)


오경보율 (FAR: False Alarm Rate)

SNR 피크를 찾았다고 해서 바로 "중력파 검출"로 선언하지는 않습니다. 잡음이 우연히 신호처럼 생긴 경우(거짓 경보)일 수 있기 때문입니다.

FAR이란? — "이 정도 SNR이 잡음에서 우연히 나타날 빈도 (단위: 1/년)"

FAR배경 노이즈에서 같은 SNR 이상이 나타난 횟수분석한 전체 시간\text{FAR} \approx \frac{\text{배경 노이즈에서 같은 SNR 이상이 나타난 횟수}}{\text{분석한 전체 시간}}

어떻게 측정하나? — 시간 슬라이드(Time Slide)

두 검출기(H1, L1)의 데이터를 서로 시간적으로 어긋나게 맞춰 분석합니다. 진짜 중력파는 빛의 속도로 두 검출기에 도달하므로 최대 ±10 ms 차이가 나지만, 수백 초씩 어긋나게 하면 실제 신호가 겹칠 수 없습니다. 이 '가짜' 일치 이벤트들의 SNR 분포가 곧 배경 잡음의 통계입니다.

FAR의미해석
1 / 1년1년에 한 번꼴 우연 가능약한 증거
1 / 100년100년에 한 번꼴유력한 후보
1 / 10,000년거의 불가능한 우연확실한 검출
< 1 / 100,000년GW150914 수준역대급 확신

GW150914의 경우 FAR < 1 / 203,000년이었습니다 — 잡음이 우연히 그 신호처럼 보일 가능성이 사실상 0입니다.

SNR과 FAR의 관계 — SNR이 높을수록 FAR은 기하급수적으로 낮아집니다. 그러나 SNR 단독으로는 불충분하고, 두 검출기의 동시 검출(coincident detection)과 χ² 검정(파형 형태 일치 여부)을 결합해야 최종 판단을 내립니다.

4
PyCBC 매칭 필터 알고리즘

PyCBC 매칭 필터 알고리즘

PyCBC는 중력파 탐색에 사용되는 오픈소스 데이터 분석 파이프라인으로, 매칭 필터를 핵심 알고리즘으로 사용합니다.

파이프라인 개요

PyCBC 탐색 파이프라인은 다음 단계로 구성됩니다 (Usman et al. 2016, Figure 1):

  1. 데이터 조건화 — 전체 관측 기간의 조화평균 PSD 추정 → 템플릿 뱅크 생성
  2. 게이팅(Gating) — 큰 글리치 구간 탐지 후 영점화
  3. 매칭 필터 — 각 검출기 데이터를 템플릿 뱅크 전체와 독립적으로 필터링
  4. SNR 임계값 및 클러스터링 — SNR 시계열에서 국소 최대값 추출 → 트리거 생성
  5. χ² 검정 및 재가중 SNR — 파워 분포 일관성 검사로 글리치 억제
  6. 코인시던스 검증 — 두 검출기에서 동일 파라미터 트리거 시각 일치 확인
  7. 배경 측정시간 슬라이드로 FAR 경험적 측정
  8. 유의성 평가 — 후보 이벤트의 통계적 유의성 결정

실습 노트북Tuto 4.1: Matched Filtering Introduction — 실제 LIGO 공개 데이터로 PyCBC 매칭 필터를 직접 실행해볼 수 있습니다.


잡음 가중 내적

잡음 가중 내적은 매칭 필터의 수학적 핵심입니다. (Usman et al. 2016, Eq. 2–4; Abbott et al. 2016, §III)


SNR 시계열

천구 위치와 방향각은 CBC 파형의 전체 진폭·위상에만 영향을 주므로, 두 직교 위상 hcosh_{\mathrm{cos}}, hsinh_{\mathrm{sin}}에 대한 내적을 이차합산하여 미지 위상에 무관한 SNR 시계열을 구성합니다 (Usman et al. 2016, Eq. 1):

ρ2(t)=shcos2(t)+shsin2(t)hcoshcos\rho^2(t) = \frac{\langle s \mid h_{\mathrm{cos}}\rangle^2(t) + \langle s \mid h_{\mathrm{sin}}\rangle^2(t)}{\langle h_{\mathrm{cos}} \mid h_{\mathrm{cos}}\rangle}

여기서 h~sin(f)=ih~cos(f)\tilde{h}_{\mathrm{sin}}(f) = i\,\tilde{h}_{\mathrm{cos}}(f)로 정의됩니다. 분모의 정규화 인수:

hh=40h~(f)2Sn(f)df\langle h \mid h \rangle = 4\int_0^{\infty} \frac{|\tilde{h}(f)|^2}{S_n(f)}\,df

이 정규화로 인해 순수 가우스 잡음에서 ρ2(t)=2\langle\rho^2(t)\rangle = 2가 됩니다. 신호가 없을 때 ρ21.4\rho \approx \sqrt{2} \approx 1.4 수준이며, 이를 크게 초과하는 피크가 신호 후보(트리거)가 됩니다.

Sn(f)S_n(f)는 필터링 단계에서 2048초마다 중앙값 방법으로 재추정합니다. 템플릿 뱅크 생성에 쓰인 조화평균 PSD와 별개로, 시간에 따른 검출기 상태 변화를 실시간 반영합니다.


χ² 검정

매칭 필터 SNR만으로는 글리치를 완전히 배제하기 어렵습니다. 진짜 CBC 신호라면 전체 주파수 대역에 걸쳐 균일하게 파워가 분포해야 합니다. χ² 검정은 템플릿을 pp개의 등가-파워 빈으로 분할하여 이를 확인합니다 (Usman et al. 2016, Eq. 5).

카이제곱 검정 자체가 생소하다면, 아래 토글에서 통계학적 정의부터 차근차근 살펴보세요:

매칭 필터의 χ² 검정도 위 토글에서 본 적합도 검정의 한 응용입니다 — “진짜 CBC 신호라면 SNR 파워가 pp개 주파수 빈에 걸쳐 균일하게 분포한다”는 것이 검정하려는 가설입니다. McIsaac & Harry (2022)는 이를 기약 χ²(reduced chi-squared) 형태로 직접 정의합니다 (§II, Eq. 6):

χr2=p2p2i=1p(ρpρbin,i)2\chi^2_r = \frac{p}{2p-2}\sum_{i=1}^{p}\left(\frac{\rho}{p} - \rho_{\mathrm{bin},i}\right)^{2}

여기서 ρbin,i\rho_{\mathrm{bin},i}ii번째 빈이 실제로 기여한 SNR이고, ρ/p\rho/p는 “균일하게 분포했다면 이 빈이 기여했어야 할” 기댓값입니다 — 위 토글의 피어슨 검정 (OiEi)2/Ei(O_i-E_i)^2/E_i와 정확히 같은 구조입니다. PyCBC가 실제로 쓰는 정확한 형태는 위상 정보까지 포함해 두 직교 성분(cos, sin)으로 나눠 χ2\chi^2를 먼저 계산한 뒤 자유도 2p22p-2로 나눕니다 (Usman et al. 2016, Eq. 5):

χ2=pi=1p[(ρcos2pρcos,i2)2+(ρsin2pρsin,i2)2]\chi^2 = p \sum_{i=1}^{p} \left[ \left(\frac{\rho^2_{\mathrm{cos}}}{p} - \rho^2_{\mathrm{cos},i}\right)^2 + \left(\frac{\rho^2_{\mathrm{sin}}}{p} - \rho^2_{\mathrm{sin},i}\right)^2 \right]

실제 신호면 각 빈의 기여가 기댓값에 가깝고 χ2\chi^2가 작습니다. 글리치는 특정 빈에 집중된 파워로 인해 χ2\chi^2가 급등합니다 — 값이 작을수록 트리거의 시간–주파수 모양이 GR이 예측하는 CBC 파형과 전 대역에서 일관되게 들어맞는다는 뜻이고, 클수록 특정 좁은 대역에만 파워가 몰려 있어 진짜 신호와는 다른 “모양”임을 시사합니다.

최적 빈 수 (Abbott et al. 2016, Eq. 7):

p=0.4(fpeakHz)2/3p = \left\lfloor 0.4 \left(\frac{f_{\mathrm{peak}}}{\mathrm{Hz}}\right)^{2/3} \right\rfloor

GW150914의 경우 fpeak=144Hzf_{\mathrm{peak}} = 144\,\mathrm{Hz}p=16p = 16.

신호라면 χr21\chi^2_r \approx 1이 기대됩니다. 왜 하필 1일까요 — χr2\chi^2_r는 자유도 2p22p-2인 카이제곱 분포를 따르도록 설계되었고, 카이제곱 분포는 평균이 정확히 자유도와 같기 때문입니다. 자유도로 나눈 χr2\chi^2_r의 기댓값이 정확히 1이 되는 것은 우연이 아니라 이 분포의 정의 자체에서 나오는 결과입니다 (자세한 유도는 위 토글 참고). 그래서 χr21\chi^2_r \gg 1은 “파형이 균일 분포라는 가정에서 통계적으로 크게 벗어났다”는 뜻이 되고, 이는 곧 글리치의 특징적인 신호입니다.

재가중 SNR — χ²ᵣ 하나만으로는 트리거 순위를 매길 수 없으니, 이를 이용해 원래 SNR ρ\rho에 벌점을 매기는 새 통계량이 필요합니다. 이것이 재가중 SNR ρ^\hat\rho이며, 일반적으로 ρ^=f(ρ,χr2)\hat\rho = f(\rho,\chi^2_r) 형태(McIsaac & Harry 2022, Eq. 5)를 가집니다. PyCBC는 다음 구체적인 식으로 구현합니다 (Usman et al. 2016, Eq. 6):

ρ^={ρ[1+(χr2)32]1/6χr2>1ρχr21\hat{\rho} = \begin{cases} \dfrac{\rho}{\left[\dfrac{1 + (\chi^2_r)^3}{2}\right]^{1/6}} & \chi^2_r > 1 \\ \rho & \chi^2_r \leq 1 \end{cases}

χr21\chi^2_r \leq 1(파형이 균일 분포에 부합)이면 벌점 없이 ρ^=ρ\hat\rho = \rho가 그대로 유지되지만, χr21\chi^2_r \gg 1인 글리치 후보는 분모가 커지면서 ρ^\hat{\rho}가 크게 감소해 검출 통계량 순위가 낮아집니다 — SNR 자체는 아무리 커도, 파형 모양이 CBC와 다르면 최종 순위에서 밀려나는 구조입니다.

지금까지 본 빈 개수 pp나 재가중 공식의 지수 같은 값들은 전부 사람이 경험적으로 손으로 조정해온 것입니다. 이 과정 자체를 기계학습으로 자동화할 수는 없을까요?


코인시던스 검증

두 검출기 트리거동일 시각 (±15 ms)동일 템플릿 파라미터를 가져야 후보 이벤트로 인정됩니다. 15 ms 기준은 빛이 H1–L1 거리(~10 ms)를 이동하는 시간에 측정 불확도 여유를 더한 것입니다 (Usman et al. 2016, §3.5).

최종 검출 통계량은 두 검출기 재가중 SNR의 이차합산:

ρ^c=ρ^H12+ρ^L12\hat{\rho}_c = \sqrt{\hat{\rho}^2_{H1} + \hat{\rho}^2_{L1}}

GW150914: ρ^H1=20,  ρ^L1=13    ρ^c=23.6\hat{\rho}_{H1} = 20,\; \hat{\rho}_{L1} = 13 \;\Rightarrow\; \hat{\rho}_c = 23.6

GW150914 SNR 시계열 — 인류 최초의 중력파 검출 순간

아래는 PyCBC 매칭 필터가 GW150914 전후 ±50 ms 구간에서 산출한 실제 SNR 시계열입니다.

PyCBC 매칭 필터 SNR 시계열 (Fig. 8). 위 패널: H1(핸포드) — t=0에서 ρ(t)≈20, ρ̂(t)≈20 피크. 아래 패널: L1(리빙스턴) — ρ(t)≈13 피크. 두 검출기에서 약 7 ms 차이로 같은 파형 구조가 관측됐다. χ²r은 t=0에서 급격히 내려가며 파형 일관성을 확인한다.

PyCBC 매칭 필터 SNR 시계열 (Fig. 8). 위 패널: H1(핸포드) — t=0에서 ρ(t)≈20, ρ̂(t)≈20 피크. 아래 패널: L1(리빙스턴) — ρ(t)≈13 피크. 두 검출기에서 약 7 ms 차이로 같은 파형 구조가 관측됐다. χ²r은 t=0에서 급격히 내려가며 파형 일관성을 확인한다.

출처: Abbott et al. (2016), Fig. 8 ↗

선 색의미
파랑 ρ(t)원시 매칭 필터 SNR
보라 ρ̂(t)χ² 검정 적용 후 재가중 SNR
초록 χ²r(t)파형 일관성 지표 — 낮을수록 GR 파형과 일치

두 검출기에서 약 7 ms 차이로 ρ(t) 피크가 나타났고 (빛이 H1→L1을 이동하는 시간과 일치), t = 0에서 χ²r이 급격히 낮아집니다 — "이 피크는 GR이 예측하는 CBC 파형과 전 주파수 대역에서 일관되게 일치한다"는 의미입니다.

GW150914는 배경 분포에서 얼마나 멀리 있나?

아래는 PyCBC 탐색 결과입니다. X축은 검출 통계량(재가중 SNR ρ^c\hat{\rho}_c), Y축은 그 값 이상의 사건 수(로그 스케일)입니다.

PyCBC 탐색 결과 (Fig. 7). 검은 히스토그램: 시간 슬라이드로 측정한 배경 잡음 분포 — ρ̂c가 커질수록 급격히 감소한다. 주황 사각형: 실제 탐색에서 발견된 후보 이벤트들. GW150914는 ρ̂c≈24에 홀로 위치해, 배경 분포가 완전히 끝난 이후에 나타난다. 상단의 띠는 2σ·3σ·4σ·5.1σ 유의성 구간을 표시한다. FAR < 5×10⁻⁶/year (> 5.1σ).

PyCBC 탐색 결과 (Fig. 7). 검은 히스토그램: 시간 슬라이드로 측정한 배경 잡음 분포 — ρ̂c가 커질수록 급격히 감소한다. 주황 사각형: 실제 탐색에서 발견된 후보 이벤트들. GW150914는 ρ̂c≈24에 홀로 위치해, 배경 분포가 완전히 끝난 이후에 나타난다. 상단의 띠는 2σ·3σ·4σ·5.1σ 유의성 구간을 표시한다. FAR < 5×10⁻⁶/year (> 5.1σ).

출처: Abbott et al. (2016), Fig. 7 ↗

요소의미
검은 선 (배경 잡음)시간 슬라이드로 추정. ρ^c8\hat{\rho}_c \sim 8에서 수천 개지만, 14를 넘으면 거의 0에 수렴
주황 사각형 (실제 탐색 결과)낮은 ρ^c\hat{\rho}_c에서는 배경과 일치. ρ^c24\hat{\rho}_c \sim 24에 단 하나의 이벤트가 홀로 존재
GW150914배경 분포가 끝나는 곳에서 4–5 자릿수 떨어진 곳에 위치 → FAR < 5×10⁻⁶/yr


출처: Abbott et al. (2016) GW150914: First results from the search for binary black hole coalescence with Advanced LIGO, §III, Eq. 1–7 · Usman et al. (2016) The PyCBC search for gravitational waves from compact binary coalescence, §2 & Figure 1, Eq. 1–6

5
개념 확인 퀴즈

개념 확인 퀴즈

이 세션에서 배운 내용을 점검해봅시다.