(57)【要約】【課題】トラヒックの予測精度を向上させること。【解決手段】予測装置は、複数のユーザと複数のサービスとの間の過去の期間のトラヒックについて、ユーザ、サービス、及び時間帯の組み合わせ別に前記トラヒックの統計量を算出する第１の算出部と、前記統計量に基づいて、前記トラヒックに関して複数のパターンを抽出する抽出部と、各ユーザ及び各サービスの少なくともいずれか一方を、前記パターンごとのいずれかのグループに分類する分類部と、前記分類部による分類結果と、前記統計量とに基づいて前記グループごとの前記各時間帯の統計量を算出する第２の算出部と、前記グループごとの前記各時間帯の統計量に予測手法を適用して、前記期間より後の期間について前記グループごとに前記統計量の予測値を算出する第３の算出部と、を有する。【選択図】図６
2020136894.tif 000002
【特許請求の範囲】
【請求項１】
複数のユーザと複数のサービスとの間の過去の期間のトラヒックについて、ユーザ、サービス、及び時間帯の組み合わせ別に前記トラヒックの統計量を算出する第１の算出部と、
前記統計量に基づいて、前記トラヒックに関して複数のパターンを抽出する抽出部と、
各ユーザ及び各サービスの少なくともいずれか一方を、前記パターンごとのいずれかのグループに分類する分類部と、
前記分類部による分類結果と、前記統計量とに基づいて前記グループごとの前記各時間帯の統計量を算出する第２の算出部と、
前記グループごとの前記各時間帯の統計量に予測手法を適用して、前記期間より後の期間について前記グループごとに前記統計量の予測値を算出する第３の算出部と、
を有することを特徴とする予測装置。
【請求項２】
前記分類部は、各パターンについて、各ユーザ及び各サービスの少なくともいずれか一方との関連度を算出し、前記関連度に基づいて、前記各ユーザ及び前記各サービスの少なくともいずれか一方を、前記パターンごとのいずれかのグループに分類する、
ことを特徴とする請求項１記載の予測装置。
【請求項３】
複数のユーザと複数のサービスとの間の過去の期間のトラヒックについて、ユーザ、サービス、及び時間帯の組み合わせ別に前記トラヒックの統計量を算出する第１の算出部と、
前記統計量に基づいて、前記トラヒックに関して複数のパターンを抽出し、各ユーザ及び各サービスの少なくともいずれか一方と、各時間帯とのそれぞれについて、各パターンとの関連度を算出する第２の算出部と、
前記各時間帯と前記各パターンとの関連度の算出結果に対する予測手法の適用結果と、前記各ユーザ及び各サービスの少なくともいずれか一方と前記各パターンとの関連度と基づいて前記パターンの抽出の逆変換を実行する逆変換部と、
前記各ユーザ及び各サービスの少なくともいずれか一方と前記各パターンとの関連度と基づいて、前記各ユーザ及び各サービスの少なくともいずれか一方を前記パターンごとのいずれかのグループに分類する分類部と、
前記逆変換の結果と、前記グループへの分類結果とに基づいて、前記期間より後の期間について前記グループごとに前記統計量の予測値を算出する第３の算出部と、
を有することを特徴とする予測装置。
【請求項４】
複数のユーザと複数のサービスとの間の過去の期間のトラヒックについて、ユーザ、サービス、及び時間帯の組み合わせ別に前記トラヒックの統計量を算出する第１の算出手順と、
前記統計量に基づいて、前記トラヒックに関して複数のパターンを抽出する抽出部と、
各ユーザ及び各サービスの少なくともいずれか一方を、前記パターンごとのいずれかのグループに分類する分類手順と、
前記分類手順による分類結果と、前記統計量とに基づいて前記グループごとの前記各時間帯の統計量を算出する第２の算出手順と、
前記グループごとの前記各時間帯の統計量に予測手法を適用して、前記期間より後の期間について前記グループごとに前記統計量の予測値を算出する第３の算出手順と、
をコンピュータが実行することを特徴とする予測方法。
【請求項５】
前記分類手順は、各パターンについて、各ユーザ及び各サービスの少なくともいずれか一方との関連度を算出し、前記関連度に基づいて、前記各ユーザ及び前記各サービスの少なくともいずれか一方を、前記パターンごとのいずれかのグループに分類する、
ことを特徴とする請求項４記載の予測方法。
【請求項６】
複数のユーザと複数のサービスとの間の過去の期間のトラヒックについて、ユーザ、サービス、及び時間帯の組み合わせ別に前記トラヒックの統計量を算出する第１の算出手順と、
前記統計量に基づいて、前記トラヒックに関して複数のパターンを抽出し、各ユーザ及び各サービスの少なくともいずれか一方と、各時間帯とのそれぞれについて、各パターンとの関連度を算出する第２の算出手順と、
前記各時間帯と前記各パターンとの関連度の算出結果に対する予測手法の適用結果と、前記各ユーザ及び各サービスの少なくともいずれか一方と前記各パターンとの関連度と基づいて前記パターンの抽出の逆変換を実行する逆変換手順と、
前記各ユーザ及び各サービスの少なくともいずれか一方と前記各パターンとの関連度と基づいて、前記各ユーザ及び各サービスの少なくともいずれか一方を前記パターンごとのいずれかのグループに分類する分類手順と、
前記逆変換の結果と、前記グループへの分類結果とに基づいて、前記期間より後の期間について前記グループごとに前記統計量の予測値を算出する第３の算出手順と、
をコンピュータが実行することを特徴とする予測方法。
【請求項７】
請求項１乃至３いずれか一項記載の予測装置としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、予測装置、予測方法及びプログラムに関する。
【背景技術】
【０００２】
通信事業者は、ネットワークの輻輳による通信品質の劣化を回避するため、ネットワークの状況を逐次監視し、適切な通信経路制御や設備増設を行っている。
【０００３】
一方で、近年、モバイル端末やＩｏＴ（Internet of Things）機器が急速に普及し、その上で多数のサービスが提供されており、求められる通信品質（要求通信品質）も多様化している。要求通信品質の多様化の例として、通信量が大容量かつ超低遅延を要求する中継配信サービスや、配置済みのセンサからのデータ収集のような低容量かつ遅延許容可能なサービスなどが挙げられる。
【０００４】
要求通信品質が多様化しているなか、高い通信品質を維持するためには、要求通信品質に基づいてトラヒックの経路を制御することが有効であると考えられる。例えば、輻輳発生の可能性がある状況下では、遅延が許容できるサービスのトラヒックを、輻輳リンクを避ける経路に迂回させることにより、他の通信の通信品質を維持することができる。
【０００５】
上記のような経路制御を実現するためには、要求通信品質ごとにトラヒックを予測することが求められる。ここで、要求通信品質は、サービス及びユーザの端末環境（ＯＳ，端末種別など）に強く依存する。例えば、動画サービスは要求帯域が大きく、ＳＮＳ（Social Networking Service）は要求帯域が小さくなるなど、サービスにより要求通信品質は異なる。また、同じ動画サービスであっても、画面の大きなデスクトップ端末での視聴と、画面の小さなスマートフォンでの視聴とでは、求められる画質が異なり、端末環境によっても要求通信品質は異なる。
【０００６】
しかし、要求通信品質ごとにトラヒックを予測するにあたり、サービス及びユーザごとに分割してトラヒックを予測しようとすると、各トラヒック量が小さくなってしまう。そのため、トラヒック変動が安定せず、変動パターン（傾向）を捉えることが困難となり、予測精度が低下すると考えられる。
【０００７】
トラヒックの予測精度の向上のため、トラヒックをグループ化する技術として、特許文献１がある。特許文献１では、図１に示されるように、トラヒック量の時系列変動が小さくなるようにトラヒックをグルーピングすることで、予測の容易性（予測精度）を高めている。このようにして予測容易となったグループ化されたトラヒックは、予測値に基づいて最適な（例えば、輻輳が発生しないように各ノード間のリンク利用率を最小化するような）経路へ割り当てられることができる。
【先行技術文献】
【特許文献】
【０００８】
【特許文献１】特許第５７４７３９３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１では、トラヒックの時系列変動のみに着目してグループ化が行われるため、グループ化したトラヒックの中には、要求通信品質の異なるサービスのトラヒックが混在し、要求通信品質に基づく予測及び経路制御を実現することができない。
【００１０】
本発明は、上記の点に鑑みてなされたものであって、トラヒックの予測精度を向上させることを目的とする。
【課題を解決するための手段】
【００１１】
そこで上記課題を解決するため、予測装置は、複数のユーザと複数のサービスとの間の過去の期間のトラヒックについて、ユーザ、サービス、及び時間帯の組み合わせ別に前記トラヒックの統計量を算出する第１の算出部と、前記統計量に基づいて、前記トラヒックに関して複数のパターンを抽出する抽出部と、各ユーザ及び各サービスの少なくともいずれか一方を、前記パターンごとのいずれかのグループに分類する分類部と、前記分類部による分類結果と、前記統計量とに基づいて前記グループごとの前記各時間帯の統計量を算出する第２の算出部と、前記グループごとの前記各時間帯の統計量に予測手法を適用して、前記期間より後の期間について前記グループごとに前記統計量の予測値を算出する第３の算出部と、を有する。
【発明の効果】
【００１２】
トラヒックの予測精度を向上させることができる。
【図面の簡単な説明】
【００１３】
【図１】トラヒックのグループ化による予測を説明するための図である。
【図２】第１の実施の形態におけるトラヒックの予測方法を説明するための図である。
【図３】第１の実施の形態におけるシステム構成例を示す図である。
【図４】トラヒックログの構成例を示す図である。
【図５】第１の実施の形態における予測装置１０のハードウェア構成例を示す図である。
【図６】第１の実施の形態における予測装置１０の機能構成例を示す図である。
【図７】第１の実施の形態において予測装置１０が実行する処理手順の一例を説明するためのフローチャートである。
【図８】３次元配列Ｘの一例を示す図である。
【図９】パターン抽出手法の出力結果の一例を示す図である。
【図１０】アクセスパターンに基づくトラヒックのグループ化の一例を示す図である。
【図１１】グループごとの各時間帯のトラヒック量の算出結果の一例を示す図である。
【図１２】予測手法の出力結果Ａ'の一例を示す図である。
【図１３】予測装置１０の処理結果の出力例を示す図である。
【図１４】第２の実施の形態において予測装置１０が実行する処理手順の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面に基づいて第１の実施の形態を説明する。なお、本実施の形態における各用語の意味は、以下の通りである。
・「通信」又は「トラヒック」の各用語は、いずれも「通信トラヒック」と同義であり、ネットワーク上を流れる通信データをいう。
・「アクセス」とは、ユーザによるサービスに対する通信の発生をいう。
・「サービス」とは、コンテンツの配信元が提供するサービスをいい、コンテンツサービスプロバイダがサーバにより提供しているものである。
【００１５】
本実施の形態では、要求通信品質に基づきトラヒックをグループ化するために、サービスとユーザとアクセスの時刻（トラヒックの時系列変動）との傾向に基づくアクセスパターンの類似性を考慮する。要求通信品質は、サービス及びユーザに強く依存し、特にユーザによるサービスの利用が類似する場合には、要求通信品質が類似すると考えられる。例えば、昼にオフィスのデスクトップ端末から検索サイトを多用する場合や、夜間にモバイル端末で動画の視聴を行う場合等、類似するアクセスパターンと要求通信品質は関連する。
【００１６】
一方で、同時に利用されやすいサービス、趣向の類似する（同様のサービスを利用する）ユーザ、利用タイミングのパターン（生活パターンや一定間隔での利用等）というように、サービス、ユーザ及びトラヒック時系列変動には類似性がみられるため、このようなアクセスパターンの類似に基づきトラヒックをグループ化することで、グループに特有のトラヒック時系列変動を捉えることができる。グループに特有のトラヒック時系列変動を捉えられると、グループごとのトラヒックが高い精度で予測できると考えられる。
【００１７】
図２は、第１の実施の形態におけるトラヒックの予測方法を説明するための図である。図２に示されるように、本実施の形態では、要求通信品質が類似すると考えられるアクセスパターンに基づき、トラヒックをグループ化し、グループ化した単位でのトラヒックについて、高精度な予測と経路制御を行う。これにより、既存の手法では考慮できていなかった、要求通信品質に基づく単位での制御を実現することができる。
【００１８】
図３は、第１の実施の形態におけるシステム構成例を示す図である。図３において、トラヒック収集装置２０は、ネットワーク間の一切の通信に影響しないようにしながら、ユーザ端末３０からサービスへのアクセスに関するトラヒックのログ（以下、「トラヒックログ」という。）を収集・蓄積する。トラヒックログの記録先としてはトラヒック収集装置２０のメインメモリや記録装置を想定しているが、任意である。
【００１９】
予測装置１０は、トラヒック収集装置２０によって収集された過去の期間におけるトラヒックログに基づいて、当該期間より後の期間のトラヒック（トラヒックの統計量）を予測する１以上のコンピュータである。
【００２０】
図４は、トラヒックログの構成例を示す図である。図４に示されるように、トラヒックログは、タイムスタンプ、ユーザＩＤ、サービス名及び観測値等を含む。
【００２１】
タイムスタンプは、ユーザ端末３０がサービスにアクセスした日時である。ユーザＩＤは、アクセス元のユーザ端末３０の識別子（例えば、ＩＰアドレス）である。サービス名は、アクセス先（ＤＮＳキャッシュサーバ又はコンテンツサーバ）のサービスの識別子である。具体的には、ＨＴＴＰトラヒックの場合はホスト名、ＤＮＳクエリにおいてはＦＱＤＮ（Fully Qualified Domain Name）がサービス名の一例となる。観測値は、ユーザ端末３０がサービスにアクセスした際に発生したトラヒック量である。但し、この観測値は任意であり、観測値を省いてトラヒックログとすることも可能である。
【００２２】
図５は、第１の実施の形態における予測装置１０のハードウェア構成例を示す図である。図５の予測装置１０は、それぞれバスＢで相互に接続されているドライブ装置１００、補助記憶装置１０２、メモリ装置１０３、ＣＰＵ１０４、及びインタフェース装置１０５等を有する。
【００２３】
予測装置１０での処理を実現するプログラムは、ＣＤ−ＲＯＭ等の記録媒体１０１によって提供される。プログラムを記憶した記録媒体１０１がドライブ装置１００にセットされると、プログラムが記録媒体１０１からドライブ装置１００を介して補助記憶装置１０２にインストールされる。但し、プログラムのインストールは必ずしも記録媒体１０１より行う必要はなく、ネットワークを介して他のコンピュータよりダウンロードするようにしてもよい。補助記憶装置１０２は、インストールされたプログラムを格納すると共に、必要なファイルやデータ等を格納する。
【００２４】
メモリ装置１０３は、プログラムの起動指示があった場合に、補助記憶装置１０２からプログラムを読み出して格納する。ＣＰＵ１０４は、メモリ装置１０３に格納されたプログラムに従って予測装置１０に係る機能を実行する。インタフェース装置１０５は、ネットワークに接続するためのインタフェースとして用いられる。
【００２５】
図６は、第１の実施の形態における予測装置１０の機能構成例を示す図である。図６において、予測装置１０は、前処理部１１、パターン抽出部１２及び予測部１３を有する。これら各部は、予測装置１０にインストールされた１以上のプログラムが、ＣＰＵ１０４に実行させる処理により実現される。
【００２６】
前処理部１１は、トラヒック収集装置２０によって収集されたトラヒックログを、アクセスパターンの抽出に適した形式のデータに加工する。
【００２７】
パターン抽出部１２は、前処理部１１から出力されるデータを入力として分析を行い、入力データの中から任意の数の代表的なアクセスパターンを抽出し、かつ、各アクセスパターンに対して入力データの各軸の項目がどの程度関連しているかを示す「関連度」を算出する。
【００２８】
予測部１３は、パターン抽出部１２の出力を入力として、代表的なアクセスパターンに基づくグループごとのトラヒックの予測結果を出力する。
【００２９】
以下、予測装置１０が実行する処理手順について説明する。図７は、第１の実施の形態において予測装置１０が実行する処理手順の一例を説明するためのフローチャートである。
【００３０】
ステップＳ１０１において、前処理部１１は、タイムスタンプが過去の或る期間Ｔ（予測開始時刻ｅから過去（ａ×時間幅ｂ）まで）に含まれるトラヒックログの集合をトラヒック収集装置２０から取得する。ａ及びｂは、分析を行う者により事前に設定される任意の数値である。ａが大きいほど、より長期間のトラヒックログに基づいたトラヒック発生パターンを抽出することができる。また、ｂは予測の時間粒度であり、時間幅ｂで時間を離散化している。例えば、ｂ＝１時間とした場合、１時間単位でのトラヒックについて、後述の統計量が算出されることとなる。
【００３１】
続いて、前処理部１１は、取得したトラヒックログの集合について、ユーザＩＤとサービス名とタイムスタンプ（時間帯）との関係性を表現する３次元配列Ｘ（ユーザＩＤ、サービス名、及び時間帯の組み合わせ別の統計量）を生成（算出）する（Ｓ１０２）。
【００３２】
図８は、３次元配列Ｘの一例を示す図である。図８に示されるように、３次元配列Ｘは、各ユーザＩＤ、各サービス名、各時間帯を各軸の項目とし、各項目の組み合わせごとに、当該組み合わせに関してトラヒックログの集合から得られる統計量（統計量の計算方法は後述される。）を要素とするデータである。或るユーザＩＤ＝ｕの或るサービス名＝ｓの或る時間帯＝ｔ（ｔは、ｅ−ｂ×（ａ−ｔ＋１）からｅ−ｂ×（ａ−ｔ））に対する統計量ｖは、例えば、以下の（１）、（２）のいずれかの方法によって算出されてもよい。
【００３３】
（１）観測値に基づいてアクセスパターンを抽出する場合
ｖ＝ｐｒｏｃｅｓｓ（ｓｕｍ（ユーザＩＤ＝ｕ  かつ  サービス名＝ｓ  かつ  時間帯ｔに含まれるトラヒックログにおける観測値））
（２）ユーザＩＤとサービスの利用数に基づいてアクセスパターンを抽出する場合
ｖ＝ｐｒｏｃｅｓｓ（ｃｏｕｎｔ（ユーザＩＤ＝ｕ  かつ  サービス名＝ｓ  かつ  時間帯ｔに含まれるトラヒックログ））
なお、ｃｏｕｎｔ（）は、該当するトラヒックログの数である。ｓｕｍ（）は、該当する観測値の合計である。ｐｒｏｃｅｓｓ（）は、入力された値の大小関係を保持したまま出力する操作であり、例えば、ｐｒｏｃｅｓｓ（ｘ）＝ｘや、ｐｒｏｃｅｓｓ（ｘ）＝ｌｏｇ（ｘ）などで与えることができる。
【００３４】
（１）では、観測値をトラヒック量とした場合、ユーザＩＤをアクセス元とするサービスについて各時間帯に発生したトラヒックの合計値（トラヒック量）を統計量として扱う。（２）では、ユーザＩＤをアクセス元とするサービスについて各時間帯にアクセスされた回数を統計量として扱う。なお、図８には、上記の（１）の方法により生成された３次元配列の例が示されている。
【００３５】
続いて、パターン抽出部１２は、前処理部１１において生成されたデータ（３次元配列Ｘ）に対してパターン抽出手法を適用する（Ｓ１０３）。パターン抽出部１２は、パターン抽出手法の適用により、入力データの中から任意の数の（複数の）代表的なアクセスパターンを抽出し、かつ、各アクセスパターンに対して入力データの各軸の項目がどの程度関連しているかを示す「関連度」を算出する。パターン抽出部１２は、パターン抽出手法の出力結果として、３次元配列Ｘから、３個の２次元配列Ａ、Ｂ及びＣを得る。
【００３６】
図９は、パターン抽出手法の出力結果の一例を示す図である。図９に示されるように、各２次元配列は、３次元配列Ｘの各軸の項目と任意の数ｋの代表的なアクセスパターンとの関連度を表現している。このうち、時間帯と各アクセスパターンを軸とする２次元配列Ａより、ｋ個の時系列変動を把握することができる。また、サービス名と各アクセスパターンを軸とする２次元配列Ｂ、及びユーザＩＤと各アクセスパターンを軸とする２次元配列Ｃより、各アクセスパターンの抽出の根拠となるサービス名及びユーザＩＤの把握が可能である。ここで、ｋは、分析を行う者により事前に設定される任意の数である。
【００３７】
パターン抽出手法としては、ＮＴＦ（Non-negative Tensor Factorization）、ＮＴＤ（Non-negative Tucker Decomposition）など、３次元配列を入力として、各軸とパターンの関連性を抽出できる手法であれば、任意の手法を適用可能である。ＮＴＦについては、例えば、「Welling, Max, and Markus Weber. "Positive tensor factorization." Pattern Recognition Letters 22.12 (2001): 1255-1261.」等が利用できる。また、ＮＴＤについては、例えば、「Kim, Yong-Deok, and Seungjin Choi. "Nonnegative tucker decomposition." Computer Vision and Pattern Recognition, 2007. CVPR '07. IEEE Conference on. IEEE, 2007.」等が利用できる。なお、図９は、トラヒックログをＮＴＦによって分析した場合の出力結果の一例を示す。
【００３８】
続いて、予測部１３は、抽出した代表的なアクセスパターンに基づきトラヒックをグループ化（アクセスパターンごとのグループへ分類）する（Ｓ１０４）。
【００３９】
具体的には、予測部１３は、まず、抽出したアクセスパターンに基づきトラヒックをグループ化するために、ユーザ及びサービスについてグループ化する。予測部１３は、パターン抽出手法の出力結果のうち、２次元配列Ｂ、Ｃの各要素を関連度に基づいたラベルに置換すると共に、２次元配列Ｂ、Ｃのパターンの軸をグループの軸へ変更して２次元配列Ｂｇ、２次元配列Ｃｇをグループへの分類結果として生成する。例えば、２次元配列Ｃの或るユーザＩＤｗにおいて、最も大きい関連度となるのがパターンｚであった場合、２次元配列Ｃｇではグループｚの配列の要素を１（ユーザＩＤｗはグループｚに所属）へ、それ以外のグループの要素を０とする。この方法でのラベリングの結果の一例を図１０に示す。例えば、図９の２次元配列ＣのユーザＩＤ１は、パターン２の特徴量が最大であるため、図１０の２次元配列Ｃｇにおいて、グループ２の配列要素を１、それ以外のグループの要素を０とする。
【００４０】
続いて、予測部１３は、グループごとの各時間帯の統計量（例えば、トラヒック量又はアクセス回数等）を３次元配列Ｘに基づいて算出（集計）し、図１１に示されるような２次元配列Ａｇ（グループｋ×時間帯ａ）を生成する（Ｓ１０５）。
【００４１】
図１１は、グループごとの各時間帯のトラヒック量の算出結果の一例を示す図である。例えば、２次元配列Ａｇにおいて、グループｚの時間帯ｙの要素は、グループｚに所属する各ユーザＩＤと各サービス名ｐの組み合わせごとに時間帯ｙに発生したトラヒック量の合計（Σｗ，ｐｇｗ，ｐ，ｙ（ｗ及びｐは、ｚに所属、ｇは３次元配列Ｘの要素（トラヒック量））である。
【００４２】
続いて、予測部１３は、算出したグループごとのトラヒック量に予測手法を適用し、適用結果を出力する（Ｓ１０６）。
【００４３】
図１２は、予測手法の出力結果Ａ'の一例を示す図である。図１２に示されるように、予測手法の出力結果（算出結果）は、各グループについて、期間Ｔより後の期間（時間帯ａ以降の各時間帯）のトラヒック量（トラヒック予測量）を２次元配列で表現したものである。ａ'は、予測する時間帯の数（ａ'×ｂ先まで予測）であり、分析を行う者により事前に設定される任意の数である。
【００４４】
ここで、予測手法は、ＡＲＩＭＡモデル、ＬＳＴＭ（Long Short-Term Memory）など、時系列予測手法であれば、任意の手法を適用可能である。２次元配列Ａｇの各グループの時系列変動を独立で（１次元データに）予測手法を適用してもよいし、複数グループの時系列変動に対してまとめて予測手法を適用してもよい。ＡＲＩＭＡモデルについては、例えば、「Feng, Huifang, and Yantai Shu. "Study on network traffic prediction techniques." Wireless Communications, Networking and Mobile Computing, 2005. Proceedings. 2005 International Conference on. Vol. 2. IEEE, 2005.」等が利用できる。また、ＬＴＳＭについては、例えば、「Hochreiter, Sepp, and Jurgen Schmidhuber. "Long short-term memory." Neural computation 9.8 (1997): 1735-1780.」等が利用できる。
【００４５】
なお、上記のグループごとに統計量（トラヒック量）を集計するステップＳ１０５は省略可能であり、その場合、予測部１３は、ステップＳ１０６において以下の処理（以下、「変形例Ｘ」という。）を実行してもよい。
【００４６】
まず、予測部１３は、２次元配列Ａに予測手法（ステップＳ１０６において用いた予測手法）を適用して出力結果である２次元配列Ａ''を得る。２次元配列Ａ''は、各時間帯と各グループとの関連度の予測値を要素とする２次元配列である。続いて、予測部１３は、２次元配列Ａ''と、２次元配列Ｂ及びＣとに基づいて、ＮＴＦによる分解の定義に基づくパターン抽出の逆変換を実施することで、各項目（各ユーザ、各サービス、各時間帯）の組み合わせ別の統計量の予測値ｈを要素とする３次元配列Ｘ'（ユーザＩＤｍ×サービス名ｎ×時間帯ａ'）を当該逆変換の結果として生成する。続いて、予測部１３は、３次元配列Ｘ'の各要素について統計量の逆変換（ｐｒｏｃｅｓｓ関数の逆変換）を実施することで、ｐｒｏｃｅｓｓ関数の適用前の統計量を要素とする３次元配列Ｘ''を生成する。例えば、前処理部１１において、ｐｒｏｃｅｓｓ（ｘ）＝ｌｏｇ（ｘ）と変換した場合は、要素はｅｈとなる。続いて、予測部１３は、ラベルの置換（アクセスパターンに基づくグループへの分類）をＢ及びＣについて行い、Ｂｇ及びＣｇを分類結果として生成する。続いて、予測部１３は、３次元配列Ｘ''の要素と、Ｂｇ及びＣｇとに基づいて、各グループの期間Ｔより後の各時間帯のトラヒック量を算出し、２次元配列Ａ'（グループｋ×時間帯ａ'）を出力する。
【００４７】
続いて、予測部１３は、処理結果を出力する（Ｓ１０７）。図１３は、予測装置１０の処理結果の出力例を示す図である。例えば、図１２のグループごとのトラヒック予測値Ａ'に加え、各ユーザ・サービスがどのグループに所属しているかを示す情報Ｂｇ及びＣｇが出力される。
【００４８】
この結果に基づき、グループごとの制御を手動で又は自動的に実現することができる。例えば、グループｚのトラヒック予測値に基づき、所属するユーザＩＤからアクセスされるサービスのトラヒックを、最適な経路へ割り当てればよい。例えば、代表的なサービスについては要求通信品質が既知であると想定し、グループに所属する代表的なサービス名から、グループの要求通信品質を推定することができるものとする。具体的には、図１３において、２次元配列Ｂｇのサービス２のサービス名がｕｐｄａｔｅ．ｅｘａｍｐｌｅ１．ｃｏｍであったとき、グループｋはシステムのアップデートに関するサービスであり、多少の遅延は許容可能と推定できる。このとき、出力結果Ａ'の時間帯ａ＋２において、全てのグループのトラヒックについて最短経路となるように割り当てると輻輳が起こる可能性がある場合には、トラヒック予測量が大きく、多少の遅延が許容できるグループｋを迂回経路に割り当てる等が考えられる。
【００４９】
上述したように、第１の形態によれば、要求通信品質が類似するトラヒックをグループ化し、グループ単位の予測をすることで、トラヒックの予測精度を向上させることができる。その結果、先行文献における課題を解決し、サービス及びユーザにおけるトラヒック発生パターンを捉えた予測に基づいた制御に貢献することができる。
【００５０】
次に、第２の実施の形態について説明する。第２の実施の形態では第１の実施の形態と異なる点について説明する。第２の実施の形態において特に言及されない点については、第１の実施の形態と同様でもよい。
【００５１】
図１４は、第２の実施の形態において予測装置１０が実行する処理手順の一例を説明するためのフローチャートである。図１４中、図７と同一ステップには同一ステップ番号を付し、その説明は省略する。図１４では、図７のステップＳ１０２、Ｓ１０３が、ステップＳ１０２ａ、Ｓ１０３ａに置換されている。
【００５２】
ステップＳ１０２ａにおいて、前処理部１１は、取得したトラヒックログの集合について、２次元配列Ｘ２（時間帯×ユーザＩＤ又は時間帯×サービス名）を生成する。
【００５３】
続いて、パターン抽出部１２は、前処理部１１において生成されたデータ（２次元配列Ｘ２）を入力データとしてパターン抽出手法を適用する（Ｓ１０３ａ）。パターン抽出手法の出力結果として、２次元配列Ａと、２次元配列Ｂ又はＣとの２個の２次元配列が得られる。出力結果の各２次元配列は、Ｘ２の各軸の項目と任意の数ｋの代表的なアクセスパターン（ユーザ・トラヒック時系列変動、又はサービス・トラヒック時系列変動）との関連度を表現している。この場合、ＮＭＦ（Non-negative Matrix Factorization）など、２次元配列を入力として、配列の各軸の項目とパターンの関連性を抽出できれば、任意のパターン抽出手法を適用可能である。パターン抽出手法適用後は、第１の実施の形態と同様の処理を実行すればよい。これにより、ユーザのアクセスパターン、又はサービスへのアクセスパターンに基づいた予測が可能である。
【００５４】
なお、第２の実施の形態は、変形例Ｘに対しても適用可能である。このように、図Ｆ１のステップＳ１０２及びＳ１０３等は、ユーザ及びサービスの少なくともいずれか一方について実行されてもよい。
【００５５】
なお、本実施の形態において、前処理部１１は、第１の算出部の一例である。パターン抽出部１２は、抽出部の一例である。予測部１３は、分類部、第２の算出部、第３の算出部及び逆変換部の一例である。
【００５６】
以上、本発明の実施の形態について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【符号の説明】
【００５７】
１０          予測装置
１１          前処理部
１２          パターン抽出部
１３          予測部
２０          トラヒック収集装置
３０          ユーザ端末
１００        ドライブ装置
１０１        記録媒体
１０２        補助記憶装置
１０３        メモリ装置
１０４        ＣＰＵ
１０５        インタフェース装置
Ｂ            バス
【図１】
2020136894.tif 000003
【図２】
2020136894.tif 000004
【図３】
2020136894.tif 000005
【図４】
2020136894.tif 000006
【図５】
2020136894.tif 000007
【図６】
2020136894.tif 000008
【図７】
2020136894.tif 000009
【図８】
2020136894.tif 000010
【図９】
2020136894.tif 000011
【図１０】
2020136894.tif 000012
【図１１】
2020136894.tif 000013
【図１２】
2020136894.tif 000014
【図１３】
2020136894.tif 000015
【図１４】
2020136894.tif 000016