新人でも乗客をキャッチできるようにタクシーの乗客予測モデルを作成
日本マイクロソフトでは、Azureを利用してデータ活用を思考されている顧客企業にデータサイエンティストやソリューションアーキテクトが技術的な支援を実施することがある。大内山氏も実際にそうした支援活動を行う1人。外資系IT企業でシステムエンジニアやデータ分析コンサルタントを経て、現在は日本マイクロソフトでクラウドソリューションアーキテクトをしている。
例えばデータ分析活動を行う場合、主に8つのフェーズで構成されることが多い。ただし、この8段階はウォーターフォール的に上から下に流れるというよりは、必要に応じて行き来を繰り返すアジャイル型であるという。
最初にあるのが「ビジネスの理解」。データ分析はやみくもに進めるだけでは確かな効果は得られないことが多い。ビジネスの背景を知り、どのような課題があるかを把握し、何を目標にするのかをきちんと見定めていく必要がある。
大内山氏は架空のシナリオとしてタクシー会社の例を解説する。このタクシー会社では売上が伸び悩んでいる。特に巡回における各ドライバーの経験値の差が大きく、経験の浅い新人ドライバーの顧客獲得率が低い、というビジネス上の課題があったとする。
そこで、その「経験の浅さ」をITによって補完できないかと考えたとする。その実現に向けて複数出されたアイデアのうち、実現性、将来性および開発コストなどを鑑みた結果、機械学習を用いてタクシー巡回エリア内の乗客期待数を予測し、かつ、各ドライバーへ予測結果を提示するような仕組みを最初のステップとして開発する。なお、次ステップ以降では乗車距離や最適ルートなどを考慮した需要予測だったり、ゆくゆくは顧客の顔および行動認識による異常検知など、本ステップを土台とした将来的な展開案を考えておくことも推奨している。
方針が決まったら、実際のデータ分析作業へと進む。まずはデータを顧客から受領する。今回の例ならタクシー運行ログが1年分で約26GB、支払ログが1年分で約18GB。これらの置き場所となるのがクラウドのストレージだ。Azureの汎用的なオブジェクトストレージとしてよく知られているのは「Azure BLOB Storage」。最近ではこの進化形として、並列分散処理やビッグデータに最適化した「Azure Data Lake Storage」がプレビューで公開されている。
データを受領したら、次はデータの理解。「基礎分析」とも呼ばれる。データの内容を見ながら、要件の理解とデータの過不足を確認する。大内山氏によるとPower BIを使うことが多いという。
Power BIはデスクトップ版「Power BI Desktop」のほかにSaaS版「Power BI Service」もある。いずれもExcelを扱うようにすぐに利用できるのが特徴だ。ほかにも大規模向けには「Power BI Premium」、オンプレミスのレポート用に「Power BI Report Server」、アプリケーションに組み込むための「Power BI Embedded」がある。要件に応じて使い分けるといいだろう。
基礎分析の結果を利用して、分析設計として本分析に向けた様々な詳細事項の定義を実施していく。具体的には分析スコープ、データ加工方針、外部データを利用する場合の種類や取得方法など。タクシー会社の例なら、使用するデータは1年分、分析対象となるエリア、需要予測モデルは100m四方ごとの乗車人数予測といった具合だ。さらに、データの加工方針やクレンジング条件、または利用する外部データの具体的な情報が含まれることもよくある。いずれも顧客と一緒にPower BIのレポートなどを眺めながら、合意形成をしていくことが重要としている。