機械学習・AI

2020/01/28

データマイニングとは?できること、準備と手順、分析方法・活用事例など

高度情報化が進み日々大量のデータが生み出される現代では、データを加工・整形し、パターン認識や機械学習などの統計手法で解析することで有意な知識をとりだす「データマイニング」が利用される場面も増えてきました。

この記事では、「データマイニングとは何か」から始まり、よく使われる言語・ツール、分析手法や準備の手順、業界ごとの事例などを解説します。

データマイニングとは

データマイニング(Data mining)は、その名の通りデータ(Data)から有益な情報を発掘(mining)する技術や手法をあらわすデータ解析に関する概念です。コンピュータの計算能力が向上し、大量のデータ処理を容易に行える環境が整備されたことで、データの蓄積や流通が脚光を浴びるようになりました。

整理されていないデータから有益な知識を取り出す技術として機械学習など人工知能(AI)の発展とも深くかかわっています。分散処理やディープラーニングなど技術の発展により、近年ではIT以外の分野でも注目されるようになりました。

データマイニングで用いられる手法には、パターン認識、回帰分析、クラスタリングなどの解析手法があり、統計学や機械学習のアルゴリズムを利用してモデルを作成します。情報工学の理論をもとに、予測や異常検知、最適化など様々な目的・用途でデータの解析が行われています。

業務で扱うデータの量が大幅に増えていることで、企業にとってもデータマイニングは重要な意味を持つようになっています。データマイニングの具体的な定義や歴史について、以下で紹介します。

データマイニングの定義

データマイニングは、データ解析に関する用語としてビッグデータやデータサイエンスなどの言葉が登場する以前からもちいられてきた言葉です。データ分析のなかでも、特にコンピュータを駆使して大量のデータを解析するような手法を指します。

一般的なデータマイニングの定義として、「明示されておらず今まで知られていなかったが、役立つ可能性があり、かつ、自明でない情報をデータから抽出すること」、「データの巨大集合やデータベースから有用な情報を抽出する技術体系」などがあります。

そのようにデータマイニングは、膨大なデータを整理・解析することによって役立つ情報を抽出する技術を指すとされています。自然言語を扱うものを特にテキストマイニングと呼び区別することもあります。

データマイニングの歴史

データマイニングは、1989年頃に登場したデータベースから知識を発見する学問「Knowledge Discovery in Databases」が元となり学術研究が進められたと言われています。

1980年代にRDBとSQLが出現し、高性能な計算機が普及するようになった1990年代には、データウェアハウス(DWH)へのデータ蓄積とともに、蓄積したデータを活用するデータマイニングに注目が集まりました。

2000年代以降は、ITベンダーやアナリティクス企業がさまざまな形でデータを分析する手法としてサービス化や導入を進めています。

データマイニングで出来ること

膨大な情報を活用するデータマイニングでは、具体的にどのようなことが出来るのでしょうか。以下では、データマイニングで出来る3つのことを紹介します。

予測する

データマイニングで出来るのが、データと事象の関連性を見つけて特定の結果を予測することです。例えば、商品データや顧客の個人データといった蓄積された情報を分析すると、購入する確率が高い人や商品が売れそうな時期、人気が集まりそうな商品などが予測出来ます。

分類する

条件を設定して行う分類も、データマイニングで出来ることのひとつです。商品に興味がある人とない人を分類したり、興味がある人を特徴別にグループ分けしたりすれば、その結果をマーケティングなどに活かせる可能性があります。

関係性を見つける

データマイニングでは、これまで気付かなかったデータの関係性も見つけることが出来ます。例えば、同じ時期に売れる複数の商品データを分析することで、商品にどのような共通点があるかや、季節的な影響の有無などが見出せる可能性があります。

データの関係性を見つけることは、マーケティングの戦略を立てるうえでもプラスになるアプローチです。

データマイニングの準備

データマイニングを行うためには、データが必要です。データを収集・蓄積し加工するインフラ基盤を整える必要があります。それぞれの手順や内容について、ここで説明していきます。

データ収集

データの収集は、データマイニングをするうえで最初に検討する内容です。データマイニングの精度をアップするうえでは、大規模なデータの蓄積が欠かせません。

