← Archive
lm-001867 · 2026-07

FARHP_06_自然語音中的估計追蹤與反演_v0.1

下載 MD 檔 ⬇

自然語音中的基錨相差估計、追蹤與反演方法

從逐框架觀測到相位環面軌跡

系列:基頻錨定相對諧波相位差(FARHP)第六篇
英文題名:Estimation, Tracking, and Inversion of Fundamental-Anchored Relative Harmonic Phase in Natural Speech
版本:v0.1
日期:2026-07-26
作者:Neo.K/EveMissLab;Aletheia/GPT-5.6 Thinking
研究狀態:理論—工程橋接稿;含 FARHP-Core v0.2 參考實作


摘要

前五篇已依序建立基頻錨定相對諧波相位差(Fundamental-Anchored Relative Harmonic Phase, FARHP)的母定義、商環面數學、聲源—聲道—知覺邊界、離散碼本與單框架分析—重建閉環。然而,自然語音不是一組彼此獨立的靜態框架。基本頻率會滑動,聲門週期會抖動,諧波會出生、消失、交錯,短時分析窗會移動,有聲與無聲區段會切換,聲道響應與聲源波形亦會持續變化。若每一框架單獨估計 f0f_0 、絕對相位及 FARHP,再將結果直接串接,倍頻錯誤、相位包覆、弱諧波與有聲邊界會共同製造不可接受的跳變。

本文因此將 FARHP 從單框架物件提升為時間軌跡。核心方法分成兩條互相耦合、但不可混同的推論鏈:第一條以多候選 YIN 類週期證據與動態規劃取得 f0(t)f_0(t) 、有聲狀態及追蹤置信度;第二條以積分後的基頻預測錨相位,選擇最接近預測值的 2π2\pi 分支,再於相位環面上對各諧波 FARHP 座標進行可靠度門控的時間解除包覆。本文亦定義未觀測值、無聲間隙、軌跡重啟、錨點殘差、相位速度、來源域及反演不唯一性,並提出 FARHP-Trajectory-Spec-v0.2

配套工程 FARHP-Core v0.2 已完成多框架分析、動態 f0f_0 追蹤、錨相位傳播、FARHP 軌跡解除包覆、JSON 交換、診斷圖與諧波式 overlap-add 重建。在一組具滑音、顫音、相位微擾及微量氣聲噪聲的動態合成母音回歸測試中,參考實作取得 0.2790.279 Hz 的 f0f_0 平均絕對誤差,以及 0.1080.108 rad 的錨相位預測殘差中位數;十三項自動測試全部通過。這些結果只證明演算法與資料結構在受控訊號上的一致性,尚不構成自然語音品質或生理聲門反演的實證結論。

關鍵詞: 基頻錨定相對諧波相位差、FARHP、相位追蹤、相位解除包覆、基頻追蹤、動態規劃、諧波模型、自然語音、聲門反演、相位環面


1. 問題的真正轉折:從框架集合到軌跡物件

在單框架模型中,第 tt 個分析框架的第 kk 個諧波複係數寫為:

Xt,k=At,keiϕt,k.X_{t,k}=A_{t,k}e^{i\phi_{t,k}}.

以第一諧波為錨,FARHP 座標定義為:

ψt,k=wrap(ϕt,kkϕt,1),k2.\psi_{t,k} = \operatorname{wrap} \left( \phi_{t,k}-k\phi_{t,1} \right), \qquad k\ge 2.

這個定義消去了理想共同時間平移造成的線性相位項。但是,「單一框架對共同時間平移不變」不代表「跨框架估計天然連續」。至少有五個原因:

  1. f0f_0 的框架估計會出現整倍頻或半倍頻錯誤;
  2. 每個絕對相位只在模 2π2\pi 意義下可見;
  3. 分析窗的位置、長度與頻率失配會改變複投影;
  4. 弱諧波可能在相鄰框架間進出遮罩;
  5. 自然語音的 FARHP 本來就可能隨聲門源、聲道與發音狀態演化。

因此,真正需要估計的不是:

{ψt}t=1T\{\boldsymbol\psi_t\}_{t=1}^{T}

這種彼此無關的框架集合,而是:

P=(f0,v,c,Φ1,Ψ,Ψ˙,M,C,G).\mathcal P = \left( \mathbf f_0, \mathbf v, \mathbf c, \boldsymbol\Phi_1, \boldsymbol\Psi, \dot{\boldsymbol\Psi}, \mathbf M, \mathbf C, \mathcal G \right).

其中:

  • f0\mathbf f_0 :基本頻率軌跡;
  • v\mathbf v :有聲/無聲狀態;
  • c\mathbf c :追蹤置信度;
  • Φ1\boldsymbol\Phi_1 :解除包覆後的錨相位軌跡;
  • Ψ\boldsymbol\Psi :解除包覆後的 FARHP 軌跡代表;
  • Ψ˙\dot{\boldsymbol\Psi} :FARHP 的時間速度;
  • M\mathbf M :諧波可用遮罩;
  • C\mathbf C :每諧波置信度;
  • G\mathcal G :間隙、重啟與來源域政策。

這個軌跡物件才是第七篇進行音色轉換、新音生成與動態相位控制時真正需要的資料基礎。


2. 與既有方法的關係

本文不是從零發明音高追蹤、正弦模型或相位解除包覆。其直接技術祖先至少包括:

  • YIN 對語音與音樂基本頻率的差分函數及累積平均正規化;
  • pYIN 將多個 f0f_0 候選與機率分布送入序列解碼;
  • McAulay–Quatieri 正弦模型對跨框架頻率、振幅與相位的追蹤;
  • Relative Phase Shift 對諧波相對相位的表示;
  • harmonic-model phase representation 對線性相位項、解除包覆與統計模型兼容性的處理;
  • 時頻相位重建中對水平與垂直相位一致性的研究。

