今日から執筆していく。目標、7/27に第一般。

しかしまだ書き始めず、プロットを練る。プロットの構成はだいたい発表とおんなじだが、 イントロをしっかり書きたいから、既存のロスレス音声の論文の構成を参考にしていく。

  • Sparse modeling for lossless audio compression OptimFROGのひと。
    • オーディオ環境は高級化している。その中でロスレス圧縮は現実的である。プレーヤが使うから、デコーダは高速実装できるべきだ。今現在使われているいろんなコーデックがある。MP4-ALS, WMAL, ALAC, Monkey's Audio, FLAC, OptimFROG等。それぞれ異なる予測モデルと圧縮アルゴリズムを使用している。圧縮率、エンコード速度、デコード速度の3つの評価軸があるが、全てを最大にすることはできず、トレードオフの関係にある。例えば、予測次数を最大にすれば圧縮率は向上するが、エンコード/デコード速度が悪化する。
    • An Introduction to Super Audio CD and DVD-Audio Super Audio CD(SACD)なんてあったのか…すでに死んでるが…。OptimFROGでは高級なオーディオの規格として挙げていた。
    • A hierarchical lossless/lossy coding system for high quality audio up to 192 kHz sampling 24 bit format: 公開されてない...
  • Lossless Compression of Speech and Audio Signals, and Its Application NTTの原田さんの博論。成果は符号化メイン。
  • SHORTEN: Simple lossless and near-lossless waveform compression シンプルで宜しい。うざったるい背景描写ほとんどなし。
    • デジタル化した音声ファイルをそのまま保存するとかなりの容量を食う。ZIP等の一般的な圧縮アルゴリズムは、音声の特徴を捉えていないからうまく圧縮できない。一般的な音声データは16bitで、サンプル間に相関がある。これらのファイルに対する圧縮ユーティリティは高速で、移植性があり、多くのデータを処理可能で素晴らしい圧縮率を達成する必要がある。
  • 国際標準 MPEG-4 ALS による ハイレゾ音源ロスレス伝送 MPEG4-ALSの分かりやすい説明。飾り言葉がおおいので注意。(「コト」や「モノ」の下りは使えない)
  • MPEG­4 ALS – The Standard for Lossless Audio Coding MPEG4-ALSのもうちょっと分かりやすい説明。厚すぎず手軽で良い。
    • ロッシー符号化は編集やアーカイビングに向かない。歪みを生む。MP3やAACを知覚符号化と言っていた。
  • 予測誤差の Golomb-Rice 符号量を最小化する線形予測分析 これは遊びが無くて良いように見える。というかこれ引用するだろうし、しっかり参考にすべき。
    • やはりバックグラウンドにロスレス音声は使える。うまく話を作ろう。
    • 「最小絶対値推定量がロバスト推定量で あることから線形予測分析に基づく音声分析の耐雑音 性能を向上する目的として応用されている」もよいアイデア。
  • Lossless compression of digital audio 今の発表につながる概観書。基礎は変わってない。
    • デジタル配信で重要な役割を果たす、ミキシングを高い忠実性を保てる。
  • Cascaded RLS–LMS Prediction in MPEG-4 Lossless Audio Coding MPEG4にカスケード接続したLMS+RLSを突っ込むと3%程圧縮率がよくなるという話。MPEG4-ALSも適応フィルタを使っているので、引用する必要はある。そらそうよ。負荷大丈夫か。

既存研究調査

\begin{equation*} \newcommand\ve[1]{\boldsymbol{#1}} \end{equation*}

1回ざっと目を通した論文

  • Natural Gradient Works Efficiently in Learning LMS界隈からの引用多数。
  • Adaptive algorithms for sparse echo cancellation 俯瞰した背景描写もある。
    • PNLMSに偏っているか。古い。
  • Review and Comparison of Variable Step-Size LMS Algorithms 適応ステップサイズ手法の比較。2015年。
    • 比較について多くの手法を3つの応用例から見ている。結論はNLMSが最高ということだったけど、比較過程については要注目。
  • Proportionate Normalized Least-Mean-Squares Adaptation in Echo Cancelers 頻繁に参照されるPNLMS。係数の絶対値をその最大値で正規化した値を対角要素に持つ対角行列をフィッシャー情報行列の逆行列とする。
    • NLMSと比較。DSP実装して実ノイズで試してもいる。理論的解析(定常雑音に対する収束レート解析)もしている。
  • Normalized Natural Gradient Adaptive Filtering for Sparse and Nonsparse Systems フィッシャー情報行列を対角行列で与えている。
    • まさに自然勾配をがっつり使う論文。絶対参照すべき。対角行列を計量にしたINLMSを導入し、スパース係数(1つだけ1.0で他全部0)ではPNLMSに負けたけど、非スパース係数(全部1)ではPNLMSよりも結果が良いとか言ってる。
    • シミュレーション節が短すぎ。システム同定をやったらしいがよく分からん。
  • Full Proportionate Functional Link Adaptive Filters for Nonlinear Acoustic Echo Cancellation これも。謎のリーマン計量を作る。
    • 比較データの生成が恣意的すぎるので無し。
  • New Sparse Adaptive Algorithms Based on the Natural Gradient and the l0-Norm これも謎のリーマン計量を使っている…。損失関数に計量が入っちゃってるけどいいのか?→大丈夫っぽい。損失関数の設計は自由。
    • 応用が特殊すぎる。オレオレデータセットに対して有効性を示されても困る。
  • NATURAL GRADIENT-BASED ADAPTIVE ALGORITHMS FOR SPARSE UNDERWATER ACOUSTIC CHANNEL IDENTIFICATION L0ノルム最小化に自然勾配法をあわせた。とある。やけに性能が良い。
    • ↑と著者が同じ。データセットも同じ。
  • l0 Norm Constraint LMS Algorithm for Sparse System Identification 係数l0ノルム最小化。l0ノルムをexpで近似して解析的最小化。
    • この論文で相関のあるガウス雑音の作り方が明確に示されている。
    • ITU-Tのデータを使ってるのは参考になった、
    • が、スパースなデータの作り方が恣意的すぎる。。。
  • AN IMPROVED VARIABLE STEP-SIZE AFFINE PROJECTION SIGN ALGORITHM FOR ECHO CANCELLATION これが一番近いかも。 なんでここまできて自然勾配に至らないのか?こいつの引用を漁ったけど同一の研究なし。
    • 謎の手順(ガウス雑音に1次のIIRフィルタを通して、しかもベルヌーイ試行で出力判定する)で入力を生成している。よくあるのか???
  • Variable Step-Size NLMS and Affine Projection Algorithms これもそれなりに近い。affine projection algorithm で情報行列の逆を使っている。
    • 移動平均フィルタを理想フィルタにしている。ガウス雑音に謎の2次IIRフィルタを通したものをリファレンスとしている…。
  • System Identification Using Reweighted Zero Attracting Least Absolute Deviation Algorithms ZA-LADの原典。自分のやっている研究に近いかも。残差L1ノルム最小化はロバストだいう主張。
    • スパースなときに有利であることを言いたいらしい。
    • 16タップの係数を使い、最初のXXXXイテレーションでは5番目のタップだけ1(他全部0)、次に奇数タップをすべて1にしてYYYYイテレーション、最後に偶数タップを-1にしてZZZZイテレーション。。。
      • ノイズとして非ガウス的(α-stableと言っていた)なものを使用。SNRはGeneralized SNRという尺度を使用。
      • 他に、白色ガウス雑音に1次のフィルタを通して入力していた。出力に相関をもたせる意図か。
  • A Novel Family of Adaptive Filtering Algorithms Based on The Logarithmic Cost LLADの原典。
    • これのデータよい。採用。 単純明快。(理論ばっかりで分かりにくいと思っていたが)
      • リファレンス信号 \(d_{t} = \ve{w}_{0}^{\mathsf{T}} \ve{x}_{t} + n_{t}\) で、 \(\ve{w}_{0}\) はリファレンス係数(論文ではランダム選択にしていた。スパースじゃないならいいかも。)、 \(\ve{x}_{t}\) は分散 \(\sigma_{x}^{2} = 1\) の i.i.d な平均0ガウス信号系列、 \(n_{t}\) はノイズ信号(分散0.01のガウス雑音と分散10000(偏差100)で一定確率(1,2,5%)で発生するインパルス雑音)
    • 一定確率でインパルス雑音が発生するケースはロバスト性を示すために使われていた。LMSは全く等化できずにいた。
  • Sparse Least Logarithmic Absolute Difference Algorithm with Correntropy-Induced Metric Penalty 重みによくわからないペナルティを付加したSigned LMS。
    • これもしかしたら重要かもしれない。ちゃんと書けてる。
  • Convergence Analysis of Zero Attracting Natural Gradient Non-Parametric Maximum Likelihood Algorithm これ読めないんだけどAbstract読み限り相当やってそう。

以下、日本語論文

比較対象にすべき手法

  • NLMS, Signed-LMS, RLS
  • PNLMS
  • IPNLMS(Improved PNLMS)
  • APA(Affine Projection Algorithm)

比較対象にすべきデータ

  • 発話音声(ソースがない...)
  • 理想係数に入力として単位インパルス(雑音源よりもレベルの小さいノイズもあり)をXXXX回繰り返し入れ続け(途中で理想係数を急に変える)、同時にレベルを決めた雑音源を入力。
    • シードのみを変えて、XXX回独立した試行を行ってその平均を(残差トレンドの平均も)とる。
  • ITU G.168のエコーパスモデル
    • 公式 から資料入手可能。
    • Annex Dに8つのエコーインパルスのデータが乗っかっている。5番目のインパルスがスパースだから良いらしい。
    • また、リファレンスの波形にフィルタを通して使うらしい。
  • ほぼ0で、ランダムに選んだいくつかの係数だけが1になっているリファレンスフィルタの出力 * 入力例1: ガウス雑音に1次(極が1つの)のIIRを通し、さらにベルヌーイ過程として、一定確率pでノイズ、1-pで0となる信号 * 入力例2: ガウス雑音に2次のIIRを通す

比較基準

  • 2乗誤差(misalignmentとか行ったりする)[dB]
  • 計算量(畳み込み、係数更新における乗算+加算回数)
  • 定常状態での係数の分散
  • 理想係数との誤差MSE(MSD(Mean Square Deviationとも言う。Simonの本から来てると思われる)。もし計算できるなら。正規化してdB表示する: \(10 \log_{10} ( ||h - \hat{h}|| / ||h|| )\)
  • 定常状態でのMSE
  • MSEの和(全実験での)
  • 可変ステップサイズアルゴリズムの場合は、ステップサイズの変化

思ったこと