2016-6-23_22-25-9_No-00

みなさん、データ数 (サンプル数) が多すぎてデータ解析 (分析) に時間がかかるときってどうしてますか?コンピュータの性能にもよりますが、10,000サンプルくらいあるとサクサクとは解析できないですよね?

とくに回帰モデルとかクラス分類モデルとか作るときに時間かかりますよね。線形のモデルならまだなんとかなるかもしれませんが、非線形モデルのモデル作るときはかなり時間がかかります。さらに、クロスバリデーションで非線形モデルのハイパーパラメータの値を最適化するとなると・・・一日中かかるときもあります。せっかくハイパーパラメータの値を最適化したのに、外れ値があったり変数を選択したりして、もう一度最適化しなければならない時なんて・・・もうお手上げです!

どうすればいいの?

こういうときは、すべてのサンプルの中からいくつかサンプルを選んで、少ないサンプル数でもろもろの検討をすればいいんです。すべてを検討し終わったあとに、全サンプルを用いて最終的なモデルを作成します。これによって、検討するときの時間を大幅に短縮することができます。

でも、適当にサンプルを選んではいけません。大事なことは、少ないサンプル数で行った検討結果と、仮にすべてのサンプルで行ったときの検討結果が一緒もしくは近いものになっていなければならない、ということです。選ばれたサンプルは、すべてのサンプルにおける代表サンプルのようなものでなければなりません。

このサンプル選択のときに、ぜひKennard-Stone (KS) アルゴリズムを使いましょう!KSアルゴリズムについてはこちらに詳しく書きましたのでご覧ください。

モデル構築用データセットとモデル検証用データセットをどう分ける?~Kennard-Stone(KS) アルゴリズム~

Kennard-Stone (KS) アルゴリズムによるサンプル選択

KSアルゴリズムによって、すべてのサンプルの中でなるべくばらついている少数のサンプルを選んで、選んだサンプルのみで非線形モデルのハイパーパラメータの最適化や、変数選択などの検討を行うのです。そしていろいろ検討し終わったあとに、すべてのサンプルを用いて最終的な回帰モデル・クラス分類モデルを作成します。

こうすれば、すべてのサンプルを用いて検討したときと同じような結論が得られますし、サンプル数が少ないため計算も早く終わります。

ただ最後には、すべてのサンプルを用いて回帰モデル・クラス分類モデルを構築しましょう。

まとめ

サンプル数が多くてデータ解析に時間がかかってしまうときは、KSアルゴリズムでサンプルを選んでから解析するようにしましょう。もちろん、最後はすべてのサンプルで回帰モデル・クラス分類モデルを作るということを忘れないでくださいね!

ご案内。

オススメ記事セレクション。

twitterでも発信中。

フォローしていただけると嬉しいです。


無料メルマガでブログにない情報を配信中。

無料メルマガの登録はこちら