楽天技術研究所におけるウェブマイニング
『楽天技術研究所におけるウェブマイニング』
楽天株式会社 執行役員 兼 楽天技術研究所長 森正弥
■はじめに
こんにちは。楽天技術研究所の森正弥です。この度、楽天のテクノロジーの裏側をいろいろご紹介していくコラムを書いていくことになりました。最近、テクノロジーカンファレンス2009[1]や研究開発シンポジウム2009[2]など、オープンに情報交換をさせていただくイベントも増えてきたのですが、「もっとより身近な姿を皆様にご紹介していきたい」という気運が弊社の開発部の中でも高まってきました。今後、さまざまなメンバーにてコラムを執筆していきます。ご愛顧のほど、よろしくお願いいたします。
■本日は「ウェブマイニング」
「自由にコラムを書いてください」というお話を社内で受けまして、何を書こうかちょっと悩みました。楽天技術研究所が提唱している未来ビジョン「サード・リアリティ」のお話や、あるいは研究開発シンポジウム等の最近、力を入れている産学連携の施策群について書こうかとも考えましたが、楽天技術研究所の研究でも中心となっているテーマである「ウェブマイニング」について、一度古典的・教科書的に整理を行おうと思います。
ウェブマイニングとは、その名前のとおり、さまざまな情報があふれているウェブから、役立つ情報を掘り出そうという試みです。ウェブを巨大な知識の宝庫と捉え、多数のサイトの情報をまとめるアグリゲーションシステムや、掲示板やブログ、レビューの情報から意見・評判を抽出するシステム、コミュニティやSNSサイト、各種Eコマースサイトからの人間や商品の関係性を抽出するシステムなど、近年多数の研究者により多くの研究が行なわれています。データベースや自然言語処理、データマイニング、機械学習等の分野に、サーチやレコメンデーション、パーソナライズ、さらにはマルチメディア解析など、多くの領域とも関連しつつ、日々発展しつつある、非常にエキサイティングなテーマです。
■特徴と悩み
ウェブマイニングは、ウェブから役立つ情報を抽出するわけですが、そこにはウェブ特有の特徴と悩みがあります。
まずその量とリアルタイム性の問題です。
情報爆発という用語もありますが、現代は多種多様かつ大量の情報が氾濫しており、日々それが増殖しています。ウェブマイニングではウェブ上の大量のページを収集する必要があることが多く、収集や解析に多くの時間がかかります。さらにそのデータがリアルタイムに更新されていくため、解析用のデータとして常に不安定な状態であることが避けられません。どうやってデータを収集し、マイニング対象のデータとして特定していくかは大きな課題です。
また、質の問題もあります。ウェブの各サイトは、いわゆるデータとしてきちんと構造化された形をしておらず、様式はばらばらです。そもそもどこの部分がデータの項目を定義したものであり、どこの部分がデータであるか、さらにはどこの部分はデータでないのかの定義もサイトにより違います。テキストだけでなく、動画像等のマルチメディアコンテンツが含まれて入ることもあります。広告が多く入り込んでいるサイトもあります。また、当のデータに属する部分も、いろいろな人・組織が作っているため、内容に関する視点もばらばら、品質もばらばらであり、信憑性もそれぞればらばらです。
このようなウェブのデータを効率的に集め、分類しながら、目的に沿ったデータを抽出し、集まったデータから更に統合したり、解析したり、関係性を分析したりすることで、マイニングを実施していきます。
■ウェブマイニングの分類
いまや古典的な定義になってしまうのかもしれませんが、ウェブマイニングは対象や得られる結果によって、次の3つに分けられます[3]。
- ウェブそのものの構造がどのようになっているか解析し、情報閲覧・検索に役立てる(ウェブ構造マイニング)
- ウェブを用いるユーザーやコミュニティの特徴・行動を分析し、サービスの最適化・改善に役立てる(ウェブ利用マイニング)
- ウェブ上のデータ・コンテンツの中身を評価し、それをサーチ、レコメンデーション、コンテンツマッチに役立てる(ウェブ内容マイニング)
ウェブマイニングという用語が出始めたのは1990年頃。そのときは、ウェブ構造マイニングという意味でウェブマイニングという言葉を使うのが主流でした。今は、ウェブ利用マイニング・ウェブ内容マイニングまでその意味を広げてきています。
■ウェブ構造マイニング
ウェブそのもののコンテンツ構造がどうなっているかを解析するウェブ構造マイニングは、主に、ウェブページ間を結ぶリンクによって構成されるグラフ構造に注目し、関連ページの発見や重要ページのランキング、グラフ構造のモデル化等を目指します。
検索エンジンサービスを提供しているグーグルが検索アルゴリズムとして採用しているページランクは、その古典的代表例です。ページランクでは、検索結果のページをその重要度に応じてランキングするために、ウェブページ間を結ぶリンクの関係を解析し、独自のスコアリングを行なっています。
■ウェブ利用マイニング
ウェブを用いるユーザーやコミュニティを分析するウェブ利用マイニングは、主に、ウェブサイトを運営する企業でのマーケティング目的で用いられることが多いです。
ウェブを利用するユーザーやコミュニティの動向を解析し、そこから得られる知見より、自社のサイトで提供しているサービスを改善したり、最適化したりします。一般にウェブマイニングは、ウェブに公開されているデータをマイニングすることと理解されることもありますが、ウェブ利用マイニングは、ウェブに残されたユーザーやコミュニティの情報だけでなく、そのウェブサイトへのアクセスを通して蓄積された内部のログやデータに対しても行なわれます。ウェブ利用マイニングの研究例としては、SNSでのコミュニティデータの解析やソーシャルグラフの解析等が一般的です。
■ウェブ内容マイニング
ウェブ上のデータ・コンテンツの中身を評価し、それをサーチだけでなく、レコメンデーションやコンテンツマッチ等のさらなる高度情報サービスにまで役立てようというのがウェブ内容マイニングです。
レコメンドやコンテンツマッチでは、単純なアルゴリズムによるシステムから、非常に高度なものまで多くの実装が存在し、サービスも多岐にわたって展開されています。さらに昨今は、評判解析の技術が成熟してきたため、ブログに記載されているエントリを収集し、そのエントリに書かれている文章を分析し、どのような評価を行っているのか会席することで評判を理解して提示するサービスも普及しています。例えば、「BIGLOBE みんなの評判β[4]」「goo 評判検索[5]」「Kizashi[6]」などがそれに該当します。
■実際の楽天技術研究所での試み
楽天株式会社の研究機関である楽天技術研究所でも、ウェブマイニングは非常に重要な領域と認識し、研究対象としています。膨大なウェブデータから世の中の動向を把握したり、Eコマースの対象となる商品の特性を解析することで、新しい知見を得ようと日々挑戦しています。
例えば、それらの成果からレコメンデーション技術やパーソナライズ技術を自社開発しており、多様なアルゴリズムに基づくエンジンを開発し、「5ten(ごうてん)」「0-HO(れいせんほう)」「萬gekyo(まんげきょう)」といったプロダクトを実際のサービスに導入しています。
また産学連携としての試みとしては、過去には、ウェブ利用マイニングとして、慶應SFCの井庭研究室と共同で楽天ブックスの販売情報を分析、発表しています。また、去年は、電気通信大学 尾内・林研究室とのウェブ内容マイニングの共同研究として、楽天トラベルの「お客様の声」からのテキストマイニングを実施しています。
■ウェブ利用マイニングでの共同研究
慶應SFCの井庭研究室とウェブ利用マイニングの共同研究として、書籍・CD・DVDを販売しているオンライン書店である楽天ブックスの販売情報の分析を実施しました[7]。
オンライン書店での書籍の販売量と順位の関係は、いわゆる「ロングテール」として広く知られています[8]。オンライン書店においては、従来の「80対20の法則(パレートの法則)」のような、販売順位上位20%の商品が全体の販売量の80%を占める、というような既知の分布上の特徴をもちません。その代わりに、販売量の約3分の1は、販売量が非常に少ないマイナーな商品の集合によって形成されるという特徴を有し、そのグラフの形状からロングテール(長い尾)と呼ばれます。この販売量と順位を両方とも対数をとってグラフにすると一直線になることから、「べき乗則」に従うとも言います。
共同研究は、2005年4月から2007年3月までの2年間のデータで分析を行ないましたが、これにより、CD、DVDの販売量と順位の関係は、年間の集計量においても、月間の集計量においても、「べき乗則」に従っていることがわかりました。また、商品ジャンル毎の販売量と順位の関係も多少の違いはありますが、べき乗則に従い、各顧客の購買量と順位の関係もべき乗則に従うことがわかりました。
これらの結果が示しているのは、販売されている商品が日々入れ替わり、各顧客は自由に商品を購入しているにもかかわらず、市場レベルでみると常にこの法則性が成り立つということです。これらの「隠れた法則性」は個々人には還元することができませんので、ウェブ上での市場が持つ、構造的な秩序だといえるのではないかと結論付けました。
本研究は、ウェブマイニングからある種のウェブにおける市場の特性というものを確認しましたが、今後は、ここから詳細な分析を行い、ウェブ上での市場が持つ特性を明らかにしたり、知見を各種事業施策へと活用していく等を考えています。
■ウェブ内容マイニングでの共同研究
また、去年、電気通信大学 尾内・林研究室とウェブ内容マイニングの共同研究として、ウェブからのテキストマイニングを実施しました[9]。
宿泊予約サービスを行なっている楽天トラベルのサイトに掲載されている「お客様の声」(いわゆるレビュー情報)を分析し、そこで使われている言葉のカテゴリ分類を自動で行なうことを目指しました。例えば、「コーヒー」「酒」「ワイン」「飲む」「飲める」等は、「飲み物」カテゴリ。「宿泊料金」「宿泊費」「安い」「泊まれる」「手ごろ」等は、「価格」カテゴリ等です。
実際の「お客様の声」のデータは、ウェブ上から収集できる件数で、54万件程あり、含まれる文章量や使われている表現・単語は人によってまちまちです。本共同研究では、1万件を対象とし、その中の、4~5万文章を対象としました。
実施手順としては、楽天トラベルにて掲載されている「お客様の声」の文章をまず収集。その文章に分かち書きを実施し、係り受け関係を抽出し、前後の係句の情報を整理し、名詞句と係句を抽出。これで同義語の候補群が抽出されますので、それに「部屋」「食事」「風呂」「サービス」「設備」「立地」「料金」「それ以外」として設定したカテゴリを教師データとして与え、同時クラスタリング手法を用いて分類を行ないました。
各カテゴリに分類された語を評価した結果、適切に分類され、また出現頻度が低い単語も適切に分類されました。また評価対象にならない単語は、「それ以外」のカテゴリを設定することにより、適切に「それ以外」として分類されました。これにより、「お客様の声」という不特定多数のユーザーにて作成された多様な文章表現があるテキストコンテンツでも、それを自動的に分類・整理・評価し、構造化されたデータに変換する手法の手がかりを得ました。本手法は、今後多言語で適用し、この手法が分野独立であるかどうか検証する、一般性の高い特徴語に対する対策を検討する等、課題も多いのですが、ここから新しいマーケティングなどの試みへとつなげられればと思っています。
■大規模分散処理
以上のように、ウェブマイニングには、いくつかの種類が存在するのですが、今現在共通して直面している課題に、分析対象であるデータ規模の増加があります。
情報爆発という現象について前述しましたが、IDCの推定[10]によると、2006年と比べて、2007年は人類が作り出した総デジタルデータの量は約2倍になりましたが、2011年は、2006年の10倍になると予測されています。実際、我々のウェブ利用マイニングのある研究で対象としているデータはここ1年で約4倍に膨れ上がっています。そのため、どうウェブのデータを解析し、関係を見出すのかというアルゴリズム的な工夫だけでなく、そもそも大量のデータが幾何級数的に増大化していく中で今後も、より効率的に処理するにはどうしたらいいかという、コンピューティングパワーを高める研究も必要となってきます。
楽天では、レコメンデーションデータの解析等にHadoopを使って分散並列処理を行っています。Hadoopはサーバを追加した分だけスループットが増加し、スケールアウトが容易です。HadoopのMapReduce Framework やHDFSを用いることで、当研究所が開発したレコメンデーションエンジンで行っているクラスタ作成処理を多数のサーバに分散し、並列に処理することが可能になりました。これにより、今までできなかったより詳細なデータまで用いたレコメンデーションを行うことができるようになっています。
Hadoop以外にも、自社で基盤技術を研究開発し、大規模分散処理を実現しようという試みも行っています。プログラミング言語Ruby開発者であり、楽天技術研究所フェローでもある、まつもとゆきひろさんと共同で進めている、大規模分散技術ROMA・fairyの研究開発がそれになります。これにより、大量のデータを効率よく処理する基盤の確立もはかっており、実際に、ROMAはいくつものサービスで活用されています[11]。また、オープンソースとしても公開しています[12]。fairy に関しても、近々本番サービスでの活用が始まる予定であり、これらを通して、今後のウェブマイニングに活用するための、自社技術も用いたハイブリッドな大規模分散処理基盤を構築しようとしています。
■ウェブマイニングの今後
ウェブ上のデータはますますあふれていますが、量的な問題だけでなく、質的にも多様化しています。今後、ウェブマイニングは従来の整形されたデータや、あるいは非構造のテキストを対象にするだけでなく、動画像等のマルチメディアコンテンツの解析、そこからのマイニング等も必要になってくると思われます。
まだ研究開発中のため、お見せできないのですが、楽天市場で扱っている、3400万の商品の画像データを解析し、画像が類似したものをクラスタリングして一覧化、自由に操作して閲覧することのできるアプリケーションの研究開発等も行なっています。このように、ウェブは日々進化しているがゆえに、ウェブマイニングも新しい手法を次々に開発し、膨大な情報が刻一刻と増加しているウェブから、役に立つ知見を得ようとチャレンジを続けなければなりません。
以上、ウェブマイニングの種類とその実際の悩みについて解説いたしました。この領域は多くのクリアすべき課題が存在し、挑戦しがいのある分野です。我々も、今後もご紹介した内容だけに留まらず、様々な観点でのウェブマイニングの試みを、産学連携での共同研究等を通して実施していき、この分野での社会的貢献、学術的貢献ができるように尽力していきたいと考えています。
[1]http://tech.rakuten.co.jp/rtc2009
[2]http://rit.rakuten.co.jp/conf/rrds2009/
[3]R. Kosala and H. Blockeel "Web Mining Research: A Survey", pp.1-15, SIG-KDD Explorations, vol.2, issue 1, 2000
[4]http://hyoban.biglobe.ne.jp/
[5]http://buzz.search.goo.ne.jp/
[6]http://kizasi.jp/
[7]井庭 崇, 吉田 真理子, 森正弥『書籍・CD・DVD販売市場における隠れた法則性』, 第36回消費者行動研究コンファレンス, 2008年6月
[8]Chris Anderson. “The long tail.” Wired vol.12 No.10 2004, http://www.wired.com/wired/archive/12.10/tail.html
[9]Nguyen Pham Thanh Tao, 林 貴宏, 尾内 理紀夫, 西岡 悠平, 竹中 孝真, 森正弥『評価分析における評価対象のカテゴリ分類 ~ 楽天トラベル「お客様の声」の分析を例として』, データ工学と情報マネジメントに関するフォーラム2009, 2009年3月
[10]http://www.emc.com/digital_universe
[11]楽天、自社開発ソフトウェア「ROMA」を用いた 初のサービス提供を開始 http://corp.rakuten.co.jp/newsrelease/2009/0827.html
[12]http://github.com/roma/roma