DEIM Forum 2017 B2-1

高度なコンテキスト情報を活用したユーザの利用アプリケーションの推定
川上

慶士†

原

隆浩†

前川

卓也†

石塚 宏紀††

Xing

Xie†††† 大阪大学大学院情報科学研究科 〒 565–0871 大阪府吹田市山田丘 1-5†† KDDI 総合研究所 〒 356–0003 埼玉県ふじみ野市大原 2-1-15††† Microsoft Research Asia
E-mail: †{kawakami.keiji,hara,maekawa}@ist.osaka-u.ac.jp, ††hk-ishizuka@kddi-research.jp,†††xingx@microsoft.com
あらまし スマートフォン向けアプリケーションの爆発的増加に対し，ユーザの状況を考慮した利用アプリケーショ
ンの推定は，ユーザビリティ向上の一因になると考える．筆者らの研究グループでは，スマートフォンの利用傾向を収集することを目的に，「こんてきすとモンスター」というアプリケーションを運用し，ユーザの身の周りの状況を表す高度なコンテキスト情報を収集している．そして，得られたユーザのアプリケーション履歴とコンテキスト情報を活用し，再帰的ニューラルネットワークを用いてユーザの利用アプリケーションの推定を行った．その結果，コンテ
キスト情報を用いた場合の推定精度の向上を確認した．また，学習用のデータが不足したユーザを想定し，他のユーザデータを用いたアプリケーションの利用カテゴリの予測を同時に行い，複数人のデータを用いた予測が有効である
ことを確認した．
キーワード

モバイル，コンテキスト，アプリケーション，スマートフォン，予測

1. は じ め にのアプリケーションでは，ユーザに一定時間毎にコンテキスト
に関する質問に直接回答してもらうことで現在の活動，同伴者，

近年スマートフォン向けのアプリケーションは爆発的に増加

気分といったユーザの状態を直接表す高度なコンテキスト情報している．このような環境下，ユーザは様々なアプリケーショを収集している．このようなスマートフォン利用時の具体的なンを利用できる一方，自身の端末から目的のアプリケーション

コンテキスト情報は，ユーザのアプリケーションの利用予測をを探し出すことが煩雑になっている．

行う際に有用な情報になると考えられる．

そこで近年，スマートフォン使用履歴を用いたユーザの利用ア

そこで本研究では，こんてきすとモンスターで得られたユー

プリケーションの推定を行う研究が盛んに行われている [2]，[9]．

ザのアプリケーション履歴とコンテキスト情報を活用し，ユー

ユーザの利用するアプリケーションを推定することで，利用ア

ザのコンテキスト状況を考慮した利用アプケーションの推定

プリケーションの候補を表示したり，アプリケーションの利用を行う．この際，コンテキスト情報とアプリケーション履歴の傾向によって画面をカスタマイズすることができ，ユーザビリ

時系列性を考慮して，時系列データの予測に用いられる深層

ティ向上に貢献できる．

学習の 1 種である再帰的ニューラルネットワーク（Recurrent

アプリケーションの利用予測を行う既存研究では，アプリ

Neural Network，RNN）をアプリケーションの利用予測に用ケーションの利用履歴とともに，ユーザの身の回りの状況（以いる．なお，通常の RNN に比べ，時系列データの長期的な記

下，コンテキストと呼ぶ）として GPS による位置情報，加速憶が可能である LSTM（Long Short-Term Memory）をネット

度センサなど，端末から自動的に取得できる情報を利用してワーク構造に取り入れる．これは直近の利用パターンだけではいる．しかし，センサ情報では「何をしているか」，「誰といるなく，より過去の利用パターンも考慮して予測を行うことを目か」，「気分が良いか」といったユーザの状況を具体的に表す高的としている．そして LSTM を取り入れた多層ニューラルネッ

度なコンテキストを推測することが困難である．そして，ユー

トワーク構造の予測モデルを構築し，予測精度に関して検証をザのアプリケーションの利用傾向は，このような高度なコンテ行う．

キストを含む様々なコンテキストが影響していると考えられる

深層学習を用いてアプリケーションの利用予測を行う場合，ため，より効果的な利用アプリケーションの予測・推薦を行う

ユーザのログが少ない状態だと，学習のためのデータが少なくためには，これらのコンテキストを考慮する必要がある．

十分な予測精度を得ることができないことが問題点として挙げ筆者らの研究グループでは，ユーザのスマートフォンの利用られる．そこで，ログが十分にあるユーザのデータから作られ傾向を調査することを目的に，アプリケーションの利用履歴とた予測モデルを用いて，ターゲットとなるユーザの利用アプリ

ユーザのコンテキスト情報を収集するスマートフォン用アプリ

ケーションを予測することが解決策として考えられる．

ケーション「こんてきすとモンスター」[7] を運用している．こ異なるユーザ同士が同じアプリケーションをインストール・

利用しているとは限らないため，本研究ではアプリケーション

る．そして，時系列データに対しては，再帰的ニューラルネッのカテゴリ分けを行い，ユーザが次回利用するアプリケーショ

トワーク（Recurrent Neural Network，RNN）を用いる研究

ンのカテゴリを予測するモデルを作成する．そして，他のユーが優れた成果をあげている．ここから実際に RNN を予測や推ザのログを用いて作成したモデルを，ターゲットユーザに用い定に関するタスクに適用した研究について紹介する．

て精度の検証を行う．

近年，RNN を用いて市場の動向を予測する研究が幾つか行

以下，第 2 章では関連研究を紹介し，本研究との関連を述べ

なわれている [1]，[8]．Ayankoya ら [1] は，市場の穀物価格の時

る．第 3 章では収集データと利用アプリケーションの予測モデ

系列データに着目し，RNN をネットワーク構造に組み込んだ

ル，利用アプリケーションのカテゴリ予測の概要に関して述べ，穀物の価格を推定するモデルを提案した．実際のリアルタイム

