図1は、実施形態の推定システム1のシステム構成を表すシステム構成図である。推定システム1は、ネットワーク400に設けられる。推定システム1は、ネットワーク400を介して互いに通信可能に接続される複数の端末装置100、推定装置200及び取引情報管理装置300を備える。推定システム1は、端末装置100の所有者が小売店、自動車ディーラー、商業施設又は病院等の施設を示す領域に訪れた人の数を推定する。ネットワーク400は、どのようなネットワークで構築されてもよい。例えば、ネットワーク400は、インターネットで構成されてもよい。目的領域については後述する。
端末装置100は、スマートフォン又はタブレットコンピュータ等の情報処理装置である。端末装置100は、所定のタイミングで位置情報を生成する。端末装置100は、生成された位置情報を推定装置200に送信する。位置情報については後述する。
推定装置200は、パーソナルコンピュータ又はサーバ等の情報処理装置である。推定装置200は、各端末装置100から位置情報を取得する。推定装置200は、端末装置100から取得された位置情報に基づいて、小売店、自動車ディーラー、商業施設又は病院等の施設を示す領域に訪れた人の数を推定する。
取引情報管理装置300は、パーソナルコンピュータ又はサーバ等の情報処理装置である。取引情報管理装置300は、推定装置200に送信される取引情報を記憶する。取引情報については後述する。取引情報管理装置300は、所定のタイミングで取引情報を推定装置200に送信する。所定のタイミングとは、例えば予め定められた日時であってもよいし、推定装置200から要求されたタイミングであってもよい。
図2は、実施形態の端末装置100の機能構成を表す機能ブロック図である。端末装置100は、バスで接続されたCPU(Central Processing Unit)やメモリや補助記憶装置などを備え、位置情報生成プログラムを実行することによって通信部101、入力部102、出力部103、端末識別子記憶部104及び制御部105を備える装置として機能する。なお、通信部101、入力部102、出力部103、端末識別子記憶部104及び制御部105の各機能の全て又は一部は、ASIC(Application Specific Integrated Circuit)やPLD(Programmable Logic Device)やFPGA(Field Programmable Gate Array)等のハードウェアを用いて実現されてもよい。位置情報生成プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置である。位置情報生成プログラムは、電気通信回線を介して送信されてもよい。
通信部101は、ネットワークインタフェースである。通信部101はネットワーク400を介して、推定装置200及び取引情報管理装置300と通信する。通信部101は、例えば無線LAN(Local Area Network)、有線LAN、LTE(Long Term Evolution)(登録商標)又は5G等の通信方式で通信してもよい。
入力部102は、タッチパネル、マウス及びキーボード等の入力装置を用いて構成される。入力部102は、入力装置を端末装置100に接続するためのインタフェースであってもよい。この場合、入力部102は、入力装置において入力された入力信号から入力データ(例えば、端末装置100に対する指示を示す指示情報)を生成し、端末装置100に入力する。
出力部103は、端末装置100に接続された不図示の出力装置を介し、端末装置100のユーザに対してデータの出力を行う。出力装置は、例えば画像や文字を画面に出力する装置を用いて構成されても良い。例えば、出力装置は、液晶ディスプレイ、有機EL(Electro Luminescence)ディスプレイ、電子泳動方式ディスプレイ、CRT(Cathode Ray Tube)ディスプレイ等の画像表示装置を用いて構成できる。また、出力装置は、画像や文字をシートに印刷(印字)する装置を用いて構成されても良い。例えば、出力装置は、インクジェットプリンタやレーザープリンタ等を用いて構成できる。また、出力装置は、文字を音声に変換して出力する装置を用いて構成されても良い。この場合、出力装置は、音声合成装置及び音声出力装置(スピーカー)を用いて構成できる。出力装置は、LED(Light Emitting Diode)等の発光装置を用いて構成されてもよい。なお、出力部103は、端末装置100と一体として構成された出力装置であってもよい。
端末識別子記憶部104は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。端末識別子記憶部104は、端末識別子を記憶する。端末識別子は、端末装置100を一意に識別できる情報である。端末識別子は、例えばIDFA(Advertising Identifier)やAAID(Google Advertising ID)等の広告IDが用いられてもよい。端末識別子はこれらに限定されない。端末識別子は、例えば、Cookie、電話番号又はネットワーク上のアドレス情報等のように、他の端末装置100に記憶される端末識別子と重複しない情報であればどのような情報であってもよい。
制御部105は、端末装置100の各部の動作を制御する。制御部105は、例えばCPU等のプロセッサ及びRAM(Random Access Memory)を備えた装置により実行される。制御部105は、位置情報生成プログラムを実行することによって、端末位置取得部151、位置情報生成部152及び送信部153として機能する。
端末位置取得部151は、端末位置を取得する。端末位置取得部151は、例えば、GPS等の衛星測位システムによって端末位置を取得してもよい。端末位置は、端末装置100の位置を表す情報である。端末位置は、例えば、端末装置100の緯度及び経度を示す情報(以下「緯度経度情報」という。)であってもよい。端末位置は、例えば、緯度経度情報に加えて、高度又は速度等の情報が含まれていてもよい。端末位置は、衛星測位システムからの電波が届きにくい場所(例えば、山間部やトンネル)では、端末装置100の速度の情報や加速度の情報を用いて補正されてもよい。端末位置取得部151は所定のタイミングで端末位置を取得してもよい。所定のタイミングは、例えば、1分毎、2分毎等の予め指定された時間間隔であってもよい。所定のタイミングは、100m毎、200m毎等の予め指定された距離を移動した毎であってもよい。所定のタイミングは、端末装置100にインストールされた所定のアプリケーションを起動させている時であってもよい。所定のタイミングは、予め定められたタイミングであればどのようなタイミングであってもよい。なお、端末位置は、GPS等の衛星測位システム以外の設備に基づいて取得されてもよい。例えば、端末位置は、地図情報を扱う企業によって提供される地図情報に基づいて取得されてもよい。
位置情報生成部152は、位置情報を生成する。位置情報は、所定の時刻における端末装置100の位置を示す情報である。位置情報生成部152は、端末位置が取得されると、端末識別子記憶部104から端末識別子を取得する。位置情報生成部152は、端末位置が取得されると、端末位置が取得された際の時刻を取得する。時刻は、端末装置100が備える時計が示す時刻であってもよいし、外部のNTP(Network Time Protocol)サーバから取得された時刻であってもよい。位置情報生成部152は、端末識別子と端末位置と時刻とを対応付けて位置情報を生成する。位置情報生成部152は、生成された位置情報を送信部153に出力する。送信部153は、位置情報を推定装置200に送信する。
図3は、実施形態の推定装置200の機能構成を表す機能ブロック図である。推定装置200は、バスで接続されたCPUやメモリや補助記憶装置などを備え、推定プログラムを実行することによって通信部201、入力部202、出力部203、位置情報記憶部204、取引情報記憶部205、施設情報記憶部206、推定手段記憶部207及び制御部208を備える装置として機能する。なお、通信部201、入力部202、出力部203、位置情報記憶部204、取引情報記憶部205、施設情報記憶部206、推定手段記憶部207及び制御部208の各機能の全て又は一部は、ASICやPLDやFPGA等のハードウェアを用いて実現されてもよい。推定プログラムは、コンピュータ読み取り可能な記録媒体に記録されてもよい。推定プログラムは、電気通信回線を介して送信されてもよい。
通信部201は、ネットワークインタフェースである。通信部201はネットワーク400を介して、端末装置100及び取引情報管理装置300と通信する。通信部201は、例えば無線LAN、有線LAN、LTE又は5G等の通信方式で通信してもよい。
入力部202は、タッチパネル、マウス及びキーボード等の入力装置を用いて構成される。入力部202は、入力装置を推定装置200に接続するためのインタフェースであってもよい。この場合、入力部202は、入力装置において入力された入力信号から入力データ(例えば、推定装置200に対する指示を示す指示情報)を生成し、推定装置200に入力する。
出力部203は、推定装置200に接続された不図示の出力装置を介し、推定装置200のユーザに対してデータの出力を行う。出力装置は、例えば画像や文字を画面に出力する装置を用いて構成されても良い。例えば、出力装置は、液晶ディスプレイ、有機ELディスプレイ、電子泳動方式ディスプレイ、CRTディスプレイ等の画像表示装置を用いて構成できる。また、出力装置は、画像や文字をシートに印刷(印字)する装置を用いて構成されても良い。例えば、出力装置は、インクジェットプリンタやレーザープリンタ等を用いて構成できる。また、出力装置は、文字を音声に変換して出力する装置を用いて構成されても良い。この場合、出力装置は、音声合成装置及び音声出力装置(スピーカー)を用いて構成できる。出力装置は、LED等の発光装置を用いて構成されてもよい。出力部203は、推定装置200に設けられた通信装置を介して他の情報処理装置に対し推定結果を送信してもよい。なお、出力部203は、推定装置200と一体として構成された出力装置であってもよい。
位置情報記憶部204は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。位置情報記憶部204は、複数の位置情報を記憶する。位置情報記憶部204に記録される位置情報は、端末装置100から送信される。
図4は、実施形態の位置情報の一具体例を示す図である。図4によると、位置情報は、端末識別子、端末位置及び時刻の3つの情報を示す。端末識別子、端末位置及び時刻については、説明済みであるため説明を省略する。
図4に示される位置情報によると、端末識別子は“AD00001”、端末位置は“Location”、時刻は“2019/8/22 12:05:12”である。このため、位置情報は、端末識別子“AD00001”によって識別される端末装置100によって生成された位置情報であり、端末装置100は、2019年8月22日12時05分12秒に、端末位置を取得したことがわかる。また、端末装置100は、端末位置として“Location”の位置にいたことがわかる。
図3に戻って、推定装置200の説明を続ける。取引情報記憶部205は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。取引情報記憶部205は、複数の取引情報を記憶する。取引情報は、端末装置100の所有者によって行われた取引の内容を示す。取引情報は、例えば店舗で行われた取引のレシートに関する情報であってもよい。取引情報は、取引の行われた場所や、取引の行われた施設を示す。取引は、例えば小売店での買い物であってもよいし、自動車ディーラーでの買い物であってもよいし、病院での診察であってもよい。取引は、端末装置100の所有者によって行われる行為であればどのような行為であってもよい。取引情報は、取引情報管理装置300から送信される。取引情報管理装置300は、取引情報を予め記憶する。取引情報管理装置300は、例えば取引情報を販売する企業によって管理される。
図5は、実施形態の取引情報の一具体例を示す図である。図5によると、取引情報は、端末識別子、施設識別子、取引内容及び取引時刻の4つの情報を示す。端末識別子については、説明済みであるため説明を省略する。施設識別子は、取引が行われた施設を一意に識別可能な情報である。施設識別子は、例えば、小売店、自動車ディーラー、商業施設又は病院等の取引が行われる施設を示す。施設識別子は、他の施設識別子と重複しない情報であればどのような情報であってもよい。取引内容は、端末装置100の所有者によって行われた取引の内容を示す。取引内容は、端末装置100の所有者によって支払いされた金額を示してもよい。取引内容は、端末装置100の所有者によって購入された商品を示してもよい。取引時刻は、端末装置100の所有者によって行われた取引の時刻を示す。
図5に示される取引情報によると、端末識別子は“AD00001”、施設識別子は“shop0001”、取引内容は“食パン200円”、取引時刻は“2019/8/22 12:12:31”である。このため、取引情報は、端末識別子“AD00001”によって識別される端末装置100によって行われた取引の内容を示す。取引情報は、施設識別子は“shop0001”によって識別される施設にて行われた取引であることを示す。取引情報は、端末装置100の所有者が食パンを200円で購入したことを示す。取引情報は、取引が2019年8月22日12時12分31秒に行われたこと示す。
図3に戻って、推定装置200の説明を続ける。施設情報記憶部206は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。施設情報記憶部206は、施設情報を記憶する。施設情報は、取引が行われる施設に関する情報である。施設情報は、取引が行われる施設の場所や、範囲に関する情報を示す。
図6は、実施形態の施設情報の一具体例を示す図である。図6によると、施設情報は、施設識別子、所在地、半径及び施設数の4つの情報を示す。施設識別子については、説明済みであるため説明を省略する。所在地は、施設識別子によって識別される施設の場所を示す。所在地は、端末装置100の所有者と、施設識別子によって識別される施設と、が取引を行うことができる場所を表す。所在地は、例えば、小売店、自動車ディーラー、商業施設又は病院等の施設の場所を示す情報であってもよい。所在地は、施設識別子によって識別される施設に応じて、予め指定される。所在地は、施設の出入り口の1つを示してもよい。所在地は、施設の中心又は重心等の施設の内側の所定の位置を示してもよい。所在地は、例えば緯度経度情報で示されてもよい。半径は、取引場所を中心にした円の半径を表す。半径は予め指定される。半径は、施設識別子によって識別される施設の大きさに応じて異なる値が指定される。半径は、例えば施設の面積と同じ面積になるように定められてもよい。半径は、施設が円の内側に収まるように定められてもよい。半径は、円が施設の内側に収まるように定められてもよい。施設数は、施設識別子によって識別される施設の周辺にある施設の数を示す。周辺とは、例えば、施設を示す領域の外縁から500メートル以内等の予め定められた範囲内であってもよい。
図6に示される施設情報によると、施設識別子は“shop0001”、所在地は“P”、半径は“R”、施設数は“N”である。このため、施設情報は、施設識別子“shop00001”によって識別される施設に関する情報であることを示す。施設は、所在地“P”にあることを示す。施設は、半径“R”の広さを持つことを示す。施設の周辺には“N”個の他の施設があることを示す。
図3に戻って、推定装置200の説明を続ける。推定手段記憶部207は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。推定手段記憶部207は、推定手段を記憶する。推定手段は、施設に訪れた来訪者の数を推定するために用いられる情報である。
制御部208は、推定装置200の各部の動作を制御する。制御部208は、例えばCPU等のプロセッサ及びRAMを備えた装置により実行される。制御部208は、推定プログラムを実行することによって、情報取得部281、推定手段生成部282及び推定部283として機能する。
情報取得部281は、ネットワーク400を介して外部から所定の情報を複数取得する。例えば、情報取得部281は、端末装置100によって送信された位置情報を取得する。情報取得部281は、取得された位置情報を位置情報記憶部204に記録する。また、情報取得部281は、取引情報管理装置300に取引情報を要求してもよい。この場合、情報取得部281は、取引情報管理装置300に記憶される取引情報を取得する。情報取得部281は、取得された取引情報を取引情報記憶部205に記録する。
推定手段生成部282は、施設識別子によって識別される施設に訪れた人の数を推定するための推定手段を生成する。推定手段とは、例えば、施設に訪れた人の数を推定するための数式であってもよい。以下、具体的に説明する。推定手段生成部282は、所定の施設を示す施設識別子を決定する。所定の施設とは、施設に訪れた人の数を推定する対象となる施設である。所定の施設は、推定手段生成部282が決定してもよいし、入力部202を介して受け付けて決定してもよい。次に、推定手段生成部282は、決定した施設識別子を示す施設情報を施設情報記憶部206から取得する。推定手段生成部282は、取得した施設情報が示す所在地及び半径に基づいて、施設を示す領域を算出する。具体的には、推定手段生成部282は、所在地を円の中心として、半径の値で示される円の内側を、施設を示す領域として算出する。推定手段生成部282は、算出された領域の内側に端末位置がある位置情報を位置情報記憶部204から取得する。取得された位置情報が示す端末識別子によって識別される端末装置100は、所定の施設に訪れたと判断される。推定手段生成部282は、決定された施設識別子を示す取引情報を取引情報記憶部205から取得する。なお、推定手段生成部282は、定められた時間に含まれる位置情報及び取引情報を取得するように構成されてもよい。定められた時間とは、例えば、入力部202を介して指定された日であってもよい。このように構成されることで、推定手段生成部282は、指定された日において、どれくらいの人が訪れたのか推定することが可能になる。なお、定められた時間は、日に限定されない。定められた時間は、1週間であってもよいし、2週間であってもよい。
推定手段生成部282は、取得された位置情報と取引情報とに基づいて正解率を算出する。正解率は、所定の施設に訪れたと判断される端末装置100が有する端末識別子の数のうち、所定の施設に実際に訪れた端末装置100が有する端末識別子の数の割合を示す値である。所定の施設に実際に訪れたとは、例えば、施設において、取得された位置情報が示す時刻又は位置情報が示す時刻の前後の間に取引を行った取引情報が存在することである。位置情報が示す時刻の前後とは、前後数分で合ってもよいし、数十分であってもよい。このため、推定手段生成部282は、取得された取引情報が示す端末識別子によって識別される端末装置100を、所定の施設に実際に訪れた端末装置100であると判断する。推定手段生成部282は、所定の施設に訪れたと判断される位置情報が有する端末識別子と、取得された取引情報が有する端末識別子と、が一致する数を計数する。推定手段生成部282は、計数された数を、施設に訪れた端末識別子のうち、施設で取引を行った端末識別子の数とする。推定手段生成部282は、以下の数式(1)に基づいて正解率を算出する。数式(1)の分子は、施設に訪れた端末識別子のうち、施設で取引を行った端末識別子の数である。数式(1)の分母は、施設で取引を行った端末識別子の数である。正解率は、統計情報の一具体例である。統計情報は、所定の施設に訪れた人の数に関する情報である。
推定手段生成部282は、取得された位置情報と取引情報とに基づいて網羅率を算出する。網羅率は、取得された取引情報が有する端末識別子のうち、所定の施設に訪れたと判断される端末装置100が有する識別子の割合を示す値である。具体的には、網羅率は、以下の数式(2)で示される。数式(2)の分子は、施設で取引を行った端末識別子のうち、施設に訪れたと判断された端末識別子の数である。数式(2)の分母は、施設で取引を行った端末識別子の数である。ここで、数式(1)の分子の値と、数式(2)の分子の値と、は同じ値になる。網羅率は、網羅情報の一具体例である。
推定手段生成部282は、施設情報記憶部206に記憶された全て或いは予め定められた個数の施設識別子毎に、正解率と網羅率とを算出する。推定手段生成部282は、全て或いはあらかじめ定められた個数の正解率と網羅率とを算出すると、推定手段を生成する。
まず、推定手段生成部282は、正解率推定手段を生成する。正解率推定手段は、施設数に基づいて正解率を推定できる手段である。正解率推定手段とは、例えば正解率と施設数との関係を示す近似式(以下、「正解率近似式」という。)である。以下、正解率推定手段とは、正解率近似式であるとして説明する。推定手段生成部282は、施設識別子が示す施設情報の施設数と、正解率とに基づいて、正解率近似式を生成する。推定手段生成部282は、公知の式を用いて正解率近似式を生成してもよい。推定手段生成部282は、生成された正解率近似式(正解率推定手段)を推定手段記憶部207に記録する。
図7は、実施形態の正解率と施設数との関係を示す散布図の一具体例を示す図である。図7の縦軸は、正解率を示す。図7の横軸は施設数を示す。図7の施設数は、施設を示す領域の外縁から500メートル以内等の予め定められた範囲内にある施設数である。図7は、曲線10と曲線11とを含む。図7が示す散布図は、施設識別子によって識別される施設の正解率と施設識別子によって識別される施設情報が示す施設数とをプロットした散布図である。曲線10及び曲線11は、プロットされた散布図に基づいて生成された近似曲線を示す。近似曲線は、推定手段生成部282によって生成された正解率近似式に関する曲線である。推定手段生成部282は、曲線10及び曲線11のように、異なる正解率近似式を生成してもよい。なお、図7に示す正解率近似式は、曲線であるものとして説明したが、直線を表す数式であってもよい。
図7によると、施設数の増加に応じて、正解率は下がることがわかる。この原因は、施設の周辺に他の施設が多くなるほど、他の施設を訪れる端末装置100の所有者が増え、他の施設に訪れたにもかかわらず施設に訪れたと判断される可能性が高まるためである。また、施設の周辺に他の施設が存在しない場合(例えば、山の頂上や広大な草原に1施設のみ存在している場合)、その施設の周辺に訪れる人は、その施設を目指していると判断することができる。このため、端末装置100の所有者は、その施設に訪れていると考えられる。このため、正解率は増加すると考えられる。また、端末装置100が備えるGPSの誤差の影響を受ける場合、他の施設に訪れたにもかかわらず施設に訪れたと判断される可能性がさらに高まる。
次に、推定手段生成部282は、網羅率推定手段を生成する。網羅率推定手段は、施設数に基づいて網羅率を推定できる手段である。網羅率推定手段とは、例えば網羅率と半径との関係を示す近似式(以下、「網羅率近似式」という。)である。以下、網羅率推定手段とは、網羅率近似式であるとして説明する。推定手段生成部282は、施設識別子が示す施設情報の半径と、網羅率とに基づいて、網羅率近似式を生成する。推定手段生成部282は、公知の式を用いて網羅率近似式を生成してもよい。推定手段生成部282は、生成された網羅率近似式(網羅率推定手段)を推定手段記憶部207に記録する。
図8は、実施形態の網羅率と半径との関係を示す散布図の一具体例を示す図である。図8の縦軸は、網羅率を示す。図8の横軸は半径を示す。半径は、施設を示す領域を定める半径である。図8は、直線20を含む。図8が示す散布図は、施設識別子によって識別される施設の網羅率と施設識別子によって識別される施設情報が示す半径とをプロットした散布図である。直線20は、プロットされた散布図に基づいて生成された近似直線を示す。近似直線は、推定手段生成部282によって生成された網羅率近似式に関する直線である。推定手段生成部282は、直線20のように、異なる網羅率近似式を生成してもよい。なお、図8に示す網羅率近似式は、直線であるものとして説明したが、曲線を表す数式であってもよい。
図8によると、半径に関わらず、網羅率は一定の値となることがわかる。したがって、網羅率は、施設の半径を適切に設定することができれば、施設の周辺の施設数に関わらず、一定の網羅率にできると考えられる。例えば、施設の半径を実際の半径の10倍にした場合、施設の付近に来た人すべてが施設に訪れたと判定されるため、網羅率は増加すると考えられる。なお、網羅率は、位置情報が示す測定位置の精度の向上(例えば、GPS衛星の台数の増加等)に応じて、網羅率も上昇ずると考えられる。また、網羅率は、位置情報の取得間隔を短くしたり、長くしたりすることで、網羅率も増加したり減少したりすることが考えられる。
なお、1日あたりの位置情報の数が数百あり、端末装置100の移動の軌跡が数メートル単位で計測できる端末装置100で網羅率を算出した場合と、1日あたりの位置情報の数が数件しかない端末装置100で網羅率を算出した場合、算出された網羅率に乖離が生じると考えられる。また、正解率についても同様に、位置情報の数に比例して、誤差を含む位置情報の数も増えるため、正解率に乖離が生じる可能性がある。
図9は、実施形態の正解率と施設に訪れた一人の1日当たりの位置情報の数との関係を示す散布図の一具体例を示す図である。図9が示す散布図は、施設に訪れた一人の1日当たりの位置情報の数とその施設に対して算出された正解率とをプロットした散布図である。図9の縦軸は、正解率を示す。図9の横軸は施設に訪れた一人の1日当たりの位置情報の数を示す。図9に示す散布図によると、正解率は、位置情報の数に関係なく、概ね0.04〜0.07であることがわかる。したがって、正解率は、位置情報が示す端末位置の誤差の大小によって変動はあるものの、位置情報の数に関わらず一定値であることがわかる。
図10は、実施形態の網羅率と施設に訪れた一人の1日当たりの位置情報の数との関係を示す散布図の一具体例を示す図である。図10が示す散布図は、施設に訪れた一人の1日当たりの位置情報の数とその施設に対して算出された網羅率とをプロットした散布図である。図10の縦軸は、網羅率を示す。図10の横軸は施設に訪れた一人の1日当たりの位置情報の数を示す。図10に示す散布図によると、網羅率は、位置情報の数が100程度までは急激に増加する。網羅率は、位置情報の数が200を超えたあたりからは0.7程度で一定値となる。このため、推定システム1は、施設に訪れた人の数を推定するにあたって、位置情報の数を考慮することで、推定精度をより高めることが可能になる。
このため、推定手段生成部282は、所定の補正係数を生成するように構成されてもよい。所定の補正係数とは、端末装置100の所有者一人当たりの1日の位置情報の数に基づく係数である。所定の補正係数とは、施設に訪れたと推定される人の数の補正に用いられる。推定手段生成部282は、生成された所定の補正係数を推定手段記憶部207に記録する。推定手段生成部282は、算出部の一具体例である。
推定部283は、生成された推定手段に基づいて、所定の施設に訪れた人の数を推定する。具体的には、推定部283は、施設識別子を受け付ける。推定部283は、入力部202を介して施設識別子を受け付けてもよい。推定部283は、推定対象となる施設を決定できるならばどのような手段を用いてもよい。推定部283は、受け付けた施設識別子によって識別される施設を訪れた端末装置100の端末識別子の数を計数する。具体的には、推定部283は、受け付けた施設識別子を有する施設情報を施設情報記憶部206から取得する。推定部283は、施設情報が示す所在地及び半径に基づいて、施設を示す領域を算出する。推定部283は、算出された領域の内側にあることを示す端末位置を有する位置情報を位置情報記憶部204から取得する。推定部283は、取得された位置情報が示す端末識別子の数を計数する。このとき、推定部283は、重複した端末識別子は計数しない。
次に、推定部283は、推定対象となる施設の周辺の施設数と、正解率推定手段と、に基づいて推定正解率を推定する。推定正解率は、正解率推定手段によって推定される正解率である。具体的には、推定部283は、正解率推定手段を推定手段記憶部207から取得する。推定部283は、取得された施設情報から施設数を取得する。推定部283は、取得された施設数を正解率推定手段に入力することで、推定正解率を推定する。
次に、推定部283は、推定対象となる施設の施設情報が示す半径と、網羅率推定手段と、に基づいて推定網羅率を推定する。推定網羅率は、網羅率推定手段によって推定される網羅率である。具体的には、推定部283は、網羅率推定手段を推定手段記憶部207から取得する。推定部283は、取得された施設情報から半径を取得する。推定部283は、取得された半径を網羅率推定手段に入力することで、推定網羅率を推定する。
推定部283は、施設に訪れたと判断された端末識別子の数と推定正解率と推定網羅率とに基づいて施設に訪れた人の数(以下「推定人数」という。)を推定する。具体的には、推定部283は、以下の数式(3)を用いて、推定人数を推定する。
なお、推定部283は、施設に訪れたと判断された端末識別子の数と推定正解率と推定網羅率と補正係数とに基づいて施設に訪れた人の数(以下「推定人数」という。)を推定してもよい。具体的には、推定部283は、以下の数式(4)を用いて、推定人数を推定する。
図11は、実施形態の推定手段の生成の処理の流れを示すフローチャートである。
推定手段の生成は、所定のタイミングで実行される。所定のタイミングとは、1日1回であってもよいし、1カ月に1回であってもよい。また所定のタイミングとは、推定システム1のユーザによって指定されたタイミングであってもよい。図11では、推定手段とは、正解率近似式と網羅率近似式であるものとして説明する。推定装置200の推定手段生成部282は、施設に訪れた人の数を推定する対象となる施設を示す施設識別子を決定する(ステップS101)。推定手段生成部282は、施設を示す領域の内側を示す端末位置を示す位置情報を取得する(ステップS102)。具体的には、推定手段生成部282は、施設識別子を示す施設情報を施設情報記憶部206から取得する。推定手段生成部282は、施設情報が示す所在地及び半径に基づいて、施設を示す領域を算出する。推定手段生成部282は、算出された領域の内側にあることを示す端末位置を有する位置情報を位置情報記憶部204から取得する。推定手段生成部282は、決定された施設識別子を示す取引情報を取引情報記憶部205から取得する(ステップS103)。
推定手段生成部282は、取得された位置情報と取引情報と数式(1)とに基づいて正解率を算出する(ステップS104)。推定手段生成部282は、取得された位置情報と取引情報と数式(2)とに基づいて網羅率を算出する(ステップS105)。推定手段生成部282は、所定数の正解率と網羅率とを算出したか否かを判定する(ステップS106)。推定手段生成部282は、所定数の正解率と網羅率とを算出していない場合(ステップS106:NO)、ステップS101に遷移して、次の施設識別子を決定する。
推定手段生成部282は、所定数の正解率と網羅率とを算出した場合(ステップS106:YES)、推定手段を生成する(ステップS107)。具体的には、推定手段生成部282は、施設識別子が示す施設情報の施設数と、正解率とに基づいて、正解率近似式を生成する。推定手段生成部282は、施設識別子が示す施設情報の半径と、網羅率とに基づいて、網羅率近似式を生成する。推定手段生成部282は、生成された正解率近似式を推定手段記憶部207に記録する(ステップS108)。推定手段生成部282は、生成された網羅率近似式を推定手段記憶部207に記録する。
図12は、実施形態の施設に訪れた人の数を推定する処理の流れを示すフローチャートである。施設に訪れた人の数の推定は、所定のタイミングで実行される。所定のタイミングとは、1日1回であってもよいし、1カ月に1回であってもよい。また所定のタイミングとは、推定システム1のユーザによって指定されたタイミングであってもよい。推定装置200の推定部283は、施設識別子を受け付ける(ステップS201)。推定部283は、受け付けた施設識別子によって識別される施設を訪れた端末装置100の端末識別子の数を計数する(ステップS202)。
次に、推定部283は、推定対象となる施設の周辺の施設数と、正解率推定手段と、に基づいて推定正解率を推定する(ステップS203)。推定部283は、推定対象となる施設の施設情報が示す半径と、網羅率推定手段と、に基づいて推定網羅率を推定する(ステップS204)。推定部283は、施設に訪れたと判断された端末識別子の数と推定正解率と推定網羅率と数式(3)とに基づいて施設に訪れた人の数を推定する(ステップS205)。
このように構成された推定システム1では、推定手段生成部282が位置情報と取引情報とに基づいて、取引の行われた場所に端末装置100の所有者が訪れた人数を推定するための推定手段を生成する。推定部283は、位置情報と取引情報と推定手段とに基づいて、所定の場所に訪れた人の数を推定する。このため、推定システム1は、取引情報を用いることで、所定の場所に訪れた人の数をより高い精度で推定できる。
上述の実施形態では、推定手段生成部282は、推定手段として正解率と網羅率とを決定する近似式を算出するように構成されたが、これに限定されない。例えば、推定手段生成部282は、所定の機械学習アルゴリズムによって生成された学習モデルに基づいて推定手段を生成するように構成されてもよい。以下、具体的に説明する。
推定手段生成部282は、例えば、推定手段として以下の数式(5)に示すような数式を生成するように構成されてもよい。推定手段生成部282は、数式(5)に示す各項を決定するための学習モデルを生成する。数式(5)において、施設に訪れたと判断された端末識別子の数については、説明済みのため説明を省略する。
周辺施設数を考慮した係数とは、施設の周辺の他の施設の数に基づいて決定された係数である。推定手段生成部282は、所定の教師データと、所定の機械学習アルゴリズムと、に基づいて周辺施設数学習モデルを生成する。周辺施設数学習モデルは、施設数と正解率とに基づいて係数を生成する。所定の教師データとは、例えば、周辺にある他の施設数と正解率と係数とを組み合わせたデータであってもよい。所定の機械学習アルゴリズムとは、SGD(Stochastic Gradient Descent)、ランダムフォレスト、線形回帰、決定木又はCNN(Convolutional Neural Network)等の公知の機械学習アルゴリズムであればどのようなアルゴリズムであってもよい。推定手段生成部282は、生成された周辺施設数学習モデルを生成手段として推定手段記憶部207に記録する。
半径を考慮した係数とは、施設を示す領域を定める半径に基づいて決定された係数である。推定手段生成部282は、所定の教師データと、所定の機械学習アルゴリズムと、に基づいて半径学習モデルを生成する。半径学習モデルは、半径と網羅率とに基づいて係数を生成する。所定の教師データとは、例えば、半径と網羅率と係数とを組み合わせたデータであってもよい。所定の機械学習アルゴリズムとは、SGD、ランダムフォレスト、線形回帰、決定木又はCNN等の公知の機械学習アルゴリズムであればどのようなアルゴリズムであってもよい。推定手段生成部282は、生成された半径学習モデルを生成手段として推定手段記憶部207に記録する。
一人当たりのログ数を考慮した係数とは、一人当たりのログ数に基づいて決定された係数である。ログ数とは、例えば取得された位置情報の数である。推定手段生成部282は、所定の教師データと、所定の機械学習アルゴリズムと、に基づいてログ数学習モデルを生成する。ログ数学習モデルは、一人当たりのログ数と正解率と網羅率とに基づいて係数を生成する。所定の教師データとは、例えば、一人当たりのログ数と正解率と網羅率と係数とを組み合わせたデータであってもよい。所定の機械学習アルゴリズムとは、SGD、ランダムフォレスト、線形回帰、決定木又はCNN等の公知の機械学習アルゴリズムであればどのようなアルゴリズムであってもよい。推定手段生成部282は、生成されたログ数学習モデルを生成手段として推定手段記憶部207に記録する。
推定部283は、上述の周辺施設数学習モデルに基づいて、周辺施設数を考慮した係数を決定する。推定部283は、上述の半径学習モデルに基づいて、半径を考慮した係数を決定する。推定部283は、上述のログ数学習モデルに基づいて、一人当たりのログ数を考慮した係数を決定する。推定部283は、施設に訪れたと判断された端末識別子の数と、決定された係数と、に基づいて、施設に訪れた人の数を推定する。このように構成されることで、推定システム1は、1度学習モデルを生成することで、他の全ての施設において、施設に訪れた人の数を推定することが可能になる。このため、施設に訪れても取引に結び付かない可能性の高い施設や、取引情報が存在しないような施設についても、その施設に訪れた人の数を推定することが可能になる。
推定装置200は、ネットワークを介して通信可能に接続された複数台の情報処理装置を用いて実装されてもよい。この場合、推定装置200が備える各機能部は、複数の情報処理装置に分散して実装されてもよい。例えば、推定手段生成部282と推定部283とはそれぞれ異なる情報処理装置に実装されてもよい。
上述の実施形態では、取引情報は、取引の内容を示すものとして説明したが、取引の内容に限定されない。例えば、取引情報は、ポイントカード又は電子マネーの利用に関する情報であってもよい。取引情報は、実際に施設に訪れたことを判断できる情報であればどのような情報であってもよい。
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。