blogソフトウェア開発と人生をやっていきますこの広告は、90日以上更新していないブログに表示しています。分類や回帰の問題を扱う場合、選択する手法としてサポートベクターマシン(SVM)とランダムフォレストが候補に上がってくると思います。Raschka氏は次のように述べています。:ランダムフォレストは安心して使える機械学習のアプローチです。ハイパーパラメータ調整も必要ありません(木の数の指定は除きます)。対してSVMは"正しい"カーネルや正則化ペナルティ、スラック変数などの調整が必要になります。ディープラーニングはどんなときにSVMやランダムフォレストより勝るか?ランダムフォレストは調整する変数がSVMに比べて少ないため、とりあえず試してみるという使い方ができます。記事中では言及されていませんが、ランダムフォレストは事前に学習データの正規化や標準化を行う必要のない手法です。これも手軽さの一因となっていると思います。手軽さという面ではランダムフォレストに軍配があがると思います。Raschka氏が書いています。Forests?意訳:マルチクラスSVMの典型的な実装は、一対他分類法です。したがってSVMは各クラスごとにトレーニングを行う必要があります。逆に決定木やランダムフォレストは手法をそのままマルチクラス分類に使うことができます。ディープラーニングはどんなときにSVMやランダムフォレストより勝るか?SVMの一対他分類法とは、ある1つのクラスとその他のすべてのクラスでSVMを構築する方法で、これに対応する一対一分類法は2つのクラスを選び、それを分類するSVMを構築する方法です。以下の記事の説明がわかりやすいと思います。SVMを使いこなす!チェックポイント8つSebastian氏は典型的な実装法として一対他分類法が使われるとありますが、代表的なSVMライブラリであるlibsvmには一対一分類法が実装されています。どちらの手法を用いるかによって計算量と分類精度が変わってきます。ランダムフォレストは2クラス分類とマルチクラス分類を行うとき、何か特別な処理をする必要はありません。用意した学習データの数によって手法を選択することもあると思います。Amatriain氏は以下のように述べています。algorithms?意訳:SVMの欠点は学習が非常に非効率なことです。データのサンプル数が多い場合、どのような問題でもおすすめできません。scale)で使うことは推奨できません。研究室レベルや単純化された問題では他のアルゴリズムよりうまく動作します。分類アルゴリズムのそれぞれの利点はなんですか?サンプルデータ数が十分に用意できる場合は、SVMではなくランダムフォレストを使うほうが良いと言えそうです。実際、Kinectの身体部位測定の判定にランダムフォレストベースのものが使われているようです。www.microsoft.comまとめこれらの調査から、次のような方針が立てられると思います。ランダムフォレストかSVMか迷ったらとりあえずランダムフォレストを使ってみるハイパーパラメータ調整が少なくて手軽データ数が多くても効率的に学習できるデータ数が少ないときは、SVMを使うことを検討するしかしながら、以上の方針は絶対ではありません。lunch定理が示しているとおり、すべてを上回る手法は存在しないからです。機械学習の「朱鷺の杜Wiki」したがって、以上の方針を頭に入れつつデータの特性を考えながら手法を選択することが重要になります。»プロフィールid:drilldripperプログラミングと将棋が好きです。(1)月別アーカイブはてなブログをはじめよう!drilldripperさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。