第 4 章で評価実験について述べる．そして，第 5 章で評価実験の市場データを用いて穀物の価格を予測し，実験に協力した市での結果を基に考察を行い，最後に本研究のまとめと今後の課

場関係者の予測した価格よりも誤差が少ない予測に成功した．

題について述べる．

2. 関 連 研 究
本章ではまず，ユーザの利用アプリケーションの予測・推薦に関する研究を紹介し，次に再帰的ニューラルネットワークを用いた予測・推定に関する研究について紹介する．

RNN を用いたユーザの行動推定に関しても研究が行なわれている．Zhang ら [10] は，ユーザの属性や，広告の情報，広告が表示されている位置，ユーザの一連の操作の履歴から RNNを基にしたモデルを用いて，ページ内の広告がユーザによってクリックが実行されるかどうか推定を行った．
ここまで RNN を用いた予測や推定に関する研究を紹介し，

2. 1 利用アプリケーションの予測・推薦に関する研究

実際に時系列データを用いた予測・推定に関して RNN が有用

はじめに述べたように，スマートフォン向けに提供されるアであることを確認した．そして，こんてきすとモンスターで収

プリケーションが爆発的に増加したことにより，ユーザが自身集したユーザのコンテキスト情報やアプリケーションの利用履の目的に沿ったアプリケーションを見つけることが困難になり歴の時系列性を考慮すると，アプリケーションの利用予測といつつある．そこで，ユーザのアプリケーションの利用予測に関うタスクに対しても RNN を用いることは有効な方法であるとする研究が数多く行われている．[2]，[9]．

考える．アプリケーション予測に関して様々な研究が行なわれShin ら [9] は，アプリケーションの利用履歴と，スマートフォているが，RNN を基にユーザの具体的なコンテキスト情報とンに搭載されたセンサから得られる場所，加速度，照度といっ

アプリケーション履歴といった時系列情報を用いてアプリケー

た様々なコンテキスト情報を用いて，ベイジアンモデルを作成

ションの利用予測を行う研究はこれまでに行なわれていない．

し，利用アプリケーションの予測を行った．

そこで本研究では，コンテキスト情報を用いたユーザの利用ア

また利用アプリケーションの予測と関連した研究として，利用アプリケーションの推薦に関する研究も盛んに行なわれている．Girardello ら [3] はアプリケーション推薦システムとして「AppAware」を提案した．AppAware はアプリケーションの追加，削除，更新を監視することで，一般的にインストールさ

プリケーションの予測というタスクに対して再帰的ニューラル
ネットワークを適用し，予測精度の確認を行った．

3. データ収集と利用アプリケーションの推定手法

れている数が多いアプリケーションの推薦をリアルタイムに行

本章ではまずログ収集システムである「こんてきすとモンスうシステムである．GPS による位置情報を用いることで，ユー

ター」を用いたデータ収集に関して述べる．次に，ユーザの利

ザの現在地付近で，その時点で多くインストールされている人

用アプリケーションの推定モデルについて述べ，最後に情報の気のアプリケーションを推薦することが可能となる．

不足したユーザを対象としたユーザの利用アプリケーションのここまで利用アプリケーションの予測・推薦に関する研究を紹介したが，これらの研究は，時刻や GPS による位置情報な

カテゴリ予測に関して述べる．

3. 1 ログ収集システムを用いたデータ収集

ど，センサ等を用いて自動的に取得できる情報のみをコンテキ

筆者らの研究グループでは，アプリケーション利用ログ収集

スト情報として用いている．しかし，現在の活動や同伴者，気システム「こんてきすとモンスター」[7] の運用によって．ユー

分といったセンサから自動的に推測することが困難なコンテキ

ザのアプリケーション利用履歴とコンテキスト情報を収集してストも，アプリケーションの利用傾向に大きく影響を与えるもいる．アプリケーションの利用履歴については，画面の最前面のと考えられる．そこで本研究では，このようなコンテキストにあるアプリケーション ID が変化することをアプリケーショ

情報を用いてアプリケーションの利用予測に関する取り組みをンの起動とみなして，そのときのアプリケーション ID と利用行った．

時刻をアプリケーション履歴として収集する．ユーザのコンテ

2. 2 再帰的ニューラルネットワークを用いた予測・推定に関する研究

キスト情報については，ユーザに対して活動や同伴者，気分といった身の回りの状況に関する質問を，有効時間を設けて定期

近年，機械学習の手法の 1 つである深層学習が注目を集めて的に行うことで取得する．表 1 に各コンテキスト項目についている [6]．深層学習は画像認識や言語処理，音声認識といった分の詳細を示す．これらの取得情報をアプリケーションの利用予野で特に成功を収めているが，それ以外の分野に関しても従来測に用いることにした．

の機械学習で行っていたタスクに関して幅広く適用が可能であ表 1 コンテキスト項目と選択群，種類数，有効時間
項目 (質問文)

選択項目群

種類数

有効時間

今日 (今日は何をするか)

仕事，休み，旅行など

100 種類 24 時間

活動 (何をしているか)

仕事，勉強，食事，音楽など

189 種類 2 時間

同伴者の人数 (何人といるか)

1 人，2 人，たくさんなど

6 種類

2 時間

同伴者の分類（誰といるか)

家族，恋人，同僚など

57 種類

2 時間

場所 (どこにいるか)

学校，仕事先，観光地など

150 種類 3 時間

気分 (気分はどうか)

良い，悪いなど

4 種類

4 時間

体調 (体調はどうか)

良い，悪いなど

4 種類

4 時間

疲労度 (疲れているか)

元気，疲れているなど

4 種類

4 時間

忙しさ (忙しいか)

ゆったり，忙しいなど

4 種類

4 時間

