Redmond 生活:Azure Machine Learning でマーケティング
・
さて引き続き米国本社にてインターンシップ中の当方なのだが、開始から 3 か月目にしてなんと初めての、米国本社での仕事に関する話なのである。
ただ、この話どこまで書いて OK なのやら、正直よくわからない。たぶんインフラに関することは問題ないだろうが、オペレーションに関することは少しぼやかすかもしれない。そもそも当方は日本でのマーケティングに生かすべく、当方のコンセプトを本社システムに埋め込んで帰ろうとしているわけであり、これから日本でやるつもりのことのネタばらしをしすぎても、あまりいいことはないのである。
ビッグデータの社内プラットフォーム "COSMOS"
現在コンシューマー系のデータのほとんどは COSMOS と呼ばれるデータストアに格納されている。これは社内で何年も運用実績のあるエクサバイト クラスの分散ストレージで、実は最近 Azure Data Lake として提供されたサービスの元ネタである。
マイクロソフトは膨大な数のユーザーに Windows、Office、Xbox、MSN ほか様々な コンシューマー製品およびサービスを提供している。ビジネスごとにそれぞれ得られる情報、必要な情報は異なるし、常に変化する。また気の遠くなるような数のデータが秒単位で集まるわけでもあり、かっちりとした管理向きな RDBMS では対応できないのである。膨大な量ということでこのネーミングは「宇宙」から来ているのであろう。ビジネス系のデータは GMED (Global Marketing Execution Database) という別のストレージで管理しているが、近い将来 COSMOS への統合予定である。
そういえばふと思い出したのだが、当方が小学生の中学年次の休みに、COSMOS という宇宙科学の特番があった。図鑑少年だった当方は、宇宙系も既にそこそこの基礎知識は持ち合わせていたのだが、時は商用インターネットなど影も形もない時代、やはり動画の迫力は段違いであった。当時我が家に導入したての「ナショナル マックロード」で連日録画し、何度も何度も、繰り返して見ていた記憶がある。当時の当方にとっては、COSMOS はそれぐらい衝撃的だった。その頃の知識と情熱は、将来何の役にも立たなかったが。
ちなみにこのマックロード、3倍モード= 6時間録画が可能になった初めてのモデルなのだが、びっくりするぐらいデカい。今時のフラットベッド スキャナー付きインクジェット プリンターよりさらに一回り大きい、超重量である。おまけにカセットの入り口は前ではなく天井のフタが持ち上がる形式だったので、これまた当時は盛大な奥行きを持っていた箱型のテレビの上に置くしかなかった。またマックロードにはリモコンがついていたのだが、このリモコンがなんと有線なので、常にテレビの上からコードが垂れ下がっている状態で、じゃまでしょうがなかったことを記憶している。
なおほぼ同じ時期に、わが福井県でも「機動戦士ガンダム」の最初の放映がなされていた。福井県では全く話題になっていなかったこのガンダムも、リュウさん特攻の回で失念した以外は全部録画していたという、福井県においては稀有な小学生であった。再放送がなされる頃には急に話題になり皆がガンプラづくりにいそしむようになっていたが、元来飽きっぽい当方は、そのころにはほぼ興味を失っていた。唯一購入したガンプラは「ビグザム」なのだが、色選びもなんだか面倒だったので「ガンダムカラー」という名称の小瓶に入った 3 色セットのプラカラーをセットで購入。しかし、いかんせんビグザムの色がもともと地味すぎて、塗っても下地のプラスチックの元の色とあんまり変わらず、余計に楽しくない。明らかに当方の選択ミスなのであるが、当方のガンダムへの関心はここにきて完全に潰えた。大人になってもガンダム文脈でブログを書ける同僚のようには、思い入れは維持できなかったのである。しかし、まわりのエバンジェリストたちのガンダム好きの多さを考えると、ガンダムとデベロッパーには相関関係があるのだろうか?となると、当方が 1 年でガンダムに飽きたことと 4 年でデベロッパーをやめた事実にも説明がつくのかもしれない。
COSMOS を説明するだけでこんなに脱線してしまった。記憶力に全く自信がないくせに、どういうわけか、こういうくだらない事は次から次へと引き出せるのである。メモリーの無駄遣い甚だしい。できればオーバーライトしたいものである。
なお、先にも述べたように COSMOS はビッグ データのための分散ストレージであるので、このままでは気軽には使えない。そこで Dyrad というプログラミング モデルの上に SCOPE (Structured Computation Optimized for Parallel Execution) と呼ぶ層をかぶせて、SQL ライクな言語での操作をできるようにしている。
ちょっと古い図だが
・
この SCOPE を通じて日々サブシステムやマシン ラーニング モデルへデータを投げているのである。SCOPE もまた Azure Data Lake 上で U-SQL として引き継がれている。
Azure Machine Learning による行動特性モデルの構築
さて、当方のプロジェクトはビジネス系データを対象としているため、COSMOS ではなく GMED のほうである。こちらはリレーショナル ベースのアーキテクチャーになるが、当方のプロジェクトでは B2C のような超大規模データでの即応性を求めているわけではないので、移行後も影響はないはずである。むしろターゲット データが増えることで、今後より精度が増すはずだ。
当方は、ここに眠る膨大なデータから、ユーザーの行動特性と属性の相関を見出して、適切なマーケティング メッセージを配信しようとしている。どういう特性と属性を狙っているのかは企業秘密なのだが、最終的には、完全なる自動化を目指している。もちろん、利用するテクノロジーは Azure Machine Learning である。
マイクロソフトは長らくマス マーケットを対象とした製品でビジネスを構築してきた。これは今も変わらない。Windows や Office をはじめとした製品は汎用性を高くしコストを下げることで市場を切り開いてきたのである。現在はオープンソースやパブリック クラウドの普及によって競争環境が変わったが、そもそもマイクロソフト製品はプロプライエタリ ソフトウェアの世界においては汎用で低価格が売りなのである。
しかし、先の競争環境変化、および変化のスピードが加速度的に上がり続ける中で、汎用製品パッケージの定期的なリリースというモデルが成立しづらくなってきた。マイクロソフトも CEO の交代と合わせて、テクノロジーそのものを常に何らかの形で売っていく方向に切り替わってきているのである。そうなってくると、我がデベロッパー エバンジェリズム統括本部の出番である。この本部は技術普及の最先鋒として活動しているのである。
そこで問題なのが、売り物の粒度が小さくなるほど、ニーズが細分化されることである。粒度が大きければ、たとえばパッケージである "Microsoft Office" ならば「オフィスワークなら何でもできる」でだいたいウソはなくなるのだが、単体製品しかなかった場合、商店街のチラシを作りたい人に Word を勧めるのか、PowerPoint がいいのか、はたまた Excel が向いているのかはかなり悩ましい問題である。逆に想定外の方向から、たとえば Excel を方眼紙のように使う猛者も出てくるわけで、誰が何にどんな関心を持つのか、特にいかようにでも料理のしようがあるテクノロジーの世界において、ニーズの判定はとても難しいのである。
そこで当方のプロジェクトは、Machine Learning によってこの判定を行おうとしているのだ。データは手元に膨大にある。しかしもともとそんなことを想定して集めているわけではないので、つまりそのままでは解析に使えない。またテクノロジー単位で考えれば、関心を持つはずのユーザーが必ずしもマイクロソフトのデータベースに足跡を残すタイプであるとも限らないので、つまり取りこぼしも多いはずである。この辺りを解決するための分析モデルを作るのが当方の仕事であった。そして実はついに本日インターンシップの最終日を迎えてしまった。これで本社を離れてしまうのだが、本社のデータ アナリストからはモデル テストの進捗を適宜教えてもらうことになっているし、重要なポイントではディスカッションにも参加したいと思っている。どのみち日本が初期の実験台になるはずでもあるし。
と、長くなってしまったので本日の投稿はここまでである。現在進行中であるプロセスや適用するアルゴリズム、結果などについては、もう「Redmond 生活:」ではないが、追って当ブログにて紹介していきたい。
@hirokome on Twitter