社団法人 電子情報通信学会
THE INSTITUTE OF ELECTRONICS,INFORMATION AND COMMUNICATION ENGINEERS

信学技報
TECHNICAL REPORT OF IEICE.

Web 上に混在する観光情報を活用した観光地推薦システム
上原尚†

嶋田和孝†

遠藤勉†

† 九州工業大学情報工学部〒 820–8502 福岡県飯塚市川津 680–4
E-mail: †{h uehara,shimada,endo}@pluto.ai.kyutech.ac.jp
あらまし

本論文では，Web から観光情報を抽出し，複数の特徴ベクトルから観光地間の類似性を評価することで，観光地を推薦するシステムを提案する．本システムでは，入力をユーザのお気に入りの観光地とすることにより，観光地の幅広い特徴分析に対応し，同時にユーザの嗜好解析も実現する．観光地の特徴ベクトルは，（１）知恵袋・ブロ
グ上での共起キーワードと（２）時系列分布，（３）知恵袋上でのカテゴリ構造，（４）観光地周辺施設，（５）地図画像から生成する．これらの特徴ベクトルからベクトル空間モデルの考え方のもと，コサイン類似度の算出を行い，類似性の高い観光地を推薦する．さらにどこが特徴的なのかを明確に表現するため，差分の可視化にも取り組む．
キーワード

観光地推薦システム，集合知，類似度

Sightseeing location recommendation using tourism informationon the Web
Hisashi UEHARA† , Kazutaka SHIMADA† , and Tsutomu ENDO†† Faculty of Information, Kyushu Institute of Technology
Kawazu 680–4, Iizuka-shi, Fukuoka, 820–8502 Japan
E-mail: †{h uehara,shimada,endo}@pluto.ai.kyutech.ac.jp
Abstract This paper describes a prototype system of sightseeing location recommendation. It integrates user’s
need and characteristics of each sightseeing location for the recommendation. The input of the system is a user’sfavorite location or facility. The system searches some locations related to the user’s favorite on the basis of somesimilarity measures. We use five similarity measures; (1) co-occurrence keywords, (2) time sequence, (3) category
information on Yahoo Chiebukuro, (4) surrounding area information and (5) map images. Our method visualizes
the output of the recommendation.
Key words Sightseeing recommendation, Collective Intelligence, Similarity

1. ま え が きム [3] や，ユーザの観光動機・旅行目的から観光地を紐付けている観光コース自動作成システム [4] などがある．これらのシ

近年，スマートフォンやノートパソコンの普及により，容易ステムのようにユーザの嗜好を的確に捉えることは，推薦シスかつ迅速に大量の情報を得ることができ，なおかつ情報発信もテムとして重要な項目の一つである．しかし，ユーザの嗜好に行えるようになってきている．特に，観光情報ではそれが著し焦点を置いてしまうと，観光地の特徴表現の多様性に制約をかく，各地の観光施設や公共団体から公開されているものもあれける結果になってしまう．ユーザの嗜好を考慮しながらも，観ば，旅行経験者によるブログの投稿，Q ＆ A サイトでのお薦め

光地の特徴を最大限に引き出し，ユーザに提示することも推薦

観光地の質問・回答など，多種多様な観光情報が存在する．しシステムとして必要である．

かし，そこから得られる情報量が膨大であり，どの観光地が自そこで，本論文では，Web から観光情報を抽出し，複数の特分の嗜好にあっているかなどの，ユーザにとって正確な情報を徴ベクトルから観光地間の類似性を評価することで，観光地を素早く見つけ出すことは困難である．そのような背景から，観推薦するシステムを提案する．本システムでは，入力をユーザ

光地推薦システムの開発が盛んに行われている [1,2]．例えば，のお気に入りの観光地とする．これにより，観光地の幅広い特ユーザの旅行履歴と観光地の特性から観光地を推薦するシステ

徴分析に対応でき，なおかつ，ユーザの嗜好解析にも繋がる．

—1—

特定の特徴に依存しない柔軟な推薦システムを実現するため，各特徴から複数の独立した類似度を算出・評価することで観光地間の類似性を表現する．Web からの情報源として，日本版

