データ準備

データ準備とは

データ準備は、流行りの食事の準備、つまり食生活を健康的にするよう自分を励ますために 1 週間の献立をすべて決めるプロセスとまったく同様に、データを予測モデリングに使用できるように準備するプロセスです。データ準備では、何らかの未加工の形式で保存されているデータを取り出して、機械学習アルゴリズムで効果的に使用できるように変換します。簡単に聞こえますが、このプロセスを複雑にする可能性がある要素がいくつかあります。

    1. 欠損レコードまたは不完全なレコード: 現実世界では、データセットに含まれるすべてのデータのデータポイントを 1 つ残らず取得するのは困難です。たとえば、ウェブログから抽出される特徴量が欠損する場合があります。データセットはライブデータから生成されますが、1 週間以上経過したログはアーカイブに移されるため、そのアーカイブから読み出す必要があるからです。具体的にデータがどのようになるかの例を次に示します。
    2. 不正な形式のデータ: データが特殊なファイル形式またはリポジトリに保存されているために、別の形式または場所への抽出が必要な場合もあります。適切な対処方法は、分野エキスパートに相談するか、ほかのソースからのデータを結合することです。これは、機械学習テクノロジがビジネスエキスパートの代わりになるのではなく、その役割を補完することを示すよい例です。
    3. 特徴量エンジニアリングなどのテクニックの必要性: すべてのデータを入手できたとしても、データ準備プロセスでは、モデルの精度と妥当性を高める追加コンテンツを生成するために特徴量エンジニアリングなどのテクニックが使用される場合があります。

データ準備が重要である理由

多くの場合、データ準備は、低品質なモデル(またはモデルなし)と、ビジネス上の本物の価値を引き出せる高精度で実用的なモデルとの違いをもたらします。未加工データを取得してアルゴリズムを適用するだけで予測結果を得るというやり方は簡単なため魅力的ですが、データセットから有益なインサイトを得るには、一般にある程度の準備が必要です。ほとんどのアルゴリズムでは、データを非常に特殊な形式にする必要があり、ここでデータ準備(および場合によっては形式の変換)が登場します。現実世界のデータセットの中には、値が欠損していたり、無効だったり、そうでなくても加工が困難または不可能な(つまり人生と同じようにごちゃごちゃしている)ものもあります。データが欠損していれば、アルゴリズムでそのデータを使用できません(当然ですね)。データが無効な場合は、アルゴリズムによって生成される予測の精度が落ちるか、誤解を招く予測になることがあります。適切なデータ準備を行えば、クリーンで十分に精選されたデータが生成され、より実用的で高精度な優れた予測になります。

データ準備 + DataRobot

データ準備は、データサイエンスツールのエコシステムの中で重要な位置を占めます。DataRobot の自動機械学習プラットフォームでは、直接的にも、ほかの一般的なツールとのインターフェースでも、多くの方法でデータ準備が円滑化されます。DataRobot へのデータのインポートは、.csv ファイルをドラッグアンドドロップするだけの手軽さです。技術に精通した方は、Hadoop や広く使用されている SQL データベースからインポートすることもできます。さらに技術に精通した方は、DataRobot の言語別の API を使用して、Pandas(Python)や R データフレームなどの一般的な形式を直接アップロードできます。DataRobot には、どのスキルレベルのユーザーにも適したインポートメカニズムがあります。 データを DataRobot にロードすると、最大量の適切なデータをアルゴリズムで使用可能にする自動変換など、データを改善するための複数のサービスが実行されます。その後、これらのアルゴリズムが「ハンガーゲーム」スタイルで競争させられます。最も精度の高いモデルのみが残るため、可能な限り最善の予測が確実に得られます。DataRobot では、欠損値も必要に応じて補完されます。追加の特徴量を手動で導出するためのグラフィカルツールも用意されています。