ニューラルネットワークとサポートベクターマシン:2番目は間違いなく優れていますか?


52

私が読んだ論文の多くの著者は、SVMが回帰/分類の問題に直面するための優れた手法であり、NNを介して同様の結果を得ることができないことを認識しています。多くの場合、比較では

NNではなくSVM

  • 強力な創立理論を持っている
  • 二次計画法によるグローバル最適化に到達
  • 適切な数のパラメーターを選択しても問題ありません
  • 過剰適合の傾向が少ない
  • 予測モデルを保存するために必要なメモリが少ない
  • より読みやすい結果と幾何学的解釈をもたらす

それは真剣に広く受け入れられた考えですか?ノーフリーランチ定理や同様の記述を引用しないでください。私の質問は、これらのテクニックの実用的な使用法です。

反対に、NNが直面する抽象的な問題はどのようなものですか?


4
質問は少し広いと思います。ただし、実際には、NN構造の選択によりNNの方がはるかに調整しやすいように見えますが、SVMのパラメーターは少なくなります。NNが問題を解決するために最適にセットアップされている場合、それはどのようにSVMと対比するでしょうか?そして、平均的な実践者の手で、SVMはNNとどのように比較されますか?
パトリックカルドン

2
@PatrickCaldon私はあなたの観点を理解していますが、適切な方法でそれらを構成する方法がわからない場合、対処するパラメーターが増えても必ずしも良いツールとは限りません。可能であっても、長い研究が必要な場合があります。または、あなたはあなたのapplciationを目的としたので、幅広い同調性を必要としないかもしれません
stackovergio

1
それが私のポイントです。特定の問題に関する理想的な状況で、ツールはどのように機能しますか?またはほとんどの場合、ツールはどのように機能しますか?ここでの最大の要素は人です。このため、関連する要因はしばしばあると思います:各ツールを学ぶのはどれくらい難しいですか?使い方を知っている専門家がいますか?など。多くの「Xから良いパフォーマンスを得た」ことを説明できます
パトリックカルドン

1
私が知っていることから、多層フィードフォワードANNは、活性化関数に関係なく、多かれ少なかれ普遍的な近似器です。私は、使用するカーネル関数にはるかに依存しているSVMの同様の結果を知りません。
モモ

2
実際の使用では、NNはトレーニング時間のためにもう少し実用的です。非線形SVMは、大きなNをうまく処理できません。両方のアルゴリズムがオーバーフィットする可能性があり、両方とも強力な正則化が必要です。
シアパークス

回答:


43

それはトレードオフの問題です。SVMはあるしたNNがために使用、今では。Random Forests、Probabilistic Graphic Models、またはNonparametric Bayesian methodが含まていると主張する論文が増えています。Annalsof Improbable Researchで、どのモデルがヒップとみなされるかについて、予測モデルを公開する必要があります。

多くの有名な困難な教師あり問題の場合、最良のパフォーマンスを発揮する単一モデルは、ある種のNN、ある種のSVM、または信号処理方法を使用して実装される問題固有の確率的勾配降下法です。


NNの長所:

  • サポートできるデータのタイプは非常に柔軟です。NNは、基本的に任意のデータ構造から重要な機能を学習することで、機能を手動で導出することなく、まともな仕事をします。
  • NNは、フィーチャエンジニアリングの恩恵を受けています。たとえば、長さと幅がある場合は、エリアフィーチャが必要です。モデルは、同じ計算努力に対してより良いパフォーマンスを発揮します。

  • 教師あり機械学習のほとんどでは、ラベルを長さの観測値のベクトルとして、特徴量による観測値でデータを構造化する必要があります。この制限はNNでは必要ありません。構造化SVMには素晴らしい成果がありますが、NNほど柔軟になることはまずありません。


SVMの長所:

  • 少ないハイパーパラメーター。一般に、SVMは、合理的に正確なモデルを取得するためにグリッド検索を必要としません。RBFカーネルを備えたSVMは通常、非常に優れたパフォーマンスを発揮します。

  • グローバルな最適保証。


NNとSVMの短所:

  • ほとんどの場合、これらは両方ともブラックボックスです。SVMの解釈についてはいくつかの研究がありますが、GLMほど直感的ではないでしょうか。これは、一部の問題ドメインでは深刻な問題です。
  • ブラックボックスを受け入れる場合は、通常、トレードオフの異なる多くのモデルをバギング/スタック/ブーストすることにより、かなり正確に絞り出すことができます。

    • ランダムフォレストは魅力的です。なぜなら、余計な手間をかけずにout-of-bag予測(leave-one-out予測)を作成でき、非常に解釈しやすく、バイアスと分散のトレードオフが優れている(モデルのバギングに最適)ためです。選択バイアスに対して比較的堅牢です。の並列実装を書くのは愚かに簡単です。

    • 確率的グラフィカルモデルは、ドメイン固有の知識をモデルに直接組み込むことができ、この点で解釈可能であるため、魅力的です。

    • ノンパラメトリック(または非常にパラメトリックな)ベイジアン法は、信頼区間を直接生成するため魅力的です。これらは、小さなサンプルサイズで非常によく機能し、大きなサンプルサイズで非常によく機能します。馬鹿げたほど簡単に線形代数の実装を記述できます。


41
ディープラーニングの最近の台頭により、NNはSVMよりも「より多く」考慮されるようになりました。
バイエルジ

30