3. 2 利用アプリケーションの推定モデルの設計
3. 2. 1 RNN の概要と LSTM の活用
ユーザがスマートフォンを利用していた時のコンテキスト情報は，アプリケーションの利用予測を行う上で有用な情報となり得る．しかし，3. 1 節で紹介した今回のアプリケーション予
測の際に用いるユーザのコンテキスト情報は全部で 9 項目 518
種類あり，これら多数のコンテキスト情報とアプリケーションの利用パターンとの複雑な関係性を人手で抽出して予測の際の特徴として用いることが難しい．そこで今回のアプリケーショ
ンの利用予測に関して，人手を介さずに自動で特徴抽出が可能な機械学習の方法の 1 つである深層学習を用いることにした．
予測を行う上で，ユーザのアプリケーションの利用傾向に関しても考慮すべき点がある．短期的にはユーザの状況によってアプリケーションの利用傾向が変化するが，長期的に見ると，
習慣的なアプリケーションの利用パターンが存在する [5]．ア
プリケーションの利用予測を行う際に，このような短期的な利用傾向と長期的な利用傾向に対処しなければならない．このような時系列データの短期的なパターンと長期的なパターンに対応できる深層学習の手法の 1 つとして再帰的ニューラルネット
ワーク（Recurrent Neural Network，RNN）が挙げられる．

RNN の入力層では，動画像や音声などの時系列データが，時刻 t=1 から時系列に従って入力される．時刻 t の中間層には，
時刻 t の入力層の出力と時刻 t − 1 の中間層の出力が入力される．このように, 連鎖的にデータを入力し，時刻 t − 1 の中間層の出力を時刻 t の中間層に入力することで，時系列に対応した認識が可能となる．
通常の RNN ではネットワークパラメータの更新に出力層から入力層に遡って誤差を伝播させるアルゴリズムを用いる
が，中間ユニットが多いと入力層まで誤差を伝搬させるまでに多くの勾配計算を行う必要があり誤差の計算が不安定となる．これは勾配消失問題と呼ばれる．これにより，長期間の学習が通常の RNN では不可能であったが，その問題を解決する

LSTM（Long Short-Term Memory）[4] という RNN を拡張したニューラルネットワークが提案された．LSTM では必要な誤差だけを伝搬させるように入力と出力を制限する構造を持っている．今回はこの時系列データの長期的な学習が可能である

LSTM を利用アプリケーション推定に用いることにした．
3. 2. 2 アプリケーションの利用予測モデルの概要
本項ではアプリケーションの利用予測モデルについて説明する．なお図 1 はアプリケーションの利用予測モデルの構造で

図 1 アプリケーションの利用予測モデルの構造あり，ある 1 時刻分のアプリケーション利用履歴とコンテキス
ト・日時に関する情報を予測モデルに入力し，最終的に各アプ
リケーションの次回利用確率を得る．なお図中に現れる数字は各層の出力次元を表す．以下アプリケーション利用予測モデルの詳細を説明する．
まず利用アプリケーションを表す入力について説明する．こんてきすとモンスターのユーザが使用したアプリケーションは
全 3241 種類であった．そこで 3241 種類のアプリケーションに関して，それぞれ 1 から 3241 までのアプリケーション ID をつけた．そして，アプリケーションを表す入力ベクトルとして，
アプリケーションが該当する要素が 1，残りの要素が 0 となる

3241 次元のベクトルを用いることにした．
次にアプリケーション利用時のコンテキスト情報・日時を表
す入力について説明する．複数のコンテキスト情報を単一のベクトルで表現するためにコンテキスト ID を導入した．コンテ
キスト ID について 1 から 518 まで用意し，「今日」の項目のコ
ンテキストは 1 から 100，「活動」のコンテキストは 101 から

289 といったように，9 項目 518 種類のコンテキストに対してID を付与する．そしてコンテキスト情報に関して，ある項目（ここでは c とする）のコンテキスト情報入力から経過時間を表現する値 tc を入力に導入する．項目 c のコンテキストについて最新のコンテキスト情報の入力からの経過時間を tcin ，そのコンテキストの項目を有効時間を tcval とすると，tc は以下のように定義される．

{
tc = 1 − min

tcin
,1
tcval

}
(1)

この tc を各コンテキスト 9 項目に対して用意する．
日時に関する情報については，時間帯と平日休日の区別に関する情報を入力に用いる．時間帯に関しては 1 日を 4 時間毎に分割した 6 つの時間帯で表現した．そして平日休日の区別に関する情報は，現在の曜日に関して，月曜日〜金曜日であれば平日，土曜日，日曜日であれば休日として表現した．以上からコンテキスト情報に関してはコンテキスト入力経過時間の情報も含めて 527 次元，利用時間帯は 6 次元，平日休日の区別に関する情報は 2 次元の計 535 次元のベクトルをアプリケーション利用時のコンテキスト・日時に関する情報とした．

ここまで入力情報について説明してきたが，この入力をもとに LSTM を用いたニューラルネットワークで学習を行い，ア

表 2 アプリケーションのカテゴリ分けと利用比率
大カテゴリ
通信

小カテゴリ

比率

メッセージ

0.1956通話

0.0237

メール

0.1298SNS

0.2071

出会い

0.0000ブラウザ

ブラウザ

0.1072

ツール

ツール

0.0475

アート&デザイン

0.0000ライブラリ&デモ

0.0001

カスタマイズ

0.0048システム

システム

0.0581

ゲーム

ゲーム

0.0424情報

地図&ナビ

0.0110

コンテキストと日時の情報を入れる全結合層がある．利用アプ

旅行&地域

0.0002自動車

0.0000リケーションの情報を入力する層は 250 次元の情報を出力する．

天気

0.0013

ライフスタイル

0.0006

健康&フィットネス

0.0024

住まい&インテリア

0.0000美容

0.0000

出力する．2 つの出力情報に関して tanh 関数を活性化関数と医療

0.0000

出産&育児

0.0000

して通し，この出力を 300 次元の情報として結合する．そして，

イベント

0.0001

フード&ドリンク0.0011

スポーツ

0.0007

ショッピング

0.0008

ニュース&雑誌

0.0171

ビジネス

0.0015

ファイナンス

0.0023層目の入力となる．また，1 つの LSTM 層のユニット数は 300

仕事効率化

0.0461

書籍&参考書0.0019である．LSTM 層から出力された 300 次元の情報を全結合層

教育0.0016

写真

写真

0.0381

マルチメディア

音楽&オーディオ

0.0123

動画プレイヤー&エディタ

0.0205

エンタメ

0.0205

コミック

0.0036

プリケーションの利用予測モデルを生成する．
SNS

本項のはじめにも触れた，アプリケーション利用予測モデ
ルのネットワーク構造は図 1 のようになる．ネットワークはLSTM 層を含む多層ニューラルネットワークとなっている．入力層に関しては，利用アプリケーション名を入れる全結合層と，またコンテキスト・日時の情報を入力する層は 50 次元の情報を

この 300 次元の情報を，次の LSTM 層の入力として使用する．
なお LSTM 層は 2 層重ねた構造となっており 1 層目の出力が 2に入力し，アプリケーション種類数である 3241 次元の情報を

仕事&勉強

娯楽

出力する．最後にこの出力を活性化関数である sof tmax 関数に通すことで，各アプリケーションが次に利用される確率が出力される．出力されたベクトルの各要素はその要素が該当する

ユーザの利用しているアプリケーションは異なっているものもアプリケーションが次に利用される確率を表している．

多く，そのまま利用アプリケーションを予測する場合は，予測予測モデルの学習に関して，各層の重み W とバイアス b の精度が悪くなることが考えられる．そこで，アプリケーション

値を訓練データの学習によって調整する．重みやバイアスの更に関して「ゲーム」，「SNS」といったカテゴリ分けを行い，カ新のために用いる損失関数として，ターゲットのアプリケー

テゴリを予測するモデルをログの不足したユーザに適用するこションが次回利用される確率 Ptarget の対数の負の平均をとっとが解決策として考えられる．

たものを使用する．そして，損失関数 loss は以下のように定義される．なお N はアプリケーションの全履歴数を表す．

1 ∑loss = −lnPtargeti
N

適切なアプリケーションのカテゴリ分けを行い，一定の精度が保たれた利用アプリケーションのカテゴリ予測を行うことができれば，ログの不足したユーザに対しての予測の補助として，

N

(2)

i=1

利用アプリケーションのカテゴリ予測は意義があると考える．

3. 3. 2 アプリケーションのカテゴリ分け

この損失関数が最小となるように学習を行う．なお学習には，

ま ず Android OS の ア プ リ ケ ー ション マ ー ケット で あ る

関数の傾きから関数の最小値を探索する最適化アルゴリズムのGoogle Play に記載されているアプリケーションカテゴリを基

1 つである最急降下法を用いる．また学習パラメータの更新量にして 37 種類のアプリケーションのカテゴリを定義し，これをを決める学習係数に関しては，学習の初期は大きな値を選び，基準のカテゴリ（小カテゴリ）とした．またカテゴリの粒度を学習の進捗によって小さくする方法が一般的に用いられる．そ変えて予測精度を調査するために，基準のカテゴリをさらに統こで訓練データを用いた予測モデルの学習に関して全 26 回行

合し 11 種類のカテゴリをもつ大カテゴリを定義した．表 2 はい，初めの 6 回の学習では学習係数を 1.0 とし，その後の学習

カテゴリ分けの結果とそれぞれのカテゴリの利用比率を示した

では減衰率を 0.8 として徐々に学習係数が小さくなるように設ものである．この 2 つのカテゴリ分けを基に，他のユーザデー

定した．

タを用いた利用アプリケーションのカテゴリ予測を行う．

3. 3 利用アプリケーションのカテゴリ予測の概要

3. 3. 3 他のユーザのデータを用いたカテゴリ予測の概要

本節では，ログが不足したユーザを想定した他のユーザの他のユーザのデータを用いたアプリケーションのカテゴリ予データを用いた利用アプリケーションのカテゴリの予測の概要

測について述べる．予測モデルを生成するのに十分なデータがに関して述べる．

あるユーザが N 人いるとする．まず 3. 3. 2 項で定義した 2 種

3. 3. 1 アプリケーションのカテゴリ予測の意義

類のカテゴリ分けから，N 人のそれぞれのデータを基にカテゴ

ログが不十分なユーザに関しては，予測モデルの学習をうま

リ予測を行うモデルを N 個用意する．なおモデルを作成する

く行うことができず予測精度が低下する．情報が不足している

際に入力で用いるコンテキスト情報について，選択肢の多い項状態で，ユーザのアプリケーションの利用予測を行う方法とし目のコンテキストについては，ユーザによって入力しているコては，他のユーザのデータから作成した予測モデルを利用してンテキストが，かなり異なることが考えられるため，「今日」，予測を行うことが方法として考えられる．しかし，ターゲット

「活動」，
「場所」，
「同伴者の種類」の項目のコンテキスト情報にとなる情報が不足しているユーザと，予測モデルを生成した

関して表 3 のようにカテゴリ分けを行い，コンテキストがより表3

カテゴリ分けしたコンテキスト情報項目

内容

今日 (今日は何をするか)

仕事・勉強，休暇

活動 (何をしているか)

遊び・娯楽，日常生活，勉強・仕事

場所 (どこにいるか)

自宅，日常，外出，移動

同伴者の種類（誰といるか)

親しい人，仕事デルの正解率の平均と，MFU 法による正解率の平均をまとめたものである．
図 2 から，コンテキスト情報の有無に関わらず予測モデルの正解率は，どの予測候補数においても，MFU 法より高い値を示しており，単純に利用頻度の高いアプリケーションを予測す

広義なものになるようにした．

る場合と比較すると高い精度が出ていることが分かる．そして，

そして，アプリケーション履歴とコンテキスト情報が不足し予測モデルの正解率に関して，コンテキスト情報を用いて学習ているユーザがいると仮定する．その情報の不足したユーザのした予測モデルの方が，コンテキスト情報を用いない場合に比データを予め生成された N 人の予測モデルに適用し，予測精べて，どの予測候補数でも正解率が高いことが分かる．またコ

度を調査する．そして，予測精度の良かった上位 k 人のデータ

ンテキスト情報を使用したモデルの正解率とコンテキスト情報

を用いて新たに予測モデルを生成し，情報の不足したユーザのを使用しないモデルの正解率の差は，予測候補数を増やすに連カテゴリ予測を行う．

れて小さくなることも分かる．

この概要を基に，4 章で他のユーザのデータを用いた場合の利用カテゴリの予測精度の調査を行う．

4. 評 価 実 験

4. 1. 3 カテゴリ別の正解率
次にアプリケーションをカテゴリ別に分類し，上位 1 件を予測する場合のカテゴリ別の正解率と利用比率を比較した．図 3の各カテゴリの左の棒グラフは上位 1 件を予測する場合のコン

本章では，3. 2. 2 項で述べた予測モデルを基に，ユーザのア

テキスト情報を使用しない予測モデルの正解率にコンテキスト

プリケーションの利用予測を行った結果について述べる．また情報を使用した場合の正解率との差を積み上げた棒グラフとな

他のユーザのデータを用いた場合のカテゴリ予測に関しての実る．ただし，コンテキスト情報を用いることで正解率が低下し験結果についても述べる．

た場合は，コンテキスト情報を用いない場合の正解率を表す棒

4. 1 アプリケーションの利用予測

グラフの下部にコンテキスト情報を用いた場合との正解率の差

本節ではユーザのアプリケーションの利用予測に関して評価を表示している．また各カテゴリでの右の棒グラフは各カテゴ

手法と実験結果を述べる．

4. 1. 1 評 価 手 法

リの利用比率を示したものである．
図 3 より，「SNS」以外のカテゴリでコンテキスト情報を用いアプリケーションの履歴数が 5,000 件以上のユーザ 25 名のた予測モデルの方が，コンテキスト情報を用いない予測モデル

データを今回の評価実験で用いることにした．なお選定ユーザに比べて正解率が高いことが分かる．
「仕事効率化」，「写真」，

25 名の履歴数の平均値は 8189.9 回，中央値は 7145.0 回，コ「動画プレイヤー&エディタ」，「音楽&オーディオ」といったカ

ンテキストの入力回数の平均値は 1511.2 回，中央値は 1525.0

テゴリはコンテキスト情報がないモデルの正解率に比べて，コ回，こんてきすとモンスターの継続日数は，平均値が 57.9 日，

ンテキスト情報を用いた場合の正解率の向上度合いが大きく，

中央値は 53.3 日であった．そして各ユーザの履歴に関して，前

コンテキスト情報とアプリケーションの利用傾向に関係がある

半期間と後半期間でデータを均等に分割した．そして前半期間

アプリケーションが多いカテゴリ群であることが伺える．逆にのデータを訓練データとし，後半期間のデータをテストデータ「ニュース&雑誌」は，利用比率に比べて，コンテキスト情報がとして用いて予測精度の評価を行った．

ないモデルの正解率がかなり高く，コンテキスト情報を用いた

なお評価実験では，各ユーザの推定モデルが出力した次回利

場合の正解率の向上度合いが小さいことが分かる．このことか用される確率の高い k 件のアプリケーション候補の中に，実際ら「ニュース&雑誌」のカテゴリのアプリケーションは時系列に利用されたアプリケーションが含まれていた場合に，利用アのアプリケーション利用履歴だけでも予測を行いやすいことがプリケーションの予測が成功したとみなす．そして評価指標と伺える．

して，正解率を以下のように定義する．
正解率 =予測が成功した回数
テストデータのアプリケーション利用回数

訓練データとテストデータに関して，コンテキスト情報に関する要素は全て 0 に変更したコンテキスト情報を用いない場合と利用比率上位 k 件並べる Most Frequently Used（MUF）法による予測を比較対象とする．

4. 1. 2 利用アプリケーション予測の正解率
本項では利用アプリケーションの予測結果について述べる．
図 2 は予測されるアプリケーション利用候補の数を変えた場合の，それぞれのユーザ 25 名に関して，コンテキスト情報を使用した予測モデルとコンテキスト情報を使用しなかった予測モ

次に図 3 と同様な情報を上位 5 件を予測する場合で算出したグラフを図 4 で示す．図 4 から，上位 5 件を予測する場合に関しては全てのカテゴリでコンテキスト情報を用いた場合の正解率の方が高いことが分かる．また，「通信」，「SNS」，「ブラウザ」といった比較的利用比率の高いカテゴリについては，上位 5 件の時点でコンテキスト情報がないモデルの正解率がかなり高く，
コンテキスト情報を付与した場合の正解率の向上度合いが他のカテゴリに比べると低いことが分かる．
利用比率の低いカテゴリのアプリケーションに関しては，上位 1 件を予測する場合と比較すると度合いは低くなるものの，
コンテキストを付与した場合の一定の正解率向上の効果が見られ，特に「移動」や「勉強」といったカテゴリでコンテキスト
情報による正解率向上の効果が見られる．ただし，「カスタマイ

表4

予測候補数を変化させた場合のコンテキスト項目別の平均正解率
コンテキスト項目

上位 1 件

上位 5 件上位 10 件上位 15 件全て

0.38580.72050.83290.8859活動

0.36850.70920.82900.8853

同伴者

0.36140.70270.82350.8817

主観情報0.35480.69900.82250.8800なし

0.33720.68800.81690.8766解率を算出した．表 4 は「活動」，「同伴者」，「主観情報」のコンテキストのみを用いた正解率と全てのコンテキストを使用し
図2予測アプリケーション候補数を変化させた場合の正解率

た場合，全くコンテキストを使用しなかった場合の正解率をまとめたものである．どの予測候補数でも，全てのコンテキストを用いた場合が最も正解率が高いことが分かる．
「活動」，
「同伴
者」，
「主観情報」のみをそれぞれ用いた場合に関して，全くコ
ンテキストを使用していない場合に比べると，どの予測候補数
でも正解率が向上していることが分かる．またコンテキスト項
目間の正解率を比較した場合，どの予測候補数に関しても，「活動」の項目が最も正解率が高く，次に高い項目は「同伴者」の項目であり，最も正解率が低かったのは「主観情報」の項目で

図 3 カテゴリ別のコンテキスト情報の有無による正解率と利用比率（上位 1 件）あった．

4. 2 他のユーザのデータを用いた利用カテゴリ予測
本節では，3. 3 節で述べた他のユーザのデータを用いたアプ
リケーションのカテゴリ予測に関する評価実験とその結果について述べる．

4. 2. 1 評 価 手 法
評価実験に用いるデータは 4. 1. 1 項で選定した 25 名のユー
ザのデータとする．あるユーザに関してログが不足しており，残り 24 名のユーザのデータから利用カテゴリの予測を行う状
図 4 カテゴリ別のコンテキスト情報の有無による正解率と利用比率（上位 5 件）況を仮定する．まず，自分以外のユーザ 24 名のカテゴリ予測
モデルに対して，テストデータの中で，期間初期のアプリケー
ション利用履歴とコンテキスト情報・日時がセットになった 500

ズ」に関しては利用比率は低いものの，上位 5 件を予測する場
合ではコンテキスト情報を用いない場合でも正解率がかなり高くコンテキスト情報による正解率の向上度合いが低い．
利用頻度が高いカテゴリのアプリケーションに比べて，利用頻度が低いカテゴリのアプリケーションの方がコンテキスト情報による正解率の向上度合いが大きい傾向がある理由として，「通信」，「SNS」，「ブラウザ」といったカテゴリのアプリケー
ションはユーザのコンテキスト状況に関係なく常に使われる傾向があるが，より利用頻度の少ないアプリケーションに関しては利用傾向がユーザのコンテキストによって影響を受けやすい
ことが原因として考えられる．

4. 1. 4 コンテキスト項目別の正解率
次に，各コンテキスト情報の予測精度への影響を調査した．
今回対象としたコンテキストは，こんてきすとモンスターの取得方法でしか得ることが困難であると想定される「活動」，「同
伴者（種類・人数）」，「主観情報（気分・健康・疲労度・忙しさ）」とした．訓練データとテストデータに関して該当のコン
テキスト情報以外の要素を 0 とし，該当コンテキスト以外はコンテキスト情報がないものとした．そして，「活動」，「同伴者」，「主観情報」の 3 つの項目に関して，予測モデルを作成し，正件のデータを入力しそれぞれ正解率を得る．
予測候補の数を上位 1 件から上位 3 件までで変化させた場
合の正解率の平均が高い上位 k 人のユーザを選定する．次にその k 人のユーザの訓練データを統合して 1 つの訓練データとする．これを基に学習を行い予測モデルを作成する．複数のユーザデータを用いて作成したモデルに対し，対象ユーザのテスト
データの 501 件目以降を用いて正解率を算出する．

4. 2. 2 実 験 結 果
他のユーザのデータを用いた利用カテゴリの予測結果について述べる．訓練データに用いるユーザの数を 1 名，3 名，5 名，

7 名と変化させた場合の予測候補数 5 件までの正解率の平均と自身のデータを用いて作成した予測モデルの正解率の平均を大カテゴリについては表 5，小カテゴリについては表 6 に示す．2
つのカテゴリ分けに共通することとして，1 名のユーザのデータを用いた予測モデルが最も正解率が低く，使用するユーザの数を増加させる毎に正解率が向上し，自身のモデルの正解率に近づくことが分かる．しかし，用いるユーザを 5 名から 7 名に増加させた場合は正解率が低下，または，ほぼ変化しないことが分かる．このことから複数のユーザのデータを用いることで正解率は向上するが，一定の数を超えると，正解率は向上しなくなることが分かる．

表 5 訓練データを変えた場合の利用カテゴリの予測結果（大カテゴリ）
用いるユーザ上位 1 件

上位 2 件

上位 3 件

上位 4 件

上位 5 件1名

0.40100.5886

0.68330.74540.7886

3名

0.42670.62410.72710.78700.82995名

0.43990.63740.74040.80170.84457名

0.43160.62280.72230.7858

ユーザ自身

0.47290.66570.76310.8292解率（大カテゴリ）
1 名のモデル3 名のモデル5 名のモデル7 名のモデル自身のモデル通信

0.74840.71150.70160.68750.7261SNS

0.42390.49620.52980.54820.5137ブラウザ

0.31530.37440.38740.40520.44760.8314ツール

0.12030.18570.28370.16630.35100.8756システム

0.11130.14840.1506

0.19460.1853ゲーム

0.14570.26980.27430.26980.3150情報

0.24240.24050.31250.30720.2668

仕事・勉強

0.16190.18830.21240.18540.2280写真

0.07930.29560.3104

0.2662

0.2367

マルチメディア

0.06790.14200.14310.14310.2384

娯楽

0.00720.03700.05780.02530.1722

平均

0.22030.28090.30580.29080.3346表 6 訓練データを変えた場合の利用カテゴリの予測結果（小カテゴリ）
用いるユーザ表 7 他のユーザデータを用いたモデルのカテゴリ別の上位 1 件の正上位 1 件

上位 2 件

上位 3 件

上位 4 件

上位 5 件

1名

0.35340.51740.61010.67080.7157

3名

0.37770.55340.65300.72010.7646

5名

0.38970.56510.66010.72840.77607名

0.38490.56470.66290.72960.7758

自身のモデル

0.43820.61010.71270.78300.8304カテゴリ

表 8 他のユーザデータを用いたモデルのカテゴリ別の上位 1 件の正解率（小カテゴリ）
1 名のモデル3 名のモデル5 名のモデル7 名のモデル自身のモデル

