定義
データマイニング(Data Mining)は、コンピューターにたまった膨大なデータの中から、人が見つけきれなかった役に立つルールや隠れたパターン、未来を予測するサインを探し出す技術です。鉱山で鉱物を掘り出すように(マイニングには「採掘」という意味があります)、一見ガラクタに見える巨大な情報の山から、宝石のように価値ある知識を掘り出す作業なんです。
砂の山から金を掘り出す方法
毎日もらうレシートや、ネットの検索履歴、スマホの位置情報は、果てしなく積み上がっていく土の山のようなものです。山そのものはごちゃごちゃで役に立たなさそうですが、その中には「どんな人が雨の日に何を一緒に買うのか」といった役に立つルールが隠れています。
データマイニングは、こうしたビッグデータの土の山を、精密なふるいにかける作業です。スーパーでおむつを買ったお客さんがビールも一緒に買う、という有名な話(話が盛られているという指摘もあります)のように、一見関係なさそうな商品同士の買われ方のルールを見つけ出すのにも使われます。
人の目では、何億行にもなるデータの帳簿から関連性に気づくのは不可能です。でもコンピューターは、統計や分析のルールを使って隠れた意味のあるパターンを一瞬でつかまえます。
もう少し正確に言うと、隠れたパターンはどうやって見つけるの?
もう少し正確に言うと、データマイニングは、単なる検索や統計の集計表づくりとはまったく別物です。すでに知っている問いに答えを探すのではなく、何が隠れているのかもわからない状態から出発する探索作業なんです。
データマイニングには、大きく分けて4つの主な手法があります。1つ目は、似た特徴を持つお客さんをグループにまとめる「クラスタリング」。2つ目は、新しいデータがどこに属するかを見分ける「分類」。3つ目は、商品Aを買うときに商品Bも一緒に買う、といった関係を探す「アソシエーション分析」。4つ目は、普段とはまったく違う異常な行動を見つける「外れ値検出(異常検知)」です。
こうした技術のおかげで、金融会社はクレジットカードの不正利用をリアルタイムで見抜けますし、動画サービスは、あなたが好きそうな新しい動画を驚くほど的確におすすめできるのです。
機械学習とは何が違うの?
データマイニングの話になると、人工知能や「機械学習(マシンラーニング)」と混同されることがよくあります。この2つはいとこ同士のように近い関係で、道具も共有していますが、目指すところが少し違います。
機械学習の主な目的は、コンピューターがデータから学習して、「自分で未来を予測したり、人に代わって判断したりする賢いAIの頭脳」をつくることです。一方、データマイニングは、大規模なデータに埋もれていた人間が理解できる知識やひらめきを掘り起こすことに、より重点を置いています。
つまりデータマイニングは、過去から現在までの膨大な記録から新しい事実を見つけ出し、人がより賢く正しい決断を下せるように導く、羅針盤のような役割を果たしているんです。
よくある誤解
データマイニングは、検索窓にキーワードを入れて欲しい情報を探すのと同じことだ。
検索(クエリ)は、すでにある特定のデータを探す作業です。それに対してデータマイニングは、データ同士の間にどんなルールや関係が隠れているのかを探って、新しい知識を明らかにする作業です。
日常で出会う場面
コンビニで、雨の日には傘と一緒に特定のあったかい飲み物の売り上げが急に伸びるというパターンを見つけて、売り場の並べ方を変えます。
銀行で、お客さんがいつも決済する場所や時間帯とはまったく違う海外での不正な支払いを、決済の瞬間に見抜いて、カードの承認をブロックします。
つまり ひとことで
データマイニングは、膨大なデータの山からコンピューターのアルゴリズムで、隠れたパターンやルールという宝石を掘り出す技術です。