Wikipedia（注 1），Yahoo 知恵袋（注 2）（以下，知恵袋と呼ぶ），ブログ，地図画像を用いる．観光地の特徴ベクトルは，（１）知恵図 2 知恵袋のカテゴリ構造

袋・ブログ上での共起キーワードと（２）時系列分布，（３）知恵袋上でのカテゴリ構造，（４）観光地周辺施設，（５）地図画像

キーワード抽出処理では，形態素解析器「MeCab」（注 5）とキーから生成する．本研究では，これらの特徴ベクトルから観光地ワード自動抽出用 Perl モジュール「TermExtract」（注 6）を使用

間の類似度の測定を行い，類似度の高い観光地を推薦し，さらすることで，取得文章からキーワード抽出処理とキーワードのにどこが特徴的なのかを明確に表現するため，差分の可視化に出現頻度に応じたランク付け処理を行う．しかし，これらを用も取り組む．本システムの概要図を図 1 示す．

いて得られたキーワードは，日本語として成立しない語や，観光とは全く関わりのない語までも含まれており，これらノイズの削除が必要となる．そこで，観光に関連したキーワードを集約した観光キーワード辞書の作成を行い，それを活用することで，ノイズ除去と，共起キーワードの重要度算出を行う．
日本版 Wikipedia の見出し語約 100 万件を記述したテキス
トファイルをもとに，観光キーワード辞書の構築を行う．観光
キーワード辞書の作成手順として，まず最初に，英数字・記号だけで構成されている語は不要語とみなし，それらを取り除く．
次に，残ったキーワード一つ一つに対して，知恵袋の地域カテ
ゴリ内で検索を行い，ヒットしたキーワードと，そのカテゴリ

図1

観光地推薦システムの概要図

内での総ヒット数を観光キーワード辞書に登録する．最後に，この登録されたキーワード一つ一つに対して，知恵袋の全カテ

2. 観光地の特徴表現ゴリを対象に検索を行い，その総ヒット数も取得し，観光キーワード辞書に登録する．ここまでの手順を踏むことで，観光本研究では，観光地に関する５つの特徴表現を利用する．本節では，それらについて説明する．

2. 1 共起キーワードリスト
共起キーワードリストの定義として，検索クエリを観光地名とした時に，Web から取得した文章中に出現するキーワードキーワード辞書の構築が完了する．今回，観光キーワード辞書に登録されたキーワードは 67644 語である．ここで，あるキーワード k に対する地域カテゴリの総ヒット数を Lk ，全カテゴリの総ヒット数を Ak とした時，キーワードが観光にどのくらい関連しているかどうかを示す度合い Sk （観光関連度）を，（以下，共起キーワードと呼ぶ）に対して重要度を付加した集合体とする．本手法では，知恵袋とブログを対象に，観光地の共起キーワードを抽出し，重要度を算出することで，共起キーワードリストを作成する．知恵袋の情報は Yahoo 知恵袋質問検索 API（注 3），ブログ情報は Yahoo ブログ検索 API（注 4）から取得する．知恵袋では，質問・回答が特定のカテゴリに分類されており，ある質問に対して最良の回答をベストアンサーと定義している．この知恵袋の特性に注目し，本手法では，知恵袋で最上層に位置する「地域，旅行，お出かけ」カテゴリ（以下，地域カテゴリと呼ぶ）内を対象に，任意の観光地を検索クエリとSk = Lk /Ak(1)と定義する．また，観光キーワード辞書のデータ構造とそのデータの例を表 1 に示す．
表 1 観光キーワード辞書のデータ構造とそのデータの例
キーワード k

地域カテゴリ Lk

全カテゴリ Ak

27647

164219福岡福岡タワー

212

325

明太子

450

4566

2711

1295478869942171

3984

九州工業大学し，その際にヒットした質問のベストアンサーを活用する．ま東京

た，ブログ情報ではヒットしたブログタイトル・サマリーを使

東京スカイツリー

用する（以下，これらから取得した文章のことを，取得文章と呼ぶ）．図 2 は，知恵袋のカテゴリ構造を大まかに示したものである．
（注 1）：「日本版 Wikipedia」，http://ja.wikipedia.org/wiki

