JP4905086B2 - イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム - Google Patents

イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム Download PDF

Info

Publication number
JP4905086B2
JP4905086B2 JP2006322224A JP2006322224A JP4905086B2 JP 4905086 B2 JP4905086 B2 JP 4905086B2 JP 2006322224 A JP2006322224 A JP 2006322224A JP 2006322224 A JP2006322224 A JP 2006322224A JP 4905086 B2 JP4905086 B2 JP 4905086B2
Authority
JP
Japan
Prior art keywords
series data
fluctuation
variation
time
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2006322224A
Other languages
English (en)
Other versions
JP2008134958A (ja
Inventor
政志 宇山
安英 松本
昌朋 矢崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2006322224A priority Critical patent/JP4905086B2/ja
Priority to US11/943,201 priority patent/US7904330B2/en
Publication of JP2008134958A publication Critical patent/JP2008134958A/ja
Application granted granted Critical
Publication of JP4905086B2 publication Critical patent/JP4905086B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0202Market predictions or forecasting for commercial activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • H04L41/147Network analysis or design for predicting network behaviour
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/06Generation of reports
    • H04L43/067Generation of reports using time frame reporting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/16Threshold monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Game Theory and Decision Science (AREA)
  • Marketing (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Description

本発明は、ネットワークに接続されたコンピュータにより提供されるサイトへのアクセス履歴を示すログを解析して、サイトを提供するコンピュータの管理、運営等を支援する情報を生成するシステム、方法およびプログラムに関する。
例えば、Eコマース、Eバンク、オンラインショッピング等のWebサイトへの利用者端末からのアクセス量は、季節変動などの長期変動だけでなく、プロモーションなどビジネス上のイベントによっても変動する。すなわち、何らかのイベントによって利用者の行動が通常時とは変化したことによりWebサイトへのアクセス量が変動することがある。例えば、企業が、Webサイトで提供するサービスのプロモーションを行った後には、そのWebサイトへのアクセス量が、急激に増加し、その後、次第に減少していくという現象が起きる場合がある。
この企業のようにWebサイトを使ってビジネスを行う者は、アクセス量の季節変動等のような長期変動の予測とともに、プロモーションなどビジネス上のイベントに起因するアクセス量の中期変動を予測することで、アクセス量に合わせてWebサイトを効率よく運営することができる。そのため、アクセス量の変動を予測する技術は非常に有効なものとなる。
一般に、需要予測は、過去のアクセス量変動実績から取り出した規則性や、規則性の変化の規則性を将来に援用することで行われる。イベントによる変動を予測する上では、過去のイベント生起時の事例を分析し、アクセス量変動の特徴を抽出しておくことが必要である。例えば、本出願人による先行発明(特許文献1参照)では、イベント特徴モデルと呼ぶデータベースに、過去のイベントに起因するアクセス量の時間的変動パターンと、過去のイベント情報とを保存し、予測に活用している。一般に、Webサイトへのアクセス量の時間的変動は、Webサイトのアクセスログから得られる。
Webサイトへのアクセス量は、例えば、ページ参照数、セッション数、セッション開始数等で表される。ページ参照数は、Webサイトを構成するページのうち主要なページに対する利用者端末からの参照数である。セッションとは、同一利用者端末(同一ホスト)からの連続したアクセスの系列である。すなわち、同一の利用者端末からの一連のアクセスは1つのセッションとして扱われる。なお、同一利用者端末からのアクセス間隔が一定時間(例えば30分)以上開いた場合には、その一定時間の前のアクセスと、後のアクセスとは別のセッションとみなされる。
Webサイトのアクセスログとしては、現時点では、HTTP(HyperText Transfer Protocol)による通信のログが保存されることが多い。一般に、HTTPログは、1行に1つのアクセスに関する情報が記録される。その場合、各行にそのアクセスのセッションを識別するセッションIDが付与されることがある。セッション数とは、所定時間内のユニークなセッションの数である。例えば、HTTPログにおける所定時間内のユニークなセッションIDの数をカウントすることによりセッション数を取得することができる。これに対して、セッション開始数とは、所定時間内に新たに開始されたセッションの数である。
このようなWebサイトのアクセスログ自体には、その時にどんなイベントが起きていたかは保存されていない。このため、上記先行発明では、Webサイトに関連するイベント情報は、別途外部から入力される構成となっている。すなわち、WebサイトのアクセスログはWebサーバの機能により簡単に蓄積されるが、Webサイトへのアクセスの特徴的な変動の原因となったイベントの情報について、アクセスログと関連づけて記録するための手段は存在しなかった。また、Webサーバに蓄積されたログからイベントの種類を推定するシステムも従来存在しなかった。このため、Webサイトのアクセスログが入手できても、対応するイベント実施履歴が入手できない場合は、アクセス量の変動実績データを予測に活用することができない場合が少なくなかった。
一方、ログを分析し、アクセス変動の異常を検出する異常検出手法は既に多数存在する(例えば、非特許文献1参照)。非特許文献1には、異常検出手法として3つの手法が記されている。これらの手法は、アクセス数変動の異常を検出するに留まり、その原因の特定を行うものではない。
また、異常検出に加えて、異常値の推移を予測するシステムも開示されている(例えば、特許文献2参照)。特許文献2には、ネットワーク機器等のログから、イベント記録数の異常値を算出し、今後の異常値の推移をベイズ推論に基づき予測する処理が記載されている。特許文献2における「イベント」は、例えば、HTTP Port Probe、Smurf Attackなどのように、特定の項目が記載されたログ内のパラメタのことである。これは、本発明におけるイベントとは異なる。本発明におけるイベントは、ログデータに表されるアクセス量の特徴的な変動を引き起こす原因となるイベント(例えば、プロモーション、Webサイトによる広告、テレビによるCM、街頭キャンペーン等)を意味する。特許文献2では、同じイベントという言葉が記載されているものの、利用者の行動変化の原因となるイベントの種類を推定する処理は記載されていない。
また、従来から、Webサーバのログを分析する多数の商用製品が存在している(例えば、非特許文献2参照)。非特許文献2には、Urchin、SiteCatalyst などのログ解析ツールが紹介されている。これらのログ解析ツールには、広告による来訪者数の変化、あるページを参照した利用者が購入にいたる確率、アクセス数の時間遷移等を集計、可視化する機能を有する。しかしながら、これらのログ解析ツールは、ログから過去に行われたイベントの種類を抽出する手段は持たない。
特開2006−268529号公報 特開2005−196675号公報 山西健司、竹内純一、丸山祐子、「統計的異常検出3手法」、情報処理、情報処理学会、2005年1月15日発行、46巻、1号、p.34−40、 「アクセスログ解析ツール」、インターネットマガジン, インプレス社、2005年12月1日発行、2005年12月号, p.106
そこで、本発明は、サイトに対する利用者端末からのアクセス履歴を示すログデータからアクセス変動異常を抽出し、異常変動の原因となったイベントの種類を推定することができるイベント種類推定システム、イベント種類推定方法、イベント種類推定プログラムを提供することを目的とする。
本発明にかかるイベント種類推定システムは、ネットワークに接続されたコンピュータにより提供される少なくとも1つのサイトに対する利用者端末からのアクセスの履歴を示すログデータから、前記サイトへのアクセス量の変動を表す実績時系列データを生成するログ集計部と、アクセス量の基準変動を記録する基準変動記録部を参照することにより、前記ログ集計部で生成された実績時系列データから、アクセス量の変動が前記基準変動と乖離している異常変動を示す区間を抽出する乖離度テスト部と、前記乖離度テスト部で抽出された区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを、前記実績時系列データを基に生成し、変動パターン記録部に記録する山型変動パターン設定部と、前記乖離度テスト部で抽出された区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンを表す通常変動時系列データを、前記実績時系列データを基に、または、予め記録されたデータを基に生成し、前記変動パターン記録部に記録する通常変動パターン設定部と、前記乖離度テスト部で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを、前記実績時系列データを基に生成し、前記変動パターン記録部に記録する上下変動パターン設定部と、前記変動パターン記録部に記録された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データが表すそれぞれの変動パターンを合成して合成変動を計算する処理と、前記ログ集計部が生成した前記変動実績データが表すアクセス量の変動のうち前記乖離度テスト部で抽出された区間におけるアクセス量の変動と、前記合成変動とを比較する処理とを、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを、前記合成変動を計算する度に更新して繰り返すことにより、前記合成変動が、前記変動実績データが表すアクセス量の変動を近似するように、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化する波形分解部と、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データと、異常変動の原因となるイベントの種類との関係を示すルールを記録するルール記録部と、前記波形分解部で最適化された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データと、前記ルール記録部に記録されたルールとに基づいて、前記区間の異常変動の原因となったイベントの種類を判定するイベント判定部とを備える。
ログ集計部は、ログデータからサイトに対するアクセス量の変動を表す実績時系列データを生成する。サイトに対するアクセス量の変動は、例えば、そのサイトで提供されるコンテンツに関する広告、CM、キャンペーン等のイベントによって影響を受ける。乖離度テスト部は、実績時系列データが示すアクセス量の変動が所定の基準変動から乖離している異常変動を示す区間を抽出することにより、アクセス量の変動がイベントにより影響を受けている可能性が高い区間を抽出することができる。山型変動パターン設定部は、乖離度テスト部で抽出された区間における実績時系列データが示すアクセス量の変動のうち、1つのピークを持つ山型に変動するアクセス量の成分を表す山型変動時系列データを変動パターン記録部に記録する。通常変動パターン設定部は、乖離度テスト部で抽出された区間における、通常時の変動パターンを表す通常変動時系列データを生成して記録する。上下変動パターン設定部は、乖離度テスト部で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを生成して記録する。波形分解部は、これらの山型変動時系列データ、通常変動時系列データ、上下変動時系列データが示すそれぞれの変動パターンを合成した合成変動が、実績時系列データが示すアクセス量の変動を近似するように、山型変動時系列データ、通常変動時系列データ、上下変動時系列データを最適化する。これにより、実績時系列データが示すアクセス量の変動を、上記の山型変動時系列データ、通常変動時系列データ、上下変動時系列データで表すことができる。すなわち、実績時系列データが示すアクセス量の変動の特徴が、上記の各時系列データにより表される。アクセス量の変動の特徴は、その原因となるイベントの種類によって異なる傾向にあるので、イベント判定部は、波形分解部で最適化された前記各時系列データと、ルール記録部に記録されたルールとに基づいて、区間の異常変動の原因となったイベントの種類を判定することができる。その結果、ログデータから、アクセス変動異常を抽出し、異常変動の原因となったイベントの種類を推定することが可能となる。
本発明にかかるイベント種類推定システムは、前記乖離度テスト部で抽出された区間におけるアクセス量の変動であって、異常変動を含まない通常時のアクセス量の変動を表す通常変動データを記録する通常変動記録部と、前記サイトの一部を構成する少なくとも1のページを複数通り抽出し、前記乖離度テスト部で抽出された区間において、抽出した複数通りのページそれぞれに対するアクセスを含むセッション群のアクセス量の変動であるページ変動データを、前記ログデータを基に生成するページログ集計部と、前記ページログ集計部で生成された前記ページ変動データが示す複数通りのページそれぞれについて、ページに対するアクセスを含むセッション群のアクセス量の変動と、前記通常変動記録部に記録された前記通常変動データが示す変動とを合成した変動を、前記ログ集計部が生成した前記実績時系列データが表すアクセス量の変動のうち前記乖離度テスト部で抽出された区間におけるアクセス量の変動との相違度合いを計算し、当該相違度合いに基づいて、前記複数通りのページから対象ページを選択するセッション分離部とをさらに備えることが好ましい。前記波形分解部は、前記ログ集計部が生成した実績時系列データが表すアクセス量の変動のうち、前記セッション分離部で選択された対象ページに対するアクセスを含むセッション群のアクセス量の変動と、前記合成変動とを比較する処理を繰り返すことにより、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化することが好ましい。
上記構成において、セッション分離部は、複数通りのページそれぞれに対するアクセスを含むセッション群のアクセス量の変動および通常変動記録部の通常変動データが表す変動を合成した変動と、実績時系列データが示すアクセス量の変動との相違度合いを計算し、当該相違度合いに基づいて、対象ページを選択する。実績時系列データが示すアクセス量の実際の変動は、通常時の変動の成分に、アクセス量が異常変動の成分を加えたものと考えられるので、ページに対するアクセスを含むセッション群のアクセス量の変動に、通常時の変動とは異なる異常変動の成分が含まれる度合いが大きくなればなるほど、前記相違度合いが小さくなる。前記相違度合いは、ページの異常変動への寄与度合いに関連する。そのため、セッション分離部は、前記相違度合いに基づいて対象ページを選択するので、アクセス量の変動が異常変動の成分に応じて対象ページとして選択される。実績時系列データが示すアクセス量の異常変動に寄与しているページが対象ページとして選択することが可能になる。波形分解部は、異常変動へ寄与している対象ページに対するアクセス量の変動を、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データの合成変動で近似するように、これらの時系列データを最適化する。イベント判定部は、このように、異常変動に寄与している対象ページに対するアクセス量の変動を近似するために最適化された各時系列データを用いて、イベントの種類を判定するので、判定精度が向上する。
本発明にかかるイベント種類推定システムは、前記サイトを構成するページのうち少なくとも一部のページについて、前記乖離度テスト部で抽出された区間における前記ページに対するアクセス量が、前記サイト全体に対するアクセス量に対して占める割合を、前記ログデータを基に、ページごとに計算する区間内構成比算出処理と、前記乖離度テスト部で抽出された区間より前の所定区間における前記ページに対するアクセス量のサイト全体に対するアクセス量に対して占める割合を、前記ログデータを基に、ページごとに計算する前区間構成比算出処理と、前記区間内構成比算出処理で計算された割合が、前記前区間構成比算出処理で計算された割合とを、ページごとに比較することにより、前記波形分解部の処理対象となる対象ページを選択する構成比上昇度テスト部とをさらに備えることが好ましい。前記波形分解部は、前記ログ集計部が生成した実績時系列データが表すアクセス量の変動のうち、前記構成比上昇度テスト部で選択された対象ページに対するアクセスを含むセッション群のアクセス量の変動と、前記合成変動とを比較する処理を繰り返すことにより、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化することが好ましい。
上記構成により、構成比上昇度テスト部は、乖離度テスト部が抽出した区間におけるページに対するアクセス量のサイト全体に対するアクセス量の割合が、その区間の前の所定区間における割合に対してどの程度変化しているかによって、対象ページを選択することができる。そのため、構成比上昇度テスト部は、特にアクセスが際立って増加しているページを対象ページとして抽出することが可能になる。波形分解部は、このような特にアクセスが際立って増加しているページに対するアクセス量の変動を、前記合成変動と比較することにより、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを計算する。イベント判定部は、このような前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを基に、イベントの種類を判定するので、判定精度が向上する。
本発明にかかるイベント種類推定システムは、山型変動パターン設定部が生成した前記山型変動時系列データが表すアクセス量の変動のピーク時点を境界として、前記乖離度テスト部で抽出された区間を分割した場合に得られる各部分区間それぞれにおいて開始されたアクセスについて、アクセスの継続時間を、前記ログデータを基に計算する滞在時間テスト部をさらに備え、前記ルール記録部は、前記アクセスの継続時間と、異常変動の原因となるイベントの種類との関係を示す滞在時間ルールをさらに記録し、前記イベント判定部は、滞在時間ルールと、前記滞在時間テスト部が計算したアクセスの継続時間とをさらに用いて、前記イベントの種類を判定することが好ましい。
何らかのイベントによるアクセス量の変動がピークを持つ山型の変動を示す場合、アクセスの継続時間が、ピークの前後で異なる傾向を示す場合が多い。その異なり具合は、イベントの種類によって影響を受けやすい。滞在時間テスト部は、ピークを境に分割した各部分区間それぞれにおいて開始されたアクセスの継続時間をそれぞれ計算し、イベント判定部は、滞在時間ルールと、計算されたアクセスの継続時間をさらに用いて異常変動の原因となるイベントの種類を判定する。そのため、イベント判定部は、ピークの前後におけるアクセス継続時間の違いを考慮して、イベントの種類を判定することができる。その結果、セッション滞在時間の特徴を利用した、より精度のよいイベント種類の判定が可能になる。
本発明にかかるイベント種類推定システムにおいて、前記山型変動パターン設定部は、前記乖離度テスト部で抽出された区間内の2つの異なる区間においてそれぞれ、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを生成し、前記変動パターン記録部に記録することが好ましい。
例えば、イベントの開始時および終了時にアクセス量がピークになる場合等のように、1つのイベントによってアクセス量の変動に複数のピークが生じる場合がある。上記構成において、山型変動パターン設定部は、前記乖離度テスト部で抽出された区間内の2つの異なる区間においてそれぞれ、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを生成し、波形記録部に記録する。これにより、波形分解部は、2つの山型の変動が含まれる山型変動時系列データを用いて合成変動を計算する。そのため、アクセス量の変動に複数のピークが生じる変動により近い合成変動が計算される。そのため、実績時系列データが1つのイベントによってアクセス量の変動に複数のピークが生じるような変動を示す場合において、精度よくイベントの種類の判定をすることができる。
本発明にかかるイベント種類推定方法は、コンピュータが備えるログ集計部が、ネットワークを介して提供される少なくとも1つのサイトに対する利用者端末からのアクセスの履歴を示すログデータから、前記サイトへのアクセス量の変動を表す実績時系列データを生成するログ集計工程と、前記コンピュータが備える乖離度テスト部が、アクセス量の基準変動を記録する基準変動記録部を参照することにより、前記ログ集計工程で生成された実績時系列データから、アクセス量の変動が前記基準変動と乖離している異常変動を示す区間を抽出する乖離度テスト工程と、前記コンピュータが備える山型変動パターン設定部が、前記乖離度テスト工程で抽出された区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを、前記実績時系列データを基に生成し、変動パターン記録部に記録する山型変動パターン設定工程と、前記コンピュータが備える通常変動パターン設定部が、前記乖離度テスト工程で抽出された区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンを表す通常変動時系列データを、前記実績時系列データを基に、または、予め記録されたデータを基に生成し、前記変動パターン記録部に記録する通常変動パターン設定工程と、前記コンピュータが備える上下変動パターン設定部が、前記乖離度テスト工程で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを、前記実績時系列データを基に生成し、前記変動パターン記録部に記録する上下変動パターン設定工程と、前記コンピュータが備える波形分解部が、前記変動パターン記録部に記録された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データが表すそれぞれの変動パターンを合成して合成変動を計算する処理と、前記ログ集計工程で生成された前記変動実績データが表すアクセス量の変動のうち前記乖離度テスト工程で抽出された区間におけるアクセス量の変動と、前記合成変動とを比較する処理とを、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを、前記合成変動を計算する度に更新して繰り返すことにより、前記合成変動が、前記変動実績データが表すアクセス量の変動を近似するように、前記前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化する波形分解工程と、前記コンピュータが備えるイベント判定部が、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データと、異常変動の原因となるイベントの種類との関係を示すルールを記録するルール記録部を参照することにより、前記波形分解工程で最適化された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データに基づいて、前記区間の異常変動の原因となったイベントの種類を判定するイベント判定工程とを含む。
本発明にかかるイベント種類推定プログラムは、ネットワークに接続されたコンピュータにより提供される少なくとも1つのサイトに対する利用者端末からのアクセスの履歴を示すログデータから、前記サイトへのアクセス量の変動を表す実績時系列データを生成するログ集計処理と、アクセス量の基準変動を記録する基準変動記録部を参照することにより、前記ログ集計部で生成された実績時系列データから、アクセス量の変動が前記基準変動と乖離している異常変動を示す区間を抽出する乖離度テスト処理と、前記乖離度テスト処理で抽出された区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを、前記実績時系列データを基に生成し、変動パターン記録部に記録する山型変動パターン設定処理と、前記乖離度テスト処理で抽出された区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンを表す通常変動時系列データを、前記実績時系列データを基に、または、予め記録されたデータを基に生成し、前記変動パターン記録部に記録する通常変動パターン設定処理と、前記乖離度テスト処理で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを、前記実績時系列データを基に生成し、前記変動パターン記録部に記録する上下変動パターン設定処理と、前記変動パターン記録部に記録された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データが表すそれぞれの変動パターンを合成して合成変動を計算する処理と、前記ログ集計処理で生成された前記変動実績データが表すアクセス量の変動のうち前記乖離度テスト処理で抽出された区間におけるアクセス量の変動と、前記合成変動とを比較する処理とを、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを、前記合成変動を計算する度に更新して繰り返すことにより、前記合成変動が、前記変動実績データが表すアクセス量の変動を近似するように、前記前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化する波形分解処理と、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データと、異常変動の原因となるイベントの種類との関係を示すルールを記録するルール記録部を参照することにより、前記波形分解処理で最適化された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データに基づいて、前記区間の異常変動の原因となったイベントの種類を判定するイベント判定処理とをコンピュータに実行させる。
本発明によれば、サイトに対する利用者端末からのアクセス履歴を示すログデータからアクセス変動異常を抽出し、異常変動の原因となったイベントの種類を推定することができるイベント種類推定システム、イベント種類推定方法、イベント種類推定プログラムを提供することができる。
(第1の実施形態)
図1は、本実施形態にかかるイベント種類推定システム1の構成を示す機能ブロック図である。図1に示すイベント種類推定システム1は、Webサイトへのアクセス履歴を示すログデータを記録するWebアクセスログ記録部10に接続されている。イベント種類推定システム1は、Webアクセスログ記録部10から読み込んだログデータからアクセス変動異常を抽出し、異常変動の原因となったイベントの種類を推定するシステムである。
図1に示すイベント種類推定システム1は、ログ集計部2、乖離度テスト部3、構成比上昇度テスト部4、セッション分離部5、波形設定部6、波形分解部7、滞在時間テスト部8、イベント判定部9、通常変動生成部14、基準変動生成部15、ルール記録部11、波形記録部12、通常変動記録部13、基準変動記録部16を備える。ログ集計部2には、ページログ集計部21が含まれる。波形設定部6には、上下波形設定部61、通常波形設定部62、山型波形設定部63が含まれる。
ログ集計部2は、Webアクセスログ記録部10に記録されたWebサイトへのアクセス履歴を示すログデータを読み込み、Webサイトへのアクセス量の変動を表す実績時系列データを生成する。
乖離度テスト部3は、ログ集計部2が生成した実績時系列データから、異常変動を示す区間(以下、異常変動区間と称する)を抽出する。乖離度テスト部3は、異常変動を抽出する際、基準変動記録部16に記録された基準変動を参照する。ここで、基準変動として、例えば、アクセス量の平均的な変動を表すデータが採用される。この基準変動は、基準変動生成部15が、Webアクセスログ記録部10のログデータを基に計算して、基準変動記録部16へ記録する。なお、基準変動は、必ずしもログデータを基に計算されたものである場合に限られない。例えば、予め記録された固定値が基準変動として、基準変動記録部16に記録されていてもよいし、ログ集計部2が生成した実績時系列データから基準変動生成部15が平均的な変動を示すデータを生成して基準変動記録部16に記録してもよい。
構成比上昇度テスト部4は、特にアクセスが際立って増加している少なくとも1つのページのURLを抽出する。このとき、構成比上昇度テスト部4は、Webアクセスログ記録部10のログデータを、ログ集計部2を介して受け取り、URLの抽出処理に用いる。
セッション分離部5は、構成比上昇度テスト部4で抽出されたURLから、さらに、実績時系列データが示す異常変動区間におけるアクセス量の異常変動に最も寄与しているページまたはページの集合のURLをセッション群の変動を基に抽出する。この抽出を行うために、セッション分離部5は、ログ集計部2からWebサイト内の特定のページへのアクセスを含むセッション群のアクセス量変動をページごとに表したページ変動データを受け取って使用する。ページ変動データは、ページログ集計部21が生成する。
また、上記抽出にあたって、セッション分離部5は、通常変動記録部13に記録された通常変動を参照する。通常変動は、異常変動を含まない通常時のアクセス量の変動である。通常変動生成部14が、ログ集計部2が生成した実績時系列データを基に、通常変動を生成し、通常変動記録部13へ記録する。通常変動は、例えば、実績時系列データから、乖離度テスト部3が日単位で抽出した異常変動区間(すなわち、「異常日」)を除外し、平均をとることで得られる。なお、通常変動は、必ずしも実績時系列データを基に計算されたものである場合に限られない。例えば、予め記録された固定値が通常変動として、通常変動記録部13に記録されていてもよい
波形設定部6は、ログ集計部2で生成された実績時系列データが示す異常変動区間におけるアクセス量の変動を近似するためのアクセス量の変動パターンを複数設定する。設定されるアクセス量の変動パターンには、山型変動パターン、通常変動パターン、上下変動パターンが含まれる。これらの変動パターンは、アクセス量の時系列データで表される。以下では、変動パターンを「波形」と称して説明する。すなわち、山型の変動パターンを山型波形、通常変動パターンを通常変動波形、上下変動パターンを上下変動波形と称する。
山型波形設定部63は、実績時系列データを基に山型波形を生成し波形記録部12に記録する。通常波形設定部62は、実績時系列データおよび通常変動記録部13に記録された通常変動に基づいて、通常波形を生成し、波形記録部12へ記録する。上下波形設定部61は、実績時系列データを基に上下波形を生成し、波形記録部12へ記録する。
波形分解部7は、波形記録部12に記録された山型波形、通常波形、上下波形を合成した変動パターン(すなわち合成波形)で、実績時系列データで示される異常変動区間における変動を近似するように、山型波形、通常波形、上下波形を最適化する。すなわち、実績時系列データを精度よく近似するように、波形記録部12の山型波形、通常波形、上下波形が更新される。その際、波形分解部7は、セッション分離部5で抽出されたURLへの異常変動区間におけるアクセス量変動の実績時系列データを、ログ集計部2から受け取り、その実績時系列データが示すアクセス量の変動を、上記合成波形で近似する。
滞在時間テスト部8は、異常変動区間を分割して得られる各部分区間について、それぞれの区間で開始されたアクセスの継続時間を、Webアクセスログ記録部10のログデータを基に計算する。滞在時間テスト部8は、例えば、山型波形設定部63によって設定された山型波形のピークを境界として分割して得られる各部分区間について、アクセス継続時間を計算する。滞在時間テスト部8は、計算したアクセスの継続時間を、イベント判定部9へ通知する。
イベント判定部9は、波形記録部12に記録された山型波形、通常波形および上下波形と、滞在時間テスト部8が計算したアクセス継続時間と、ルール記録部11に予め記録されたルールに基づいて、異常変動区間における異常変動の原因となったイベントの種類を判定する。ルール記録部11に予め記録されるルールには、例えば、山型波形、通常波形および上下波形の構成とイベントの種類との関係、および滞在時間とイベントの種類との関係等を示すデータが含まれる。イベント判定部9が判定したイベントの種類は、処理結果として出力される。また、イベント判定部9は、例えば、乖離度テスト部3で抽出された異常変動区間や、セッション分離部5で抽出されたURL等を処理結果に含めて出力してもよい。処理結果の出力先には、例えば、ファイル、ディスプレイ、プリンタ等(図示せず)が含まれる。
イベント種類推定システム1は、サーバマシン、パーソナルコンピュータ、ワークステーションなどのコンピュータ上に構築される。イベント種類推定システム1のログ集計部2、乖離度テスト部3、構成比上昇度テスト部4、セッション分離部5、波形設定部6、波形分解部7、滞在時間テスト部8、イベント判定部9、通常変動生成部14および基準変動生成部15のそれぞれは、1台のコンピュータ上に構成されてもよいし、複数のコンピュータに分散して構成されてもよい。また、ログ集計部2、乖離度テスト部3、構成比上昇度テスト部4、セッション分離部5、波形設定部6、波形分解部7、滞在時間テスト部8、イベント判定部9、通常変動生成部14、基準変動生成部15のそれぞれ機能は、コンピュータのCPUが所定のプログラムを実行することによって実現される。したがって、上記各機能を実行するためのプログラムおよびプログラムを記録した記録媒体も本発明の一実施形態である。また、ルール記録部11、波形記録部12、通常変動記録部13および基準変動記録部16は、コンピュータが備えるメモリ、ハードディスク等の記録媒体により具現化される。
次に、イベント種類推定システム1の動作例について説明する。図2は、イベント種類推定システムの動作例を示すフローチャートである。以下、図2に示す各ステップについて詳細に説明する。
(Op1:ログ集計部2の処理)
図2に示すように、まず、ログ集計部2が、Webアクセスログ記録部10に記録されたログデータを読み込み、Webサイトへのアクセス量の変動を表す実績時系列データを生成する(Op1)。Webアクセスログ記録部10には、例えば、Webサーバ等により提供される少なくとも1つのWebサイトに対する利用者端末からのアクセス履歴を示すログデータが記録される。ここでは一例としてログデータがHTTP(HyperText Transfer Protocol)ログである場合について説明する。WebサイトのHTTPログは、通常、Webサイトを提供するWebサーバでログファイルとして生成される。HTTPログには、複数のWebサイトに対するアクセス履歴が記録されてもよい。なお、1つのWebサイトは、通常、複数のサービスで構成されるので、1つのWebサイトについて、複数のURL(Uniform Resource Locator)が存在することになる。
ログ集計部2は、読み込んだHTTPログから、Webサイトへのアクセス量の変動を表す時系列データを生成する。Webサイトへのアクセス量は、例えば、ページ参照数、セッション数、セッション開始数等で表される。ページ参照数は、Webサイトを構成するページのうち主要なページに対する利用者端末からの参照数である。セッションとは、同一利用者端末(同一ホスト)からの連続したアクセスの系列である。すなわち、同一の利用者端末からの一連のアクセスは1つのセッションとして扱われる。なお、同一利用者端末からのアクセス間隔が一定時間(例えば30分)以上開いた場合には、その一定時間の前のアクセスと、後のアクセスとは別のセッションとみなされる。一般に、HTTPログは、1行に1つのアクセスに関する情報が記録される。その場合、各行にそのアクセスのセッションを識別するセッションIDが付与されることがある。セッション数とは、所定時間内のユニークなセッションの数である。例えば、HTTPログにおける所定時間内のユニークなセッションIDの数をカウントすることによりセッション数を取得することができる。セッション開始数とは、所定時間内に新たに開始されたセッションの数である。なお、ページ参照数、セッション数、セッション開始数はアクセス量を表すデータの一例であり、アクセス量を表すデータは、これらに限られない。
ログ集計部2は、例えば、10分間隔で、ページ参照数、セッション数、セッション開始数それぞれをHTTPログのログ行数を基に集計し、時系列に並べたデータを時系列データとして生成する。この場合、時系列データには、ページ参照数、セッション数、セッション開始数それぞれの時系列変動を表すデータが含まれる。なお、時系列データはこれに限られず、例えば、ページ参照数、セッション数、セッション開始数の合計値または平均値の時系列変動を時系列データとすることもできる。
図3は、ログ集計部2が生成した時系列データが示すセッション数の変動の例を3次元座標で表した図である。図3に示す3次元座標において、x軸は時間(0時〜23時)、y軸は日にち(2004/1/1〜2004/12/31)、z軸はセッション数を表す。図3に示す例では、0時〜23時までのセッション数の変動を表す線が、2004/1/1〜2004/12/31の期間におけるそれぞれの日について表示されている。なお、セッション数の他、ページ参照数、セッション開始数等のアクセス量の変動の時系列データも図3と同様に3次元座標で表すことができる。
(Op2:乖離度テスト部3の処理)
次に、乖離度テスト部3は、実績時系列データから、基準変動との乖離が大きい異常変動を示す区間(異常変動区間)を抽出する(図2のOp2)。異常変動を示す区間は、イベントによるWebサイトへのアクセス量の変動が現れている区間である可能性が高い区間であり、例えば、Webサイトへのアクセス量が急増している区間等である。異常変動を示す区間は日単位で抽出されてもよいし、時間または分単位で抽出されてもよい。この異常変動区間を抽出する単位は、例えば、予め基準変動記録部16等に記録されてもよい。以下に、一例として異常変動区間が日単位で抽出される場合の処理(すなわち、異常変動区間として、「異常日」が抽出される場合)について説明する。
まず、基準変動生成部15が、基準変動を計算し、基準変動記録部16に記録する。基準変動生成部15は、まず、ページ参照数、セッション数、セッション開始数の3種の時系列変動に対し、1日24時間内の1時間ごとにそれぞれの平均μ1、μ2、μ3と分散σ1 2、σ2 2、σ3 2を求める。1日のうちのある時間帯(例えば、1時〜2時)について、ページ参照数の平均μ1を求める場合、基準変動生成部15は、例えば、ログデータを参照して、過去数ヶ月におけるその時間帯(1時〜2時)のページ参照数の平均を計算し、その値を平均μ1とすることができる。セッション数、セッション開始数の平均μ2、μ3も同様に計算できる。また、長期的な傾向変動や季節変動を加味した値を用いても良い。
次に、乖離度テスト部3は、μ1±2σ1、μ2±2σ2、μ3±2σ3を基準値とし、基準以上のページ参照数λ1、セッション数λ2、セッション開始数λ3があった時間帯をそれぞれ異常時間帯としてマークする。以下に図4を参照して、異常時間帯をマークする処理の具体例を示す。
図4は、ページ参照数の平均μ1およびμ1±2σ1の一例を表すグラフである。図4に示すグラフにおいて、横軸は時間、縦軸はページ参照数を表している。また線gは、ログ集計部2で生成された時系列データが示すページ参照数λ1の時系列変動の一例を示す。図4に示す例では、乖離度テスト部3は、この線gが示すページ参照数の変動が、μ1+2σ1とμ1−2σ1とで挟まれる領域の外に出ている時間帯A1、A2をページ参照数の異常時間帯としてマークする。
次に、乖離度テスト部3は、ページ参照数、セッション数、セッション開始数それぞれについて、マークした異常時間帯における(λ11)/ σ1、(λ22)/ σ2、(λ33)/ σ3をそれぞれ算出し、これらにそれぞれ重み付け係数を掛けた値を、例えば24時間分集計する。このようにして、ページ参照数、セッション数、セッション開始数それぞれについて集計された値を乖離度α1、α2、α3とする。乖離度テスト部3は、この乖離度の計算を時系列データが示す区間の各日について繰り返すことで、ページ参照数、セッション数、セッション開始数の3点それぞれについて、各日の乖離度α1、α2、α3を算出することができる。そして、乖離度テスト部3は、α1、α2、α3のうちいずれかの乖離度が所定の閾値(例えば0.15)を超えた日を異常日(すなわち異常変動を示す区間)として抽出する。
なお、異常変動区間を抽出する処理は、上記例に限られない。乖離度テスト部3は、例えば、ある日のアクセス量を、直前7日間の平均アクセス量と比較し、差が所定値より大きい場合にその日を異常日として抽出してもよいし、1日のうちある時間帯のアクセス量の変動を、例えば、直前7日間の同一時間帯の平均アクセス量の変動と比較することにより、異常変動を示す時間帯を抽出してもよい。また、他の例として、上記非特許文献1に記載されている異常検出手法を用いて、異常変動を示す区間を抽出することもできる。
(Op3:構成比上昇度テスト部4の処理)
異常変動を示す区間が抽出されると、構成比上昇度テスト部4は、実績時系列データで示されるアクセス量の変動のうち、異常変動区間において、特にアクセス量が際立って増えているページまたはページの集合のURLを、異常原因URL候補として抽出する(図2のOp3)。構成比上昇度テスト部4は、例えば、異常変動区間におけるアクセス量と、その前の一定期間におけるアクセス量とを比較することにより、異常原因URL候補を抽出することができる。以下に、乖離度テスト部3で異常変動区間として異常日が抽出された場合に、その異常日において、特にアクセス量の増加が際立っている異常原因URL候補を抽出する処理の具体例を説明する。
構成比上昇度テスト部4は、乖離度テスト部3が抽出した異常日のHTTPログを参照し、出現頻度の高いURLを上位N個抽出する。構成比上昇度テスト部4は、N個のURLそれぞれについて、各URLに対するアクセス量が、その異常日全体のアクセス量に占める割合(構成比Aとする)を算出する。さらに、構成比上昇度テスト部4は、異常日の前日より遡り一週間分のHTTPログを参照し、前記N個のURLそれぞれの一週間分のアクセス量を計算する。異常日の前日より遡る一週間の間に異常日がある場合、その異常日は除いて一週間分(7日分)遡った分のアクセス量を計算することが好ましい。そして、構成比上昇度テスト部4は、この1週間におけるN個のURLそれぞれに対するアクセス量が、一週間全体のアクセス量に占める割合(構成比Bとする)を算出する。
その後、構成比上昇度テスト部4は、構成比Aと構成比Bから、N個のURLそれぞれについて、構成比の上昇度合いを表す構成比上昇度Jを算出する。例えば、構成比上昇度J=構成比A/構成比Bとすることができる。N個のURLのうち、構成比上昇度Jが閾値より高いURL群が、構成比上昇度テスト部4によって異常原因URL候補として抽出される。または、N個のURLのうち、構成比上昇度Jが高い上位M個分のURL群が異常原因URL候補として抽出されてもよい。なお、異常原因URL候補を抽出する処理は、上記例に限られない。また、アクセス量として、例えば、上記のページ参照数、セッション数、セッション開始数のうちすくなくとも1つを用いることができる。
(Op4:セッション分離部5の処理)
構成比上昇度テスト部4が抽出する異常原因URL候補には、単に利用者がサイトのトップページを参照したときにページのフレーム内に同時に表示されるURLが単に新しくなった場合等も含まれる。こういったURLは、真に来訪者を増やし異常変動に寄与しているわけではない。そこで、セッション分離部5は、イベントに特徴的なページへのアクセスを含むセッションのアクセス量を分離して解析することで、イベントによる実質的な来訪者による異常変動成分に寄与するページのURLを抽出する。
構成比上昇度テスト部4によって異常原因URL候補が抽出されると、セッション分離部5は、異常原因URL候補のうち、アクセス量の異常変動に寄与している可能性の高いURL集合を異常原因URLとして特定する(図2のOp4)。この特定を行うために、セッション分離部5は、ログ集計部2のページログ集計部21からWebサイト内のある特定のページへの前記区間におけるアクセスを含むセッション群のアクセス量変動を示すページ変動データを受け取る。アクセス量は、例えば、セッション開始数、セッション数、ページ参照数などで表される。セッション分離部5は、受け取ったページ変動データが示す前記特定のページへのアクセスを含むセッション群のアクセス量変動に、異常変動区間における通常時のアクセス量変動を重ね合わせた合成変動と、Webサイト全体のアクセス量変動を示す実績時系列データと比較し、誤差を計算する。
ここで、通常時のアクセス量変動は、イベントによる影響等がない場合の通常時の変動であり、通常変動記録部13に記録されている。通常変動生成部14は、ログ集計部2を介して取得したログデータを用いて、通常時のアクセス量変動を生成し、通常変動記録部13に記録する。例えば、通常変動生成部14は、過去1年間分の各日についてアクセス量の変動を表す時系列データを取得し、それらの各日の時系列データを平均した時系列データを1日の通常時のアクセス量変動とすることができる。なお、通常時のアクセス量変動は、必ずしもログデータを基に計算されたものである場合に限られない。例えば、予め記録された固定値が通常時のアクセス量変動として、通常変動記録部13に記録されていてもよいし、ログ集計部2が生成した実績時系列データから通常変動生成部14が平均的な変動を示すデータを生成して通常変動記録部13に記録してもよい。
セッション分離部5は、Webサイト内の様々なページまたはページの集合について、ページまたはページの集合へのアクセスを含むセッション群のアクセス量変動に通常時のアクセス量変動を重ね合わせた合成変動と、Webサイト全体のアクセス量変動を示す実績時系列データとの誤差を計算する。セッション分離部5は、このような誤差が最も小さくページまたはページの集合のURLを異常原因URLに特定する。これにより、アクセス量の異常変動に寄与している可能性の高いURLが異常原因URLに特定される。その結果、イベントとは無関係に定常的に変動するアクセス量の成分を、後述する波形分解部7による処理対象から除外することができる。以下に、セッション分離部5が、異常原因URLを特定する処理の具体例を説明する。
まず、セッション分離部5は、構成比上昇度テスト部4が抽出した異常原因URL候補であるURLの集合Sallから、部分集合Sを選択する。例えば、セッション分離部5は、集合SallにはURLが10含まれている場合、その中からL個(Lは1以上10以下の整数)のURLをランダムに選択して部分集合Sとする。
そして、セッション分離部5は、乖離度テスト部3が抽出した異常日における上記L個のURLに対するアクセスを含むセッション群のセッション数変動aSを、上記L個のURLに対するアクセスを含まないセッション群のセッション数変動とは分離して集計するように、ページログ集計部21に依頼する。ページログ集計部21は、セッション数変動aSをログデータを基に集計し、セッション分離部5へ通知する。
また、通常変動生成部14は、ログ集計部2が通常時における1日のセッション数の変動を、ログ集計部2が集計した実績時系列データを基に生成し、通常変動記録部13に記録する。
セッション分離部5は、異常日におけるWebサイト全体のセッション数変動の実績値yを、上記aS、通常時における1日のセッション数の変動m、定数kおよび誤差系列eを用いて、下記(式1)に表すことができる。なお、aS、m、eは、例えば、ベクトルで表される。
(式1)
y=aS+k・m+e
上記(式1)は、もし、L個のURLに対するアクセスを含むセッション群のセッション数変動aSが、イベントによる異常変動を表すものであるとすれば、Webサイト全体のセッション数変動の実績yから、aSを差し引けば、通常時のセッション数変動mに比例した変動k・mが残るはずであるという考えに基づいている。すなわち、aSがイベントによる異常変動の成分を多く含むと、Y=aS+k・mで表されるセッション数変動のモデルYが、実績値yに近づくはずである。
図5は、Y、aS、k・mおよび実績値yの例を表すグラフである。図5に示すグラフにおいて、縦軸はセッション数、横軸は時間を表す。○印は実績値yをプロットしたものであり、グラフには、Y、aS、k・mそれぞれを表す線が描かれている。図5に示すグラフは、aSがイベントによる異常変動の成分を多く含んでおり、セッション数変動のモデルY=aS+k・mが、実績値yに近くなっている状態の例である。
セッション分離部5は、集合SallからL個のURLの部分集合Sを選択する処理を、様々なL個のURLの組み合わせについて行い、それぞれの組み合わせてについて、上記(式1)の誤差eの二乗和を計算する。そして、セッション分離部5は、誤差eの二乗和が最小となる部分集合S*を、異常原因URLとして特定する。すなわち、セッション分離部5は、URLの集合Sallの部分集合の中から、上記(式1)の誤差eの二乗和が最小となる部分集合S*を抽出し、部分集合S*に含まれるL個のURLを異常原因URLと特定する。これにより、セッション分離部は、通常の変動を明確に分離された、イベントによる異常変動の成分を抽出することが可能になる。なお、上記(式1)は一種の回帰モデルである。
なお、セッション分離部5が、異常変動URLを特定する処理は、上記例に限られない。例えば、上記例におけるセッション数の代わりに、ページ参照数、セッション開始数等が用いられてもよい。
上記のOp3の構成比上昇度テスト部4による処理および、Op4のセッション分離部5による処理は、後述する波形分解部7での処理対象となるデータを絞りこむための前段階の処理である。
必要に応じてOp3を省略して、すべてのURLをSallとしてOp4の処理を行ってもよい。また、必要に応じてOp3とOp4の双方を省略して、すべてのURLを異常原因URLとみなしてOp5の処理を行ってもよい。
なお、本実施形態のように構成比上昇度テスト部4を、セッション分離部5と併用し、セッション分離部5の前段階で用いた場合には、セッション分離部5は、特にアクセスが際立って増加しているページを対象に、ページの異常変動への寄与度合いを求めることになる。これにより、セッション分離部5においては、Webサイトに含まれるページ全てに対するアクセス量の変動について処理する場合に比べて計算量が軽減する。
(Op5:波形設定部6の処理)
セッション分離部5で、異常原因URL S*が特定されると、波形設定部6が、異常原因URL S*に対するアクセスを含むセッション群のアクセス量変動を集計するように、ページログ集計部21に依頼する。ページログ集計部21は、異常原因URL S*に対するアクセスを含むセッション群のアクセス量変動を、ログデータを基に集計し、実績時系列データとして、波形設定部6へ通知する。アクセス量は、例えば、セッション開始数、セッション数、ページ参照数などで表される。
波形設定部6は、異常原因URLに対するアクセスを含むセッション群のアクセス量の変動を近似するための複数の波形を設定する(図2のOp5)。複数の波形には、山型波形、通常波形、上下波形が含まれる。
山型波形は、異常変動区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンの時系列データで表される。なお、山型波形において、ピークまでの増加区間では、必ずしも単調増加である必要はなく、局所的に減少する区間があってもよい。ピーク後の減少区間でも同様に、局所的に増加する区間があってもよい。
通常波形は、異常変動区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンの時系列データで表される。
上下波形は、異常変動区間内の一部の区間においてアクセス量が上昇または下降する変動パターンの時系列データで表される。上下波形には、上昇波形と下降波形とが含まれる。上昇波形は、例えば、ある時点において階段状に上昇する変動パターンである。下降波形は、例えば、ある時点において階段状に下降する変動パターンである。
以下に、波形分解部7の処理の具体例を説明する。下記の具体例は、乖離度テスト部3が異常変動を示す区間として異常日を抽出した場合(日単位で抽出した場合)の例とする。図6は、山型波形と、定常的な変動を表す通常波形と、ある時点を境に階段状に上昇する上昇波形の例を示す図である。図6に示す上段、中段、下段のグラフそれぞれにおいて、横軸は1日分(0時0分から23時59分)までの時間、縦軸はアクセス量を表す。図6の上段のグラフは、山型波形設定部63が設定する山型波形の例を示すグラフである。線wは、Tpにピークを持つ山型波形を表す。本実施形態では、一例として、山型波形を、ロジスティック分布の密度関数logis(t)で表す場合について説明する。ロジスティック分布の密度関数logis(t)は、下記(数1)で表される関数である。
Figure 0004905086
上記(数1)において、sは急峻度であり、Tpはピークに達する時点Tpである。また、上記(数1)に示すロジスティック分布の密度関数は、−∞〜+∞における積分値が1になる関数である。ロジスティック分布の密度関数において、sを小さくする、すなわち、ロジスティック分布の密度関数が表す曲線を、急峻なピークを有する形にすると、面積を1に保つためにピークの高さが高くなる。逆に、sを大きくする、すなわち、ロジスティック分布の密度関数が表す曲線を、なだらかなピークを有する形にすると、面積を1に保つためにピークの高さが低くなる。図6の上段のグラフにおいて、線wa、線wbは、線wが示すロジスティック分布の密度関数logis(t)の急峻度sをそれぞれ異なる値に変えた場合の山型波形を示している。
山型波形設定部63は、ロジスティック分布の密度関数のピークの時点Tpおよび、急峻度sを、実績時系列データを基に決定する。例えば、山型波形設定部63は、実績時系列データが示す異常変動区間におけるアクセス量の変動において、現れる山型の変動パターンに応じて、ピークの時点Tpおよび急峻度sを計算する。以下に山型波形のピークの位置を計算する処理の一例を説明する。
実績時系列データで示されるアクセス量の変動であって、セッション分離部5で特定された異常原因URLへのアクセスを含むセッション群のアクセス量の異常日における変動を表す実績時系列をevent(t)とし、1日のアクセス量変動の年平均を取った平均時系列をave(t)とする。山型波形設定部63は、実績時系列を平均時系列で割った実質時系列[event(t)/ave(t)]を計算する。山型波形設定部63は、この実質時系列において、アクセス量が最も多い時点をピーク時点Tpに決定することができる。あるいは、山型波形設定部63は、この実質時系列において、アクセス量の多い上位N時点を、ピーク時点Tpとして、N通りのピーク時点を設定してもよい。
ピーク時点が決定すると、山型波形設定部63は、上記実質時系列においてピーク時点Tpの前におけるアクセス量の増加度合い、およびピーク時点Tpの後におけるアクセス量の減少度合いに基づいて、急峻度sを決定してもよい。急峻度sも、ピーク時点と同様にM通り設定してもよい。なお、ピーク時点TpがN通り、急峻度sがM通り設定されると、山型波形を表すlogis(t)は、N×M通り設定されることになる。この場合、波形分解部7は、N×M通りの山型波形それぞれについて、後述する最適化処理を行い、最もよい結果が得られた山型波形のピーク時点と急峻度を求めることができる。
なお、山型波形のピーク時点および急峻度を決定する方法は、上記の例に限られない。また、ロジスティック分布の密度関数は、山型波形を表す関数の一例であり、山型波形は、ロジスティック分布の密度関数に限られない。例えば、正規分布の密度関数を用いてもよい。
図6の中段のグラフは、通常時のアクセス量の変動を表す通常波形の例を示すグラフである。線avが通常波形を表す。通常波形設定部62は、通常変動記録部13に記録された通常時のアクセス量変動を基に、通常波形を生成することができる。通常波形設定部62は、例えば、1日分のアクセス量変動を、1年分の日について平均した時系列を、合計が1になるように正規化した時系列関数 average(t)を、通常波形として生成する。
図6の下段のグラフは、上昇波形の例を示すグラフである。線kが上昇波形を表す。上下波形設定部61は、線kのように、例えば、線avで示されるaverage(t)において、線wで示される山型波形のピークの時点Tpより後を0とした時系列関数part(t)を、上昇波形として設定することができる。
なお、下降波形は、通常波形を表す関数average(t)と上昇波形を表す関数part(t)との差分{average(t)―part(t)}により表すことができる。以下では、上昇波形のみを用いる場合について説明する。
上昇波形および下降波形の設定方法は、上記例に限られない。例えば、上下波形設定部61は、実績時系列データが表す異常日のアクセス量の変動に応じて、上昇波形または下降波形を生成してもよい。例えば、上下波形設定部61は、実績時系列データが表す異常日のアクセス量の変動において、一定値より大きな傾きで増加している区間を抽出し、その区間の傾きに応じた上昇波形を生成してもよい。
また、上昇波形および下降波形において、階段状に上昇または下降する箇所は、線kのように、必ずしも、垂直に変化する必要はない。例えば、ある程度傾きを持って上昇または下降する形でもよいし、複数の段差を有する階段状に上昇または下降する形でもよい。
(Op6:波形分解部7の処理)
波形設定部6によって、山型波形、通常波形、上下波形が生成され、波形記録部12に記録されると、波形分解部7は、これらの波形それぞれに係数を掛けた波形を重ね合わせた合成波形を生成し、その合成波形と、実績時系列データが示す、異常原因URLへのアクセスを含むセッション群のアクセス量の変動との二乗誤差を計算する。波形分解部7は、二乗誤差が最小となるような各波形の係数を計算する。これにより、合成波形が、実績時系列データが示すアクセス量の変動を近似するように、山型波形、通常波形、上下波形が最適化される(図2のOp6)。本実施形態では、波形分解部7は、異常原因URLへのアクセスを含むセッション群のアクセス量の変動を近似するため山型波形、通常波形、上下波形の各成分の最適値を計算する。以下、その具体例を説明する。
実績時系列データが示すアクセス量の変動であって、セッション分離部5で特定された異常原因URLへのアクセスを含むセッション群のアクセス量の異常日における変動を実績値y(t)とする。波形分解部7は、上記の関数logis(t)、average(t)およびpart(t)で表される波形を合成した合成波形で、実績値y(t)を近似する。合成波形をY(t)とすると、波形分解部7は、例えば、下記(式2)のように係数a、b、c、dを用いて、関数logis(t)、average(t)、part(t)を合成した合成波形Y(t)を計算することができる。
(式2)
Y(t) = a * logis(t) + b * average(t) + c * part(t) + d
上記(式2)において、係数a、b、cは、それぞれ山型波形、通常波形、上昇波形の成分を表す値である。波形分解部7は、実績値y(t)を用いて、上記(式2)で表されるY(t)に対して回帰分析を行い、実績値y(t)とY(t)の二乗誤差が最小になる係数a、b、c、dを計算する。これにより、山型波形、通常波形、上昇波形の各波形の成分が計算される。波形分解部7は、計算したa、b、c、dの値をイベント判定部9へ通知する。
図7は、山型波形、通常波形、および上昇波形を合成した合成波形と、実績値との例を示すグラフである。図7に示すグラフにおいて、横軸は時間、縦軸はアクセス量を表す。○印は、実績値y(t)をプロットしたものである。線w、線av、線kはそれぞれ、図6に示す関数logis(t)、average(t)およびpart(t)で表される波形を示す。線hは、これらの3つの関数で表される波形を合成した合成波形(Y(t))を示す。
なお、山型波形設定部63が、例えば、N通りのピーク時点、およびM通りの急峻度を組み合わせたN×M通りの山型波形の関数logis(t)を設定していた場合、波形分解部7は、N×M通りの関数logis(t)それぞれについて、上記(式2)を用いた回帰分析を行い、最適な関数logis(t)を選んでもよい。その場合、波形分解部7は、最適な山型波形の関数logis(t)におけるピーク時点Tpおよび急峻度sも、各波形の成分を表す値(上記係数a、b、c、d)とともに、イベント判定部9へ通知する。 なお、山型波形、通常波形、および上昇波形の最適化の処理は、上記例に限られない。上記例では、回帰分析が用いられているが、その他に例えば、遺伝アルゴリズム、モンテカルロ法等を用いて、山型波形、通常波形、および上昇波形を最適化することもできる。
(Op7:滞在時間テスト部8の処理)
滞在時間テスト部8は、波形分解部7が計算した山型波形のうち、ピーク位置より前の部分、(以下、前半部分と称する)およびピーク位置より後の部分(以下、後半部分)のそれぞれの時間帯について、セッション滞在時間の分布を計算する(図2のOp7)。セッション滞在時間とは、同一利用者端末からの一連のアクセスであるセッションの開始から終了までの時間である。
滞在時間テスト部8は、前半部分で開始された全てのセッションの滞在時間を示すデータと、後半部分で開始された全てのセッションの滞在時間を示すデータとを、ログ集計部2を通じて別々に取得する。取得した滞在時間を示すデータは、イベント判定部9へ通知される。なお、滞在時間テスト部8は、山型波形の開始時点前の時間帯と、山型波形の終了時点の後の時間帯についても、それぞれ滞在時間の分布を計算してもよい。
(Op8:イベント判定部9の処理)
イベント判定部9は、波形分解部7が計算した山型波形、通常波形、上下波形の各成分を示す値と、ルール記録部11に記録されたルールとに基づいて、以上変動区間において見られる異常変動の原因となったイベントの種類を特定する(図2のOp8)。ルール記録部11に記録されるルールは、例えば、各成分の構成とイベント種類との関係を表すデータである。
ルール内容の一例として、「上昇波形が顕著に見られれば、サイト内部のイベントである。」、「上昇波形が見られなければサイト外部のイベントである。」、「上昇波形があり、かつ山型波形があれば、予告されたイベントである。」「上昇波形があり、山型波形がなければ、予告されていないイベントである。」といった内容が挙げられる。これらのルールの内容は、経験則に基づいて導き出すことができる。例えば、サイト内でWebキャンペーン等のイベントが行われた場合、イベント開始時間以降の上昇波形が見られるはずであり、一方、街頭広告やコンサート等の外部のイベントが起きた場合に、上昇波形が起きることは考えにくいといった経験則から上記のルールを導き出すことができる。
図8は、ルール記録部11に記録されるルールを表すデータの一例を示す図である。図8に示す例では、ルールとして、山型波形、通常波形、上下波形の各成分の構成の条件を示すデータと、その条件を満たす場合に特定されるイベントの種類とを対応付けて記録される。山型波形、通常波形、上下波形の各成分の構成は、例えば、上記(式2)における係数a、b、cを用いて表すことができる。
図8に示す例では、「上昇波形が見られない」という条件は、上記(式2)における、上昇波形の関数part(t)の係数cと、通常波形の関数average(t)の係数bと閾値を表す定数Cmaxとを用いて、(c/b)>Cmaxという式で表される。同様に、「上昇波形があり、かつ山型波形がある」という条件は、上記(式2)における係数a、b、cと、閾値を表す定数Cave、Aaveとを用いて、「(c/b)>Caveかつ(a/b)>Aave」で表される。なお、ルールを表すデータは、図8に示すデータに限られない。
イベント判定部9は、波形分解部7から通知された係数a、b、c、dが、ルール記録部11に記録されたルールの条件を満たすか否かを判定することにより、イベントの種類を特定することができる。例えば、イベント判定部9は、図8に示すルールを参照して、波形分解部7から通知された係数b、cが、(c/b)>Cmaxの関係を満たす場合、イベント判定部9が、イベントの種類は内部イベントであると判定する。さらに、係数a、b、cが、(c/b)>Caveかつ(a/b)>Aaveを満たす場合は、イベント判定部9は、イベントの種類は、予告されたイベントであると判定する。この場合、イベント判定部9により特定されるイベントの種類は、「内部イベントであり、かつ、予告されたイベント」となる。
このように、イベント判定部9は、波形分解部7で計算された上昇波形を基に、乖離度テスト部3で抽出された区間において見られる異常変動の原因となったイベントの種類が内部イベントであるか外部イベントであるかを判断できる。また、波形分解部7で計算された山型波形と上昇波形を基に、異常変動の原因となったイベントの種類が予告されたイベントであるか否かを判断することができる。従来のWebログ解析ツールでは、異常変動を検出しても、その異常変動の原因が内部イベントか外部イベントか、または予告されたものか否か等を特定できなかった。イベント種類推定システム1においては、イベント判定部9が波形分解部7の結果を用いて行う上記の処理により、それが可能になる。
また、ルール記録部11に記録されるルール内容の他の例として、「山型波形の前半部分で開始されたセッションの滞在時間の平均値が、山型波形の後半部分で開始されたセッションの滞在時間の平均値より所定時間以上長ければ、BBS等の人が集うサービスへのアクセス集中であり、そうでなければ、情報提供系サービスへの集中である」といった内容が挙げられる。
イベント判定部9は、滞在時間テスト部8で計算された滞在時間を、このようなルールに適用することにより、イベントの種類を特定することができる。すなわち、イベント判定部9は、山型波形設定部63で計算された山型波形のピーク時点を境として分割された時間帯ごとの滞在時間分布の特徴を比較することにより、滞在時間の特徴を利用したイベントの推定が可能になる。なお、従来技術では、滞在時間の分布を集計することはできても、山型波形の前半部分と後半部分のセッションの滞在時間の長さの違いを利用したイベントの推定ができなかった。
なお、図8に示したルールおよび上記のイベントの種類の判定方法は、一例であって、ルールおよびイベント種類の判定方法は、これに限られない。例えば、ルールに、山型波形のピーク時点、急峻度等が含まれてもよい。
(第2の実施形態)
本実施形態は、上記第1の実施形態における波形分解部7が、さらに機能を備える形態である。本実施形態にかかる波形分解部7は、上記第1の実施形態におけるOp5に相当する処理を行った後、よい結果が得られない場合に、新たな処理をさらに行う形態である。波形分解部7の他の機能ブロックの処理は、第1の実施形態と同様である。
例えば、イベントの開始時および終了時に対応してアクセス量がピークになる場合等のように、1回のイベントによってアクセス量の変動に複数のピークが生じる場合がある。このようなアクセス量の変動が、波形分解部7の処理で扱われる実績値y(t)になった場合、波形分解部7が、上記(式2)で計算する合成波形Y(t)と実績値y(t)との二乗誤差が最小になるような係数a、b、c、dを計算したとしても、その二乗誤差は一定値より小さくならない場合がある。
そこで、本実施形態における波形分解部7は、上記(式2)で示される合成波形Y(t)と、実績値y(t)との誤差が所定値以上である場合には、合成波形Y(t)を構成する複数の波形を変えて、異なる合成波形により実績値y(t)を近似する計算を行う。すなわち、山型波形設定部63は、異常変動区間内の2つの異なる区間においてそれぞれ、山型の変動パターンを表す山型波形を生成する。これにより、第1の山型波形と第2の山型波形が波形記録部12に記録される。波形分解部7は、第1の山型波形、第2の山型波形、通常波形、上下波形の合成波形で、実績値y(t)を近似するように、第1の山型波形、第2の山型波形、通常波形、上下波形を最適化する。
波形分解部7は、このように、山型波形を2つ用いた合成波形により実績値y(t)を近似することにより、異常変動を示す区間として抽出された区間において、アクセス量のピークが2つの時点で現れるような変動を示す場合に、より精度よく実績値y(t)を近似することができる。
図9は、第1の山型波形と、第2の山型波形と、定常的な変動を表す通常波形と、第1のピークの時点において階段状に上昇し、第2のピークの時点において階段状に下降する上下波形の例を示す図である。図9に示す上段、中段、下段のグラフそれぞれにおいて、横軸は時間、縦軸はアクセス量を表す。図9の上段のグラフは、第1の山型波形の例を示すグラフである。線w−1は、Tp1にピークを持つ山型波形を表す。図9の上から2つ目のグラフは、第2の山型波形の例を示すグラフである。線w−2は、Tp2にピークを持つ山型波形を表す。第1の山型波形および第2の山型波形はいずれも第1の実施形態と同様に、ロジスティック分布の密度関数で表され、それぞれlogis1(t)、logis2(t)とする。図9の上から3つ目のグラフは、図6の中段のグラフと同じであり、線avは、関数average(t)で表される通常波形を示す。図9の上から4つ目のグラフは、第1のピークの時点において階段状に上昇し、第2のピークの時点において階段状に下降する上下波形の例を示すグラフである。この上下波形は、線kkのように、線avで示されるaverage(t)において、第1のピーク時点Tp1より前と第2のピーク時点Tp2より後とを0とした時系列関数part2(t)で表すことができる。
波形分解部7は、波形分解部7は、上記(式2)により計算したY(t)と実績値y(t)との誤差が所定の閾値より大きい場合に、上記の関数logis1(t)、logis2(t)、average(t)およびpart2(t)で表される波形を合成した合成波形で、再度、実績値y(t)を近似する。このとき合成波形Y2(t)は、例えば、下記(式3)により計算される。
(式3)
Y2(t) = a1 * logis1(t) + a2* logis2(t)+ b * average(t) + c * part2(t) + d
上記(式3)において、係数a1、a2、b、cは、それぞれ第1の山型波形、第2の山型波形、通常波形、上下波形の成分を表す値である。波形分解部7は、実績値y(t)を用いて、上記(式3)で表されるY(t)に対して回帰分析を行い、実績値y(t)とY(t)の二乗誤差が最小になる係数a1、a2、b、c、dを計算する。これにより、実績値y(t)の示すアクセス量の変動において、2つのアクセス量のピークがある場合には、精度よく実績値y(t)をY2(t)で近似することができる。なお、Y2(t)を最適化してもなお、実績値y(t)とY2(t)との二乗誤差が所定の閾値を下回らない場合には、波形分解部7は、山型波形の数を1つ増やして同様の計算を繰り返してもよい。
以上、本発明の実施形態について、上記第1の実施形態および第2の実施形態において説明したが、本発明は上記実施形態に限定されない。例えば、イベント種類推定システム1が読み込むログデータは、上記実施形態のようにWebサイトへのアクセス履歴を示すログデータに限られない。例えば、イベント種類推定システム1は、イントラネット等の限られた範囲のネットワークにおいて提供された利用者端末からサーバのデータベースを直接参照するサービスにおけるデータベースへのアクセス履歴を示すログデータを読み込んでもよい。
本実施形態によれば、新たにイベント情報とログデータとを関連付けるための手段を設けなくても、Webサーバに蓄積されたログデータのみを用いて、過去の変動パターンの特徴を分析し、そのとき起きていたイベントの種類を推定することが可能になる。例えば、過去のHTTPログを基に、アクセス変動がサイト内で実施されている予定されたイベントなのか、それともサイト外で起きたイベントの影響なのかを判定することが可能になる。さらに、過去のアクセス量の変動を表すデータをイベントの種類ごとに分類して蓄積しておくことも可能になる。これにより、例えば、ある種類のイベントを予定するときには、過去のアクセス量の変動の事例の中から、その予定している種類のイベントによる変動の事例のみを予測のベースとして用いることができる。
本発明は、サイトのログデータからアクセス変動異常を抽出し、異常変動の原因となったイベントの種類を推定することができるシステムとして有用である。
イベント種類推定システムの構成を示す機能ブロック図 イベント種類推定システムの動作例を示すフローチャート ログ集計部が生成した時系列データの内容を3次元座標で表した図 ページ参照数の平均μ1およびμ1±2σ1の一例を表すグラフ アクセス変動のモデルY、特定URLのセッション数変動aS、定常的な変動k・mおよび実績値yの例を表すグラフ 山型波形と、定常的な変動を表す通常波形と、ある時点を境に階段状に上昇する上昇波形の例を示す図 山型波形、通常波形、および上昇波形を合成した合成波形と、実績値との例を示すグラフ ルール記録部11に記録されるルールを表すデータの一例を示す図 第2の実施形態における第1の山型波形と、第2の山型波形と、通常波形と、上下波形の例を示す図
符号の説明
1 イベント種類推定システム
2 ログ集計部
3 乖離度テスト部
4 構成比上昇度テスト部
5 セッション分離部
6 波形設定部
7 波形分解部
8 滞在時間テスト部
9 イベント判定部
10 アクセスログ記録部
11 ルール記録部
12 波形記録部
13 通常変動記録部
14 通常変動生成部
15 基準変動生成部
16 基準変動記録部
21 ページログ集計部
61 上下波形設定部
62 通常波形設定部
63 山型波形設定部

Claims (7)

  1. ネットワークに接続されたコンピュータにより提供される少なくとも1つのサイトに対する利用者端末からのアクセスの履歴を示すログデータから、前記サイトへのアクセス量の変動を表す実績時系列データを生成するログ集計部と、
    前記実績時系列データから、アクセス量の変動が予め記録された基準変動と乖離している異常変動を示す区間を抽出する乖離度テスト部と、
    前記抽出された区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを、前記実績時系列データを基に生成し、変動パターン記録部に記録する山型変動パターン設定部と、
    前記乖離度テスト部で抽出された区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンを表す通常変動時系列データを、前記実績時系列データを基に、または、予め記録されたデータを基に生成し、前記変動パターン記録部に記録する通常変動パターン設定部と、
    前記乖離度テスト部で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを、前記実績時系列データを基に生成し、前記変動パターン記録部に記録する上下変動パターン設定部と、
    前記変動パターン記録部に記録された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データが表すそれぞれの変動パターンを合成した合成変動が、前記実績時系列データが表すアクセス量の変動を近似するように、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データそれぞれが示す変動パターンの各成分を最適化する波形分解部と、
    前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データそれぞれが示す変動パターン成分の構成と、異常変動の原因となるイベントの種類との関係を示すルールを記録するルール記録部と、
    前記波形分解部で最適化された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データの各成分と、前記ルール記録部に記録されたルールが示す成分の構成とに基づいて、前記区間の異常変動の原因となったイベントの種類を判定するイベント判定部とを備える、イベント種類推定システム。
  2. 前記乖離度テスト部で抽出された区間におけるアクセス量の変動であって、異常変動を含まない通常時のアクセス量の変動を表す通常変動データを記録する通常変動記録部と、
    前記サイトの一部を構成する少なくとも1のページを複数通り抽出し、前記乖離度テスト部で抽出された区間において、抽出した複数通りのページそれぞれに対するアクセスを含むセッション群のアクセス量の変動を、複数通りのページごとに表したページ変動データを、前記ログデータを基に生成するページログ集計部と、
    前記ページログ集計部で生成された前記ページ変動データが示す複数通りのページそれぞれについて、ページに対するアクセスを含むセッション群のアクセス量の変動と前記通常変動記録部に記録された前記通常変動データが示す変動とを合成した変動と、前記ログ集計部が生成した前記実績時系列データが表すアクセス量の変動のうち前記乖離度テスト部で抽出された区間におけるアクセス量の変動との相違度合いを計算し、当該相違度合いに基づいて、前記複数通りのページから対象ページを選択するセッション分離部とをさらに備え、
    前記波形分解部は、前記ログ集計部が生成した実績時系列データが表すアクセス量の変動のうち、前記セッション分離部で選択された対象ページに対するアクセスを含むセッション群のアクセス量の変動と、前記合成変動とを比較する処理を繰り返すことにより、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化する、請求項1に記載のイベント種類推定システム。
  3. 前記サイトを構成するページのうち少なくとも一部のページについて、前記乖離度テスト部で抽出された区間における前記ページに対するアクセス量が、前記サイト全体に対するアクセス量に対して占める割合を、前記ログデータを基に、ページごとに計算する区間内構成比算出処理と、
    前記乖離度テスト部で抽出された区間より前の所定区間における前記ページに対するアクセス量のサイト全体に対するアクセス量に対して占める割合を、前記ログデータを基に、ページごとに計算する前区間構成比算出処理と、
    前記区間内構成比算出処理で計算された割合が、前記前区間構成比算出処理で計算された割合とを、ページごとに比較することにより、前記波形分解部の処理対象となる対象ページを選択する構成比上昇度テスト部とをさらに備え、
    前記波形分解部は、前記ログ集計部が生成した実績時系列データが表すアクセス量の変動のうち、前記構成比上昇度テスト部で選択された対象ページに対するアクセスを含むセッション群のアクセス量の変動と、前記合成変動とを比較する処理を繰り返すことにより、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データを最適化する、請求項1または2のいずれか1項に記載のイベント種類推定システム。
  4. 山型変動パターン設定部が生成した前記山型変動時系列データが表すアクセス量の変動のピーク時点を境界として、前記乖離度テスト部で抽出された区間を分割した場合に得られる各部分区間それぞれにおいて開始されたアクセスについて、アクセスの継続時間を、前記ログデータを基に計算する滞在時間テスト部をさらに備え、
    前記ルール記録部は、前記アクセスの継続時間と、異常変動の原因となるイベントの種類との関係を示す滞在時間ルールをさらに記録し、
    前記イベント判定部は、滞在時間ルールと、前記滞在時間テスト部が計算したアクセスの継続時間とをさらに用いて、前記イベントの種類を判定する、請求項1に記載のイベント種類推定システム。
  5. 前記山型変動パターン設定部は、前記乖離度テスト部で抽出された区間内の2つの異なる区間においてそれぞれ、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを生成し、前記変動パターン記録部に記録する、請求項1に記載のイベント種類推定システム。
  6. コンピュータが備えるログ集計部が、ネットワークを介して提供される少なくとも1つのサイトに対する利用者端末からのアクセスの履歴を示すログデータから、前記サイトへのアクセス量の変動を表す実績時系列データを生成するログ集計工程と、
    前記コンピュータが備える乖離度テスト部が、前記実績時系列データから、アクセス量の変動が予め記録された基準変動と乖離している異常変動を示す区間を抽出する乖離度テスト工程と、
    前記コンピュータが備える山型変動パターン設定部が、前記乖離度テスト工程で抽出された区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを、前記実績時系列データを基に生成し、変動パターン記録部に記録する山型変動パターン設定工程と、
    前記コンピュータが備える通常変動パターン設定部が、前記乖離度テスト工程で抽出された区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンを表す通常変動時系列データを、前記実績時系列データを基に、または、予め記録されたデータを基に生成し、前記変動パターン記録部に記録する通常変動パターン設定工程と、
    前記コンピュータが備える上下変動パターン設定部が、前記乖離度テスト工程で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを、前記実績時系列データを基に生成し、前記変動パターン記録部に記録する上下変動パターン設定工程と、
    前記コンピュータが備える波形分解部が、前記変動パターン記録部に記録された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データが表すそれぞれの変動パターンを合成した合成変動が、前記実績時系列データが表すアクセス量の変動を近似するように、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データそれぞれが示す変動パターンの成分を最適化する波形分解工程と、
    前記コンピュータが備えるイベント判定部が、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データそれぞれが示す変動パターン成分の構成と、異常変動の原因となるイベントの種類との関係を示すルールを記録するルール記録部を参照することにより、前記波形分解工程で最適化された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データの各成分に基づいて、前記区間の異常変動の原因となったイベントの種類を判定するイベント判定工程とを含む、イベント種類推定方法。
  7. ネットワークに接続されたコンピュータにより提供される少なくとも1つのサイトに対する利用者端末からのアクセスの履歴を示すログデータから、前記サイトへのアクセス量の変動を表す実績時系列データを生成するログ集計処理と、
    前記実績時系列データから、アクセス量の変動が予め記録された基準変動と乖離している異常変動を示す区間を抽出する乖離度テスト処理と、
    前記抽出された区間の一部または全体において、開始時点から時間経過と共にアクセス量が増加傾向を示し、ピークとなる時点を境に終了時点まで減少傾向を示す変動パターンを表す山型変動時系列データを、前記実績時系列データを基に生成し、変動パターン記録部に記録する山型変動パターン設定処理と、
    前記乖離度テスト処理で抽出された区間におけるアクセス量の変動パターンであって、異常変動を含まない通常時のアクセス量の変動パターンを表す通常変動時系列データを、前記実績時系列データを基に、または、予め記録されたデータを基に生成し、前記変動パターン記録部に記録する通常変動パターン設定処理と、
    前記乖離度テスト処理で抽出された区間内の一部の区間においてアクセス量が上昇または下降する変動パターンを表す上下変動時系列データを、前記実績時系列データを基に生成し、前記変動パターン記録部に記録する上下変動パターン設定処理と、
    前記変動パターン記録部に記録された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データが表すそれぞれの変動パターンを合成した合成変動が、前記実績時系列データが表すアクセス量の変動を近似するように、前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データそれぞれが示す変動パターンの各成分を最適化する波形分解処理と、
    前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データそれぞれが示す変動パターン成分の構成と、異常変動の原因となるイベントの種類との関係を示すルールを記録するルール記録部を参照することにより、前記波形分解処理で最適化された前記山型変動時系列データ、前記通常変動時系列データおよび上下変動時系列データの各成分に基づいて、前記区間の異常変動の原因となったイベントの種類を判定するイベント判定処理とをコンピュータに実行させるイベント種類推定プログラム。
JP2006322224A 2006-11-29 2006-11-29 イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム Expired - Fee Related JP4905086B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2006322224A JP4905086B2 (ja) 2006-11-29 2006-11-29 イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム
US11/943,201 US7904330B2 (en) 2006-11-29 2007-11-20 Event type estimation system, event type estimation method, and event type estimation program stored in recording media

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006322224A JP4905086B2 (ja) 2006-11-29 2006-11-29 イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム

Publications (2)

Publication Number Publication Date
JP2008134958A JP2008134958A (ja) 2008-06-12
JP4905086B2 true JP4905086B2 (ja) 2012-03-28

Family

ID=39465049

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006322224A Expired - Fee Related JP4905086B2 (ja) 2006-11-29 2006-11-29 イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム

Country Status (2)

Country Link
US (1) US7904330B2 (ja)
JP (1) JP4905086B2 (ja)

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11048765B1 (en) 2008-06-25 2021-06-29 Richard Paiz Search engine optimizer
US11379473B1 (en) * 2010-04-21 2022-07-05 Richard Paiz Site rank codex search patterns
US11423018B1 (en) * 2010-04-21 2022-08-23 Richard Paiz Multivariate analysis replica intelligent ambience evolving system
US8438275B1 (en) 2010-11-05 2013-05-07 Amazon Technologies, Inc. Formatting data for efficient communication over a network
JP5467061B2 (ja) * 2011-01-06 2014-04-09 日本電信電話株式会社 バースト情報検索装置及びバースト情報検索プログラム
EP2676402A4 (en) 2011-02-17 2015-06-03 Sable Networks Inc METHOD AND SYSTEMS FOR DETECTING AND WEAKENING A DISTRIBUTED HIGH FREQUENCY DENIAL OF SERVICE (DDOS) ATTACK
US9100205B1 (en) 2011-07-20 2015-08-04 Google Inc. System for validating site configuration based on real-time analytics data
US8869036B1 (en) * 2011-07-20 2014-10-21 Google Inc. System for troubleshooting site configuration based on real-time analytics data
US8880996B1 (en) 2011-07-20 2014-11-04 Google Inc. System for reconfiguring a web site or web page based on real-time analytics data
EP2850793B1 (en) * 2012-05-14 2016-09-21 Sable Networks, Inc System and method for ensuring subscriber fairness using outlier detection
US8949271B2 (en) * 2012-10-23 2015-02-03 Liebherr-Werk Nenzing Gmbh Method for monitoring a number of machines and monitoring system
US20140172813A1 (en) * 2012-12-14 2014-06-19 Microsoft Corporation Processing user log sessions in a distributed system
US9063802B2 (en) 2013-01-31 2015-06-23 Hewlett-Packard Development Company, L.P. Event determination
US9571368B2 (en) 2013-02-04 2017-02-14 International Business Machines Corporation Analysis of variance in network page access
US11741090B1 (en) 2013-02-26 2023-08-29 Richard Paiz Site rank codex search patterns
US11809506B1 (en) * 2013-02-26 2023-11-07 Richard Paiz Multivariant analyzing replicating intelligent ambience evolving system
US9405755B1 (en) 2013-10-03 2016-08-02 Initial State Technologies, Inc. Apparatus and method for processing log file data
US9405651B1 (en) * 2013-10-03 2016-08-02 Initial State Technologies, Inc. Apparatus and method for processing log file data
US9405610B1 (en) 2013-10-03 2016-08-02 Initial State Technologies, Inc. Apparatus and method for processing log file data
US10536539B2 (en) * 2015-05-20 2020-01-14 Oath Inc. Data sessionization
JP2016224871A (ja) * 2015-06-03 2016-12-28 富士通株式会社 異常検出プログラム、異常検出装置及び異常検出方法
US20170150222A1 (en) * 2015-11-19 2017-05-25 Electronics And Telecommunications Research Institute Appratus for audience measurement on multiple devices and method of analyzing data for the same
US20180217875A1 (en) * 2016-02-17 2018-08-02 Hitachi, Ltd. Data processing system and data processing method
US11288161B2 (en) * 2016-12-27 2022-03-29 Nec Corporation Anomaly detection method, system, and program
CN108596410B (zh) * 2017-03-09 2021-01-22 创新先进技术有限公司 一种风控事件自动处理方法及装置
RU2019139907A (ru) * 2017-05-12 2021-06-07 Мицубиси Электрик Корпорейшн Устройство обработки данных временного ряда, система обработки данных временного ряда и способ обработки данных временного ряда
JP6850757B2 (ja) * 2018-03-22 2021-03-31 株式会社日立製作所 需要予測システムおよび方法
US11803773B2 (en) 2019-07-30 2023-10-31 EMC IP Holding Company LLC Machine learning-based anomaly detection using time series decomposition
KR102298414B1 (ko) * 2019-12-16 2021-09-06 주식회사 카카오 캘린더 서비스를 제공하는 방법 및 그 장치
US11743273B2 (en) * 2021-02-25 2023-08-29 T-Mobile Usa, Inc. Bot hunting system and method
CN113271322B (zh) * 2021-07-20 2021-11-23 北京明略软件系统有限公司 异常流量的检测方法和装置、电子设备和存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002123516A (ja) 2000-10-12 2002-04-26 Fuji Xerox Co Ltd ウェブサイト評価システム、ウェブサイト評価方法、記録媒体
JP2002175240A (ja) 2000-12-06 2002-06-21 Fuji Xerox Co Ltd ウェブサイト評価システム、ウェブサイト評価方法、及び記録媒体
JP2004110327A (ja) 2002-09-18 2004-04-08 Fujitsu Ltd 時系列相関抽出装置
JP4500921B2 (ja) 2004-01-09 2010-07-14 Kddi株式会社 ログ分析装置、ログ分析方法およびログ分析プログラム
JP4746850B2 (ja) 2004-06-21 2011-08-10 富士通株式会社 パターン生成プログラム
JP4596945B2 (ja) 2005-03-24 2010-12-15 富士通株式会社 データセンタの需要予測システム、需要予測方法および需要予測プログラム
JP5077617B2 (ja) * 2005-10-27 2012-11-21 富士通株式会社 想定外需要検出システムおよび想定外需要検出プログラム

Also Published As

Publication number Publication date
US20080126538A1 (en) 2008-05-29
JP2008134958A (ja) 2008-06-12
US7904330B2 (en) 2011-03-08

Similar Documents

Publication Publication Date Title
JP4905086B2 (ja) イベント種類推定システム、イベント種類推定方法およびイベント種類推定プログラム
JP4596945B2 (ja) データセンタの需要予測システム、需要予測方法および需要予測プログラム
CN106909487B (zh) 应用于信息系统的预警方法及装置
US7684965B2 (en) Method and apparatus for processing data, and computer product
JP5077617B2 (ja) 想定外需要検出システムおよび想定外需要検出プログラム
US20170032270A1 (en) Method for predicting personality trait and device therefor
JP4888038B2 (ja) 時間種特性生成システム、時間種特性生成方法および時間種特性生成プログラム
JP5480755B2 (ja) 需要予測システム及び需要予測方法
JP4967474B2 (ja) 判定知識作成装置、判定知識作成方法、プログラムおよび記録媒体
JP2008146621A (ja) 製品の品質改善条件解析装置、解析方法、コンピュータプログラム、及びコンピュータ読み取り可能な記録媒体
US20170061484A1 (en) Method for determining next purchase interval for customer and system thereof
CN101110699A (zh) 具有网络满意度预测预警功能的系统及其实现方法
US20200372298A1 (en) Model reselection for accommodating unsatisfactory training data
KR20140078008A (ko) 소셜네트워크 이용자의 영향력정보 결정 시스템 및 방법
US20100312786A1 (en) System and method for development of search success metrics
US20100076990A1 (en) Information analysis system, information analysis method, and information analysis program
KR20150028497A (ko) 행렬 분해 기반 추천 방법을 위한 신뢰 네트워크를 이용하는 데이터 대치 방법
KR101658714B1 (ko) 온라인 활동 이력에 기초한 사용자의 온라인 활동 예측 방법 및 시스템
US8620706B1 (en) Systems and methods for estimating employment levels
CN110069379B (zh) 监控指标的筛选方法及筛选装置
JP2018195099A (ja) 性格分析装置、性格判定用モデル生成装置および性格分析用プログラム
US9787786B1 (en) Determining device counts
JP2003323601A (ja) 信頼性尺度付き予測装置
CN112418534A (zh) 揽件量预测方法及装置、电子设备、计算机可读存储介质
JP5826893B1 (ja) 変化点予測装置、変化点予測方法、及びコンピュータプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20090807

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110609

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110812

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110929

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20111213

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20111226

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150120

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees