データ解析の手順』の
「1.数値化されたデータセットを準備する」についてです。
すでに数値で表されているデータセットを
持っている場合を考えます。
データの数がほどほどの場合は問題ありませんが、
データの数が多すぎて後の解析に時間がかかってしまう場合には、
あらかじめデータを選んでおくとよいです。
また全データ数がそれほど多くなくても、
はじめは選んだデータを用いて試行錯誤しながら解析を行い、
さいごに全データを用いて検討した方法で解析を行うこともあります。
全データを用いた試行錯誤は時間がかかるため、
はじめは少ないデータのみ用いて解析することで、
効率的に進めることができます。

またデータ選択の方法は、
モデルを構築するためのデータセット(
モデル構築用データセット)
構築したモデルを検証するためのデータセット(
モデル検証用データセット)
分けるのにも使えます。
選ばれたデータをモデル構築用データセットとして、
選ばれなかったデータをモデル検証用データセットとします。

代表的なデータ選択の方法を3つ紹介します。

もっとも単純なデータ選択の方法は、
ランダムにデータを選ぶという方法です。
例えば10万個のデータから1000個のデータを選びたいときは、
まず10万個のデータそれぞれに対して1つずつ乱数を発生させます。
つまり全部で10万個の乱数です。
そして、その乱数の値が大きい方から順に1000個の乱数を選び、
それに対応するデータが選ばれたデータとなります。
乱数を使うことである程度の情報量を保持したまま
少ない数のデータを選べます。

時系列データをあつかう場合は、
システマチックサンプリングも使われます。
データを時系列に、つまり時刻の順に、並べて、
もしデータの数を m分のn にしたいときは、
時間的に順番に m個中n個 を選びます。
例えばデータの数を100分の1にしたいときは、
時間的に順番に100番めのデータのみ選びます。
方法は簡単ですが、時系列データにおいて、
ランダムにデータを選んだのと同じ効果が得られます。

より広いデータ領域をカバーしたデータセットを選ぶ方法の一つに、
Kennard-Stone algorithm (KS) があります。
KSはこれまですでに選んだデータセットと、
最も離れているデータを次に選ぶという手法です。
つぎの流れでデータを1つずつ選んでいきます。

  1. データセットの平均から最も『距離』の小さいデータを選択する
     
  2. まだ選択されていないデータそれぞれについて、すでに選択されたデータとの『距離』をすべて計算してその最小値を得る
     
  3. 最小値が最も大きいデータを選択する
     
  4. 選ばれたデータ数が目標値に達するまで 2. と 3. を繰り返す
     
このようにデータを選ぶことで、
なるべくばらついて分布しているデータを選べます。