ノイズ除去処理として，取得文章から得られたキーワードと，観光キーワード辞書内のキーワードとの文字列照合を行う．
マッチしない場合は，不適切なキーワードと見なしてそのキー（注 2）：「Yahoo 知恵袋」，http://chiebukuro.yahoo.co.jp（注 3）：「Yahoo 知恵袋質問検索 API」，http://developer.yahoo.co.jp/（注 5）：「 形 態 素 解 析 器 MeCab」 ，http://mecab.googlecode.com/svn/

webapi/chiebukuro/chiebukuro/v1/questionsearch.html

trunk/mecab/doc/index.html（注 4）：「Yahoo ブ ロ グ 検 索 API」 ，http://developer.yahoo.co.jp/（注 6）：「 キ ー ワ ー ド 自 動 抽 出 用 Perl モ ジュー ル TermExtract」，http:webapi/search/blogsearch/v1/blogsearch.html//gensen.dl.itc.u-tokyo.ac.jp/termextract.html—2—ワードを除外する．マッチングしたキーワードは共起キーワー

半の計 24 通りに分類する手法である．ここで，前半は 1 日〜

ドとする．最後に，事前に取得してある共起キーワード k の出

15 日，後半は 16 日〜31 日と定義する．観光地の活性化時期の現頻度をもとに付加された値 Fk と，観光関連度の値 Sk から重事例として，「清水寺（京都府）」と「天王寺公園（大阪府）」と要度 Ik の算出 (2) を行い，これをもとに共起キーワードリストした時に取得した時系列データの一部をそれぞれ図 5 に示す．

を作成する．共起キーワードリスト作成が完了するまでの全体の流れを図 3 に示す．また，観光地を「東京スカイツリー」とした時に，ブログと知恵袋それぞれから取得した共起キーワー
ドリストの一部を図 4 に示す．

Ik = Fk × Sk

(2)

図 5 清水寺（左）と天王寺公園（右）の時系列データの一部

清水寺・天王寺公園ともに紅葉スポットとして有名な観光地である．その影響が，図 5 のグラフにも明確に現れており，10月〜11 月が著しく活性化している．これらのように，時系列データを用いることで，各時期からみた観光地の活性化の度合いを特徴として捉えることができる．

2. 3 カテゴリ情報
カテゴリ情報は，知恵袋上でのカテゴリを使用する．2.1 節では，主に地域カテゴリに重点を置いていたが，ここでは，それ以外の最上層のカテゴリ（例えば，図 2 に示したようなカテゴリ）に着目する．これにより，観光地に対して幅広いジャンルからアプローチをはかることで，観光の属性とは違う視点から図 3 共起キーワードリスト作成までの全体フロー図の特徴抽出を行う．手法としては，任意の観光地を検索クエリとして，知恵袋の地域カテゴリ以外の各カテゴリ内で検索を行い，それぞれの総ヒット数を取得する．観光地を「東京タワー（東京都）」にした時に，取得したカテゴリ情報を図 6 に示す．

図 4 「東京スカイツリー」の共起キーワードリストの一部
図 6 「東京タワー」のカテゴリ情報

2. 2 時系列データ
次に時系列データの有効性について議論する．観光地にはそ

東京タワーのカテゴリ情報をみると，「教養と学問，サイエンの観光地が活性化する時期のパターンという特徴があると考えス」カテゴリ内でのヒット数が多いことが分かる．これは，建られる．そこで，本システムでは対象となる観光地に関する投築学の視点で東京タワーの構造の話題が頻繁に取り上げられて稿の時系列データを類似性判断のための特徴として利用する．

いるからである．類似した観光地を推薦する場合，このようなここでも，2.1 節同様に，知恵袋・ブログを情報源とする．知点にも着目することで，より明確に類似性を評価することがで恵袋の情報からは，任意の観光地を検索クエリとした際にヒッきる．

トした質問の投稿時刻を，ブログ情報からはヒットしたブログの更新時刻を，それぞれ最大で 1000 件の計 2000 件までの時系
列データを収集する．

2. 4 周辺施設情報
周辺施設情報とは，観光地の周辺 5km 以内にある施設のジャンル情報のことを定義する．本手法では地図データから周辺施

本研究では，その時系列データを，2 つのパターンで解析す設情報を取り出し特徴抽出を行う．地図データは，Yahoo ロー

る．１つ目の解析手法は，2004 年前期〜2012 年後期の計 18 通