FARHP 第六篇的新增工作不是宣稱上述方法不存在,而是將它們重新組織到一個特定目標下:

在保持 FARHP 商環面語義的前提下, 建立可交換、可追蹤、可重建的時間軌跡。\boxed{ \text{在保持 FARHP 商環面語義的前提下, 建立可交換、可追蹤、可重建的時間軌跡。} }

主要差異包括:

  1. f0f_0 路徑與 FARHP 路徑分離建模;
  2. 錨相位具有明確的積分預測與分支選擇規則;
  3. FARHP 解除包覆被定義為環面座標上的局部代表選擇,而不是把包覆值誤當成唯一真值;
  4. 無聲間隙、缺失諧波與低置信度被納入資料本體;
  5. FARHP-YFARHP-G 的反演層級保持分離;
  6. 軌跡資料提供 JSON 規格及可執行參考實作。

3. 觀測模型

3.1 局部諧波模型

在短時間有聲區段中,令:

xt[n]k=1KtAt,kcos(2πft,knFs+ϕt,k)+rt[n].x_t[n] \approx \sum_{k=1}^{K_t} A_{t,k} \cos \left( 2\pi f_{t,k}\frac{n}{F_s} + \phi_{t,k} \right) + r_t[n].

理想諧波條件為:

ft,k=kf0(t).f_{t,k}=k f_0(t).

自然語音則可能具有:

ft,k=kf0(t)+δt,k,f_{t,k}=k f_0(t)+\delta_{t,k},

其中 δt,k\delta_{t,k} 包含估計誤差、非週期性、分析窗偏差、源—濾波耦合與局部失諧。

3.2 包覆相位觀測

實際取得的是:

ϕ~t,k=wrap(Φt,k+εt,k),\widetilde\phi_{t,k} = \operatorname{wrap} \left( \Phi_{t,k}+\varepsilon_{t,k} \right),

其中 Φt,kR\Phi_{t,k}\in\mathbb R 是某個連續相位代表, εt,k\varepsilon_{t,k} 是投影與雜訊誤差。因為:

Φt,kΦt,k+2πm,mZ,\Phi_{t,k} \sim \Phi_{t,k}+2\pi m, \qquad m\in\mathbb Z,

單靠一個框架不能決定整數分支。跨框架追蹤的任務,就是用動力學預測、頻率連續性與可靠度,選擇局部一致的代表。

3.3 FARHP 觀測

框架內包覆 FARHP 為:

ψ~t,k=wrap(ϕ~t,kkϕ~t,1).\widetilde\psi_{t,k} = \operatorname{wrap} \left( \widetilde\phi_{t,k} -k\widetilde\phi_{t,1} \right).

由於錨相位誤差會乘上 kk ,若:

ϕ~t,1=ϕt,1+ϵt,1,\widetilde\phi_{t,1}=\phi_{t,1}+\epsilon_{t,1},

則一階近似下:

ψ~t,kψt,kϵt,kkϵt,1.\widetilde\psi_{t,k}-\psi_{t,k} \approx \epsilon_{t,k}-k\epsilon_{t,1}.

這說明為什麼高次諧波的 FARHP 置信度不能只看自身振幅,也必須乘入錨點置信度。


4. 第一條推論鏈: f0f_0 與有聲狀態追蹤

4.1 為什麼不能逐框架只選一個最低點

對每個框架直接取 YIN 類函數的單一最佳延遲,會在下列情況失敗:

  • 第二或第三諧波較強;
  • 聲道共振峰加權造成假週期低谷;
  • 框架太短;
  • 基頻快速滑動;
  • 有聲邊界混入噪聲;
  • 基頻候選彼此為倍頻關係。

因此,第六篇使用候選集合:

Ft={(ft,j,pt,j)}j=1Jt{}.\mathcal F_t = \left\{ (f_{t,j},p_{t,j}) \right\}_{j=1}^{J_t} \cup \{\varnothing\}.

\varnothing 表示無聲狀態。

4.2 YIN 類差分與正規化

差分函數為:

dt(τ)=n(xt[n]xt[n+τ])2.d_t(\tau) = \sum_n \left( x_t[n]-x_t[n+\tau] \right)^2.

累積平均正規化差分為:

dt(τ)={1,τ=0,\[4pt]dt(τ)1τj=1τdt(j),τ>0.d'_t(\tau) = \begin{cases} 1,&\tau=0,\[4pt] \dfrac{d_t(\tau)}{\frac{1}{\tau}\sum_{j=1}^{\tau}d_t(j)},&\tau>0. \end{cases}

候選週期來自 dt(τ)d'_t(\tau) 的局部極小值,候選基本頻率為:

ft,j=Fsτt,j.f_{t,j}=\frac{F_s}{\tau_{t,j}}.

參考實作使用拋物線局部細化,並以:

pt,j1dt(τt,j)p_{t,j}\approx 1-d'_t(\tau_{t,j})

形成簡化週期置信度。這不是 pYIN 的完整機率模型,只是一個低依賴、可審閱的研究原型。

4.3 動態路徑代價

令第 tt 框架選擇狀態 sts_t 。累積代價為:

Ct(j)=Et(j)+mini[Ct1(i)+T(i,j)].C_t(j) = E_t(j) + \min_i \left[ C_{t-1}(i)+T(i,j) \right].

有聲候選的發射代價可寫為:

Et(j)=log(p~t,j+ϵ).E_t(j) =-\log \left( \widetilde p_{t,j}+\epsilon \right).

有聲—有聲轉移代價使用對數頻率距離:

T(i,j)=λflog2ft,jft1,i+λomax(0,log2ft,jft1,i12).T(i,j) = \lambda_f \left| \log_2\frac{f_{t,j}}{f_{t-1,i}} \right| + \lambda_o \max \left( 0, \left| \log_2\frac{f_{t,j}}{f_{t-1,i}} \right|-\frac12 \right).

有聲—無聲切換另加:

λvu.\lambda_{vu}.

這個設計不宣稱所有語音都平滑,而是表達一個弱先驗:在沒有足夠觀測證據時,連續路徑比突發整倍頻跳躍更可信。

4.4 追蹤置信度

每框架置信度至少由以下因素組成:

ct(f0)=C(ptperiod,et,Δft,mtpath),c_t^{(f_0)} = C \left( p_t^{\mathrm{period}}, e_t, \Delta f_t, m_t^{\mathrm{path}} \right),

其中:

  • ptperiodp_t^{\mathrm{period}} :週期證據;
  • ete_t :框架能量;
  • Δft\Delta f_t :相鄰頻率變化;
  • mtpathm_t^{\mathrm{path}} :最佳與次佳路徑差距。

參考實作 v0.2 尚未計算完整路徑後驗,只輸出候選週期置信度與選定路徑。未來版本應加入前向—後向推論或候選邊際機率。


5. 第二條推論鏈:錨相位傳播

5.1 基頻積分是錨相位的動力學骨架

對連續基本頻率:

dΦ1(t)dt=2πf0(t).\frac{d\Phi_1(t)}{dt} = 2\pi f_0(t).

因此:

Φ1(tb)=Φ1(ta)+2πtatbf0(u)du.\Phi_1(t_b) = \Phi_1(t_a) + 2\pi \int_{t_a}^{t_b}f_0(u)\,du.

在離散框架中,以梯形近似:

Φ^t,1=Φ^t1,1+2πf0(t1)+f0(t)2Δt.\widehat\Phi_{t,1}^{-} = \widehat\Phi_{t-1,1} + 2\pi \frac{f_0(t-1)+f_0(t)}{2} \Delta t.

Φ^t,1\widehat\Phi_{t,1}^{-} 是先驗預測值。

5.2 最近分支選擇

觀測錨相位為 ϕ~t,1(π,π]\widetilde\phi_{t,1}\in(-\pi,\pi] 。選擇整數分支:

mt=argminmZϕ~t,1+2πmΦ^t,1.m_t^* = \arg\min_{m\in\mathbb Z} \left| \widetilde\phi_{t,1}+2\pi m - \widehat\Phi_{t,1}^{-} \right|.

於是:

Φ^t,1=ϕ~t,1+2πmt.\widehat\Phi_{t,1} = \widetilde\phi_{t,1}+2\pi m_t^*.

等價地:

Φ^t,1=Φ^t,1+wrap(ϕ~t,1Φ^t,1).\widehat\Phi_{t,1} = \widehat\Phi_{t,1}^{-} + \operatorname{wrap} \left( \widetilde\phi_{t,1} - \widehat\Phi_{t,1}^{-} \right).

定義錨相位創新殘差:

rt,1=wrap(ϕ~t,1Φ^t,1).r_{t,1} = \operatorname{wrap} \left( \widetilde\phi_{t,1} - \widehat\Phi_{t,1}^{-} \right).

rt,1r_{t,1} 是重要診斷量:它同時反映 f0f_0 積分誤差、局部相位投影誤差、框架時標不一致及真實非平穩性。

5.3 分支唯一性的局部條件

如果預測誤差滿足:

Φt,1Φ^t,1<π,\left| \Phi_{t,1} - \widehat\Phi_{t,1}^{-} \right| <\pi,

最近分支是唯一的。若誤差超過 π\pi ,局部最近分支可能選錯一個或多個週期。

因此需要:約束 Δt\Delta t 、控制 f0f_0 粗差、監測有聲間隙,並在低置信度時停止連續傳播。

5.4 f0f_0 誤差的積分累積

若:

f^0(t)=f0(t)+ϵf(t),\widehat f_0(t)=f_0(t)+\epsilon_f(t),

則錨相位預測誤差為:

ϵΦ1(tb)=2πtatbϵf(u)du.\epsilon_{\Phi_1}(t_b) = 2\pi \int_{t_a}^{t_b} \epsilon_f(u)\,du.

即使 ϵf\epsilon_f 很小,長時間積分也會累積。這說明第六篇不能只依賴自由運行的相位積分;每一可靠框架都必須以包覆觀測重新校正分支。


6. FARHP 軌跡的環面解除包覆

6.1 包覆 FARHP 並不需要全域唯一解除

單框架 FARHP 位於:

ψtTKt1.\boldsymbol\psi_t \in \mathbb T^{K_t-1}.

時間序列則是環面上的路徑:

γ:tψt.\gamma: t\mapsto\boldsymbol\psi_t.

「解除包覆」不是發現某個宇宙唯一的實數向量,而是在局部連續假設下,為環面路徑選擇一個方便計算的提升:

γ~:tΨtRK1,\widetilde\gamma: t\mapsto\boldsymbol\Psi_t \in \mathbb R^{K-1},

使得:

Ψtmod2π=ψt.\boldsymbol\Psi_t \bmod 2\pi = \boldsymbol\psi_t.

6.2 每諧波最近分支

若第 kk 個 FARHP 座標在相鄰框架皆有效,則:

Ψ^t,k=Ψ^t1,k+wrap(ψ~t,kΨ^t1,k).\widehat\Psi_{t,k} = \widehat\Psi_{t-1,k} + \operatorname{wrap} \left( \widetilde\psi_{t,k} - \widehat\Psi_{t-1,k} \right).

其局部速度為:

Ψ˙t,kΨ^t,kΨ^t1,kΔt.\dot\Psi_{t,k} \approx \frac{ \widehat\Psi_{t,k}-\widehat\Psi_{t-1,k} }{\Delta t}.

這個速度不是第 kk 諧波的瞬時頻率;它描述的是相對於基頻時鐘的諧波相位結構變化率

6.3 為什麼 FARHP 速度可能具有聲學意義

由:

Ψk(t)=Φk(t)kΦ1(t),\Psi_k(t) = \Phi_k(t)-k\Phi_1(t),

可得:

dΨkdt=2π(fk(t)kf0(t)).\frac{d\Psi_k}{dt} = 2\pi \left( f_k(t)-k f_0(t) \right).

在純理想整數諧波且相對波形不變時:

Ψ˙k(t)=0.\dot\Psi_k(t)=0.

若:

Ψ˙k(t)0,\dot\Psi_k(t)\ne0,

可能來自:

  • 真實局部失諧;
  • 聲門脈衝形狀變化;
  • 聲道相位響應變化;
  • 分析窗與頻率偏差;
  • 錨點錯誤;
  • 諧波身份錯配。

因此, Ψ˙k\dot\Psi_k 是診斷量,不可直接被解釋成單一生理機制。

6.4 環面整體距離

對相鄰框架,可定義加權環面速度尺度:

Dt=1Δtk=2Kwt,kdS1(ψt,k,ψt1,k)2k=2Kwt,k,D_t = \frac{1}{\Delta t} \sqrt{ \frac{ \sum_{k=2}^{K} w_{t,k} d_{S^1} \left( \psi_{t,k}, \psi_{t-1,k} \right)^2 }{ \sum_{k=2}^{K}w_{t,k} } },

其中:

wt,k=mt,kmt1,kct,kct1,k.w_{t,k} = m_{t,k}m_{t-1,k} c_{t,k}c_{t-1,k}.

DtD_t 可用於:

  • 偵測相位結構突變;
  • 找出錯誤 f0f_0 路徑;
  • 決定軌跡是否重啟;
  • 建立動態碼本;
  • 分析音節邊界與聲門狀態轉換。

7. 缺失值、無聲區段與軌跡重啟

7.1 零不是缺失值

若諧波不可用,必須記為:

null\mathrm{null}

或:

mt,k=0,m_{t,k}=0,

不能記為:

ψt,k=0.\psi_{t,k}=0.

因為 00 是合法相位值,代表與錨時鐘對齊,不代表沒有觀測。

7.2 無聲間隙

當:

vt=0,v_t=0,

第一諧波錨失去可操作意義。預設政策應是:

無聲間隙後重新初始化錨相位與 FARHP 提升。\boxed{ \text{無聲間隙後重新初始化錨相位與 FARHP 提升。} }

除非系統另有:

  • 聲門脈衝外部感測;
  • 高可信度隱狀態模型;
  • 跨間隙週期推斷;
  • 特定發音機制先驗。

否則不應把無聲區段兩側的解除包覆相位假裝成天然連續。

7.3 弱諧波重現

若第 kk 個諧波在若干框架後重新出現,可有三種政策:

  1. 重啟: 直接以當前包覆值作為新代表;
  2. 預測橋接: 由歷史相位速度外推,再選最近分支;
  3. 統計橋接: 用動態碼本或序列模型估計後驗。

FARHP-Core v0.2 採保守重啟政策。這降低了錯誤延續,但犧牲跨缺失區段的全域連續性。


8. 可靠度與不確定性傳播

8.1 最低限度的可靠度因子

tt 框架第 kk 諧波的可靠度可分解為:

ct,k=C(ct(f0),ct,1(A),ct,k(A),ct,k(fit),ct,k(track)).c_{t,k} = C \left( c_t^{(f_0)}, c_{t,1}^{(A)}, c_{t,k}^{(A)}, c_{t,k}^{(\mathrm{fit})}, c_{t,k}^{(\mathrm{track})} \right).

其中:

  • ct(f0)c_t^{(f_0)} :基頻路徑置信度;
  • ct,1(A)c_{t,1}^{(A)} :錨諧波振幅可靠度;
  • ct,k(A)c_{t,k}^{(A)} :目標諧波振幅可靠度;
  • ct,k(fit)c_{t,k}^{(\mathrm{fit})} :局部正弦擬合品質;
  • ct,k(track)c_{t,k}^{(\mathrm{track})} :跨框架身份一致性。

參考實作目前使用:

ct,kv0.2=ct(f0)ct,k(A).c_{t,k}^{\mathrm{v0.2}} = c_t^{(f_0)} c_{t,k}^{(A)}.

這只是最低可行版本。

8.2 錨點誤差放大

FARHP 的誤差變異近似為:

Var(ϵψk)=Var(ϵϕk)+k2Var(ϵϕ1)2kCov(ϵϕk,ϵϕ1).\operatorname{Var}(\epsilon_{\psi_k}) = \operatorname{Var}(\epsilon_{\phi_k}) +k^2\operatorname{Var}(\epsilon_{\phi_1}) -2k\operatorname{Cov} \left( \epsilon_{\phi_k}, \epsilon_{\phi_1} \right).

若忽略協方差,高次諧波會因錨誤差呈 k2k^2 放大。因此:

  • 高次諧波應使用更嚴格的遮罩;
  • 碼本權重不能只依頻譜能量;
  • 錨點置信度下降時,整個 FARHP 向量都應降權;
  • 不應把所有 kk 使用相同損失權重。

8.3 建議的動態權重

可定義:

wt,k=mt,kct,kAt,kα1+βk2σt,12,w_{t,k} = \frac{ m_{t,k} c_{t,k} A_{t,k}^{\alpha} }{ 1+\beta k^2\sigma_{t,1}^2 },

其中 σt,12\sigma_{t,1}^2 是錨相位不確定性。這可直接接入第七篇的動態相位損失與感知實驗。


9. 反演:從 FARHP-YFARHP-G

9.1 輸出域的可測量性

麥克風輸出複頻譜可寫成:

Yt,k=Gt,kVt,kRt,kMt,k,Y_{t,k} = G_{t,k} V_{t,k} R_{t,k} M_{t,k},

對應相位:

ϕt,k(Y)=ϕt,k(G)+θt,k(V)+θt,k(R)+θt,k(M)(mod2π).\phi^{(Y)}_{t,k} = \phi^{(G)}_{t,k} + \theta^{(V)}_{t,k} + \theta^{(R)}_{t,k} + \theta^{(M)}_{t,k} \pmod{2\pi}.

因此輸出域 FARHP 為:

ψt,k(Y)=ψt,k(G)+Δkθt(V)+Δkθt(R)+Δkθt(M)(mod2π).\psi^{(Y)}_{t,k} = \psi^{(G)}_{t,k} + \Delta_k\theta^{(V)}_t + \Delta_k\theta^{(R)}_t + \Delta_k\theta^{(M)}_t \pmod{2\pi}.

FARHP-Y 是可直接量測的複合物件。

9.2 聲門域反演

若有聲道估計 V^t,k\widehat V_{t,k} 、輻射模型 R^t,k\widehat R_{t,k} 及量測校正 M^t,k\widehat M_{t,k} ,可估計:

G^t,k=Yt,kV^t,kR^t,kM^t,k.\widehat G_{t,k} = \frac{ Y_{t,k} }{ \widehat V_{t,k} \widehat R_{t,k} \widehat M_{t,k} }.

再定義:

ψ^t,k(G)=wrap(argG^t,kkargG^t,1).\widehat\psi^{(G)}_{t,k} = \operatorname{wrap} \left( \arg\widehat G_{t,k} -k\arg\widehat G_{t,1} \right).

但這個反演不是唯一的。不同聲源—聲道分解、全通成分、聲門閉合時刻假設與正則化都可能產生不同的 FARHP-G

所以資料必須明確標示:

  • domain: Ydomain: G
  • 逆濾波方法;
  • 聲道階數;
  • 閉合相位估計法;
  • 極性政策;
  • 外部 EGG 是否存在;
  • 反演置信度。

9.3 正則化反演

一個可研究的目標函數是:

L=Lwave+λsLspectral+λpLphase+λtLtrajectory+λgRglottal.\mathcal L = \mathcal L_{\mathrm{wave}} + \lambda_s\mathcal L_{\mathrm{spectral}} + \lambda_p\mathcal L_{\mathrm{phase}} + \lambda_t\mathcal L_{\mathrm{trajectory}} + \lambda_g\mathcal R_{\mathrm{glottal}}.

其中:

Ltrajectory=t,kwt,kdS1(ψ^t,k,ψt,k)2+μt,kwt,kΨ^˙t,k.\mathcal L_{\mathrm{trajectory}} = \sum_{t,k} w_{t,k} d_{S^1} \left( \widehat\psi_{t,k}, \psi_{t,k} \right)^2 + \mu \sum_{t,k} w_{t,k} \left| \dot{\widehat\Psi}_{t,k} \right|.

Rglottal\mathcal R_{\mathrm{glottal}} 則只能在聲門域模型中使用,不能強加於一般輸出域相位。


10. FARHP-Trajectory-Spec-v0.2

10.1 頂層物件

本篇定義:

farhp_trajectory_version: "0.2"
sample_rate_hz: 16000
frame_length_sec: 0.080
hop_length_sec: 0.010
frame_times_sec: [...]
f0_hz: [...]
voiced: [...]
track_confidence: [...]
frames: [...]
anchor_unwrapped_rad: [...]
anchor_residual_rad: [...]
farhp_unwrapped_rad: [...]
phase_velocity_rad_per_sec: [...]
method: farhp_viterbi_trajectory
method_version: "0.2"
metadata: {...}

10.2 長度不變式

所有時間索引陣列必須具有共同長度 TT

T=t=f0=v=c=Φ1=R1=Ψ=Ψ˙.\begin{aligned} T &= |\mathbf t| = |\mathbf f_0| = |\mathbf v| = |\mathbf c|\\ &= |\boldsymbol\Phi_1| = |\mathbf R_1| = |\boldsymbol\Psi| = |\dot{\boldsymbol\Psi}|. \end{aligned}

10.3 相容層級

定义四級軌跡相容性:

T0:f0、有聲狀態、置信度、時間標記,T1:T0+逐框架 FARHP-Spec 物件,T2:T1+錨相位與 FARHP 解除包覆軌跡,T3:T2+相位速度、不確定性、間隙與來源政策.\begin{aligned} T_0&:\\ f_0、\text{有聲狀態、置信度、時間標記},\\ T_1&:\\ T_0+\text{逐框架 FARHP-Spec 物件},\\ T_2&:\\ T_1+\text{錨相位與 FARHP 解除包覆軌跡},\\ T_3&:\\ T_2+\text{相位速度、不確定性、間隙與來源政策}. \end{aligned}

FARHP-Core v0.2 實作到 T2T_2 ,並提供部分 T3T_3 欄位。

10.4 null 的語義

null 表示:

  • 無聲;
  • 遮罩關閉;
  • 無可靠估計;
  • 軌跡重啟後尚未建立速度。

null 不是數字 00 ,也不是 NaN 的跨語言等價物;它是交換格式中的明確缺失狀態。


11. FARHP-Core v0.2 參考實作

11.1 新增模組

src/farhp/
  tracking.py       多候選 F0、Viterbi、錨相位與 FARHP 軌跡
  model.py          FARHPTrajectory 資料物件
  reconstructor.py  可含空框架的軌跡 overlap-add
  inspector.py      F0、置信度、錨相位與 FARHP 軌跡圖
  io.py             軌跡 JSON 讀寫
  cli.py            track、demo-track、reconstruct-track

11.2 分析流程

WAV切框YIN 候選Viterbi 路徑逐框架諧波投影錨相位傳播FARHP 解除包覆Trajectory JSON.\text{WAV} \rightarrow \text{切框} \rightarrow \text{YIN 候選} \rightarrow \text{Viterbi 路徑} \rightarrow \text{逐框架諧波投影} \rightarrow \text{錨相位傳播} \rightarrow \text{FARHP 解除包覆} \rightarrow \text{Trajectory JSON}.

11.3 命令列

farhp demo-track --out artifacts/trajectory_demo

分析任意單聲道或立體聲 WAV:

farhp track input.wav \
  --out output/farhp_trajectory.json \
  --plot output/farhp_trajectory.png \
  --f0-min 70 \
  --f0-max 350 \
  --frame-length 0.080 \
  --hop-length 0.010 \
  --k-max 24

諧波軌跡重建:

farhp reconstruct-track output/farhp_trajectory.json \
  --out output/harmonic_reconstruction.wav

11.4 v0.2 的工程邊界

本版尚未實作:

  • 完整 pYIN 機率閾值分布;
  • 前向—後向候選後驗;
  • 真正的瞬時頻率諧波追蹤;
  • 跨無聲間隙橋接;
  • 非諧波殘差重建;
  • 聲門逆濾波;
  • 神經軌跡模型;
  • 自然語音資料集批次評估;
  • 感知盲聽實驗。

所以它是參考實作,不是成熟聲碼器。


12. 受控動態回歸實驗

12.1 訊號設定

建立一段 1.21.2 秒合成母音,包含:

  • 基頻由 110110 Hz 平滑上升至 165165 Hz;
  • 4.74.7 Hz 的小幅顫音;
  • 隨時間緩慢變化的 FARHP 微擾;
  • 隨基頻移動的共振峰式諧波振幅包絡;
  • 微量白噪聲;
  • 起訖淡入淡出。

這比第五篇的靜態框架更接近追蹤問題,但仍是完全已知的合成回歸夾具。

12.2 參數

Fs=16000 Hz,F_s=16000\ \mathrm{Hz}, L=80 ms,H=10 ms,L=80\ \mathrm{ms}, \qquad H=10\ \mathrm{ms}, Kmax=24.K_{\max}=24.

12.3 結果

參考執行得到:

指標 結果
框架數 113113
有聲比例 1.0001.000
平均追蹤置信度 0.9069440.906944
f0f_0 最小估計值 110.815840110.815840 Hz
f0f_0 最大估計值 165.831365165.831365 Hz
f0f_0 平均絕對誤差 0.2790590.279059 Hz
f0f_0 均方根誤差 0.3307400.330740 Hz
錨相位預測殘差中位數 0.1083890.108389 rad
自動測試 13/1313/13 通過

12.4 能證明什麼

這組結果能證明:

  1. 多候選路徑在受控滑音上沒有發生倍頻跳躍;
  2. f0f_0 積分與包覆錨相位的最近分支規則數值一致;
  3. FARHP 的時間解除包覆沒有因 ±π\pm\pi 邊界產生大規模人工尖峰;
  4. 軌跡 JSON 可以往返序列化;
  5. 軌跡可以驅動諧波 overlap-add 重建;
  6. 規格物件可通過 JSON Schema 驗證。

12.5 不能證明什麼

它不能證明:

  • 真實語者的 f0f_0 精度相同;
  • 有聲/無聲判定已成熟;
  • 塞音、擦音與連續句可被良好處理;
  • FARHP-Y 能唯一還原聲門波;
  • 諧波重建具有自然語音品質;
  • FARHP 動態差異必然可被人類穩定感知;
  • 新符號語言的相位發音已成立。

13. 自然語音驗證計畫

13.1 第一階段:持續母音

語料至少包括:

{/a/,/i/,/u/,/e/,/o/}\{/a/,/i/,/u/,/e/,/o/\}

及華語對應母音,採:

  • 多語者;
  • 多音高;
  • 多聲級;
  • 正常聲、氣聲、緊聲;
  • 可選 EGG 同步。

評估:

  • f0f_0 誤差;
  • 錨殘差分布;
  • FARHP 軌跡平滑度;
  • 跨重錄穩定性;
  • 極性敏感度;
  • YG 域差異。

13.2 第二階段:華語單音節與五聲

每個合法音節選擇代表集,涵蓋:

  • 零聲母;
  • 塞音、塞擦音、擦音、鼻音、邊音;
  • 齊齒呼、合口呼、撮口呼;
  • 一、二、三、四聲與輕聲。

要檢驗:

聲調引起的 f0(t) 變化\text{聲調引起的 }f_0(t)\text{ 變化}

與:

FARHP 相對聲源/聲道結構變化\text{FARHP 相對聲源/聲道結構變化}

能否在模型中分離。

13.3 第三階段:連續語音

加入:

  • 連音;
  • 變調;
  • 音節弱化;
  • 送氣;
  • 清濁過渡;
  • 句末下降;
  • 情緒與語速差異。

此階段必須加入非諧波殘差與更成熟的有聲門控,否則重建品質評估沒有意義。

13.4 評估指標

建議至少包括:

  1. f0f_0 平均絕對誤差;
  2. gross pitch error;
  3. voiced decision error;
  4. 錨相位創新殘差;
  5. 加權環面一步距離;
  6. 軌跡斷裂率;
  7. 諧波重建誤差;
  8. 頻譜包絡保持度;
  9. 盲聽 ABX 或 MUSHRA 類品質實驗;
  10. 語者、母音、音類與聲調條件下的統計效應。

14. 可證偽命題

命題一:序列 f0f_0 路徑優於逐框架選擇

在含滑音、共振峰偏置及弱噪聲的有聲語音中:

GPEsequence<GPEframewise.\operatorname{GPE}_{\mathrm{sequence}} < \operatorname{GPE}_{\mathrm{framewise}}.

若在多語者自然語音中不成立,必須修改候選分布與轉移模型。

命題二:錨相位創新殘差可診斷倍頻錯誤

f0f_0 路徑發生整倍頻跳變時:

rt,1|r_{t,1}|

及加權 FARHP 環面距離將顯著增加。若無法區分真實快速發音變化與追蹤錯誤,此診斷量的價值受限。

命題三:FARHP 軌跡比絕對諧波相位更具時間穩定性

在相同分析條件下:

Vart(Δψt,k)<Vart(Δϕt,k)\operatorname{Var}_t \left( \Delta\psi_{t,k} \right) < \operatorname{Var}_t \left( \Delta\phi_{t,k} \right)

應在穩定有聲區段成立。若不成立,FARHP 的時間表示優勢需要重新檢討。

命題四:可靠度門控可降低高次諧波假跳變

加入錨點、振幅與軌跡置信度後:

FalseJumpRategated<FalseJumpRateungated.\operatorname{FalseJumpRate}_{\mathrm{gated}} < \operatorname{FalseJumpRate}_{\mathrm{ungated}}.

命題五:FARHP-YFARHP-G 的動態結構不同

經可靠逆濾波後,至少部分母音與聲質條件下:

D(Ψ(Y),Ψ(G))>0D \left( \Psi^{(Y)}, \Psi^{(G)} \right) >0

且差異不能只以共同時間延遲解釋。

命題六:跨無聲間隙的強制連續會增加錯誤

在沒有外部聲門時鐘時,保守重啟相較於強制橋接應具有較低的分支錯配率:

Pbranch errorreset<Pbranch errorforced bridge.P_{\mathrm{branch\ error}}^{\mathrm{reset}} < P_{\mathrm{branch\ error}}^{\mathrm{forced\ bridge}}.

命題七:相位速度可提供超出靜態碼本的資訊

對聲質分類、音節邊界或合成品質預測:

I(Y;Ψ,Ψ˙)>I(Y;Ψ).I \left( Y; \boldsymbol\Psi,\dot{\boldsymbol\Psi} \right) > I \left( Y; \boldsymbol\Psi \right).

若動態特徵沒有額外效益,第七篇不應增加不必要的序列複雜度。


15. 理論限制

15.1 局部連續不等於全域真相

解除包覆後的 Φ^\widehat\PhiΨ^\widehat\Psi 是演算法選擇的局部代表。它們依賴:

  • 初始框架;
  • f0f_0 路徑;
  • 分支政策;
  • 間隙政策;
  • 諧波身份;
  • 框架及時間原點。

因此不應把它們宣稱為與分析系統無關的絕對相位實體。

15.2 FARHP 不能解決所有相位問題

FARHP 消去的是理想共同時間平移的線性諧波相位項。它不自動消除:

  • 頻率失配;
  • 非最小相位聲道;
  • 全通成分;
  • 房間反射;
  • 麥克風相位響應;
  • 非整數諧波;
  • 多聲源混合;
  • 無聲噪聲。

15.3 自然語音不是純諧波訊號

擦音、爆破、送氣、聲門噪聲與混合激勵都需要殘差模型:

x(t)=xharmonic(t)+xresidual(t).x(t) = x_{\mathrm{harmonic}}(t) + x_{\mathrm{residual}}(t).

若沒有殘差,任何「自然語音重建」主張都不完整。

15.4 生理反演不唯一

即使輸出波形完全已知,也不能在沒有額外假設時唯一分解聲門源與聲道。FARHP-G 必須被視為方法條件化估計,不是直接觀測。


16. 第七篇接口

第七篇將進入:

《基於相對諧波相位控制的聲音重建、音色變換與新音生成》

第六篇提供的必要接口包括:

  1. f0(t)f_0(t) 與有聲狀態;
  2. 逐框架振幅、遮罩與置信度;
  3. 包覆 FARHP;
  4. 解除包覆 FARHP 局部代表;
  5. FARHP 相位速度;
  6. 錨相位及預測殘差;
  7. 間隙及重啟標記;
  8. YG 來源域;
  9. 動態 JSON 規格;
  10. 可執行軌跡分析及重建器。

第七篇不可直接在線性空間對包覆角度做普通插值,而應使用:

ψλ=Arg((1λ)eiψa+λeiψb)\psi_{\lambda} = \operatorname{Arg} \left( (1-\lambda)e^{i\psi_a} + \lambda e^{i\psi_b} \right)

或在已驗證的解除包覆局部區段進行受約束插值。動態轉換還必須保持:

dΦ1dt=2πf0(t)\frac{d\Phi_1}{dt}=2\pi f_0(t)

及跨框架振幅—相位的一致性。


17. 結論

第五篇證明 FARHP 可以在單一受控框架中完成分析、編碼與重建。第六篇則指出,真正的自然語音問題不是多做幾次單框架分析,而是建立兩條有明確依賴關係的軌跡:

f0/有聲狀態路徑\boxed{ \text{$f_0$/有聲狀態路徑} }

與:

錨相位/FARHP 環面路徑.\boxed{ \text{錨相位/FARHP 環面路徑} }.

前者決定週期時鐘及候選身份,後者描述相對諧波結構如何演化。若前者錯誤,錨點誤差會以諧波階數放大;若後者被當成普通線性資料, ±π\pm\pi 邊界會製造人工跳變;若無聲與缺失被寫成零,資料語義便會被破壞。

因此,本篇的核心結論是:

自然語音中的 FARHP 必須被建模為 具遮罩、置信度、分支及重啟政策的相位環面軌跡。\boxed{ \text{自然語音中的 FARHP 必須被建模為 具遮罩、置信度、分支及重啟政策的相位環面軌跡。} }

FARHP-Core v0.2 已建立這個最小可執行物件,但自然語音語料、聲門反演、殘差建模與知覺實驗仍是尚未完成的實證工作。這個限制不是缺陷掩飾,而是第七篇與後續華語相位發音系統必須遵守的研究邊界。


參考文獻

  1. de Cheveigné, A., & Kawahara, H. (2002). YIN, a fundamental frequency estimator for speech and music. The Journal of the Acoustical Society of America, 111(4), 1917–1930. DOI: 10.1121/1.1458024.
  2. Mauch, M., & Dixon, S. (2014). pYIN: A fundamental frequency estimator using probabilistic threshold distributions. ICASSP 2014, 659–663.
  3. McAulay, R. J., & Quatieri, T. F. (1986). Speech analysis/synthesis based on a sinusoidal representation. IEEE Transactions on Acoustics, Speech, and Signal Processing, 34(4), 744–754.
  4. Saratxaga, I., Hernáez, I., Odriozola, I., Navas, E., Luengo, I., & Erro, D. (2010). Using harmonic phase information to improve ASR rate. INTERSPEECH 2010.
  5. Saratxaga, I., Erro, D., Hernáez, I., Sainz, I., & Navas, E. (2009). Use of harmonic phase information for polarity detection in speech signals. INTERSPEECH 2009.
  6. Degottex, G., & Erro, D. (2014). A uniform phase representation for the harmonic model in speech synthesis applications. EURASIP Journal on Audio, Speech, and Music Processing, Article 38. DOI: 10.1186/s13636-014-0038-1.
  7. Krawczyk, M., & Gerkmann, T. (2015). Harmonic phase estimation in single-channel speech enhancement using phase decomposition and SNR information. IEEE/ACM Transactions on Audio, Speech, and Language Processing. DOI: 10.1109/TASLP.2015.2439038.
  8. Magron, P., Badeau, R., & David, B. (2017). Phase reconstruction of spectrograms with linear unwrapping: Application to audio signal restoration. EUSIPCO / related phase-reconstruction work.
  9. Masuyama, Y., Yatabe, K., Koizumi, Y., Oikawa, Y., & Harada, N. (2020). Phase reconstruction based on recurrent phase unwrapping with deep neural networks. arXiv: 2002.05832.
  10. EveMissLab FARHP Series (2026). Papers 1–5 and FARHP-Spec-v0.1.

附錄 A:核心演算法摘要

輸入:波形 x[n]、取樣率 Fs
輸出:FARHPTrajectory

1. 依 frame_length 與 hop_length 切框。
2. 每框計算 YIN 類 CMND。
3. 保留多個局部最低點作為 F0 候選,加入無聲狀態。
4. 以發射代價與對數頻率轉移代價進行 Viterbi 解碼。
5. 對有聲框架,以選定 F0 投影各次諧波複係數。
6. 計算包覆 FARHP、振幅遮罩與每諧波置信度。
7. 由相鄰 F0 積分預測下一框錨相位。
8. 以最近 2π 分支校正包覆錨相位。
9. 對有效 FARHP 座標選取最接近上一代表的分支。
10. 在無聲或失效區段重啟軌跡。
11. 輸出包覆值、解除包覆代表、相位速度、遮罩與置信度。

附錄 B:最低工程成功條件

第六篇工程階段的最低成功條件為:

  • 動態合成訊號 f0f_0 MAE 小於 1.51.5 Hz;
  • 有聲比例判定大於 95%95\%
  • 錨相位預測殘差中位數小於 0.350.35 rad;
  • 前七次非錨諧波的 FARHP 一步跳變 9595 百分位小於 1.51.5 rad;
  • 軌跡 JSON 可往返;
  • 軌跡 JSON 通過 Schema;
  • 諧波重建輸出為有限數值;
  • 舊版單框架測試不得退化。

目前 FARHP-Core v0.2 已通過上述受控測試。