1　はじめに
マイクロプログの普及に伴い，世界中で日常的な出来事から政治等のニュース速報まで様々な情報が発信されている．マイクロプログの中でも，Twitter¹の国内利用者数は4500万人を超えており，ツイートと呼ばれる140字以内の文章で投稿された情報に多くの人々がアクセスできるようになっている．これらの情報の中には親光体験情報も含まれており，この情報を利用することで観光地の比較評価を行うことが可能となる.新井ら[1]はTwitterに投稿されたツイートから観光体験に基づくツイートを収集し，観光スポットを抽出するとともに観光スポットの良さを表すスコアを算出した．まず各観光スポットをどの時間帯に訪れるのが適切かを表すスコアを算出した.次に，各観光スポットがどのような目的で訪れられているかを分類するために「行動」,「景観」,「食事」の４カテゴリを定義した．さらに，ある観光スポットについてツイートをしたユーザのタイムラインから別の観光スポットを収集することで，観光スポット同士で共に訪れられることが多いかどうかという共起頻度を算出した．これらの情報を元に新井らは観光ルートを推薦した.中川ら[2]は新井らが算出したスコアに加えて新たに2つのスコアを捉案した．１つ目のスコアは，ある観光スポットが他の観光スポットとどの程度似ているかという類似度を示すスコアである．2つ目のスコアは，ニューラルネットワークを用いて各親光スポットを「行動」,「景観」,「食事」,「土産」の４カテゴリに分類した時の，その分類の度合いを表すスコアである．これらの全てのスコアを用いて観光ルート推薦を行うと，スコアの大きいスポットを優先的にルートに取り込むため移動距離が長くなる問題がみられた．そのため，本稿では観光スポットのスコアよりも移動距離を優先してルート生成を行う手法を2つ提案する．1つ目は，ユーザが訪れたいと選択した観光スポッたスポット数が一定数を上回ればそれらのみから推薦ルートを生成する手法である．２つ目は，推薦ルート生成時に中川らの手法のようにランダム個数のスポットを推薦ルートから無作為に削除するのではなく，移動時間が長いスポットから優先的にランダム個数削除する手法である.本稿の構成は次の通りである．まず2節で関連研究について述べ，３節で観光ルート推薦システムの概要について述べる． 4節で提案手法について説明し，５節で評価実験について述べる．最後に６節でまとめを述べる．
2　関連研究
中嶋ら[3]は，位置情報付きツイート及び旅行者のツイートに頻繁に現れる特徴に基づいて，Foursquare 2とInstagram 3のサービスを用いて観光ツイートを収集した．また，旅行者のタイムラインから観光ルートを抽出した．収集した観光ツイートを，手がかり語や品詞の特徴から「食事」,「景観」,「行動」の３つに分類し，これらを用いて旅行者の好みに合わせた観光ルート推薦を行う手法を提案した.石野ら[4]は，東日本大震災時に用いられたTwitterなどから個々に述べられている安否情報を整理するANPI NLPを用いて，ユーザの行動経路として，移動元，移動手段を抽出する手法を提案した.藤坂ら[5]は，Twitterの位置情報付きツイートを用いて，お祭りや災害など地域の異常活動情報の発見を試みた．藤坂らは待られたツイートをk-means法により分割し，ツイート量，ユーザ数，ユーザの移動量からノーマルバターンを定義した．これを基準としてある時間におけるツイート量，ユーザ数,ユーザの移動量を比較することで地域の異常活動を発見する手法を提案した.郡ら[6]は，プログから書き手の行動経路を抽出し，さらにその中から行動のテーマを表すキーワードを抽出し行動経路とともに地図上にマッピングして提示する手法を提案した．郡らは，書き手が実際にその地を訪れているかを文脈から判定し，実際に訪れたと判定した場合はその地を行動経路の構成要素とした.そしてプログ本文中の出現順序に基づきその地名群から地名の系列バターンを抽出した.
３　観光ルート推薦システムの概要
本節では，新井ら[1]と中川ら[2]の先行研究で提案されている観光ルート推薦システムについて説明する．本稿で提案する手法はこの先行研究の手法を発展させたものである.
3.1観光スポットの取得
まず観光地の中心となる地点を決める．例えば，岡山県であれば岡山駅などが該当する.  Google Places APIを用いて選択した地点から近い順に20件の施設を取得する．さらにその取得した施設の周辺の施設を取得していき，新しい施設が出現しなくなるまで取得を続ける．これらの取得した施設には病院などの観光地として適当でない施設も含まれているため，Yahoo!知恵袋の質問を用いて，観光スポットとして適切か判定し，適切なものを残す.
3.2ツイートの取得
Twitter API 4を用いて，リツイートやリプライを除いた全ツイートから観光スポット名を含むツイートを取得する．また， FoursquareやInstagramなどの位置情報を利用したサービスのURLや「なう」,「@」,「in」「at」といったワードを含むツイートはリアルタイムなツイートと判定し，そのツイートを投務したユーザのタイムラインから，同じ日に投稿された他のツイートも取得する.
3.3観光スポットのスコア
3.2節の方法で取得したツイートから観光スポットの良さを装すスコアを算出する方法について説明する．新井ら[1]は，時間帯スコア，共起スコア，カテゴリスコアの３つのスコアを各観光スポットに対して定義した．時間帯スコアは各観光スポットをどの時間帯に訪れるのが適切かを表すスコアであり,各観光スポット毎のツイートを，１日を８分割した３時間ごとの時間帯に割り振り，その出現割合からスコアを算出する．共起スコアはある観光スポットと共に訪れられやすい観光スポットを装すスコアであり，ある観光スポット名を含むツイートをしたユーザのタイムラインに存在する別の観光スポットの共起確率から計算するスコアである．カテゴリスコアは，どのような目的でその観光スポットが訪れられるかを表すスコアであり，ツイート本文中に存在する手がかり語に基づいて，各観光スポットが「行動」,「景観」,「食事」,「土産」の4カテゴリに分類される度合いを表すスコアである．手がかり語の収集にはWikipedia 5とWeblio類語辞典6を用いている．これに加えて中川ら[2]は，類似度スコアとNNカテゴリスコアを定義した．類似度スコアは観光スポット間で特徴がどの程度似ているかを表すスコアであり，特徴ベクトルのコサイン類似度を観光スポットの全ての組み合わせのペアで求める．NNカテゴリスコアは手がかり語を用いず，ニューラルネットワークにより各観光スポットがどういった目的で訪れられているかを「行動」,「景観」,「食事」,「土産」の4つのカテゴリに分類した時の，ニューラルネットワークの出力値をスコアとしたものである．まず，各親光スポットを人手で4つのカテゴリに分類し，各観光スポットの特徴ベクトルと人手で分類した結果を用いてニューラルネットワークを学習する.そして，観光スポットの特徴ベクトルをこのニューラルネットワークに入力し，出力を得る．例えば「行動」,「景観」,「食事」,「土産」の各カテゴリに相当するユニットの出力がそれぞれ0.5,  0.4,  0.3,  0.2のとき，NNカテゴリスコアの「行動」,「景観」,「食事」,「土産」の各カテゴリのスコアは0.5,  0.4,  0.3,  0.2となる.
3.4 ルート生成アルゴリズム
図１を用いて，3.3節で説明した全てのスコアの和を用いてルート生成を行う手法[2]について説明する．まず，被推適者は訪れたい観光スポット１つと観光の出発地・出発時刻および終着地・終着時刻を入力する．被推薦者が選ぶ訪れたい観光スポットを選択スポットと呼ぶこととする．入力情報が確定した後に，次の手順で最適なルートを計算する. ●    STEP1：出発地→選択スポット→終着地の初期ルートを●    STEP2：出発地→選択スポット，選択スポット→終着地の各部分経路の間で訪れることができる観光スポットの中から, 3.3節で説明したスコアの和が最大となる観光スポットを探す.図１ではS₁とS₂が各部分経路でスコアの和が最大の観光スポットである.
ト→ S2 →終着地のルートが生成される. ●    STEP4 :再度，各部分経路の間で訪れることができるスポットの中からスコアの和が最大となるスポットを探す.図1ではS 3とS 4とS 5が各部分経路でスコアの和が最大のスポットである. ● STEP5 : S 3とS 4とS 5でスコアを比較しスコアの大きいものをルートに加える. ●    STEP6：加えられるスポットがなくなるまでSTEP4とSTEP5を繰り返してルートを生成した後，そのルートを保存する.以上の計算だけでは局所最適解に陥る可能性がある．そのため中川らは，ルートから出発地・終着地・選択スポット以外の観光スポットを無作為に削除し，さらにSTEP4とSTEP5を繰り返すことで新たなルートを生成し保存するという計算を追加した.そして互いに異なる100ルートが保存されるまでその生成を繰り返し，ルートの評価値が最も高いものを推薦ルートとして被推腐者に推腐する。ただし入力された条件によっては100種類のルートを生成できない場合があるため，その場合はそのルート生成を200回行った時点で処理を打ち切り，それまでに生成されているルートの中からルートの評価値が最も高いものを推薦する.
3.5ルートの評価値
推薦ルートの良さを表す評価値について説明する．本稿では以下の評価値を用いて推薦ルートを決める.
ここで
である．nは推薦されたスポット数，f，は推薦されたルートにおいても番目に訪れるスポットのスコアを表す。またff, ff, fço,  f A ,  f N Cはそれぞれ生成されたルートにおいてi番目に訪れるスポットの時間帯スコア，カテゴリスコア，共起スコア,類似皮スコア，NNカテゴリスコアを表す．さらにSは出発地， Gは終着地,  M i,i+1はi番目に訪れるスポットからi + 1番目に訪れるスポットへの移動時間(時)を表す.式(1)はルート内の全ての観光スポットのスコアの和をルートの総移動時間で割った商であるため，スポットの満足度と移動効率の両方を考慮するものである.

