(57)【要約】【課題】機能の実行履歴に基づいた適切な機能の推薦を行うこと。【解決手段】機能推薦装置１は、実行された機能を識別する機能識別情報を受け付ける機能実行受付部１２と、受け付けられた際の時間情報及び機能推薦装置１の位置情報のうち少なくとも１つを含む環境情報を取得する環境情報取得部１４と、機能識別情報と環境情報とが関連付けられた実行履歴情報を記憶する実行履歴記憶部１０と、機能識別情報と当該機能識別情報が識別する機能の推薦の優先度とが環境情報の所定の単位毎に関連付けられた機能優先度情報が記憶された機能推薦モデル１５と、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報を実行履歴情報に基づいて生成する波及情報生成部１６と、実行履歴情報と波及情報とに基づいて機能優先度情報を更新する機能推薦モデル更新部１８と、を備える。【選択図】図１
2015001927.tif 000002
【特許請求の範囲】
【請求項１】
複数の機能の中から特定の一又は複数の機能を推薦する機能推薦装置であって、
実行された機能を識別する機能識別情報を受け付ける機能実行受付手段と、
前記機能実行受付手段によって機能識別情報が受け付けられた際の時間情報及び当該機能推薦装置の位置情報のうち少なくとも１つを含む環境情報を取得する環境情報取得手段と、
前記機能実行受付手段によって受け付けられた機能識別情報と、前記環境情報取得手段によって取得された環境情報とが関連付けられた実行履歴情報を記憶する機能実行履歴記憶手段と、
機能識別情報と、当該機能識別情報が識別する機能の推薦の優先度とが、環境情報の所定の単位毎に関連付けられた機能優先度情報が記憶された機能推薦モデルと、
前記機能実行受付手段によって機能識別情報が受け付けられると、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報を、前記機能実行履歴記憶手段によって記憶された実行履歴情報に基づいて生成する波及情報生成手段と、
前記機能実行履歴記憶手段によって記憶された実行履歴情報と、前記波及情報生成手段によって生成された波及情報とに基づいて、前記機能推薦モデルに記憶された機能優先度情報を更新する機能推薦モデル更新手段と、
前記機能推薦モデルに記憶された機能優先度情報に基づいて、推薦する機能を決定する推薦機能決定手段と、
前記推薦機能決定手段によって決定された推薦する機能に関する情報を出力する推薦機能出力手段と、
を備える機能推薦装置。
【請求項２】
前記波及情報生成手段は、前記機能実行履歴記憶手段によって記憶された実行履歴情報の累計回数に基づいて波及情報を生成する、
ことを特徴とする請求項１に記載の機能推薦装置。
【請求項３】
前記波及情報生成手段は、前記機能実行履歴記憶手段によって記憶された実行履歴情報の分散情報に基づいて波及情報を生成する、
ことを特徴とする請求項１に記載の機能推薦装置。
【請求項４】
前記波及情報生成手段は、前記機能実行履歴記憶手段によって記憶された実行履歴情報の環境情報毎の分散情報に基づいて、環境情報毎に波及情報を生成する、
ことを特徴とする請求項１に記載の機能推薦装置。
【請求項５】
前記波及情報生成手段は、前記機能実行履歴記憶手段によって記憶された実行履歴情報の機能識別情報毎及び環境情報毎の分散情報に基づいて、機能毎に環境情報毎の波及情報を生成する、
ことを特徴とする請求項１に記載の機能推薦装置。
【請求項６】
前記波及情報生成手段は、他の機能推薦装置の前記機能実行履歴記憶手段によって記憶された実行履歴情報にさらに基づいて波及情報を生成する、
ことを特徴とする請求項３〜５の何れか一項に記載の機能推薦装置。
【請求項７】
前記波及情報生成手段は、前記機能実行履歴記憶手段によって記憶された実行履歴情報の累計回数に基づいて生成した波及情報と、当該実行履歴情報の分散情報に基づいて生成した波及情報とを重みづけ合成することによって、波及情報を生成する、
ことを特徴とする請求項１に記載の機能推薦装置。
【請求項８】
前記波及情報生成手段は、前記機能実行履歴記憶手段によって記憶された実行履歴情報のうち、所定の範囲の環境情報の実行履歴情報に基づいて波及情報を生成する、
ことを特徴とする請求項１〜７の何れか一項に記載の機能推薦装置。
【請求項９】
複数の機能の中から特定の一又は複数の機能を推薦する機能推薦装置であって、機能を識別する機能識別情報と、当該機能識別情報が識別する機能の推薦の優先度とが、時間情報及び当該機能推薦装置の位置情報のうち少なくとも１つを含む環境情報の所定の単位毎に関連付けられた機能優先度情報が記憶された機能推薦モデルを備える機能推薦装置により実行される機能推薦方法であって、
実行された機能の機能識別情報を受け付ける機能実行受付ステップと、
前記機能実行受付ステップにおいて機能識別情報が受け付けられた際の環境情報を取得する環境情報取得ステップと、
前記機能実行受付ステップにおいて受け付けられた機能識別情報と、前記環境情報取得ステップにおいて取得された環境情報とが関連付けられた実行履歴情報を記憶する機能実行履歴記憶ステップと、
前記機能実行受付ステップにおいて機能識別情報が受け付けられると、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報を、前記機能実行履歴記憶ステップにおいて記憶された実行履歴情報に基づいて生成する波及情報生成ステップと、
前記機能実行履歴記憶ステップにおいて記憶された実行履歴情報と、前記波及情報生成ステップにおいて生成された波及情報とに基づいて、前記機能推薦モデルに記憶された機能優先度情報を更新する機能推薦モデル更新ステップと、
前記機能推薦モデルに記憶された機能優先度情報に基づいて、推薦する機能を決定する推薦機能決定ステップと、
前記推薦機能決定ステップにおいて決定された推薦する機能に関する情報を出力する推薦機能出力ステップと、
を含む機能推薦方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、携帯端末装置において、日時や位置のような環境情報に応じて、ユーザの操作履歴に基づいて機能を推薦することにより、ユーザが目的の機能を選択する手間を省くことや、ユーザの携帯端末操作の支援を行う技術に関する。
【背景技術】
【０００２】
従来から、提供する機能を当該機能に対応付けられたアイコンとして画面に提示し、提示されたアイコンをユーザが選択することで、選択されたアイコンに対応付けられた機能が実行される装置が知られている。たとえば、提示する推薦機能を選択するために、ユーザの機能実行履歴に基づいて、日時や位置によって当該ユーザに提示する推薦機能を決定する技術がある。これにより、ユーザの目的の機能を選択する手間や、その後の操作の手間を省くことが可能となる（下記特許文献１参照）。
【０００３】
機能の推薦のためには機能実行履歴に基づく機能推薦モデルを用いる。日時や位置を軸とする多次元空間において機能実行履歴を蓄積した値を機能優先度とし、機能推薦時は日時や位置ごとの各機能の機能優先度を比較することにより、機能を推薦する。
【０００４】
特許文献１では１回の実行履歴で蓄積される日時や位置のような環境情報の分解能をあらかじめ設定する。設定した分解能が大きい場合は、実行履歴が機能推薦モデルに反映される日時や位置の範囲が大きくなるため、推薦にゆらぎを持たせることができ、機能を実行した日時や位置と異なる場合でも機能を推薦することを可能としている。実行履歴を異なる日時や位置に対して蓄積し、機能の推薦に活用することを、以降では履歴の波及と呼ぶ。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２０１１−１６０１４５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１では機能実行履歴の波及方法が静的であるため、実行履歴回数の増加により予測精度が落ちる可能性がある。たとえば、実行履歴回数が少ないときに、履歴の波及範囲が狭く設定されている場合、実行履歴がない日時や位置の状況において機能の推薦を行うことが容易ではなくなる。それに対応するために履歴の波及範囲を大きく設定した場合、履歴が少ないときは実行履歴のない日時や位置において履歴を波及させることができるため、機能の推薦を行うことも可能となる。
【０００７】
しかしながら、実行履歴回数が増加していくと、履歴が少ない場合の波及方法をそのまま適用すると、波及範囲が大きすぎるために、必要以上に他の日時や位置のような環境情報において実行された機能が推薦されてしまい、適切な機能推薦を行うことが容易ではなくなる。
【０００８】
そこで、本発明は、かかる課題に鑑みて為されたものであり、機能の実行履歴に基づいた適切な機能の推薦を行うことができる機能推装置及び機能推薦方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記課題を解決するため、本発明の機能推薦装置は、複数の機能の中から特定の一又は複数の機能を推薦する機能推薦装置であって、実行された機能を識別する機能識別情報を受け付ける機能実行受付手段と、機能実行受付手段によって機能識別情報が受け付けられた際の時間情報及び当該機能推薦装置の位置情報のうち少なくとも１つを含む環境情報を取得する環境情報取得手段と、機能実行受付手段によって受け付けられた機能識別情報と、環境情報取得手段によって取得された環境情報とが関連付けられた実行履歴情報を記憶する機能実行履歴記憶手段と、機能識別情報と、当該機能識別情報が識別する機能の推薦の優先度とが、環境情報の所定の単位毎に関連付けられた機能優先度情報が記憶された機能推薦モデルと、機能実行受付手段によって機能識別情報が受け付けられると、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報を、機能実行履歴記憶手段によって記憶された実行履歴情報に基づいて生成する波及情報生成手段と、機能実行履歴記憶手段によって記憶された実行履歴情報と、波及情報生成手段によって生成された波及情報とに基づいて、機能推薦モデルに記憶された機能優先度情報を更新する機能推薦モデル更新手段と、機能推薦モデルに記憶された機能優先度情報に基づいて、推薦する機能を決定する推薦機能決定手段と、推薦機能決定手段によって決定された推薦する機能に関する情報を出力する推薦機能出力手段と、を備える。
【００１０】
このような機能推薦装置によれば、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報が実行履歴情報に基づいて生成され、実行履歴情報と生成された波及情報とに基づいて機能優先度情報が更新される。つまり、実行履歴情報に基づいて、動的に機能優先度情報を更新する方法が決定され、当該方法に基づいて機能優先度情報が更新される。そして、更新された機能優先度情報に基づいて、推薦する機能が出力される。よって、機能の実行履歴に基づいた適切な機能の推薦を行うことができる。
【００１１】
また、本発明の機能推薦装置において、波及情報生成手段は、機能実行履歴記憶手段によって記憶された実行履歴情報の累計回数に基づいて波及情報を生成することが好ましい。
【００１２】
また、本発明の機能推薦装置において、波及情報生成手段は、機能実行履歴記憶手段によって記憶された実行履歴情報の分散情報に基づいて波及情報を生成することが好ましい。
【００１３】
また、本発明の機能推薦装置において、波及情報生成手段は、機能実行履歴記憶手段によって記憶された実行履歴情報の環境情報毎の分散情報に基づいて、環境情報毎に波及情報を生成することが好ましい。
【００１４】
また、本発明の機能推薦装置において、波及情報生成手段は、機能実行履歴記憶手段によって記憶された実行履歴情報の機能識別情報毎及び環境情報毎の分散情報に基づいて、機能毎に環境情報毎の波及情報を生成することが好ましい。
【００１５】
また、本発明の機能推薦装置において、波及情報生成手段は、他の機能推薦装置の機能実行履歴記憶手段によって記憶された実行履歴情報にさらに基づいて波及情報を生成することが好ましい。
【００１６】
また、本発明の機能推薦装置において、波及情報生成手段は、機能実行履歴記憶手段によって記憶された実行履歴情報の累計回数に基づいて生成した波及情報と、当該実行履歴情報の分散情報に基づいて生成した波及情報とを重みづけ合成することによって、波及情報を生成することが好ましい。
【００１７】
また、本発明の機能推薦装置において、波及情報生成手段は、機能実行履歴記憶手段によって記憶された実行履歴情報のうち、所定の範囲の環境情報の実行履歴情報に基づいて波及情報を生成することが好ましい。
【００１８】
ところで、本発明は、上記のように装置の発明として記述できる他に、以下のように方法の発明としても記述することができる。これはカテゴリが異なるだけで、実質的に同一の発明であり、同様の作用及び効果を奏する。
【００１９】
即ち、本発明に係る機能推薦方法は、複数の機能の中から特定の一又は複数の機能を推薦する機能推薦装置であって、機能を識別する機能識別情報と、当該機能識別情報が識別する機能の推薦の優先度とが、時間情報及び当該機能推薦装置の位置情報のうち少なくとも１つを含む環境情報の所定の単位毎に関連付けられた機能優先度情報が記憶された機能推薦モデルを備える機能推薦装置により実行される機能推薦方法であって、実行された機能の機能識別情報を受け付ける機能実行受付ステップと、機能実行受付ステップにおいて機能識別情報が受け付けられた際の環境情報を取得する環境情報取得ステップと、機能実行受付ステップにおいて受け付けられた機能識別情報と、環境情報取得ステップにおいて取得された環境情報とが関連付けられた実行履歴情報を記憶する機能実行履歴記憶ステップと、機能実行受付ステップにおいて機能識別情報が受け付けられると、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報を、機能実行履歴記憶ステップにおいて記憶された実行履歴情報に基づいて生成する波及情報生成ステップと、機能実行履歴記憶ステップにおいて記憶された実行履歴情報と、波及情報生成ステップにおいて生成された波及情報とに基づいて、機能推薦モデルに記憶された機能優先度情報を更新する機能推薦モデル更新ステップと、機能推薦モデルに記憶された機能優先度情報に基づいて、推薦する機能を決定する推薦機能決定ステップと、推薦機能決定ステップにおいて決定された推薦する機能に関する情報を出力する推薦機能出力ステップと、を含む。
【発明の効果】
【００２０】
本発明によれば、機能の実行履歴に基づいた適切な機能の推薦を行うことができる。
【図面の簡単な説明】
【００２１】
【図１】本発明の実施形態に係る機能推薦装置の機能ブロック図である。
【図２】本発明の実施形態に係る機能推薦装置における機能推薦時の画面例を示す図である。
【図３】本発明の実施形態に係る機能推薦装置におけるハードウェア構成を示す図である。
【図４】機能ＩＤテーブルの例を表す図である。
【図５】実行履歴情報のテーブル例を示す図である。
【図６】波及範囲を示す波及パラメータを求める例１を示す図である。
【図７】波及範囲を示す波及パラメータを求める例２を示す図である。
【図８】波及分布関数を示す波及パラメータを求める例を示す図である。
【図９】緯度経度で位置情報が表される場合の機能優先度マップにおける波及情報のイメージ図である。
【図１０】位置情報が意味データで表される場合の位置間を疑似的な距離で表したグラフ例を示す図である。
【図１１】位置情報が意味データで表される場合の位置２次元空間へのマッピングによって距離を計算する例を示す図である。
【図１２】実行履歴情報の分散情報を用いて波及パラメータを生成する例を示す図である。
【図１３】波及パラメータを用いて機能推薦モデルを更新する例を示す図である。
【図１４】本発明の実施形態に係る機能推薦装置で実行される処理（機能推薦方法）を示すフローチャートである。
【図１５】動的な波及方法決定の有効性を示す図である。
【図１６】本発明の第１実施形態の変形例１に係る機能推薦装置の機能ブロック図である。
【図１７】本発明の第１実施形態の変形例２に係る機能推薦装置の機能ブロック図である。
【発明を実施するための形態】
【００２２】
本発明の実施形態に係る機能推薦装置及び機能推薦方法について、図面を用いて説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。
【００２３】
［第１実施形態］
まず、本実施形態に係る機能推薦装置１の構成について説明する。図１は、本実施形態に係る機能推薦装置１の構成図である。
【００２４】
機能推薦装置１は、スマートフォン等の携帯端末である。機能推薦装置１は携帯端末に限られず、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）等であってもよい。機能推薦装置１は、当該装置が備える複数の機能の中から特定の一又は複数の機能を推薦する。具体的に、機能推薦装置１は、ユーザに対していくつかの機能を提示することによって機能を推薦し、ユーザはそれら機能を実行することで、当該機能に基づくサービスの提供を受けることができる。機能の一例として、機能推薦装置１で実行されるソフトウェアアプリケーションが挙げられる。機能推薦装置１において、機能はアイコンと対応づいており、機能推薦装置１は、提供する機能を当該機能に対応づけられたアイコンとして画面に提示し、提示されたアイコンをユーザが選択することで、選択されたアイコンに対応づけられた機能が実行される。
【００２５】
機能推薦装置１は、ユーザの過去の操作履歴から日時や位置に対して機能の実行（起動）の確率情報（尤度、優先度）を学習し、操作時に尤度の高い機能に対応するアイコンを提示することにより推薦する。図２は、機能推薦装置１における機能推薦時の画面例を示す図である。たとえば、図２の画面例では、主に、当該画面表示時にユーザによる尤度の高い機能に対応するアイコンが４つ表示されている。具体的には、図２に示す通り、機能推薦装置１の電車の乗換案内のルート検索サービスを利用するためのアイコンＩ１、機能推薦装置１の地図機能を実行するための地図アイコンＩ２、機能推薦装置１の電話機能を実行するための電話アイコンＩ３、及び機能推薦装置１の天気予報閲覧機能を実行するための天気アイコンＩ４が表示されている。
【００２６】
続いて、機能推薦装置１の構成について説明する。図１にて、本実施形態に係る機能推薦装置１の構成を示す機能ブロック図を示す。図１に示す通り、機能推薦装置１は、機能実行受付部１２（機能実行受付手段）、環境情報取得部１４（環境情報取得手段）、波及情報生成部１６（波及情報生成手段）、実行履歴記憶部１０（機能実行履歴記憶手段）、機能推薦モデル更新部１８（機能推薦モデル更新手段）、機能推薦モデル１５（機能推薦モデル）、推薦機能決定部２２（推薦機能決定手段）、及び推薦機能表示部２４（推薦機能出力手段）を含んで構成される。
【００２７】
機能推薦装置１は、ＣＰＵ等のハードウェアから構成されているものである。図３は、機能推薦装置１のハードウェア構成の一例を示す図である。図１に示されている機能推薦装置１は、物理的には、図３に示すように、ＣＰＵ１００、主記憶装置であるＲＡＭ１０１及びＲＯＭ１０２、テンキーやディスプレイなどの入出力装置１０３、通信モジュール１０４、及び補助記憶装置１０５などを含むコンピュータシステムとして構成されている。
【００２８】
図１に示す機能推薦装置１の各機能ブロックの機能は、図３に示すＣＰＵ１００、ＲＡＭ１０１等のハードウェア上に所定のコンピュータソフトウェアを読み込ませることにより、ＣＰＵ１００の制御のもので入出力装置１０３、通信モジュール１０４、及び補助記憶装置１０５を動作させるとともに、ＲＡＭ１０１におけるデータの読み出し及び書き込みを行うことで実現される。
【００２９】
以下、図１に示す機能推薦装置１の各機能ブロックを説明する。
【００３０】
機能実行受付部１２は、実行された機能を識別する機能識別情報（機能ＩＤ）を受け付ける。具体的に、機能実行受付部１２は、まず、ユーザによる機能実行を受け付ける。機能実行は、機能推薦装置１の表示画面上に表示されている機能のアイコンをユーザが選択することによって機能実行受付部１２は当該機能が実行されたことを認識する。次に、機能実行受付部１２は、機能推薦装置１に予め記憶された、機能名称と当該機能の識別情報である機能ＩＤとが対応付いた機能ＩＤテーブルを参照し、選択されたアイコンに対応する機能の機能ＩＤを出力する。図４は、機能ＩＤテーブルのテーブル例を示す図である。例えば、図２に示す画面が表示されていて、ユーザが電話アイコンを選択した場合、機能実行受付部１２は図４に示す機能ＩＤテーブルを参照し、電話の機能ＩＤである“０００１”を出力する。機能実行受付部１２によって受け付けられる機能は、機能推薦装置１によって推薦されたものでもよいし、推薦されていないものでもよい。
【００３１】
環境情報取得部１４は、機能実行受付部１２によって機能識別情報が受け付けられた際の時間情報及び機能推薦装置１の位置情報のうち少なくとも１つを含む環境情報を取得する。環境情報取得部１４は、機能推薦装置１が指示するタイミングなど、任意のタイミングで環境情報を取得してもよい。環境情報取得部１４が取得する環境情報の具体例として、現在の日付、曜日、時間、及び機能推薦装置１が存在している位置が挙げられる。位置情報は、ＧＰＳ（Ｇｌｏｂａｌ  Ｐｏｓｉｔｉｏｎｉｎｇ  Ｓｙｓｔｅｍ）や携帯電話基地局情報を用いて取得される。位置情報は、緯度・経度データでも、意味データでもよい。意味データとは、たとえば、商業施設や病院、図書館など、位置が持つ意味を表現したデータである。意味データを取得するためには、既知の知識データを用いて、意味的分類を行うことが必要となる。具体的には、たとえば、緯度・経度やＡＰＮ（Ａｃｃｅｓｓ  Ｐｏｉｎｔ  Ｎａｍｅ）のような、端末で取得可能なデータを取得した後、予め機能推薦装置１に記憶された参照テーブルによって当該データが意味的なデータに変換される。なお、環境情報は、連続的であってもよいし、サンプリングにより離散的に表現されていてもよい。
【００３２】
実行履歴記憶部１０は、機能実行受付部１２によって受け付けられた機能識別情報と、環境情報取得部１４によって取得された環境情報とが関連付けられた実行履歴情報を記憶する。具体的に、実行履歴記憶部１０は、機能実行受付部１２によって受け付けられた、ユーザが実行した機能の機能ＩＤと、環境情報取得部１４によって取得された環境情報とを入力とし、実行履歴情報としてデータベースに記憶する。実行履歴記憶部１０は、後述の波及情報生成処理の際に、データベースに記憶された実行履歴情報もしくは当該実行履歴情報に対して統計処理などの所定の演算処理がなされた後の実行履歴統計情報を出力する。データベースは、機能推薦装置１内のメモリ、もしくはネットワーク上のサーバどちらで管理されてもよい。図５は、実行履歴記憶部１０によって記憶される実行履歴情報のテーブル例を示す図である。図５に示すように、実行された機能に対応する機能ＩＤと、実行時の日付、時刻、緯度・経度が記憶されている。実行履歴記憶部１０によって記憶される情報は、後述の機能推薦モデル１５で使用される環境情報と同じものであってもよい。
【００３３】
機能推薦モデル１５は、機能識別情報と、当該機能識別情報が識別する機能の推薦の優先度とが、環境情報の所定の単位毎に関連付けられた機能優先度情報が記憶されたデータベースである。なお、優先度の値が大きいほど、対応する機能を推薦する優先度が高いことを示す。
【００３４】
機能推薦モデル１５として、機能優先度マップ及び／又は確信度マップを記憶してもよい。
【００３５】
ここで、機能優先度マップとは、考慮する環境情報の値（スロット）に対して、推薦される各機能の優先度を設定したマップである。また、スロットとは、日時や位置などの軸の最小単位が形成する範囲である。例えば、曜日と時間によって機能優先度マップが形成されており、曜日は各曜日、時間は１時間ごとにサンプリングされている場合、機能優先度マップのスロットは、「火曜日の１４時」に該当する範囲が１スロットである。
【００３６】
また、確信度マップとは、考慮する環境情報の値に対して、推薦される各機能の機能優先度に基づいて算出された確信度を各スロットが持つマップである。機能優先度マップと空間は同じあるが、値が優先度ではなく確信度である。なお、確信度とは、例えば、各スロット条件下で、実行回数の機能ごとの割合を示した値である。一例としては、午前９時における電話が使われる確率（確信度）として０．１４が挙げられる。
【００３７】
波及情報生成部１６は、機能実行受付部１２によって機能識別情報が受け付けられると、実行履歴情報に基づいて機能優先度情報を更新する方法に関する波及情報を、実行履歴記憶部１０によって記憶された実行履歴情報に基づいて生成する。具体的には、波及情報生成部１６は、実行履歴記憶部１０から取得した過去の実行履歴情報に基づき、機能推薦モデル更新部１８で用いる波及パラメータ（波及情報）を出力する。波及パラメータは、機能優先度マップの異なるスロットに履歴を波及させる範囲のスロット数を示す値であってもよいし、機能優先度マップを形成する環境情報を引数とする関数であってもよい。
【００３８】
波及パラメータが、機能優先度マップの異なるスロットに履歴を波及させる範囲のスロット数を示す値である場合、範囲の基準となる位置（波及元）は、機能を実行した時点（機能実行受付部１２が受け付けた時点）での環境情報を基に設定される。また、波及範囲内における機能優先度情報に対する加算値は、波及元の実行履歴の加算値と同じか、小さい値とする、ことが好ましい。これにより、波及元とは異なる環境情報における機能が実行される確率は、波及元の環境情報で当該機能が実行される確率よりも高くないことを考慮することが可能になる。
【００３９】
波及情報生成部１６で実行履歴記憶部１０から取得する過去の実行履歴情報は、実行履歴の累計回数としてもよい。この場合、波及パラメータは実行履歴の累計回数に基づいて決定される。波及パラメータが実行履歴を波及させる範囲を示す場合は、波及情報生成部１６は、実行履歴の累計回数が増加するにしたがって波及させる範囲を狭めていってもよい。これにより、履歴累計回数の増加に対して、機能優先度マップの密度が過度に大きくなることを防ぐことができ、適切な密度の機能優先度マップを生成することが可能となる。
【００４０】
ここで、機能優先度マップの密度とは、機能優先度マップの各スロットのうち、大きい優先度を示すスロットの多さである。例えば、機能優先度が０を示すスロットが多い場合は、密度は低くなり、機能優先度が高いスロットが多いと、密度は高くなる。機能優先度マップの密度が過度に大きい状態とは、各スロットに対して十分な機能優先度が記憶されているために、実行履歴回数が大きいにも関わらずスロット間で機能優先度の差が付きにくい状態を指す。
【００４１】
また、波及情報生成部１６は、累計回数が一定になると、波及範囲を固定化させることもある。これにより、履歴の波及範囲が過度に狭くなることを防いで、機能推薦にゆらぎを持たすことができる。
【００４２】
以下、具体例を用いて波及情報生成部１６の機能について説明する。図６は、波及パラメータＤを機能優先度マップの異なるスロットに履歴を波及させる範囲のスロット数とし、図６（ａ）の式によって波及パラメータを求めている。波及定数ｋは、波及範囲を計算するときに必要となる定数であり、機能推薦モデル１５の空間の軸の分解能の値としてもよい。たとえば、１時間おきの分解能をもつ２４時間の軸を機能推薦モデル１５がもつ場合、波及定数は２４となる。この波及定数を機能実行累計回数で割ることによって、波及パラメータが求まる。
【００４３】
具体的に、図６（ｂ）に示す通り、機能実行累計回数Ｎが１２の場合、波及パラメータＤ＝２４×（１／１２）＝２となる。そして、図６（ｂ）の場合、機能実行受付部１２により機能識別情報が受け付けられた時刻（波及元）を基準時刻０として±２時間のスロットに対して当該機能の優先度を１加算するという波及パラメータが波及情報生成部１６によって生成される。一方、図６（ｃ）に示す通り、機能実行累計回数Ｎが２４の場合、波及パラメータＤ＝２４×（１／２４）＝１となる。そして、図６（ｃ）の場合、機能実行受付部１２により機能識別情報が受け付けられた時刻を基準時刻０として±１時間のスロットに対して当該機能の優先度を１加算するという波及パラメータが波及情報生成部１６によって生成される。
【００４４】
なお、波及パラメータを履歴の波及範囲と設定した場合、波及範囲内における機能優先度情報に対する加算値の大きさは波及パラメータで表すことができない。その場合は、たとえば、図６のように波及元の加算値と同じ値としてもよいし、波及パラメータで示された波及範囲の端で加算値が０になるように線形または非線形に変化させてもよい。図７は、図６と同じ波及範囲で加算値を線形に変化させた例である。図７に示すグラフでは、波及元を最大値として、加算値は線形に減少している。
【００４５】
一方、波及パラメータが機能優先度マップの空間を形成する環境情報を引数とする関数で表される場合の具体例を図８に示す。この場合、実行履歴の累計回数が増加するにしたがって、機能優先度マップの正規分布の分散が小さくなり、波及範囲も狭くなる。加算する優先度の大きさについては、合計１の確率密度関数ととらえ、各スロットで正規分布の値を加算して優先度を算出してもよいし、波及元のスロットでの加算値を１となるように正規分布の関数を変形してもよい。図８において、Ｐに基づく正規分布が，波及の分布を表す。また、図８に示す通り、波及範囲における加算値の大きさは、波及元を最大値として、非線形に減少する。
【００４６】
また、機能推薦モデル１５の機能優先度マップ空間を形成している環境情報に位置情報が含まれている場合について説明する。前述の通り、位置情報は緯度・経度で表現される場合と意味データで表現される場合がある。
【００４７】
位置情報が緯度・経度で表現される場合は、緯度と経度で機能優先度マップの２つの軸を構成する。機能毎に、位置情報のみによって優先度の値を示す３次元の機能優先度マップにしてもよいし、時間や曜日と組み合わせて、４次元以上の機能優先度マップにしてもよい。３次元の機能優先度マップを用いて、位置に対して履歴を波及させるイメージを図９に示す。図９に示す円錐は、所定の緯度（ｘ軸）及び経度（ｙ軸）を中心とした範囲（ｚ軸が優先度を示す）における機能優先度情報の加算値を示す。
【００４８】
位置情報が意味データで表現される場合は、位置情報をグラフ構造化させ、分類位置間の距離を疑似的に設定することもある。図１０は、ノード間の数字を擬似的な距離で示したグラフ例を示す図である。図１０の例では、波及範囲を表す波及パラメータとして「２」を設定し、宿泊施設で機能Ａを実行した場合、宿泊施設から距離２以内の位置にあるのは娯楽施設と商業施設であるため、機能Ａの娯楽施設と商業施設の機能優先度マップにのみ加算値１が波及する。また、図１１に示すようなＸ軸方向及びＹ軸方向の距離で構成されるマップ上に各分類位置をプロットし、距離の計算にはユークリッド距離を用いることもある。また、位置ごとに各位置への距離をもつテーブルを保持することもある。
【００４９】
波及情報生成部１６で実行履歴記憶部１０から取得する過去の実行履歴情報は、過去の当該ユーザの実行履歴の分散情報としてもよい。分散情報は、実行履歴の回数によって大きく異なるため、機能優先度マップを正規化した確信度マップの分散値を用いることが好ましい。具体的には、機能優先度マップの環境情報の各スロットの条件でそれぞれの機能が実行される確率を示す、条件付き事後確率の値を確信度として求める。そのため、分散値は０から１となる。
【００５０】
過去の当該ユーザの実行履歴の分散情報を用いて波及パラメータを求める具体例を図１２に示す。図１２に示すグラフは、確信度マップで算出した確信度の分散値に基づき、波及分布を示すガウス分布の分散値を波及パラメータとした正規分布関数である。ただし、波及パラメータはガウス分布の分散値ではなく、波及範囲を示すスロット数や、環境情報を引数とする関数、またはそれらの組み合わせ、としてもよい。ここで、確信度の分散値は、考慮する確信度から算出した平均と分散を入力として求める。確信度マップ中のどの確信度を考慮するのかは、全機能におけるすべてのスロットの確信度から分散を求めてもよいし、確信度マップを形成する環境情報を限定して、確信度の分散を求めてもよい。
【００５１】
波及情報生成部１６で実行履歴記憶部１０から取得する過去の実行履歴情報は、機能優先度マップ空間を形成する環境情報ごとに求めた、実行履歴の分散情報としてもよい。これにより、環境情報毎に、機能優先度マップを形成する各軸に対しての相関値がわかり、波及方法を変えることが可能となる。
【００５２】
波及情報生成部１６で実行履歴記憶部１０から取得する過去の実行履歴情報は、推薦候補である機能毎に、かつ機能優先度マップ空間を形成する環境情報ごとに求めた、実行履歴の分散情報としてもよい。これにより、機能毎に、機能優先度マップを形成する各軸に対しての相関値がわかり、波及方法を変えることが可能となる。たとえば、地図機能は、位置との相関が強いため、波及範囲を狭める、といった効果が期待できる。
【００５３】
波及情報生成部１６で実行履歴記憶部１０から取得する過去の実行履歴情報を、過去の実行履歴の分散情報とする場合、一定期間でフィルタリングした分散情報を用いてもよい。一定期間とは、直近の期間でもよいし、過去の一定期間でもよい。これにより、時期の変化による、機能実行パターンの変化に対応することができる。
【００５４】
波及情報生成部１６は、実行履歴記憶部１０から過去の実行履歴の累計回数と過去の実行履歴の分散情報を取得し、それぞれ波及パラメータを決定し、２つの波及パラメータを重みづけ合成することによって１つの波及パラメータを決定してもよい。前述の通り、波及パラメータの表現は複数考えられるが、２つ以上の波及パラメータを重み付け合成する際は、波及パラメータは同じ表現方法とし、たとえば、波及範囲を示すスロット数や、波及分布を示す正規分布の分散値とする。具体的な例を挙げると、波及パラメータが波及範囲を示すスロット数を示し、実行履歴の累計回数によって求めた波及パラメータが２、実行履歴の分散情報から求めた波及パラメータが４であった場合に、２つのパラメータを１対１で合成し、波及パラメータは３となる。このとき、重みの割合は１対１ではなく、実行履歴情報の重要度に合わせて変化させてもよい。
【００５５】
機能推薦モデル更新部１８は、実行履歴記憶部１０によって記憶された実行履歴情報と、波及情報生成部１６によって生成された波及パラメータとに基づいて、機能推薦モデル１５に記憶された機能優先度情報を更新する。機能推薦モデル更新部１８は、機能実行受付部１２で受け付けられたユーザが実行した機能と、波及情報生成部１６によって生成された波及パラメータとに基づいて、機能推薦モデル１５に記憶された機能優先度情報を更新してもよい。なお、機能推薦モデル更新部１８は、機能推薦モデル１５に記憶された機能優先度情報のうち、更新する機能優先度情報を判断するために、実行履歴記憶部１０によって記憶された実行履歴情報を利用する。
【００５６】
図１３（ａ）は、機能推薦モデル１５に記憶されている電話機能の機能優先度マップの一例を示す図である。機能推薦モデル更新部１８は、例えば、電話機能が１２：００に実行され、波及範囲を示す波及パラメータが２であった場合、まず機能推薦モデル１５から、図１３（ａ）に示す電話機能の機能優先度マップを取得する。波及パラメータが２であるため、１０：００から１４：００のスロットに対し、優先度１を加算する。加算後の機能優先度マップを図１３（ｂ）に示す。
【００５７】
ここで、波及元の１２：００のスロットに加算する優先度は１ではない値でもよいし、波及範囲内のスロットに加算する優先度は、波及元の１２：００のスロットに加算する優先度と等しいか、もしくは小さくてもよい。また、優先度に対する演算は、加算でなく、減算や積算でもよい。機能優先度マップ空間が、図１３のような２次元空間よりも大きい次元空間になった場合は、マップ空間を構成する環境情報それぞれの波及範囲をどちらも満たすスロットに対して優先度を加算してもよいし、いずれかの波及範囲を満たせば優先度を加算してもよい。具体例を挙げて説明すると、前者は、例えばマップ空間を構成する環境情報が曜日と時間であり、曜日の波及範囲が隣接する１曜日、時間の波及範囲が１時間であった場合、火曜の１４時にある機能を実行すると、上記のスロットは月曜もしくは火曜もしくは水曜、かつ、１３−１５時のスロットになる。一方、後者は、上記の曜日、時間の範囲のいずれかを満たすスロットとなる。
【００５８】
また、波及情報生成部１６で生成された波及パラメータは、機能実行受付部１２で受け付けられた実行機能に対しての波及パラメータとなるが、実行履歴記憶部１０によって記憶された実行履歴情報（波及パラメータが適用可能な実行履歴情報）に対して、遡及して波及させ、新たに機能推薦モデル１５を再生成してもよい。機能実行受付部１２で受け付けられた実行履歴に対してだけでなく記憶された実行履歴情報に対しても波及パラメータを適用することで、より適切に実行履歴情報を考慮した機能推薦モデル１５を生成することができる。
【００５９】
推薦機能決定部２２は、機能推薦モデル１５に記憶された機能優先度情報に基づいて、推薦する機能を決定する。具体的に、推薦機能決定部２２は、機能推薦モデル１５、環境情報取得部１４から取得された環境情報を入力とし、ユーザに推薦する機能を決定する。より具体的には、機能推薦モデル１５の各機能の機能優先度マップを参照し、環境情報に基づく優先度を比較することによって、推薦する機能を決定する。たとえば、機能推薦モデル１５の機能優先度マップが曜日と時間の２次元で構成されており、日曜日の８時１０分に機能を推薦するときは、各機能の日曜日の８時１０分に該当する優先度を比較する。その後、優先度が高い順に機能を抽出し、当該機能の機能ＩＤを出力する。機能推薦モデル１５が機能優先度マップを正規化した確信度マップを保持している場合は、各機能の確信度を比較し、推薦する機能を決定してもよい。推薦する機能の数は、所定の推薦機能決定パラメータによってあらかじめ決定しておいてもよいし、確信度によって推薦機能を決定する場合は、しきい値をあらかじめ設定しておいて、しきい値以上の機能をすべて推薦機能として決定してもよい。
【００６０】
推薦機能決定部２２により機能推薦が行われるタイミングは任意である。例えば、ユーザがスマートフォンを起動したときや、本機能推薦システムを用いる時が挙げられる。
【００６１】
推薦機能表示部２４は、推薦機能決定部２２によって決定された推薦する機能に関する情報を出力する。具体的には、推薦機能表示部２４は、推薦機能決定部２２で決定した推薦機能の機能ＩＤに対応したアイコンを、機能推薦装置１の表示画面に表示する。推薦機能表示部２４は、推薦する機能に関する情報をネットワークを介して他のサーバに出力してもよい。
【００６２】
次に、図１４に示すフローチャート図を用いて、本実施形態に係る機能推薦装置１における機能推薦方法の処理について説明する。
【００６３】
まず、機能実行受付部１２により、ユーザが実行した機能の機能ＩＤが取得される（Ｓ１、機能実行受付ステップ）。次に、環境情報取得部１４により、現在の環境情報が取得される（Ｓ２、環境情報取得ステップ）。次に、実行履歴記憶部１０により、Ｓ１で取得した機能ＩＤ、及びＳ２で取得した環境情報が実行履歴情報として記憶されると共に、過去の実行履歴情報が取得される（Ｓ３、機能実行履歴記憶ステップ）。次に、波及情報生成部１６により、Ｓ１で取得された機能ＩＤ、及びＳ３で取得された実行履歴情報に基づいて、波及パラメータが生成される（Ｓ４、波及情報生成ステップ）。次に、機能推薦モデル更新部１８により、Ｓ１で取得した機能ＩＤと、Ｓ２で取得された環境情報と、Ｓ４で取得された波及パラメータとに基づいて、機能推薦モデル１５が更新される（Ｓ５、機能推薦モデル更新ステップ）。次に、推薦機能決定部２２により、Ｓ５で更新された機能推薦モデル１５が参照され、ユーザに推薦する機能が決定される（Ｓ６、推薦機能決定ステップ）。次に、推薦機能表示部２４により、機能推薦装置１の画面に機能に対応したアイコンが表示されることにより、ユーザに機能が推薦される（Ｓ７、推薦機能出力ステップ）。
【００６４】
続いて、本実施形態に係る機能推薦装置１の作用及び効果について説明する。
【００６５】
本実施形態に係る機能推薦装置１によれば、まず、機能実行受付部１２により、機能実行を受け付ける。次に、実行履歴記憶部１０から取得した実行履歴情報に基づいて、機能推薦モデル１５を更新するための波及情報を波及情報生成部１６にて生成する。波及情報生成部１６で生成された波及パラメータと、ユーザが実行した機能の機能ＩＤと、環境情報取得部１４で取得された環境情報に基づいて、機能推薦モデル更新部１８によって機能推薦モデル１５が更新される。かかる構成を採れば、実行履歴情報に基づいて動的に波及パラメータが決定される。すなわち、実行履歴情報に応じて適切に波及方法を決定することができ、現在保持している履歴を活用した機能推薦を行うことができる。
【００６６】
本実施形態に係る機能推薦装置１の作用及び効果についての具体例を、図１５に示す機能優先度マップ例に基づいて説明する。図１５では、機能優先度マップは時間のみに対して形成されており、波及パラメータは波及させる範囲のスロット数を示し、線形に波及の大きさを小さくしている。ここで、波及定数は８とし、波及の対象とする機能は全ての機能とし、１４時において推薦する機能を求める例を示す。
【００６７】
図１５（ｂ）は、実行履歴の累計回数が２である場合の機能優先度マップを示している。具体的には、過去に機能Ａが１２時と１６時において２回実行された状態を示す。波及パラメータは、図１５（ａ）に示す式に従い、８×（１／２）＝４となる。当該波及パラメータに従って更新された機能優先度マップが図１５（ｂ）に示すものである。図１５（ｂ）に示す機能優先度マップの通り、実行履歴のない１４時において機能Ａの推薦が可能となる。
【００６８】
一方、図１５（ｃ）は、累計回数が３である場合の機能優先度マップを示している。具体的には、図１５（ｂ）に示す状態の後に、機能Ｂが１５時において実行された状態を示す。波及パラメータは、図１５（ａ）に示す式に従い、８×（１／３）＝３となる。当該波及パラメータに従って更新された機能優先度マップが図１５（ｃ）に示すものである。図１５（ｃ）に示す機能優先度マップの通り、１４時においては機能Ａよりも機能Ｂの優先度が高いため、機能Ｂが推薦される。
【００６９】
以上の通り、機能推薦装置１において、図１５（ｂ）に示すような実行履歴回数が少ない状態では、１４時に近い時間帯で実行したことがある機能Ａを推薦することができる。ここで、図１５（ｃ）に示すような実行履歴回数が多い状態では、波及範囲が実行履歴回数に基づかない従来技術では、波及範囲が大きいため、１４時において、近い時間帯（１５時）に実行された機能Ｂよりも離れている時間帯（１２時及び１６時）に多く実行されている機能Ａの優先度が高くなり、機能Ａが推薦されてしまう。一方、機能推薦装置１においては、図１５（ｃ）に示すような実行履歴回数が多い状態では、上述の通り波及範囲が小さくなるため、１４時において、機能Ａの加算値が小さくなり、機能Ａよりも機能Ｂの優先度が高くなり、機能Ｂが推薦される。このように、機能推薦装置１においては、動的に波及パラメータを決定することで、期待した適切な予測を行うことが可能となる。
【００７０】
［第１実施形態の変形例１］
続いて、本発明の第１実施形態の変形例１に係る機能推薦装置１Ａについて説明する。なお、機能推薦装置１Ａは機能推薦装置１の機能とほぼ同様であり、差分についてのみ説明する。
【００７１】
図１６は、本変形例に係る機能推薦装置１Ａの構成を示す機能ブロック図である。機能推薦装置１Ａは、機能推薦装置１と比べて、他ユーザ実行履歴記憶部１３Ａと、波及情報生成部１６Ａが異なる。
【００７２】
他ユーザ実行履歴記憶部１３Ａは、他のユーザの実行履歴を記憶し、記憶している他のユーザの実行履歴の統計データの分散値を出力する。他ユーザ実行履歴記憶部１３Ａが記憶するデータは、あらかじめ端末内に取得しておいてもよいし、ネットワークを介して、適宜他のユーザ実行履歴の統計データを取得してもよい。分散値は、前述のように他のユーザの機能推薦モデル１５における確信度を用いて計算する。分散値は、機能推薦モデル１５のすべての優先度から１つの値を求めてもよいし、確信度マップを構成する軸となる環境情報ごとに求めてもよいし、さらに機能ごとに、環境情報ごとの分散値を求めてもよい。
【００７３】
波及情報生成部１６Ａは、他ユーザ実行履歴記憶部１３Ａから取得した他ユーザの実行履歴の統計データの分散値と、機能実行受付部１２で受け付けたユーザが実行した機能の機能ＩＤに基づいて波及パラメータを生成する。なお、波及情報生成部１６Ａは、他ユーザの実行履歴の統計データの分散値が所定の値より小さい場合のみ波及パラメータの生成を行うこととしてもよい。
【００７４】
続いて、本実施形態に係る機能推薦装置１Ａの作用及び効果について説明する。
【００７５】
本実施形態に係る機能推薦装置１Ａによれば、他のユーザの実行履歴を用いることにより、当該ユーザの実行履歴の累計回数が乏しい場合でも、波及パラメータがユーザ依存でないものに関しては、波及パラメータを決定することができる。たとえば、機能推薦モデル１５において位置が次元を為す場合において、アラーム機能の位置情報に対する確信度の統計データの分散値が０に近い小さい値をとるならば、アラームの利用傾向は、ユーザに依存せず、かつ位置によって依存しないといえる。その場合、当該ユーザがアラーム機能を実行した場合に、位置については波及範囲を最大にして、機能推薦モデル１５の更新が可能となる。つまり、当該ユーザの実行履歴の累計回数が小さかったり、分散値が安定しなかったりした場合でも、他のユーザの実行履歴を利用して波及パラメータを生成し、適切に機能推薦を行うことができる。
【００７６】
［第１実施形態の変形例２］
続いて、本発明の第１実施形態の変形例２に係る機能推薦装置１Ｂについて説明する。なお、機能推薦装置１Ｂは機能推薦装置１の機能とほぼ同様であり、差分についてのみ説明する。
【００７７】
図１７は、本変形例に係る機能推薦装置１Ｂの構成を示す機能ブロック図である。機能推薦装置１Ｂは、機能推薦装置１と比べて、波及情報生成部１６Ｂが異なる。
【００７８】
波及情報生成部１６Ｂは、環境情報取得部１４によって取得された環境情報と、機能実行受付部１２によって取得されたユーザが実行した機能の機能ＩＤと、実行履歴記憶部１０から取得した実行履歴情報に基づいて、波及パラメータを生成する。このとき、環境情報を分割した範囲でフィルタリングして取得した実行履歴に基づいて波及パラメータを生成する。たとえば、時間の環境情報が機能優先度マップを構成していて、４時に電話機能を実行した場合、０−６時の実行履歴に基づいて、波及範囲を示す波及パラメータを決定し、機能推薦モデル１５の更新のために用いる。波及パラメータ生成のために利用する環境情報の範囲は、あらかじめ決めておいてもよいし、実行履歴の回数や分散情報といった実行履歴情報に基づいて自動で決定してもよい。
【００７９】
次に、本実施形態に係る機能推薦装置１Ｂの作用及び効果について説明する。
【００８０】
本実施形態に係る機能推薦装置１Ｂによれば、機能の実行傾向が環境情報の値によって異なっている場合に、適切な波及パラメータを生成することができる。具体的には、１２：００−１８：００の機能の実行履歴回数が少ないが、６：００−１２：００の時間帯の実行履歴回数が膨大な場合、第１実施形態のように機能実行累計回数に基づいて波及パラメータを生成すると、波及範囲は小さく設定されるため、１２：００−１８：００の時間帯に機能を実行しても、波及範囲は小さくなってしまう。そのような問題に対して、波及パラメータ生成に用いる履歴の範囲を区切ることにより、６：００−１２：００の波及範囲は小さく、１２：００−１８：００の波及範囲は大きく設定する、ということが可能になる。
【符号の説明】
【００８１】
１・１Ａ・１Ｂ…機能推薦装置、１０…実行履歴記憶部、１２…機能実行受付部、１３Ａ…他ユーザ実行履歴記憶部、１４…環境情報記憶部、１５…機能推薦モデル、１６・１６Ａ・１６Ｂ…波及情報生成部、１８…機能推薦モデル更新部、２２…推薦機能決定部、２４…推薦機能表示部。
【図１】
2015001927.tif 000003
【図２】
2015001927.tif 000004
【図３】
2015001927.tif 000005
【図４】
2015001927.tif 000006
【図５】
2015001927.tif 000007
【図６】
2015001927.tif 000008
【図７】
2015001927.tif 000009
【図８】
2015001927.tif 000010
【図９】
2015001927.tif 000011
【図１０】
2015001927.tif 000012
【図１１】
2015001927.tif 000013
【図１２】
2015001927.tif 000014
【図１３】
2015001927.tif 000015
【図１４】
2015001927.tif 000016
【図１５】
2015001927.tif 000017
【図１６】
2015001927.tif 000018
【図１７】
2015001927.tif 000019