メッセージ

カテゴリ

0.60210.57000.56440.56690.5983通話

0.11310.16440.15680.1497

0.1973

メール

0.32510.3251

0.34890.33910.3844した時の正解率と自身のモデルを用いた時の正解率の差が小さSNS

0.64000.6846

0.68190.69630.6810ブラウザ

0.3666

0.38210.39920.35080.4762

く，他のユーザのデータを用いた場合でも一定の精度を保って

ツール

0.1746

0.26470.27010.26940.3498システム

0.20900.16680.22510.23500.2108

予測を行えることが分かる．

ゲーム

0.23450.34520.3492

0.34750.3539仕事効率化

0.05860.20280.2151

0.23930.2772

写真

0.24330.30490.32120.30400.3277

ニュース&雑誌

0.29410.30180.3466

0.35150.4677

エンタメ

0.02250.03320.03320.04210.1336

動画&エディタ

0.00860.08380.12170.13320.3501

地図&ナビ

0.02540.0342

0.09490.07950.0734

音楽&オーディオ

0.02610.04010.03210.03310.1110コミック

0.00000.00000.00000.00000.3052

カスタマイズ0.00000.00210.00210.00000.4444

健康&フィットネス

0.00000.00000.00000.00000.0359

書籍&参考書0.00000.00000.00000.00000.0552

平均

0.17600.2056

0.21910.21770.3070

小カテゴリに比べて大カテゴリの方が，5 名のデータを使用

次に，上位 1 件を予測する場合について訓練データに用いるユーザの数を変化させた時のカテゴリ別の正解率を算出した．
まず大カテゴリについて，上位 1 件を予測する場合の結果を
表 7 に示す．自身のデータを用いたモデルの正解率が最も高い
カテゴリは 6 個であった．自身のデータを用いたモデル以外の正解率の方が高いカテゴリも幾つかあり，「通信」のカテゴリ
は 1 名のモデル，「情報」，「写真」のカテゴリは 5 名のモデル，「SNS」，「システム」のカテゴリは 7 名のモデルの正解率が最

他のユーザデータを用いたモデル（5 名）との正解率の差の相も高かった．カテゴリ別の正解率の平均を見ると，自身のモデ関係数を見たところ，−0.4070 という値を得た．これは，カテルを除いた場合は，5 名の場合の正解率が最も高い．

ゴリの利用比率が低いほど正解率の差が大きくなる傾向，すな

次に小カテゴリについて，上位 1 件を予測する場合の結果をわち，カテゴリに属するアプリケーションの利用比率が低いほ

表 8 に示す．なお，どのモデルにおいても正解率が 0%のカテ

ど自身のモデルと比較して正解率が低下する傾向があることをゴリは表 8 から除外している．自身のデータを用いたモデルの示している．同様に大カテゴリに関しても，同じように相関係

正解率が最も高いカテゴリは 15 個あった．5 名のユーザを用数を算出したところ，−0.1319 という値を得た．小カテゴリといた場合の正解率に比べ，自身のモデルを用いた場合の正解率

同様の相関が見られるが程度としてはかなり低いことが分かる．

が 10%以上高いカテゴリは，「ニュース&雑誌」，「エンタメ」，

以上から他のユーザデータを使用して予測を行う場合，カテ「動画プレイヤー&エディタ」，「コミック」，「カスタマイズ」のゴリ別での結果に着目した場合でも，大カテゴリの方が精度を5 つのカテゴリであった．また大カテゴリと同様に，自身のモ保って予測を行うことができることが判明した．

デルを用いるよりも他のユーザのモデルを用いた方が正解率の高いカテゴリが幾つか見られ，「メッセージ」は 1 名のモデル，「SNS」，「システム」は 7 名のモデル，「地図&ナビ」は 5 名のモ
デルの正解率が最も高かった．表中のカテゴリに限定して，カ
テゴリ別の正解率の平均を見ると，大カテゴリと同じく，自身のモデルを除いた場合は，5 名の場合の正解率が最も高い．

5. 考

察

本章では，評価実験の結果を基に考察を行い，今後の課題を述べる．

5. 1 コンテキスト情報の選択
4. 1. 4 項でコンテキスト情報を組み合わせることで，予測精2 つのカテゴリ分けに関して，ユーザを 1 名から複数人に増度が向上することが確認できたが，コンテキスト項目別で見たやすことで全体の正解率と同様に，多くのカテゴリの正解率が場合，主観情報に関するコンテキストに比べて同伴者や活動の向上していることが分かる．また自身のモデルを用いる場合とコンテキスト情報を用いた方が予測精度が向上した．この結果

他のユーザを用いる場合（5 名）のカテゴリ別の正解率の差のから，コンテキストの項目間でアプリケーションの利用予測に平均は，小カテゴリは 8.79%であったのに対し，大カテゴリの対する効果の違いが確認できた．予測により効果のあるコンテ

正解率の差の平均は 2.88%であった．このことから，大カテゴ

キスト項目を発見し，コンテキストの入力項目を減らした場合

リの方が自身のモデルとのカテゴリ別の正解率の差が平均してでも予測精度を維持することができれば，ユーザの入力負担を小さいことが分かる．

軽減することができる．

小カテゴリに関してカテゴリの利用比率と，自身のモデルとまた現在取得しているコンテキストに関してもセンサ情報で代替できそうなコンテキストが存在する．例えば場所のコンテ

また本研究では，履歴の不足したユーザのアプリケーション

キストは GPS データ，健康のコンテキストに関しては歩数計の利用予測を目的として，他のユーザのデータを用いた利用ア

や心拍数計のデータを用いるといったことが考えられる．そのプリケーションのカテゴリ予測を同時に行った．その結果，単ようなセンサデータを代わりに使用した場合に精度がどの程度独のユーザのデータを用いるよりは複数人のデータを用いるこ出るのかを同時に検証する必要があると考える．

とで予測精度が向上し，自身のデータを用いたモデルを使用す

