\begin{equation*}
\newcommand\innerp[2]{\langle #1, #2 \rangle}
\newcommand\ve[1]{\boldsymbol{#1}}
\newcommand\parfrac[2]{\frac{\partial #1}{\partial #2}}
\newcommand\mean[2]{\mathrm{E}_{#1} \left[ #2 \right]}
\newcommand\KL[2]{\mathrm{KL} \left[ #1 \ \middle| \middle| \ #2 \right]}
\end{equation*}
進捗報告。TODO:
- sklearn.glasso: LARSを試す - sllearn.glassoを使った。却ってくっそ遅い。また、alpha=1e-4とすると悪条件過ぎて収束せずエラーを出した。 - 性能は自前実装glassoとほぼ同じ。 - 自前実装座標降下 > sklearn座標降下 > sklearn最小角 と言った感じ。sklearnは前処理とか入念にやるから遅いのは当然。しかし最小角が遅い理由はなんだ?
- 摂動展開 を試す
- ガウス過程の文脈で考えてFFTする - テプリッツ行列を巡回行列化してFFTすれば逆行列が \(\mathcal{O}(n\log n)\) で求まる。 - これは大事な別方針なので記事にした。 - 周期性と巡回行列 ここらへんの話もえぐい。
- 逐次的glassoにはBaysianの考え方も使える。(Bayesian Graphical LASSO)
- Sherman-Morrisonをもう一段展開する
- 厳密解とのズレはどうなっとる?安定性解析は?
- できないやつのコードを共有する - 次元を落として解軌跡を調査する。