4　提案手法
ここでは本科で提案する2つのルート推薦手法である提案手法Aと提案手法Bを説明する.
4.1 提案手法A：選択スポットから指定時間内に移動できる
スポットのみを推薦する手法
中川らのルート推薦アルゴリズムでは，取得した観光スポット全てを推薦ルートに取り込む候補としていたが，候補とする観光スポットを選択スポットから指定時間内に移動できるスポットのみに制限してルート推薦を行う手法を提案する．制限するにあたり，取得した各観光スポット間を車で移動した際の移動時間をGoogle Directions API 7を用いて算出し，CSV形式でテキストファイルに保存したものを用いる．以下の手順で制限を行う. ●    Phase1 :遼択スポットから15分以内に移動できるスポットを取得する. ●    Phase2 :取得したスポットの数が5つ未満の場合，指定時間を15分伸ばしスポットを取得する.以降Phase2を繰り返し，候補となるスポットを５つ以上発見したら，それらのスポットを用いて中川らの提案したルート生成アルゴリズムにより推薦ルートを生成する．例えば，表1が選択スポットの近傍のスポットの一覧とすると，PhaselではS 1 ,  S 3 ,  S 7 ,  S 8を選択スポットから15分以内に移動できる観光スポットとして取得する．この時点ではスポットがまだ4つであるため，Phase2で30分以内に移動できるスポットを取得する.するとS 1 , S 2 , S 3 , S 4 , S 6 , S 7 , S 8 , S 9の8スポットが取得できる．スポット数が5を超えるためここで収集は終了し，この取得した8つのスポットのみを推薦ルートの追加候補のスポットとする．以降ではこの手法を用いたルート推薦を提案手法Aと呼ぶ. 4.2 提案手法B：移動時間が長いスポットを優先的にルートから削除する手法3.4節で述べた中川らのルート生成アルゴリズムでは，STEP6でルートを生成した後にランダム個数のスポットを無作為に削除する。それに対し本稿では，移動時間が長いスポットから優先的にランダム個数削除する手法を提案する．具体的な手順を図2を用いて述べる．まず中川らのアルゴリズムのSTEP6で生成されたルートの各スポットの前後の移動時間の和をそのスポットの合計移動時間とする．図2ではT 1がS 3の合計移動時間，T3がSsの合計移動時間である．この合計移動時間が大きいほど遠く離れたスポットを訪問していると考え，この合計移動時間が大きいスポットから順に削除する。例えば削除するスポットの個数が１個の場合はS₂を，２個の場合はS₂とS₃を削除する．削除後は3.4節で述べた中川らのルート生成アルゴリズムと同じ処理を行う.以降ではこの手法を用いたルート推薦を提案手法Bと呼ぶ.
5 評価実験
5.1実験概要
本節では，本研究で提案する手法が有効かどうかを評価実験により確かめる．本研究では岡山県内の161の観光スポットを用いて実験を行う.中川らのルート推薦システムと,提案手法A，提案手法Bにおいて，出発地，出発時刻，終着地，終着時刻，選択スポットの初期入力を表2に示す条件としてルート推廊を行い，推薦ルート内で訪れる全スポットのスコアの和，総移動時間，推薦ルートの評価値ιを比較した.
5. 2  実験結果
表2で示した条件によって各手法が推薦したルートのスコアと総移動時間を表3, 表4, 表5に示す. まず(iii),  (vi),  (ix)の推薦ルートについては観光時間が３時間と短いため，どの手法も同じルートを推薦していた．次に(i)， (iv)， (vii)のように観光時間が長いと中川らの手法による推薦ルートでは総移動時間が長くなった．一方，提案手法の推薦ルートはどちらも中川らの手法による推薦ルートに比べ移動時間が短くなる傾向がみられた.そのため，移動時間の削減によってルートの評価値vが大きくなっている．ここで，移動時間の差が大きかった(i)の推薦ルートと移動時間にあまり差がなかった（viii）の推薦ルートを，それぞれ図3～図8に示す．推薦ルートを比較すると， (i)のルートについては中川らの手法による推薦ルートは浄土寺と地蔵院という2つの遠く離れた観光スポットを訪問していることにより移動時間が長くなっている．提案手法Aによる推薦ルートは岡山城の周辺のスポットを岡山駅から出発して円を描くように訪問することで移動時間が非常に短くなっている.
提案手法Bによる推薦ルートは招き猫美術館が遠く離れているが，それ以外のスポットについては近場に収まっている．続いて(viii)のルートを見てみると移動時間にあまり差がないことが確認できる．選択スポットが出発地及び終着地から離れているためその移動に時間がかかるため，他の訪問スポットの選択が限られ，総移動時間に差が生まれにくかったと考えられる.
また提案手法Aにおいて選択スポットが渋川動物公園の場合,その周辺に観光スポットが少なく，その15分圏内ではなく30分圏内の範囲のスポットに制限してルート推薦を行ったため，移動時間が長くなったと考えられる．一方提案手法Bでは，全ての観光スポットを用いるので，出発地及び終着地近辺
の観光スポットもルートに取り込むことができるため，より効率的なルートが生成されたと考えられる．これらの結果から，提案手法Aは観光時間が長い場合や，選択スポットが出発地及び終着地から近く，観光スポットが密集している場合に有効であるといえる．一方提案手法Bは条件に関わらず中川らの手法よりも移動時間が短くなる傾向がある.
6　ま　と　め
本務では，観光ルート推薦において，観光スポットのスコアを優先してルートを生成すると移動距離が長くなる問題を解決するために，新たに2つの手法を提案し有効性を確かめた．提案手法Aは，ユーザが訪れたいと選択した観光スポットから指定時間内に移動できる観光スポットのみを推薦する手法で,提案手法Bは，推薦ルート生成時に中川らの手法のようにランダム個数のスポットを推薦ルートから無作為に削除するのではなく，移動時間が長いスポットから優先的にランダム個数削除する手法である.評価実験として，中川らの手法と2つの提案手法のそれぞれにおいて観光に要する時間や選択スポットを変えた複数の条件で観光ルート推薦を行い，ルートの評価値vや総移動時間及び推薦ルートを比較した．結果として提案手法Aではスポットの数や時間などバラメータの調節が必要だが，適切なバラメータ
を与えるとルートの評価値νが最も良くなる傾向があった．提茶手法Bについても，中川らの手法による推薦ルートと比べてルートの評価値vが同等もしくは良くなる傾向がみられた．しかし，適切なバラメータを与えた提案手法Aよりはルートの評価値vが低くなる傾向にあった．ただし，提案手法Bには調節すべきバラメータがないため，岡山県以外の観光地でもそのまま適用できる利点がある.今後の課題としては，京都府など観光地を変えてルート推薦を行った際の有効性を確かめることなどがあげられる.文献[1]新井晃平,新麦弘崇,太田学, “ Twitterを利用した観光ルート推薦の一手法”，第７回データ工学と情報マネジメントに関するフォーラム, G7-6, pp. 1-8, 2015 [2]中川智也,新妻弘崇,太田学, “分散表現を用いたバーソナライズド観光ルート推廊”，第10回データ工学と情報マネジメントに関するフォーラム, H1-3, pp. 1-8, 2018 [3]中嶋勇人，新妻弘崇，太田学，“位置情報付きツイートを利用した観光ルート推節"，情報処理学会研究報告，データベース・システム研究会報告, Vol. 2013-DBS-158, No. 28, pp. 1-6, 2013. [4]石野亜耶，小田原周平，難波英嗣，竹深寿幸，“ Twitterからの被災時の行動経路の自動抽出および可視化"，言語処理学会第18回年次大会, A4-6, pp. 907-910, 2012. [5] 藤坂達也，李龍，角谷和俊，“地域イベント発見のためのジオタ
図8  提案手法Bによる推薦ルート(viii)グ付マイクロブログを用いたノーマルバターン検出手法"，平成22年度情報処理学会関西支部大会, Vol. 2010, E-04, 2010. [6]  郡宏志,服部線,手塚太郎,田島敬史,田中克己, “プログからのビジターの代表的な行動経路とそのコンテキストの抽出”，電子悄報通信学会技術研究報告, Vol. 106, No. 149, pp. 29-34, 2006.