5. 2 他のユーザデータを用いた場合のカテゴリ予測の精度

る場合の予測精度に近づくことが判明した．また，カテゴリ数

4. 2. 2 項で他のユーザデータを用いてカテゴリ予測を行うとの少ないカテゴリ分けによる予測の方がより自身のモデルの正きに，自身のモデルに対しほぼ精度を下げずに予測できるカテ
ゴリと，予測精度が下がるカテゴリが存在した．

解率に近づくことも判明した．
今後の課題としては，センサ情報と高度なコンテキスト情報

小カテゴリに関して，5 名のデータを使用した予測モデルのを組み合わせたアプリケーションの利用予測の精度の調査や他正解率に着目した場合，「メッセージ」，「メール」といったカテのユーザデータを用いた予測により適したカテゴリ分けの検討

ゴリの正解率は自身のモデルの正解率と比較して 90%以上の正などが挙げられる．

解率であったが，「エンタメ」，「音楽&オーディオ」といったカ
テゴリは自身のモデルの正解率と比較して 50%以下の正解率であった．
小カテゴリに関して，各カテゴリに平均して 51.85 種類のア
プリケーションが属するが，利用比率の比較的高い「メッセー
ジ」や「メール」に属するアプリケーションがそれぞれ 11 種
類と 17 種類であり利用比率に対してアプリケーションの種類が少ないのに対し，利用比率が比較的低い「エンタメ」や「音謝

辞本研究の一部は，文部科学省科学研究費補助金・基盤研究(A)(26240013)，文部科学省国家課題対応型研究開発推進事業- 次世代 IT 基盤構築のための研究開発 -「社会システム・サー
ビスの最適化のための IT 統合システムの構築」，マイクロソ
フト CORE プロジェクト (CORE 11) の研究助成によるものである．ここに記して謝意を表す．

楽&オーディオ」にはそれぞれ 68 種類と 63 種類のアプリケー
ションが属しており，利用比率に対してアプリケーションの種類が多い．
「エンタメ」や「音楽&オーディオ」としてカテゴリにまとめたときに，「メッセージ」や「メール」のカテゴリに比べてユーザの利用傾向にばらつきがあることが伺える．このような，利用頻度が低くユーザの利用傾向が異なるカテゴリのア
プリケーションに関しては，自身のモデルと同等の精度を保って予測を行うことが難しいと考えられる．
カテゴリ数を少なくし，1 つのカテゴリの利用比率を高める
ことが対策として考えられるが，ユーザビリティの観点からは好ましいとは言えない．そこで，ユーザの利用傾向が類似しているアプリケーションを調査し，利用傾向が類似しているアプ
リケーション群を新たなカテゴリとして定義し直し，他のユーザデータを用いたカテゴリ予測に適用することが対策として考えられる．

6. お わ り に本研究では，ユーザのスマートフォン使用履歴を収集するシ
ステムである「こんてきすとモンスター」で収集したアプリ
ケーション利用履歴とコンテキスト情報を活用したユーザの利用アプリケーションの予測を行った．
アプリケーション利用履歴の時系列性を考慮して，時系列
データの長期的な記憶が可能である再帰的ニューラルネット
ワークの 1 種である LSTM（Long Short-Term Memory）を用いてネットワークを構築し，ユーザのアプリケーション履歴とコンテキスト情報を入力として利用アプリケーションの予測を行った．その結果，コンテキスト情報を用いた予測モデルの方が，コンテキスト情報がない予測モデルに比べて正解率が高いことが分かり，特に利用頻度が低いアプリケーションで正解率が向上することが判明した．

文

献[1] K. Ayankoya, A.P. Calitz, and J.H. Greyling, Using Neural
Networks for Predicting Futures Contract Prices of White
Maize in South Africa, Proc. the Annual Conf. of the South
African Institute of Computer Scientists and Information
Technologists, vol.3, pp.1–10, 2016.
[2] R. Baeza-yates, D. Jiang, and B. Harrison, Predicting The
Next App That You Are Going To Use, Proc. ACM Int’l
Conf. on Web Search and Data Mining, pp.285–294, 2015.
[3] A. Girardello and F. Michahelles, AppAware : Which Mobile Applications Are Hot ?, Proc. Int’l Conf. on Human
Computer Interaction with Mobile Devices and Services,
pp.431–434, 2010.
[4] S. Hochreiter and J.J. Schmidhuber,Long Short-Term
Memory, Neural Computation, vol.9, no.8, pp.1–32, 1997.
[5] S.L. Jones, D. Ferreira, S. Hosio, J. Goncalves, and V.
Kostakos, Revisitation Analysis of Smartphone App Use,
Proc. Int’l Conf. on Ubiquitous Computing, pp.1197–1208,
2015.
[6] Y. LeCun, Y. Bengio, and G. Hinton, Deep learning,
Nature, vol.521, no.7553, pp.43–444, 2015.
[7] 大澤 純, 岩田麻祐, 原 隆浩, 西尾章治郎, ユーザのコンテキス
トと利用アプリケーションの関連性調査のためのゲームを用いたアプリケション利用ログ収集システム,
データ工学と情報
マネジメントに関するフォーラム (DEIM), 2013.
[8] A.M. Rather, A. Agarwal, and S. V.N, Recurrent neural network and a hybrid model for prediction of stock returns, Expert System with Application, vol.42, pp.3234–
3241, 2015.
[9] C. Shin, J.H. Hong, and A.K. Dey, Understanding andPrediction of Mobile Application Usage for Smart Phones,
Proc. Int’l Conf. on Pervasive and Ubiquitous Computing,pp.173–182, 2012.
[10] Y. Zhang, H. Dai, C. Xu, J. Feng, T. Wang, J. Bian, B.
Wang, and T.Y. Liu, Sequential Click Prediction for Sponsored Search with Recurrent Neural Networks, Association for the Advancement of Artificial Intelligence, pp.1369–
1375, 2014.