深層学習VS決定木:テーブルデータ分析の未来
深層学習の技術が著しく進歩した結果、コンピュータビジョンや自然言語処理、音声信号処理などの分野では深層学習モデルの性能が古典的な手法のを大きく上回っており、すでにスタンダードなアプローチになっています。
しかし、テーブルデータを扱うタスクにおいては、深層学習の有効性は明らかになっていません。本記事では、AI Solution 事業部のアルゴリズムエンジニアよりテーブルデータにおける従来手法と深層学習の比較論文のご紹介をしていきます。
背景
近年、テーブルデータを扱う深層学習モデルも登場し、一部の論文では決定木ベースのモデルと同等かそれ以上の性能を示しています。しかし、私が実務で試す中では決定木ベースのモデルの方が性能が高く、学習と推論が速く運用コストでも優れているため、深層学習モデル採用には至っていません。
より一般的なテーブルデータのタスクにおける、決定木ベースモデルと深層学習モデルとの性能比較の文献を調べたところ、NeurIPS 2022で発表された「Why do tree-based models still outperform deep learning on typical tabular data?」という論文を発見しました。この論文では 45 個のテーブルデータのデータセットを用いて、決定木ベースモデルと深層学習モデルの性能比較のベンチマーク研究を行い、深層学習モデルがテーブルデータで決定木ベースモデルに及ばない理由を分析しています。この論文は「テーブルデータを扱う際に深層学習モデルを使うべきなのか否か?」という疑問に答えてくれてとても参考になったため、今回はその内容をご紹介します。
ベンチマーク
まず本論文で行った決定木ベースモデルと深層学習モデルの性能比較のベンチマークの設定と結果についてご説明します。
設定
決定木ベースモデルと深層学習モデルの性能を比較するために、著者が 45 個のデータセットを収集し、それぞれデータセットの評価スコアを 0.0~1.0 にリスケールして、その平均を評価指標として使用しています。
データセットの選定基準
データセットの選定は下記の基準を採用しています。
Heterogeneous columns: カラムがそれぞれ異なる意味を持つデータのみ使用し、画像やセンサー信号などのデータは対象外。
Not high dimensional: 次元数はサンプル数の 1/10 以下。
Real-world data: 一部の例外を除き、クレジットカードのデフォルト予測やダイヤモンドの価格予測などの実世界のタスクとデータのみ使用し、人工データは対象外。
I.I.D data: 独立同分布に従うデータのみ使用し、時系列などの独立同分布に従わないデータは対象外。
Not too small: 次元数は 4 以上、サンプル数は 3000 以上。
Not too easy: デフォルトのハイパーパラメータを用いた深層学習モデルと勾配ブーティングモデルがロジスティック回帰(または線形回帰モデル)よりも 5 %以上のスコアを達成したデータセットのみ使用。
Not deterministic: 目的関数が決定的でない。
Documented datasets: 上記の条件が満たされていることの確認をしっかり取るために、内容についてのドキュメントが少ないデータセットは除外。
データセットの前処理
選ばれたデータセットに対して下記の措置を施しています。これらの処理はデータセットの規模や欠損値の扱い、不均衡データの扱いなどそれぞれ独自の分析に値するような問題による影響を排除し、この論文のトピックであるデーブルデータに対する決定木ベースモデルと深層学習モデルの性能差にのみフォーカスするために行ったものです。
中規模のデータセットに: 学習データが 10,000 サンプル程度になるように一部のデータを切り捨てる
欠損値のあるサンプルを除去
均衡的なデータセットになるようにデータをサンプリング
20 個以上のユニークな値のあるカテゴリ特量を除去
10 個以下のユニークな値しかない数値型の特徴量を除去
評価対象のモデル
ベンチマークでは以下の決定木ベースモデルと深層学習モデルの性能を評価しました。
決定木ベースモデル
Scikit Learn の RandomForest
Scikit Learn の GradientBoostingTrees(カテゴリ変数ありの際は HistGradientBoostingTrees を使用)
XGBoost
深層学習モデル
多層パーセプトロン
Resnet
FT Transformer
SAINT
結果
ベンチマークの結果は論文の Figure 1 と Figure 2 に示されています。Figure 1 は数値型の特徴量のみ使用した場合の評価結果で、Figure 2 は数値型とカテゴリ特徴量の両方を使用した場合の評価結果です。このグラフの横軸はハイパーパラメータチューニングの試行回数で、縦軸は評価スコアになっています。決定木ベースモデルの性能がハイパーバラメータチューニングの回数によらず全面的に深層学習モデルを上回っていることが分かります。また、この横軸のグラフでも決定木ベースモデルの性能が優れていますが、実際 1 試行の時間は深層学習モデルの方がずっと長いことを考えれば、実務においての性能差はさらに大きくなると考えられます。
深層学習モデルはカテゴリ変数の扱いが苦手であることがテーブルデータのタスクにおいて決定木ベースモデルがより優れている理由として挙げられることが多いですが、Figure 1 と Figure 2 の結果を比較すると、確かにカテゴリ変数を使わない場合は決定木ベースモデルと深層学習モデルの性能の差は縮むものの、深層学習モデルの性能が劣っている主な理由ではないことが分かります。
決定木ベースモデルがより優れている理由の考察
なぜ深層学習ベースのモデルは決定木ベースよりも性能が劣っているかについて、論文の著者は以下の 3 つの理由を挙げています。
理由 1:深層学習ベースのモデルは滑らかな解に偏っている
深層学習モデルは滑らかな解を得る傾向にあり、外れ値が多く目的関数があまり滑らかでない場合は外れ値にオーバーフィットしてしまうことが 1 つ目の原因として挙げられます。著者は学習データセットのターゲットにガウシアンカーネルスムージングをかけ、決定木ベースモデルと深層学習モデルの性能の変化を調べました。実験の結果は下図に示されており、横軸はガウシアンカーネルスムージングのパラメータで、値が大きければ大きいほど強いスムージングが適用されます。スムージングを強めていくと、決定木ベースモデルも深層学習ベースモデルも性能は低下していきますが、決定木ベースモデルの方がより性能の低下が激しく、強いスムージング条件では深層学習ベースモデルと同程度の性能になることが観察されました。この結果は、深層学習モデルが滑らかでない目的関数に適合するのに苦労している可能性を示唆しています。
理由 2:深層学習モデルは情報量の少ない特徴量に弱い
テーブルデータのデータセットは予測に役立たないカラムが含まれることが多く、深層学習はこういった情報量の少ない特徴量を無視できないのが性能が低い理由の一つなのではないかと著者が主張しています。
1 つ目の実験として、学習済みの RandomForest が出力した重要度の低い特徴量から削除していき、勾配ブースティング木の性能変化を調べました。下図の青色の線は横軸の割合の特徴量を削除した場合の性能を表し、赤色の線は削除された特徴量のみで学習した場合の性能を表します。特徴重要度の下位 50 %の特徴量を削除したとしてもモデルの性能への影響は小さく、テーブルデータには情報量の少ない特徴量が多いと言えそうです。
2 つ目の実験は、標準ガウス分布からサンプリングした値(既存の特徴量と正解ラベルと相関がない)を情報のない特徴量として加えていった際の性能変化を調べました。新しい情報量のない特徴量が加わっていくと、すべてのモデルの性能が下がっていきましたが、Resnet の性能の下がり幅が決定木ベースのモデルよりもずっと大きく、深層学習モデルは決定木ベースのモデルよりも情報量の少ない特徴量を無視するのが苦手であることが言えそうです。一方で、FT Transformer の性能は Resnet ほど下がってはおらず、このことについては次の理由 3 で説明されています。
理由3:深層学習モデルは回転不変性を持つ
深層学習モデルが回転不変性を保とうとするためテーブルデータの扱いが苦手であることが、3 つ目の理由として挙げられています。理論上多層パーセプトロンや Resnet などの深層学習モデルは回転不変性を持ち、つまり特徴量に任意の回転行列をかけても同じ学習ができるというものです。この性質が学習を有利な方向に運ぶドメインもありますが、テーブルデータは特徴量の特定の方向に重要な情報が含まれることが多いです。例えば、分類タスクにおいて特定の特徴量がある閾値を超えると正解クラスが必ず変わるような条件は回転不変性を保ったまま表現するのは難しいです。それから、この回転不変性を保つ必要があるため理由 2 で述べた予測に役立たない特徴量を無視できないのではないかとも言われています。
著者は特徴量にランダムな回転行列をかけてモデルの性能の変化を調べる実験を行い、結果は下図に示されています。決定木ベースモデルの性能は軒並みに大幅に低下し深層学習モデルの性能を下回りましたが、FT Transformer は微減にとどまり、Resnet は全く影響を受けなかったという結果なりました。この結果からも回転不変性が深層学習モデルの性能に影響していると言えそうです。ここで 1 つ注意すべきことがあります。FT Transformer は多層パーセプトロンや Resnet とは異なり、モデルに一部回転不変性が保たれない層が入ってるため、決定木ベースモデルほどではないですが回転行列をかけたデータでは性能が低下しています。理由 2 の実験で FT Transformer は Resnet ほど性能が低下していないのもこのためではないかと述べられています。
今後の課題
著者はこの研究の考察を深めるために、さらなる研究と分析が必要な 3 つの点を指摘しています。
決定木ベースのモデルが深層学習モデルよりも性能が優れている原因を 3 つ提示したが、他の原因もあると思われ、さらなる議論が必要。
大規模なデータセットでの実験がどのような結果をもたらすかは未検証。一般的に大量のデータの利用は深層学習モデルの性能向上に寄与するとされるが、今回のデータセットの選定基準にある「サンプル数が 3000 以上」をさらに引き上げると使えるデータセットの数が一気に減ってしまい信用に値する実験結果にはならないという事情で、大規模データセットでの実験はできなかった。
外れ値や欠損値への対応が最低限にとどまっており、これらを工夫した際にどのような結果になるかは明らかではない。
終わりに
本論文はテーブルデータを使用したタスクで決定木ベースモデルと深層学習モデルの性能を系統的に比較し、決定木ベースモデルが優位性を持つ 3 つの理由を提示しました。この論文は「テーブルデータは結局深層学習を使うべきか?」という私の疑問の答えを提供してくれ、提示された理由はどれも説得力がありました。
最近は生成 AI にかなり注目が集まっていますが、テーブルデータ向けの機械学習モデルも多くの社会課題を解決できる重要な AI 技術です。本論文の結果ではテーブルデータにおいて深層学習モデルは決定木ベースモデルより劣っていますが、本論文が提示した決定木ベースモデルが優位性を持つ理由はこれからのテーブルデータ向けの深層学習モデルの研究の方向性を示しています。今後もより性能が高く使いやすいテーブルデータ向けの深層学習モデルの登場は十分期待できると考えており、引き続きこれからの発展にも注目していきたいと考えています。
―INFORMATION―
PKSHA Technology では、共に働く仲間を募集しています。このような技術に興味を持っていただけた場合は、採用サイトや Wantedly から応募やカジュアル面談が可能ですので、是非ご覧ください!
▼ 中途採用:アルゴリズムエンジニア(データサイエンティスト)
▼ 25 新卒:アルゴリズムエンジニア(データサイエンティスト)本選考はこちら
▼ 26 新卒:アルゴリズムエンジニア(データサイエンティスト)インターン選考はこちら
▼ カジュアル面談も受付中です!Wantedly はこちら