"매 slow rhythm 의 phase 가 매 fast rhythm 의 amplitude 를 모듈레이션.". 2006 Canolty et al. theta-gamma PAC in human ECoG → 2010s memory/working-memory 의 neural mechanism 으로 자리잡음. 2026 BCI, sleep staging, anesthesia depth monitoring 에 활용.
deftort_mi(phi,amp,n_bins=18):edges=np.linspace(-np.pi,np.pi,n_bins+1)bin_idx=np.digitize(phi,edges)-1bin_idx=np.clip(bin_idx,0,n_bins-1)P=np.array([amp[bin_idx==k].mean()forkinrange(n_bins)])P=P/P.sum()H=-np.sum(P*np.log(P+1e-12))H_max=np.log(n_bins)return(H_max-H)/H_max# MI ∈ [0, 1]
importmnefrommne_connectivityimportphase_slope_indexraw=mne.io.read_raw_edf("eeg.edf",preload=True)raw.filter(1,100).notch_filter(60)epochs=mne.make_fixed_length_epochs(raw,duration=2.0)# pactools for PACfrompactoolsimportComodulogramestimator=Comodulogram(fs=raw.info['sfreq'],low_fq_range=np.linspace(2,12,11),high_fq_range=np.linspace(20,100,17),method='tort')estimator.fit(epochs.get_data()[0,0])estimator.plot()
매 결정 기준
상황
Method
Quick screening
Tort MI (robust to amp distribution)
Phase preference angle
Canolty MVL (gives complex vector)
Phase-phase coupling
n:m PLV
Need significance
Surrogate w/ time shifts (≥200)
Continuous data
sliding-window comodulogram
기본값: Tort MI + 200 time-shift surrogates + FDR correction across frequency pairs.