富士通研究所は9月7日、5000万件を超える大規模データからの機械学習による予測モデル生成を、これまで1週間以上の時間を要していたのに対し、新たに数時間で高精度に実現する技術を開発したと発表した。
同技術を用いた予測モデルにより、大規模ECサイト会員の退会抑制や設備の故障対応の迅速化といった改善をタイムリーに実現できるという。同社では、ビッグデータを活用する富士通Analyticsソリューションなどでの実証実験を通じ、本技術の2015年度中の実用化を目指す。
ECサイトのアクセス履歴から、いつどのサイトにアクセスした会員が退会しやすいかを学習し、該当する会員を早期に検出することで退会を防ぐ対策を施したり、日々の詳細な電力消費量のデータから増減パターンを学習し、電力量が増える時期や時間帯を予測することで発電量/送電量/蓄電量などをきめ細かく制御して電力コストを低減する。大量データからビジネスに役立つ情報を抽出するための高精度な予測には、機械学習を利用した予測モデルの生成が有効とされる。
この機械学習には特性の異なる多数のアルゴリズムがあり、また高精度な予測を得るためには細かな動作条件の調整が求められるため、有用な予測モデルを生成するには、アルゴリズムと動作条件の組合せを見つけ出す必要がある。
しかし、アルゴリズムや条件の全ての組合せは膨大な数となってしまい、網羅的な機械学習は現実的な手段とはいえない。そのため、従来は分析者が経験に基づいてアルゴリズムと条件の組合せを決定していたが、分析者のスキルによって結果が大きく変わってしまう課題がある。限られた時間で自動的に高精度な分析結果を導くことが求められていた。
こうした課題に対し富士通研究所は今回、少量のサンプルデータでも高精度な予測モデルを生成可能な機械学習結果の推定と自動チューニングの技術を開発し、オープンソースソフトウェア(OSS)の並列実行基盤ソフトウェアであるApache Spark上で試作し、検証した。
開発技術概要(富士通研究所提供)
開発した技術の特徴は以下の通り。
機械学習の実行時間と予測精度を推定する技術
代表的な機械学習のアルゴリズムに関して、データ件数やデータの特徴を表す属性の数を変えながら実際の機械学習の実行時間を計測し、これらの実測値を基に実行時間の傾向を表す実行時間モデルを構築。実行時間の実績に基づいた実行時間推定の補正も実施して推定精度を向上している。
このモデルでは、過去に実施したアルゴリズムや動作条件の組み合わせと、得られた予測モデルの精度をデータベースである性能ナレッジに記録しておき、新しい組合せの予測精度を推定する。これにより、少量のサンプルデータでも予測精度を損なわない必要最小限のデータ量を見極めることができる。実行時間と予測モデルの精度の推定により、高速かつ高精度な予測モデルの生成を実現した。
これまで1つの機械学習アルゴリズムの中で予測精度を推定する技術は存在したが、複数の機械学習アルゴリズムと複数のデータ量に対して適用する技術はなかった。同技術は、機械学習するたびに、その時の条件(アルゴリズム、データ件数、属性数、インフラ情報など)と実際の実行時間を記録して推定に反映するので、使えば使うほど正確な推定ができるようになる。
機械学習アルゴリズムを自動的にチューニングする制御技術
あらゆる組合せの候補の中から時間効率の高い学習を選び出し、効率的かつ並列に学習を繰り返す技術。従来はどの順番でどの組み合わせの機械学習をすればいいか決め手がなく、分析者のノウハウに頼った手探りで分析が進められてきた。
同技術では、実行時間と予測精度の推定結果を総合判断し、予測精度が上がる可能性が高く、かつ短時間に実行が終わるアルゴリズムと動作条件の組合せを複数抽出して、並列に実行する。
これにより、実行時間を考慮に入れた最適な順番でアルゴリズムを実行することができ、短時間で高精度な機械学習を選択することが可能となる。開発手法は、自動的に、より効果の高い組合せを集中的に選ぶように制御されているため、分析者のノウハウに依存しない。
機械学習アルゴリズムを自動的にチューニングする制御技術(富士通研究所提供)
この技術を用い、社内実験で5000万件規模のデータを12CPUコアのサーバ8台で処理したところ、従来、1週間程度かかっていた精度96%の予測モデルを、同技術では2時間強で得られることを確認した。また、3000万件規模のウェブアクセス履歴のデータを用いたアクセス分析において、この技術を用いた機械学習の適用が可能であることを確認した。
同社では、首都圏の世帯を対象にしたエネルギー需要予測や、数十万人規模のサービスにおいて素早く退会の兆候を予測するなどのサービスが実現できるとしている。