横須賀の某Prisonで働く研究者?のブログ

NAISTを出て横須賀の某社の研究所で研究者をしています.本ブログの内容は業務内容や所属企業とは一切関係ありません.

高次元小標本データ (HDLSS data) に関するあれこれ

いつもお世話になっております.接点QBです.←社会人になった雰囲気出てます?www

ここ数年続いているDNNブームですが,その傍らでこういう思いをした人もたくさんいらっしゃるのではないでしょうか?

「そんなにデータねぇよ!!!」

そうです.基本的にDNNを使うには大量の学習データが必要になりますが,十分な量のデータがあることはそれほど多くないのではないでしょうか? DNNが覇権を取っている分野と言えば,画像・音声・自然言語あたりがメジャーかと思いますが,この辺の分野は先人たちが大きなデータセットを公開してくれていたり, 割と簡単に(専門の人,気を悪くさせてしまったらゴメンナサイ)収集できるのではないかと思います.

しかし,例えば医療分野などはそうもいきませんし,他にも大量のデータを集めることが困難な分野は多々あります. そして更に困るのが,データのサンプル数 $n$ よりもデータの次元 $d$ が圧倒的に大きい — $d>>n$ — というシチュエーションにも遭遇します. 今回は,このように $d>>n$ というシチュエーション (High Dimension, Low Sample Size; HDLSS) でデータを扱う手法をいくつかザックリと紹介したいと思います.

学部生の頃の私の専門がこの分野だったので,少し理論屋っぽい話が多くなるかもしれませんが, あまり数理的な詳細には立ち入らずに,ザックリと紹介していけたらと思います. また,DNN界隈の人の感覚で言うと「古い」話が多いので,「最新手法こそ至高」というタイプの方には微妙な記事かもしれません.

そもそも何でHDLSS だとマズイの?

そもそも,HDLSS だと何がマズイのかという話ですが,以下のような問題がよく言われます:

  1. 次元の呪い
  2. オーバーフィッティング
  3. 共分散行列周りの問題

次元の呪いについてはカステラ本を始めとする機械学習に関する本なら必ず載っていると思いますので, ここでは詳細は割愛します. まあ,「次元が大きくなるほど空間的な問題で分類や回帰が難しくなる問題」程度に考えておいてもらえればよいかと思います.

オーバーフィッティングについてもググればすぐに出てくるので割愛します.

共分散行列周りの問題についてだけ少し解説しておきます. 古典的な機械学習手法では,サンプルから標本共分散行列 — 共分散行列の推定値 — やその固有値固有ベクトル,さらにその逆行列を計算することがあります. このようなとき,$d>>n$ という状況下では

  • 標本共分散行列の逆行列 $S^{-1}$ が存在しない
  • 共分散行列の固有値推定が不安定

といった問題がよく取り上げられます(印象ですが…). とりあえず,上記のような色々な問題がHDLSS data での機械学習には存在するということを認識してもらえればOKです.

ちなみに,統計的推測のお話だと,古典的な統計的推測理論は $n\to \infty$ かつ $d$: fix という枠組みで作られていたため, HDLSS でよく設定される $d\to \infty$, $n$: fix という漸近理論の設定では原則として使えないという問題もあります. もう少し具体的に言うと,正規性を仮定できないことが普通といった状況になるということです.

本論

では,HDLSS データに対してどのような手法を使えばよいのかと言うと,基本的なアプローチは以下のようなものがあります:

  • 特徴選択による特徴ベクトルの次元削減
  • PCA等で新しい特徴量を作成
  • 特徴ベクトルはそのまま使って,標本共分散行列の計算や固有値問題の解き方を工夫する

2つ目と3つ目は背反ではないことも多いですが,大雑把には上記の3つがメジャーです.

特徴選択に関する手法あれこれ

これに関しては2つの手法を紹介します.

Gradient Boosted Feature Selection

Xu et al. (2014) によって提案された手法で,中身はタイトルの通り. これについてはTJO氏@TJO_datasci詳細な解説 があるので,そちらを参照するのが良いかと思います.

HSIC Lasso