あなたの質問に対する答えは私の経験「いいえ」であり、SVMは間違いなく優れているわけではなく、手元にあるデータセットの性質と各ツールセットのオペレーターの相対的なスキルに最もよく機能します。一般に、SVMはトレーニングアルゴリズムが効率的であり、正則化パラメーターがあり、正則化と過剰適合について考えるように強制するため、優れています。ただし、MLPがSVMよりもはるかに優れたパフォーマンスを提供するデータセットがあります(カーネル関数によって事前に指定されるのではなく、独自の内部表現を決定できるため)。MLP(例:NETLAB)の適切な実装と、正則化または早期停止またはアーキテクチャ選択(または3つすべて)が非常に良い結果をもたらし、再現性があります(少なくともパフォーマンスの点では)。

モデル選択はSVMの主要な問題であり、カーネルを選択し、カーネルと正則化パラメーターを最適化すると、モデル選択基準を過剰に最適化すると、多くの場合、過度の過適合につながる可能性があります。SVMを支える理論は快適ですが、ほとんどは固定カーネルにのみ適用されるため、カーネルパラメーターを最適化しようとするとすぐに適用されなくなります(たとえば、カーネルのチューニングで解決すべき最適化の問題)通常、非凸であり、極小値を持つ可能性があります)。


7
これに完全に同意します。現在、ブレインコンピューターインターフェイスデータでSVMとANNをトレーニングしています。SVMが優れているデータセットと、ANNが優れているデータセットがあります。興味深いのは、使用しているすべてのデータセットのパフォーマンスを平均すると、SVMとANNがまったく同じパフォーマンスに達することです。もちろん、これは証拠ではありません。それは単なる逸話です。:)
アルファ

27

私の友人のほとんどが共有していると思われる私の意見を説明しようと思います。NNに関して、SVMについてではなく、次の懸念があります。

  1. 古典的なNNでは、パラメーターの量は非常に多くなります。2つのクラスに分類したい長さ100のベクトルがあるとしましょう。入力レイヤーと同じサイズの隠されたレイヤーが1つあれば、100000を超える自由なパラメーターが得られます。どれだけひどくオーバーフィットできるか(そのようなスペースでどれだけ簡単にローカルミニマムに落ちるか)と、それを防ぐために必要なトレーニングポイントの数(そして、トレーニングに必要な時間)を想像してください。
  2. 通常、トポロジーを一目で選択するには、本当の専門家でなければなりません。つまり、良い結果を得るには、多くの実験を行う必要があるということです。そのため、SVMを使用して、NNで同様の結果を得ることができなかったと言う方が簡単です。
  3. 通常、NNの結果は再現できません。NNトレーニングを2回実行しても、学習アルゴリズムのランダム性により、おそらく異なる結果が得られます。
  4. 通常、結果の解釈はまったくありません。それは小さな懸念ですが、とにかく。

それは、NNを使用すべきではないという意味ではなく、慎重に使用するだけです。たとえば、Convolutional NNは画像処理に非常に適していますが、他のDeep NNは他の問題にも適していることが判明しています。

それが役立つことを願っています。


2
ANNの結果を再現可能にするには、ランダム関数をシードします。
フランクダーノンクール16

@Franckそれは本当の再現性ではありません。
正気

17

ほとんどの問題にニューラルネットワークを使用しています。ポイントは、ほとんどの場合、モデルよりもユーザーのエクスペリエンスに関することです。ここに私がNNが好きな理由がいくつかあります。

  1. 彼らは柔軟です。ヒンジ損失、二乗、クロスエントロピーなど、私は彼らに望むあらゆる損失を投げることができます。微分可能である限り、私は自分のニーズにぴったり合う損失を設計することさえできます。
  2. それらは確率的に扱うことができます:ベイジアンニューラルネットワーク、変分ベイズ、MLE / MAP、すべてがそこにあります。(ただし、場合によってはより困難です。)
  3. 彼らは速いです。ほとんどのMLPは2つの行列乗算であり、その間に1つの非線形性が適用されるコンポーネントです。SVMでそれを打ち負かします。

他のポイントをステップごとに説明します。

強力な創立理論を持っている

その場合、NNも同様に強力です。確率的なフレームワークでトレーニングするためです。これにより、事前分布とベイジアン処理(たとえば、変分法または近似)の使用が可能になります。

二次計画法によるグローバル最適化に到達

ハイパーパラメーターの1つのセット。ただし、優れたhpの検索は非凸であり、グローバルな最適値を見つけたかどうかもわかりません。

適切な数のパラメーターを選択しても問題ありません

SVMでは、ハイパーパラメータも選択する必要があります。

予測モデルを保存するために必要なメモリが少ない

サポートベクターを保存する必要があります。SVMは一般にMLPを保存するのに安くはありません。それは場合によって異なります。

より読みやすい結果と幾何学的解釈をもたらす

MLPの最上層は、分類の場合のロジスティック回帰です。したがって、幾何学的解釈(ハイパープレーンの分離)と確率的解釈もあります。


サポートベクターを保存する必要があるのはなぜですか?SVMのハイパープレーン/マージを保存するだけでは十分ではありませんか?
ジュリアン

これは、ハイパープレーンがサポートベクトルによって表されるためです。新しいポイントからの距離を計算するには、それらを反復します。
バイエルジ

0

いくつかの点で、これら2つの広範な機械学習手法のカテゴリは関連しています。完璧ではありませんが、これらの手法の類似性を示すのに役立つ2つの論文を以下に示します

ロナン・コロバートとサミー・ベンジオ。2004.パーセプトロン、MLP、およびSVM間のリンク。機械学習に関する第21回国際会議(ICML '04)の議事録。ACM、ニューヨーク、ニューヨーク、米国、23-。DOI:https : //doi.org/10.1145/1015330.1015415

そして

アンドラス、ピーター。(2002)。サポートベクターマシンと正則化ニューラルネットワークの同等性。神経処理の手紙。15. 97-104。10.1023 / A:1015292818897

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.