収集した膨大なデータを保管する場所として広く利用されているのが、データウェアハウス(DWH)やデータレイクなど情報を蓄積する際の基盤となるプラットフォームです。

データウェアハウス(DWH)とは

データウェアハウス(DWH)は、大量のデータを保管する倉庫(ウェアハウス)のような役割を果たす統合管理システムのことです。DWHには事前に定義された内容に沿ってデータが蓄積されます。

過去との比較を目的にデータを蓄積する場合、時系列に整理された大量の業務データを保存します。データの削除は行わないため時間と比例してデータ量が増大します。

画像や音声など非構造化データの保管にはデータレイクなどのプラットフォームを利用することもあります。

データマイニングとDWHの関係

統一されたフォーマットで業務データが長期間にわたり保管されているデータウェアハウスの情報は、データマイニングをするうえでも貴重な資源です。

データマイニングに特化したデータウェアハウスは、「過去のデータがそのままの状態で保管されている」などのさまざまなメリットがあります。

ちなみに、データウェアハウスがなくてもデータマイニングを行うことは可能です。現在ではデータ解析の目的や用途にあわせ、柔軟に情報基盤を組み合わせるなどデータ蓄積の選択肢も多様になっています。

データ加工

収集したデータにクレンジングと呼ばれる加工をすることも、データマイニングの準備のひとつです。欠損値や外れ値などのデータを除去してバラツキをおさえることでシステムでの分析がよりスムーズに出来るようになります。このプロセスでは、データ解析の作業がしやすいようにデータの形式を統一したり、データの重複がないように「正規化」の加工を施したりします。

データマイニングの種類

データマイニングには、おおきくわけて2種類のアプローチがあります。それぞれの特徴を、以下では簡単にまとめています。

仮説を検証するアプローチ

目的を持ってモデルを構築するような「統計分析」では、事前に立てた仮説をもとに需要予測や顧客の分類を行っていきます。回帰や決定木などを活用するこのアプローチでは、モデルのカギとなる目的変数を設定するために人間の力が不可欠です。

データマイニングといってもデータを入力すると自動的に新たな知見が得られるわけではありません。

仮説を用意したり適切な分析手法を選択したりして結果を導き出さなければならないため、データシステムについての深い理解とともに、統計分析の経験も必要です。

探索的なアプローチ

データマイニングには、データを起点として知識を発見するアプローチもあります。データ探索と呼ばれる手法では、有用なルールやパターンなどの解析による発見を目的とします。マーケット・バスケット分析でのアソシエーション分析などが代表的な手法です。

このアプローチの特徴は、人が目的変数を設定する必要がないところです。例えば「ディープラーニング」は、人工知能などの機械(コンピュータ)を利用してデータマイニングを行うアプローチです。

ディープラーニングでは、蓄積されたデータをコンピュータが自分で学習し、データの相関関係などを見つけ出します。人間には難しい複雑で高度な計算や微小な関連性を発見できる点がメリットといえます。

データマイニングの分析手法

データマイニングをするときには、統計解析や機械学習などの手法によってデータを解析します。ここでは、クラスタリング、ロジスティック回帰分析、マーケット・バスケット分析の3つの分析手法を紹介します。

クラスタリング

クラスタリングは、「健康意識が高い」や「時間にゆとりがある」などの特徴から調査対象をクラスター(集団)にわけ、マーケティングなどのアプローチを考えていく手法です。クラスターというグループにわけることで、どのような訴求が効果的かがより把握しやすくなります。

ロジスティック回帰分析

ロジスティック回帰分析は、YESかNOで答えられる質問を用意してデータを分類し、得られた結果をもとに予測を立てていく手法です。顧客の行動などをYESかNOで分類していくことで、商品を購入してくれる確率や予想される1人当たりの購入数などが割り出せます。

マーケット・バスケット分析

データの相関性を見つけることで新しい発見が得られるのが、マーケット・バスケット分析です。この手法では、データをもとに「どのような商品が一緒に購入されているか」などの相関関係を見出していきます。一緒に購入される確率が高い商品がわかれば、マーケティングにも役立ちます。

データマイニングの言語・プログラム

データマイニングでは、いくつかのプログラミング言語・プログラムがよく用いられています。ここでは、無償で提供されているオープンソースのR言語、Julia 、OpenCVの概要や特徴について紹介します。