HSIC Lasso (Yamada et al., 2012) は,大雑把に言うと Hilbert-Schmidt information criterion を基準として用いて特徴選択を行う手法です. 再生核ヒルベルト空間上でLassoに対応する特徴選択をすることで,特徴量と目的変数の間や特徴量同士の間に非線形な関係がある場合でも,良い特徴選択が可能になるようです. 現在はこれの改良版 も出ているようです (Yamada et al., 2018). また,実装は著者の山田先生 (@myamada0)のページ に公開されています.

DNP

DNP (Liu et al., 2017) では DNN の学習中に,勾配情報を用いて特徴選択とDNNの学習を同時に行う方法が提案されています. 「gradient の大きい特徴量ほど loss を急激に減少させているので,そのような特徴量こそが重要なんだ」という発想ですね.

PCAによる特徴量作成

ここで紹介したい内容はいくつかあるんですが,かなり数理的な内容になってしまうので,とりあえず大雑把にどういう枠組みで手法が作られているのかの説明だけしておきます. まず,共分散行列の固有値を $\lambda_i, \, i=1,\cdots, d$ とします. このとき,固有値に対して以下を仮定するモデル (spiked model) が Johnstone (2001) によって提案されました.

$\lambda_i > 1,\, i=1,\dots, m $ は $d$ に依存しない定数で, $\lambda_i = 1,\, i=m+1, \dots, d$.

私が知っている範囲だと,spiked model を仮定してHDLSS data の幾何学的特徴に着目して固有値を推定し,PCAを行うという方法が提案されています (Yata and Aoshima, 2010; Aoshima and Yata 2011). 現在のところ,このモデルや,これをベースとした power spiked model (Yata and Aoshima, 2013) が仮定されて理論構築がされている手法が多いのではないかと思います.

固有値問題の解き方で工夫する方法

これは結構有名で,固有値問題や一般化固有値問題を解く時に対角成分だけを使ったりします. Bickel and Levina (2008) あたりが有名でしょうか. 他にも,いくつか仮定を入れて固有値固有ベクトルの漸近表現を陽に書けたりします. が,この内容は某ジャーナルで現在査読中のため詳細は伏せます.

まとめ

今回の記事では,HDLSS データに関することを適当にピックアップして紹介しました. 世の中DNNがもてはやされていますが(実際に凄いですけどねw),実務ではいつもデータがあるとは限らない,むしろデータが潤沢にある方が稀かと思います. そのようなとき,本記事で紹介した内容をふと思い出して論文に当たっていただけると幸いです.

なお,本記事の内容は殆どが学部生の頃の知識かつ,特にきちんとしたサーベイもせずに書き上げてしまったので,間違えているところがあるかもしれません. その時は御指摘願います.

  • 頂いたコメントを下に一部の記述を修正しました.

本文中で引用した論文リスト

  • Aoshima, M., & Yata, K. (2011). Effective methodologies for statistical inference on microarray studies. In Prostate Cancer-From Bench to Bedside. InTech.
  • Bickel, P. J., & Levina, E. (2008). Regularized estimation of large covariance matrices. The Annals of Statistics, 199-227.
  • Liu, B., Wei, Y., Zhang, Y., & Yang, Q. (2017, August). Deep neural networks for high dimension, low sample size data. In Proceedings of the Twenty-Sixth International Joint Conference on Artificial Intelligence, IJCAI-17 (pp. 2287-2293).
  • Yamada, M., Jitkrittum, W., Sigal, L., Xing, E. P., & Sugiyama, M. (2012). High-dimensional feature selection by feature-wise non-linear lasso. arXiv preprint. arXiv preprint arXiv:1202.0515.
  • Yamada, M., Tang, J., Lugo-Martinez, J., Hodzic, E., Shrestha, R., Ouyang, H., ... & Saha, A. (2018). Ultra high-dimensional nonlinear feature selection for big biological data. IEEE Transactions on Knowledge and Data Engineering.
  • Yata, K., & Aoshima, M. (2010). Effective PCA for high-dimension, low-sample-size data with singular value decomposition of cross data matrix. Journal of multivariate analysis, 101(9), 2060-2077.