データマイニング|【多変量解析・統計学・統計解析】
データベースからの知識発見
コンピューターの大容量化とネットワーク環境の整備により大規模データベースの構築が可能となりました。
データベースに格納されたデータは活用されない限りコストでしかありません。
医薬品や保健衛生、健康管理に関する情報は、人類全体の福祉向上の観点からも広く有効利用されるべきです。
ビジネスの世界では、近年の競争激化の時代、それらの情報の効果的な利用なくしては企業が生き残ることすら危うい状況です。
データベースには何が潜んでいるのか、データベースから有益な情報を取り出すための方法論の必要性が増してきました。
データベースからの知識発見が注目を集めつつある所以です。
データマイニングとは
マイニングは、金鉱を掘り当てるという意味の動詞mineの名詞形です。
近年、企業などのサーバーには大量のデータが蓄積されているのが普通です。
データはそこにあるだけでは価値はなく、活用しなければいけません。
データマイニングは、そのような大量のデータから金にも似た重要な情報を掘り当てようという意味の言葉です。
データマイニングの定義として断定的なものはありませんが、「大規模データベースから有益な情報を取り出すための一連の方法論で、特にビジネスの世界で注目されているもの」と定義することができます。
データマイニングは、統計学、データベース技術、人工知能、機械学習、パターン認識、情報処理などの学問分野、そして金融、マーケティング、医学など種々の応用分野の境界に位置しています。
データマイニングは、
@分析目的の設定
Aデータベースの選択、構築、統合
Bデータの前処理
Cデータの要約、縮約
Dデータマイニング手法の選択
Eデータマイニングの実行
F分析結果の表示と活用
の手順で行われます。
データマイニングと従来の統計学データ解析との最大の相違点は、データの量もさることながら、データマイニングで用いるデータはある目的をもって集められたものではなく、とにかく現在集められているという点です。
金鉱はめったにあるものではありません。米国の西部開拓時代、ゴールドラッシュで一番儲けたのはジーンズメーカーだったことを忘れてはいけません。
データマイニングとは、膨大なデータ(データの山)の中の宝(情報、知識)を掘り出すことにちなんで、1990年代中頃から用いられるようになった用語です。
科学者の目的の一つは発見です。発見の方法として、実験、観測・記録、調査により得られたデータから規則、パターン、知識を見つけ出す統計学がありますが、その歴史は古いです。
近年、データマイニング(data mining)ということばをよく耳にするようになりました。
また、データマイニングからテキストマイニング(text mining)、Webマイニングなどの言葉が派生しています。
データマイニングの成功事例は、数多く報告されています。
例えば、次のような例が報告されています。
スーパーやコンビニでは、顧客の履歴データベースから商品を購買する際の商品の組み合わせに関するパターンを抽出し、得られた知見に基づいて商品の陳列を見直して売り上げを上げた、クレジットカードの使用履歴から不正使用に関する情報を見つけ出し、不正使用を未然に防止した、病院におけるカルテのデータベースから病気診断の知識を見つけ出した、などです。
従来の統計学やデータマイニングは、データを媒体とした情報・知識を獲得する分野です。
統計学では、用いるデータのサイズが相対的に小さく、標本データに基づいた母集団の性質に重みをおいているのに対し、データマイニングはコンピュータの機械学習技術に力点を置いて大量のデータを対象としています。
データマイニングでは、従来の統計的データ解析理論および技法を基本的な技法としているのが現状です。
データマイニングのツール
大量のデータを扱うには、ツールが必要です。
そろばん、電卓などのツールの一種ですが、ここでいうツールとはコンピュータに実装された専用のソフトを指します。
ツールを用いたデータマイニングは、データの構造やデータ解析の目的に適した方法を選択し、その条件にあわせて整理・加工したデータを投入すると、解析結果が出力されます。
ユーザーにとっては、この出力結果を正しく読み取り、分析することが非常に重要です。
データ解析・マイニングの専用ソフトは数十年前から研究開発が行われ、数多くのソフトが市場に流通しています。その中で最も広く知られているのがSAS、SPSS、S言語などです。
SAS、SPSSの歴史は古く、開発当時は、1つの大学・研究機関が1台の大型汎用コンピュータを持ち、管理者が機械の使用権およびスケジュールを管理する時代でした。
当時の大型コンピュータは、大型といっても今日のパソコンより性能が低いものでした。SAS、SPSSは開発当時の歴史的背景もあり、異なる角度からデータ処理と解析を繰り返して行うのには向いていませんでした。
またデータを視覚化するグラフィックス環境も貧弱でした。
その短所を克服し、データ処理を探索的により効率的に行う環境を提供するため、1980年代にデータ解析・処理専用のソフトS言語(S-PLUS)がアメリカのATTベル研究所において開発されました。
S言語は、個々のデータ処理プログラムを1つ1つのパーツとして見なし、それらを組み合わせることにより、複雑な解析・処理を行うことができるように設計されています。
また開発当時は、SAS、SPSSよりグラフィックス環境が格段に優れていました。
データマイニング機能をそろえたSAS、SPSS、S言語のパッケージは値段が高く、個人ユーザーが簡単に使えるものではありません。
コンピュータの普及に伴い、データ処理・解析の必要性が高くなり、Excelのような個人でも手軽に利用できる表計算ソフトが開発されました。
しかし、表計算ソフトは大量のデータを本格的に処理・解析するのには向いていません。
一方、S言語並みの機能を持つフリーソフトRが普及してきました。
Rは、ニュージーランドのオークランド大学統計学科のRoss Ihakaと、アメリカのハーバード大学生物統計学科のRobert Gentlemanにより開発がはじめられ、1997年からは多くの賛同者が加わり、開発が続けられているオープンソース方式のデータ解析・処理の専用ソフトです。
Rは見かけ上S言語との差異が少ないことから、S言語のクローン、あるいは方言であるといわれています。
Rは、主なデータ解析ソフトSAS、SPSS、S言語やExcelなど、プログラム言語CやFORTRANなど、データベース管理システムSQLなどとのインタフェイスが実装されており、パッケージの作成やデータ渡しが容易なしくみになっています。
また、UNIX、Windows、Macなどの主なOSに対応するバージョンがあります。
データマイニングの背景
大容量記憶媒体の低価格化、計算機処理能力の向上、情報通信技術の急速な進展の効果があいまって、ネットワーク社会におけるデータの収集や活用が、近年、各段に容易になりました。
実際、計算機で処理できる多くの情報がインターネットを通して世界中を飛び交い、これらの情報に誰もがいつでも自由にアクセスできる時代に突入しました。
現在のWebの総ページ数は100億ページに達しており、多くの人が使っている検索エンジンGoogleは8,000台のPCを使いクラスタコンピューティングにより7,000万件/日の検索を、1件あたり0.5秒で処理しています。
このような情報化社会では情報の価値が極めて重要になり、量が質に変化します。データマイニングは時代の要請に応えるべく生まれてきた新しい技術です。
データマイニングの定義
データマイニングは、シーズとしての技術面からも、ニーズとしての応用面からも多くの注目を浴びています。
20年前のエキスパートシステムの到来、その後の過度の期待と失敗を思い出させますが、データマイニングはそれとは事情が違い、確実に情報化社会の基盤技術として定着するように思われます。
両者とも知識を全面に出している点では同じですが、エキスパートシステムが人間の専門家の頭にある知識の抽出と資料を目的としているのに対し、データマイニングはデータに内在する非明示的な知識を発掘し、利用しようとする点が異なります。
雑多な鉱石を含む鉱脈から貴重な金を掘り当てるのが難しいように、最初から掘り当てたいものがどこにあるのか、あるいは穏当にあるのかがわかっているわけではありません。
KDD
データマイニングはKDDと呼ばれることもあります。
両者を区別する場合には、データマイニングはKDDの1ステップであるマイニングの部分を意味します。
Fayyadが述べた「KDD is the non-trivial process of identifying valid, novel, potentially useful, and ultimately understandable patterns in the data」が一般に受け入れられています。Valid(たまたま見つかったのではなく、汎化能力が高く)、novel(まだ我々が知らない新規なもので)、useful(有効であって実際に使うことができ)、understandable(我々に理解できる)知識を発掘することは至難の業です。
要は実行可能な知識でなければなりません。
これらの基準を満たすかとうかは、実際に知識を使う人でなければわかりません。
計算式で実際にできることは、物理的なモデルを設定し、知識の表現型式と、データあるいは表現形式から計算できる知識を探求することです。
具体的には、データに内在する規則(データの一部を説明する規則)や特徴的なパターン(頻度や識別能力の高いパターン)を発掘します。発掘のための技術としては、従来からある統計やデータベース技術のほかに、人工知能、特に機械学習の技術が融合して使われます。
データマイニングはネットワーク社会の到来がもたらした情報洪水の諸問題に対する有望な解決策となることが期待されています。
モデリングの観点からみれば、特定の目的だけに集められたものではない大量のデータから、目的に沿ったモデルを掘り起こす技術とみることができます。
関連記事