カルサーチ API（注 7）（以下，ローカル API と呼ぶ）を活用する．

りに分類する手法である．ここで，前期は 1 月〜6 月，後期は 7月〜12 月と定義する．2 つ目の解析手法は，1 月前半〜12 月後（注 7）：「Yahoo ローカルサーチ API」，http://developer.yahoo.co.jp/

webapi/map/openlocalplatform/v1/localsearch.html—3—ここでは，観光地の位置情報を入力として計 58 種類の周辺施

究では地図画像の色情報の抽出を行う．ここで言う色情報は，設情報の取得を行う．東京スカイツリーの位置情報を対象に取HTML 色で表現されるカラーコードとその使用回数のことを得した周辺施設情報の一部を図 7 に示す．

指す．地図画像データは，yahoo スタティックマップ API（注 8）から取得する．色情報抽出の際には，PHP のクラスライブラリ

ColorExtract（注 9）を活用する．

3. ベクトル空間モデル
本節では，ベクトル空間モデルの考え方のもと，2 節で取り上げた観光地の特徴表現を，特徴ベクトルに適用し，そのベクトルを用いた類似度計算処理について述べる．以下，対象とする観光地を s で表現する．
図 7 「東京スカイツリー」の周辺施設情報の一部東京スカイツリーは，東京都の中でも比較的都心部に位置している．このような情報は，図 7 であげているような施設のヒット数に強く関連しており，この周辺施設情報を用いることで，観光地の地域情報を捉えることが可能となる．

共起キーワードリストの特徴ベクトル（以下，共起キーワードベクトルと呼ぶ）への適用について述べる．共起キーワードベクトル Ks は，noKs = ks1 , ks2 , . . . , ksnk

(3)

2. 5 地図画像データと表現できる．ここで，nk は観光キーワードリストの登録さここでも 2.4 節と同様に，事前に観光地の緯度経度の情報をれているキーワード数 67644 語となる．共起キーワードベクト取得しているものとする．ここで取り扱う地図画像としては，

ル Ks 内の各要素は，各共起キーワードの重要度の値が入る．

標準的な地図画像（以下，標準マップと呼ぶ）と，ミッドナイ時系列データの特徴ベクトル（以下，時系列ベクトルと呼ぶ）トモードの地図画像（以下，ナイトマップと呼ぶ）の 2 つのパターンを使用する．標準マップとナイトマップのそれぞれの特性は，最適な観光地特徴表現のツールとなる．標準マップでは，海や川，山などのように地理的な要素の違いで色合いが大きくへの適用について述べる．時系列ベクトル Ts は，

Ts = ts1 , ts2 , . . . , tsnt

(4)と表現できる．ここで，nt は，時系列データの特徴パターンで変化する．それに対して，ナイトマップでは，周辺の建物・交ある 2004 年前期〜2012 年後期の計 18 通りと，1 月前半〜12通機関の数の変化で明暗の差がはっきりと分かれる．観光地を月後半の計 24 通りの合計 42 通りとなる．時系列ベクトル Ts「金閣寺（京都府）」「福岡タワー（福岡県）」とした時の２パ

内の各要素は，各時期でのヒット数の値が入る．

ターンの地図画像をそれぞれ図 8 と図 9 に示す．

カテゴリ情報の特徴ベクトル（以下，カテゴリベクトルと呼ぶ）への適用について述べる．カテゴリベクトル Cs は，

Cs = cs1 , cs2 , . . . , csnc(5)と表現できる．ここで，nc は，知恵袋上での地域カテゴリを除く最上位のカテゴリ数 14 となる．カテゴリベクトル Cs 内の各要素は，各カテゴリ内でのヒット数の値が入る．
図 8 「金閣寺」（左：標準マップ，右：ナイトマップ）

周辺施設情報の特徴ベクトル（以下，周辺施設ベクトルと呼ぶ）への適用について述べる．周辺施設ベクトル Es は，


Es = es1 , es2 , . . . , esne(6)と表現できる．ここで，ne は，施設情報の第二階層ジャンル数58 となる．周辺施設ベクトル Es 内の各要素は，観光地 s の周
辺 5km 以内で検索した時のヒット数の値が入る．
地図画像データの特徴ベクトル（以下，マップベクトルと呼図 9 「福岡タワー」（左：標準マップ，右：ナイトマップ）

金閣寺と福岡タワーは，地図画像のグラデーションの差が著ぶ）への適用について述べる．マップベクトル Ms は，


Ms = ms1 , ms2 , . . . , msnm

(7)

しい．この差は，地理的条件から生じているもので，2.4 節で述べた周辺施設情報からは把握できない周辺情報である．また，
これはユーザの嗜好にも大きく影響してくる要素（例えば，緑と表現できる．ここで，nm は，カラーコードのパターン数 166（注 8）：「yahoo スタティックマップ API」，http://developer.yahoo.co.

豊かな場所や海が近い場所など）でもあり，観光地の特徴表現

jp/webapi/map/openlocalplatform/v1/static.html

として重要となるポイントであると考えられる．そこで，本研（注 9）：「ColorExtract」 ，http://www.phpclasses.org/package/3370-

PHP-Extracts-the-most-common-colors-used-in-images.html—4—となる．マップベクトル Ms 内の各要素は，カラーコードの使用回数の値が入る．

図 10 の項目（１）と，項目（２）を，本システムの基本クエリとする．項目（１）で「都道府県名」を指定，項目（２）

本研究では，類似度計算処理として，ベクトル空間モデでその都道府県内にある観光地を入力し，検索ボタンをクリッ

ル の コ サ イ ン 類 似 度 の 算 出 を 行 う．2 つ の ベ ク ト ル A =クすることで，周辺（デフォルトでは 25km 以内）にある観光{a1 , a2 , . . . , an } と，ベクトル B = {b1 , b2 , . . . , bn } のコサイ

地を類似度が高い順にユーザに出力する．本システムでは，項ン類似度 RAB は，目（２）で観光地リストを表示することで，ユーザがスムーズPnに入力を行えるように入力支援も行う．検索ボタンをクリック

i=1 ai bi
pPn 2
RAB = pPn2
i=1 ai
i=1 bi(8)

してから，ユーザに観光地を出力するまでのシステムの処理フ
ローを図 11 に示す．と定義されている．５つの特徴ベクトルをこの数式 (8) に当てはめることで，観光地間の類似度を評価する．

4. 観光地データベースの構築
本システムを実現するにあたって，観光地の情報を収集した観光地データベースが必要となる．そこで，2.1 節で作成・活用した観光キーワード辞書から観光地を抽出することで観光地データベースを構築する．この観光地抽出処理では，2.4 節でも述べたローカルサーチ API を活用する．ローカルサーチ API
では，任意のキーワードを入力とした場合，そのキーワード名

図 11

基本クエリから出力までの処理フローと関連性の高い施設情報を取得することができる．これを利用することで，観光地の抽出を実現する．また，その際に位置情本システムでは，オプションとして，図 10 の項目（３）の報（緯度経度・都道府県名）も取り出し，これらを観光地デー「評価基準」を指定することで，類似度計算処理の設定をユーザタベースに登録する．これにより，4507 件の観光地を登録した自身でカスタマイズできる．評価基準の項目は，「共起キーワー

観光地データベースの構築が完了する．最後に，観光地データ

ドリスト」「カテゴリ情報」「時系列情報」「周辺施設情報」「地ベースに登録されている観光地情報を対象に，2 節に基づき特図画像データ」の５種類あり，これらは 2 節で述べた特徴表現

徴情報を全て収集し，観光地データベースに追加登録することに対応している．また，項目（４）を選択することで，提案観でデータベースの再構築を行う．

光地の周辺距離の範囲を指定することができ，項目（５）の都5. 観光地推薦システム
本観光地推薦システムは，Web アプリケーションとして設計道府県名を選択することで，提案観光地の都道府県を指定することができる．類似度計算処理フローを図 12 に示し，提案観光地取得処理フローを図 13 に示す．

し，ユーザのお気に入りの観光地とその都道府県名を入力とすることで，最適な観光地を推薦する．本節では，入力から観光地を推薦するまでのシステムの処理の流れと，差分の可視化について述べる．

5. 1 観光地の推薦本システムのトップ画面を図 10 に示す．
図 12

評価基準の選択項目（上）と類似度計算処理フロー（下）図 13

提案観光地取得処理フロー