R言語

R言語は、オークランド大学のロバート・ジェントルマンとロス・イハカによって生み出されたプログラミング言語です。この言語は、データ解析・統計プログラミングのために開発されました。

R Development Core Teamが開発を引き継いだこの製品は、数々の企業で導入されています。ベクトル処理などのさまざまな機能を持つのが、R言語の特徴です。

Julia

プログラミング言語のJuliaは、マサチューセッツ工科大学のアラン・エデルマンが同僚とともに開発をしました。この言語は、汎用プログラミング言語としても広く活用されています。

計算科学や数値解析などに対処が出来るJuliaは、人工知能の記述言語としても高く評価されるようになっています。

OpenCV

OpenCVは、コンピューターヴィジョン向けのライブラリです。この製品はアメリカのインテルが開発、リリースをしました。画像処理やオブジェクト追跡などのさまざまな機能があるOpenCVには、データマイニングに役立つ機械学習の機能も搭載されています。

商用目的で使われるケースも多く、データマイニングでも広く活用されているライブラリです。

データマイニングのツール

データマイニングを行う場合、オープンソースのツールのほかにもいろいろなパッケージソフトウェアが利用出来ます。データマイニングの定番のソフトウェアが、ここで紹介するSASとSPSSです。

SAS

SAS(Statistical Analysis System)は、アメリカのSASインスティチュートが開発したパッケージソフトウェアです。同社のSASは最新のアルゴリズムを採用しており、世界の企業から人気を得ています。データの準備がスピーディーに出来るなど、データマイニングをスムーズに行えるような機能が搭載されているのが、こちらの製品の特徴です。

SPSS

IBM社が開発した統計解析ソフトウェアのSPSSも、データマイニングで多く用いられている製品です。SPSSには、データマイニングに特化したSPSS Modelerや統計解析スタンダードソフトウェアのSPSS Statistics、共分散構造分析ソフトウェアのSPSS Amosなどがあります。SPSSの製品はアメリカではとくに人気が高く、さまざまな企業が導入をしています。

データマイニングの事例

データマイニングは、実際のビジネスではどのように活用されているのでしょうか。ここでは、6つの業種をピックアップしてそれぞれの実用例について紹介します。

通信

携帯電話会社などの通信サービスの企業は競争が激しく、ビジネスでも他社に後れを取らない戦略が求められてきます。このような業種の場合、顧客のデータをデータマイニングに活用することで、今後の傾向を予測しながら魅力的なサービスやキャンペーンを考案出来る可能性があります。

保険

保険を扱う業種では、不正行為や競合他社の動向などのさまざまな領域に気を配る必要があります。このような業種の企業では、課題が複雑化しがちです。商品や顧客情報などの膨大なデータをデータマイニングで分析出来ると、顧客対応からリスク管理までを一括でマネジメントしやすくなります。データマイニングの結果は、新商品のプラン設計などにも活用が出来ます。

教育

学校や塾などの教育に携わる業種では、学生のテスト結果などをデータとして活用することでさまざまなメリットが期待出来ます。例えば、成績をもとに授業内容を考えたり、課題の達成度の予測を立てたりして、学生の成績アップに役立つような戦略が講じられます。

製造

製造の業種では、需要と供給のバランスを意識することが求められます。データから予測が立てられるデータマイニングは、このようなバランスを保つうえでも役立つアプローチです。生産ラインの効率性をチェックしたり、設備の耐久性などを考慮しながらメンテナンスのスケジュールを立てたりすることも出来ます。

銀行

銀行などの金融の業種では、日々膨大な数の取引が発生します。取引状況をデータマイニングに活用出来れば、不正行為をいち早くチェックしたり、今後のリスクを予測したりすることも不可能ではありません。見込み顧客にマーケティングを行ううえでも、データマイニングの結果は役立ちます。

小売

小売の業種では、顧客へのマーケティングで広くデータマイニングが活用出来ます。顧客データや購買データなどをもとに新しい販売の手法を考えたり、売り場の設計を見直したりすれば、売上アップにも役立つ可能性があります。販売予測に基づいたキャンペーンなどが実施出来るようになるのも、データマイニングを行うメリットです。

関連記事Related Posts