出力結果の例として，項目（１）に「東京都」を指定し，項目（２）で「東京スカイツリー」，項目（３）で「総合的に評
図 10 観光地推薦システムのトップ画面価」，項目（５）で「福岡県」を指定した時の出力結果の一部を図 14 に示す．

—5—

きる．
次に，両者の時系列データをグラフ化したものを図 17 に示す．

図 14

入力を「東京スカイツリー」で福岡県内を対象とした出力結果の一部

5. 2 差分の可視化
本システムでは，観光地を推薦するだけでなく，入力した観光地と推薦した観光地の差分の可視化も行う．差分の可視化を行う画面への遷移は，推薦観光地をクリックすることで実現する．ここで，差分の可視化の初期画面を図 15 に示す．

図 17

広島平和記念資料館とひめゆりの塔の時系列データ

図 17 より，両者の観光地の活性化時期にズレが生じているのが見て分かる．これは，お互いがそれぞれ関与している歴史的な詳細要素が関係している．ひめゆりの塔は，沖縄終戦日で図 15差分可視化の初期画面ある 6 月 23 日に強く影響を受けており．それに対して，広島平和記念資料館は，広島に原爆が投下された日の 8 月 6 日の影

図 15 の「マップを表示」を選択した場合は，2 つの観光地の標準マップ・ナイトマップを表示する．
「時系列情報」を選択した場合は，両観光地の時系列データから生成した折れ線グラ
フを重ね合わせて表示する．
「周辺施設情報」
・「カテゴリ情報」

響を受けている．この要素は，類似性の中での差分を明確に示している部分であると言える．これらのように，差分を可視化することで，類似・非類似の境界を際立たせると同時に，観光地自身が持っている特徴を最大限に引き出すことができる．

では，両観光地のデータから生成したレーダーチャートを重ね合わせて表示する．
「共起キーワードリスト」では，両観光地のキーワードリストに対して，両者共通のキーワードに色の変化を加えて表示する．
ここで，観光地間の差分の可視化の事例として「広島平和記念資料館（広島県）」と「ひめゆりの塔（沖縄県）」を取り上げて説明する．これらのカテゴリ情報のレーダーグラフを図 16（塗りつぶされている方が「ひめゆりの塔」）に示す．

6. ま と め
本論文では，Web 上に混在する観光情報を抽出し，複数の特徴ベクトルから観光地間の類似性を評価することで，観光地を推薦するシステムを提案した．特徴ベクトルは，（１）知恵袋・
ブログ上での共起キーワードと（２）時系列分布，（３）知恵袋
上でのカテゴリ構造，（４）観光地周辺施設，（５）地図画像から生成した．観光地間の類似度計算処理では，ベクトル空間モデルの考え方のもと，特徴ベクトル間のコサイン値を算出することで実現した．また，本観光地推薦システムの基盤となる観光地データベースの構築にも取り組んだ．さらにどこが特徴的なのかを明確に表現するため，観光地間の差分の可視化にも取り組んだ．
今後の課題として，（１）観光地の新たな特徴表現の検討（２）利用者によるアンケート調査の実施などが挙げられる．
文図 16

広島平和記念資料館とひめゆりの塔のカテゴリ情報

広島平和記念資料館は広島原爆の慘状を後世に伝えるための施設として開館した施設であり，ひめゆりの塔は沖縄戦末期に置かれた慰霊碑のことを指す．このように両者ともに歴史的に似たような背景をもっている．この影響による両者の類似性は，

献[1] 川村秀憲，鈴木恵二，山本雅人，松原仁：観光情報学，情報処理学会デジタルプラクティス，Vol.3，No.4，October 2012
[2] 斎藤 一：Web における観光情報提供と分析，人工知能学会誌，
Vol.26，No.3，2011/5[3] 樽井勇介：協調フィルタリングとコンテンツ分析を利用した観光地推薦手法の検討，上武大学経営情報学部紀要，2011，第 36号，p.1-14[4] 倉田陽平，奥貫圭一，貞広幸雄（2000）：個人嗜好に応じた観光コース自動作成システムの開発，地理情報システム学会講演論
文集，9，199-202

図 16 のカテゴリ情報での「ニュース，政治，国際情勢」・「教養と学問，サイエンス」カテゴリへの傾きから把握することがで—6—