JP5687763B2 - 高次元層別サンプリング - Google Patents

高次元層別サンプリング Download PDF

Info

Publication number
JP5687763B2
JP5687763B2 JP2013518418A JP2013518418A JP5687763B2 JP 5687763 B2 JP5687763 B2 JP 5687763B2 JP 2013518418 A JP2013518418 A JP 2013518418A JP 2013518418 A JP2013518418 A JP 2013518418A JP 5687763 B2 JP5687763 B2 JP 5687763B2
Authority
JP
Japan
Prior art keywords
records
subgroups
sampling
record
subgroup
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
JP2013518418A
Other languages
English (en)
Other versions
JP2013534674A (ja
Inventor
チェン,アイユー
ション,ミン
Original Assignee
アルカテル−ルーセント
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 アルカテル−ルーセント filed Critical アルカテル−ルーセント
Publication of JP2013534674A publication Critical patent/JP2013534674A/ja
Application granted granted Critical
Publication of JP5687763B2 publication Critical patent/JP5687763B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2462Approximate or statistical queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Fuzzy Systems (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、一般に情報処理の分野に関し、より詳細には、情報処理システムのデータベースと関連するレコードの層別サンプリングのための技術に関する。
大規模データベースは、多くの場合、各レコードが多くの属性を有する数百万以上のレコードを含む。一般にデータベースから無作為にレコードを選択することを含むサンプリング技術を用いて、このようなデータベースに統計的演算を行うことができる。選択されたレコードは、次いで解析されて、データベース中のレコード一式を特徴づける統計を生成する。結果の統計がデータベースを正確に特徴づけることを保証するために、層別サンプリング技術を使用することができる。層別サンプリングでは、データベースのレコードは、サブグループすなわち「層(strata)」に分割され、その後サブグループのそれぞれから1つまたは複数のレコードを無作為に選択して解析する。従来の層別サンプリング技術については、「Stratified Sampling of Data in a Database System」という名称の米国特許出願第2002/0198863号に記載されている。
従来の層別サンプリング技術に関連する問題は、このような技術が一般にレコードを互いに排反するサブグループに分割しようと試み、したがって限られた数の属性を考慮に入れることしかできないことである。レコードあたりの属性の数は、一般にデータベースの「次元(dimensionality)」と呼ばれ、従来の層別サンプリング技術は、低次元の状況でのみ実用的である。しかしながら、電気通信の用途でトラック接続データに使用されるデータベースなど、多くの現代のデータベースは、非常に高次元を有する。
例として、それぞれがK個の属性を有し、各属性がm個の離散値をとり、1<k<KであるN個のレコードを格納するデータベースを考察する。Kが小さい場合、データベースを互いに排反するサブグループに分割するために、属性を単に連結することができる。この場合のサブグループの数は、
Figure 0005687763
によって求めることができる。しかしながら、Kが大きくなるにつれて、この手法は実用的ではなくなる。例えば、m=5かつK=10の場合、およそ10のサブグループがあり、そのうちの多くがレコードを含んでいない、または少数のレコードしか含んでいないことになる。このタイプの高次元コンテキストでは、従来の層別サンプリング技術は、K個の属性のそれぞれに適切な層別サンプルを提供することができない。この問題は、大規模データベースの統合および維持管理、データマイニング、データウェアハウジング、問い合わせ処理、電気通信網のトラフィック分析、世論調査など、数多くの情報処理の用途において顕著である。
米国特許出願第2002/0198863号
本発明の例示的実施形態は、レコードの数Nとレコードあたりの属性の数Kが共に大きい用途で使用するのに好適な高次元層別サンプリング技術を提供する。こうした実施形態は、逐次高次元層別サンプリングアルゴリズムおよび最適高次元層別サンプリングアルゴリズムを含む。前者は、詳細にはオンラインサンプリングに有用であり、後者は、詳細にはオフラインまたは定期的サンプリングに有用であるが、どちらも多種多様なその他のサンプリング用途に使用することもできる。
本発明の一態様に従って、情報処理システムの処理装置が、重複するサブグループに配列された複数のレコードを含むデータベースの高次元層別サンプリングを行うように動作する。所与のレコードについて、処理装置は、所与のレコードはサブグループのどれと関連するかを判断し、所与のレコードと関連するサブグループのそれぞれについて、サブグループのサンプリングレートが指定のサンプリングレート未満であるかどうかをチェックする。サブグループのそれぞれのサンプリングレートが指定のサンプリングレート未満である場合、処理装置は所与のレコードをサンプルし、そうでない場合は所与のレコードをサンプルしない。判断、チェック、およびサンプルの演算はさらなるレコードに対して繰り返され、サンプル演算の結果として生じたサンプルを処理して、データベースを特徴付ける情報を生成する。
本発明の別の態様に従って、情報処理システムの処理装置が、複数のレコードのどれがサンプルされるべきであるかを特徴付ける目的関数を最適化することによって、重複するサブグループに配列された複数のレコードを含むデータベースの高次元層別サンプリングを行う。目的関数は、例えば、サンプルされるレコードの尤度関数に基づくことができ、より詳細には、サンプルされるレコードの尤度関数の二項正規近似(binomial−normal approximation)に基づくことができる。目的関数の最適化は、複数のレコードのそれぞれのレコードがサンプルされるかどうかを指定するバイナリインジケータの成分(component)を繰り返し更新することによって行われる。処理装置は、目的関数を最適化するバイナリインジケータの更新された成分の値に基づいて複数のレコードの特定のレコードをサンプルし、結果として生じるサンプルを処理して、レコードのサブグループを含むデータベースを特徴付ける情報を生成する。
例示的実施形態は、従来の手法に優る重要な利点を提供する。例えば、例示的実施形態における逐次高次元層別サンプリング処理および最適高次元層別サンプリング処理を使用して、最小限のコンピューティング要件およびメモリ要件で、信頼できる、不偏サンプルを生成することができる。
本発明のこれらのおよび他の特徴および利点は、添付の図面および次の詳細な説明からより明らかになるであろう。
本発明の例示的実施形態における高次元層別サンプリングを実行する情報処理システムのブロック図である。 図1のシステムの処理装置のより詳細な図である。 本発明の例示的実施形態における逐次高次元層別サンプリング処理の流れ図である。 本発明の例示的実施形態における最適高次元層別サンプリング処理の流れ図である。 図3または4の高次元層別サンプリング処理を適用することができるネットワークトラフィックの用途における接続レコードのセットの簡単な例を示す図である。 逐次高次元層別サンプリングおよび最適高次元層別サンプリングのサンプリングレートに応じた推定誤りを従来の無作為サンプリングの推定誤りと比較するグラフのセットの図である。 逐次高次元層別サンプリングおよび最適高次元層別サンプリングのサブグループの数に応じた推定誤りを従来の無作為サンプリングの推定誤りと比較するグラフのセットの図である。
本発明について、本明細書では例示的情報処理システム、処理装置、および高次元層別サンプリング技術と併せて説明する。しかしながら本発明は、開示した特定のタイプのシステム、装置、および技術を用いた利用に限定されないことを理解すべきである。例えば、本発明の諸態様は、例示的実施形態と併せて記載したもの以外の処理装置および処理ステップを用いて、多種多様な他の情報処理システム構成で実行することができる。
図1は、サーバ1、サーバ2、……サーバNとも示す複数のサーバ106−1、106−2、……106−Nを含むデータベースシステム105に、ネットワーク104を介して結合されたコントローラ102を備えた情報処理システム100を示している。サーバ106のそれぞれは、関連するデータベース108を有する。これらのデータベースは、ネットワーク104を介してコントローラ102によってアクセスされるレコードまたは他のデータオブジェクトを格納している。この実施形態のコントローラ102は、以下でさらに詳細に説明する1つまたは複数の高次元層別サンプリング技術を実行するように構成されたサンプリングモジュール110を備えている。サンプリングモジュール110は、(1つまたは複数の)高次元層別サンプリング技術を利用して、必ずしも互いに排反しないサブグループに分割されたレコードのセットを処理する。サンプリングモジュール110によって処理されたレコードは、データソース112から受信される、またはデータベースシステム105のデータベース108の1つもしくは複数から検索されることが可能である。結果として生じる層別サンプルは、サンプルデータベース114のコントローラ102によって格納されることが可能である。図中ではデータベースシステム105から分離しているように示しているが、コントローラ102およびサンプルデータベース114のようなシステム要素は、代替的にはデータベースシステム105内に実装することができる。
コントローラ102は、ネットワーク104を通じてデータベースシステム105と通信するのに好適であるコンピュータまたは他の任意のタイプの処理装置の少なくとも一部分を備えることができる。例えばコントローラには、ポータブルもしくはラップトップコンピュータ、携帯電話、携帯情報端末(PDA)、ワイヤレス電子メールデバイス、テレビのセットトップボックス(STB)、またはその他の通信デバイスが含まれる。
ネットワーク104は、インターネットのようなワイドエリアネットワーク、メトロポリタンエリアネットワーク、ローカルエリアネットワーク、ゲーブルネットワーク、電話ネットワーク、衛星ネットワーク、ならびにこれらのまたはその他のネットワークの一部または組合せを含むことができる。
他の実施形態では、サンプリングモジュール110は、サーバ106もしくはその関連データベース108の1つもしくは複数に、またはこうした要素の1つまたは複数に結合された別個の集中コントローラに、実装することができる。モジュールの一部をデバイス102、106、もしくは108のそれぞれまたはその一部に配列して、サンプリングモジュールを分散して実装することもまた可能である。
データベース108は、特定の構成である必要はなく、本明細書で使用する「データベース」という用語はしたがって、格納されたレコードのいかなる数の様々な配置も含むように、広く解釈されるよう意図されている。
次に図2を参照すると、システム100のコントローラ102の1つの可能な実装が示されている。この実施形態では、コントローラは、メモリ202に結合されたプロセッサ200を含み、さらにネットワークインタフェース回路204を含む。メモリ202は、サンプリングモジュール110による処理に備え、レコード205またはその一部を格納すると想定する。格納されたレコード205は、データソース112から受信される、またはネットワーク104を通じてデータベースシステム105から検索されることが可能である。この実行でのコントローラ102のサンプリングモジュール110は、サブグループ識別モジュール210と、サンプリングレート判定モジュール212と、サンプリング決定モジュール214と、最適化モジュール215と、サブグループあたりのレコード数をカウントするカウンタ222およびサブグループあたりのサンプル数をカウントするカウンタ224を含むカウンタ220のセットとを備える。こうしたモジュールおよびカウンタの動作については、図3および4と関連して以下により詳細に説明する。
プロセッサ200は、マイクロプロセッサ、マイクロコントローラ、特定用途向け集積回路(ASIC)、または他のタイプの処理装置、ならびにこのような装置の一部または組合せとして実装することができる。メモリ202は、電子ランダムアクセスメモリ(RAM)、リードオンリメモリ(ROM)、ディスクベースのメモリ、または他のタイプの記憶装置、ならびにこのような装置の一部または組合せを含むことができる。プロセッサおよびメモリは、高次元層別サンプリングのための1つまたは複数のソフトウェアプログラムを格納および実行する際に、ならびにレコードの格納および処理と関連する動作のような関連動作を行うために、使用することができる。モジュール210、212、214、および215は、したがってこのようなソフトウェアプログラムを少なくとも一部使用して、実装することができる。メモリ202は、より一般的に本明細書ではコンピュータプログラム製品と呼ぶもの、またはさらに一般的に実行可能プログラムコードをそこに組み入れたコンピュータ可読記憶媒体と呼ぶものの一例と見ることができる。コンピュータ可読記憶媒体の他の例には、ディスクまたは他のタイプの磁気媒体または光媒体が任意の組合せで含まれる。
プロセッサ200、メモリ202、およびインタフェース回路204は、本明細書に記載する方法で動作するように適切に変更された周知の従来の回路を含むことができる。また、図2に示す様々なモジュールは、関連機能を実装するために使用される回路の例と見ることができる。例えば、このような回路の一部は、行列乗算回路、または他のタイプの算術論理演算回路を含むことができる。このような回路の従来の態様は、当業者にはよく知られているので、本明細書では詳細に説明しない。
本明細書に開示する情報処理システムおよび関連するコントローラは、図1および2の例示的配置に具体的に示す構成要素およびモジュール以外の構成要素およびモジュールを使用して実現することができることを理解されたい。
次に、例示的実施形態におけるシステム100の動作について、図3および4の流れ図を参照して説明する。こうした流れ図は、それぞれ逐次高次元層別サンプリング技術および最適高次元層別サンプリング技術を示している。こうした実施形態について、N個のレコードがそれぞれK個の属性を有し、各属性がm個の離散値をとり、1≦k≦KであるN個のレコードを格納するデータベースに、サンプリング技術を適用すると想定する。このサンプルされるデータベースは、例えばデータベースシステム105のデータベース108の1つもしくは複数、またはデータベースシステム105全体を含むことができる。このコンテキストのNは、格納されたレコードの総数を指し、図1のコンテキストのようにサーバ106およびデータベース108の数を指さないことに注意すべきである。
サブグループは一般に、対象の分野のカテゴリおよびその組合せによってあらかじめ定義される。以下の記載の一部では、レコードの各サブグループが、1つの属性に対して、m個の離散値またはカテゴリ値(連続属性の場合、これらをm個の値に離散するまたは分類することができる)の特定の1つをとり、これにより合計
Figure 0005687763
個のサブグループまたは層があると、それに限定することなく、想定する。したがって、こうした実施形態ではサブグループは、多くの重複レコードを有する可能性がある。これは、先に示したように、レコードを互いに排反するサブグループに分割する従来の層別サンプリングと対照的である。大規模で複雑なデータベースについては、Jは非常に大きい可能性があることに注意すべきである。
また、サブグループの数Jは、各サブグループが1つの属性に対してm個の離散値またはカテゴリ値の特定の値をとるという上記の想定の下で生じる
Figure 0005687763
個のサブグループよりも大きいことが可能である。例えば、2つ以上の属性の組合せを取ることによって、サブグループを定義することができる。複数の属性のこのような組合せは、多くの典型的な実際の適用において重要である可能性がある。したがって、Jは、
Figure 0005687763
よりも大きいが、
Figure 0005687763
よりもかなり小さい可能性がある。
レコードとサブグループとの間の関係は、次のように定式化することができる。AはN×Jの2値行列であって、Aijは、i番目のレコードがj番目のサブグループの部分であるかどうかを示し、i=1,……,N、j=1,……,Jであるとする。簡単にするために、各レコードは少なくとも1つのサブグループに属し、したがって、Aの各行は、少なくとも1つの1を含まなければならないと想定する。
Figure 0005687763
と共にc∈{0,1}とし、nはサンプルされるレコード数であり、Nはサンプル元のレコード数であり、cはi番目のレコードがサンプルされるかどうかを示すようにする。
Figure 0005687763
をそれぞれj番目のサブグループのレコード数およびサンプルされるレコード数とする。Jは大きい可能性があるので、このコンテキストでの高次元層別サンプリングの目的は、j=1,……,Jについてs≒npとなるようにcを選ぶことと特徴付けることができる。先に示したように、高次元層別サンプリングのための2つの異なる技術は、本明細書では逐次高次元層別サンプリングおよび最適高次元層別サンプリングと呼び、それぞれ図3および4と併せて説明する。
上述のN×Jの2値行列Aは一般に非常に疎(sparse)であって、Aはコンパクトメモリ空間内に格納できることに注意することが重要である。また、当業者に周知である疎行列の演算を使用して、Aが疎であることを利用する計算を効率的に行うことができる。
図3または4の高次元層別サンプリング処理を適用することができるネットワークトラフィックの利用における接続レコードのセットの簡単な例を図5に示している。この例では、3つの接続レコードを示しており、それぞれが開始時刻、終了時刻、接続タイプ、コール試行失敗(FCA)、および最強パイロットを含む。しかしながら、本明細書に開示する技術は、いかなるタイプのレコードにも適用することができ、いかなる特定のレコードフォーマットを使用することを要求しないことを理解すべきである。したがって、本明細書で使用する「レコード」という用語は広く解釈され、格納されたデータまたは他のデータオブジェクトの数多くの様々な配置を含むように意図している。
次に図3を参照すると、図1のシステム100で実行される逐次高次元層別サンプリング処理を説明する流れ図が示されている。一般にこの実施形態のサンプリング処理は、例えばこのようなレコードがデータソース112から受信されるとき、レコードを逐次的に処理することを含んでいる。新しいレコードがそれぞれ利用可能になるとき、リアルタイムで逐次的にレコードをサンプルすることができるという点で、これは「オンライン」サンプリングのタイプである。この処理は、図示したステップ300から312を含む。
ステップ300では、サンプリングを検討する次のレコードを取得する。先に示したように、このレコードは、データベース108の1つに格納するためにデータソース112の1つから受信される新しいレコードである可能性がある。一部の実施形態では、レコードがサンプリングを検討される順序は、無作為に変えて、ローカルストレージの構造のような要因によってサンプリングが偏らないことを確実にすることができる。
ステップ302では、この特定のレコードがJ個のサブグループのどれに属するかに関する判断を行う。サブグループは、この実施形態では上述の方法であらかじめ決定されるものと想定する。他の実施形態では、アソシエーションルールマイニング(association rule mining)アルゴリズムのような技術を使用して、サブグループを判断することができる。
ステップ304では、レコードが属する各サブグループのサンプリングレートが指定のサンプリングレートp未満であるかどうかについての判断を行う。サンプリングレートは、サブグループのカウンタ222あたりのレコードの対応するレコード、およびサブグループカウンタ224あたりのサンプルの対応するサンプルを使用して、所与のサブグループについて判断される。サブグループのカウンタあたりのレコードは、そのサブグループの一部であるレコードの数に換算して、サブグループのサイズを測定する。サブグループのカウンタあたりのサンプルは、サブグループがサンプルされた回数を測定する。サブグループのサンプリングレートは、サブグループがサンプルされた回数を、サブグループの一部であるレコードの数で割ったものとして決定される。このサンプリングレートは、サンプリングを検討されているレコードを含むサブグループのそれぞれについて個々に決定される。
レコードが属する各サブグループのサンプリングレートが、指定のサンプリングレートp未満である場合、レコードはステップ306に示すようにサンプルされる。そうでない場合、ステップ308に示すように、レコードはサンプルされない。したがって、検討中の所与のレコードは、レコードが属するサブグループのそれぞれについて、認識されるサンプリングレートが指定のサンプリングレートpで上に有界である場合、かつその場合に限り、サンプルされる。
次いでプロセスはステップ310に移り、サンプルされるまたはサンプルされないレコードが属するサブグループに対して適切なカウンタを更新する。次いで更新されたカウンタは、サンプリングを検討される次のレコードに適用されるプロセスの次の繰り返しで使用される。ステップ306において、レコードが属するサブグループのそれぞれについてレコードがサンプルされた場合、サブグループあたりのレコードのカウンタ222の対応するカウンタ、およびサブグループあたりのサンプルのカウンタ224の対応するカウンタが更新される。しかしながら、検討中のレコードがサンプルされず、プロセスがステップ308を介してステップ310に達する場合、サブグループあたりのサンプル数は変わらないので、サブグループカウンタあたりのレコードを更新するだけでよい。
ステップ312では、処理するさらなるレコードがあるかどうかについて判断する。さらなるレコードがある場合、プロセスはステップ300に戻って、サンプリングを検討する次のレコードを取得する。そうでない場合、プロセスは図のように終了する。
図3の処理を用いてレコードの所与のセットの適切なサンプルが生成されると、サンプルは、システム100のサンプルデータベース114または他の場所に格納され、これを使用して回帰分析、データマイニング、または他のファンクションを行うことができる。より一般的には、サンプル演算の結果は、さらに処理されて、レコードのサブグループを含むデータベースを特徴付ける情報を生成する。
図4を参照すると、図1のシステム100において実行される最適高次元層別サンプリング処理を示す流れ図が示されている。この実施形態のサンプリング処理は、一般に、例えばデータベース108の1つまたは複数から検索された、またはデータソース112の1つまたは複数から受信された、グループのレコードを処理することを含む。これは、レコードが図3の実施形態のように逐次的に処理されないので、「オフライン」のタイプまたは定期的サンプリングと見ることができる。この処理は、図のようにステップ400から410を含む。
最適サンプリングプロセスでは、目的関数の最適化により、所望のサンプリングの解がもたらされる。1つの考えられる目的関数は、cに応じて
Figure 0005687763
を最小にすることである。これは二次ノルムであり、小さいnを有する層(strata)を無視する傾向があって一定の応用では望ましくない。別の可能性は、小さい層により集中する、相対誤差
Figure 0005687763
を最小にすることである。しかしながら、こうした2つの考えられる目的関数の代わりとして、大きい層と小さい層との間で程よい妥協を行う目的関数を以下に説明する。各サブグループのサンプルサイズsは、これまで通り、二項分布に従うことに注意されたい。各サブグループを個々に扱うことによって、サンプルの尤度関数によって求められる二項目的関数を次のように表すことができる:
Figure 0005687763
ここで、nはj番目のサブグループのサイズである。サブグループについての独立性の想定(independence assumption)は、サブグループが重複していないことを意味しないことに注意されたい。代わりに、どのレコードが他のサブグループと関連しているかとは無関係に、各サブグループはレコードの任意のサブセットを含むことができるということを単に意味する。したがってこれは、様々なサブグループと関連するレコード間の無作為の重複を暗黙的に想定する。尤度関数の最大化により、どのレコードがサンプルされるかに関する解がもたらされる。
二項正規近似に基づいて、すなわち、sが正規分布N(np,np(1−p))にほぼ従い、対応する正規目的関数は、次のように定式化することができる:
Figure 0005687763
これは、正規近似に基づいて、{sj:1≦j≦J}の対数尤度関数(ある定数まで)である。二項目的関数と正規目的関数の間には、2つの主要な違いがあることに注意されたい。第1に、正規目的関数は、重み付けされた2乗和(weighted square sum)であり、相対的推定誤りは、
Figure 0005687763
によって定義され、サブグループはそれらのサイズで重み付けされて小さいサブグループの評価が下げられる。したがって、これは二項目的関数よりも直感的である。L(c)の小さい値は、小さい相対的推定誤りを意味する。第2に、
Figure 0005687763
であり、ただしc∈{0,1}が2値ベクトルであって、レコードがサンプルされるかどうかを示す、未知のパラメータであるので、正規目的関数は、cの二次形式であり、これは正規目的関数の最適化を二項の場合よりも簡単にする。こうした利点により、図4の実施形態は、正規目的関数L(c)を利用する。L(c)の二次形式は、
Figure 0005687763
と書くことができる。次いで、cに関するL(c)の最小化が、サンプリングの解をもたらし、これを本明細書では最適サンプリングと呼ぶ。
本明細書で使用する「最適」および「最適化」のような用語は、いかなる特定の絶対最小値または絶対最大値の達成も必要としないが、代わりに例えば指定された範囲内の、または指定された残差に従った最小または最大値の達成を含むように広く解釈されるよう意図されていることに注意されたい。
図4のサンプリング処理のステップ400では、前述のN×Jの2値行列Aは定式化され、Aijは、i番目のレコードがj番目のサブグループの一部であるかどうかを示し、i=1,……,N、j=1,……,Jである。再度、各レコードが少なくとも1つのサブグループに属すると想定し、したがってAの各列は少なくとも1つの1を含まなければならない。
ステップ402では、cは、i番目のレコードがサンプルされるかどうかのバイナリインジケータとして指定されている。上記のように、
Figure 0005687763
と共に、c∈{0,1}である。
ステップ404では、上述の正規目的関数L(c)は、前述の二項正規近似に基づいて、定式化される。
ステップ406では、目的関数L(c)は最適化され、より詳細には、cに応じて最小化されて、所望のサンプリングの解を提供する。この特定の最小化問題は、典型的にはNPハードである、2値二次最適化問題(binary quadratic optimization problem)のタイプである。このような最適化問題を解決する既知のアルゴリズムは、焼き鈍し法(simulated annealing)およびタブー検索を含むが、非常に時間のかかるものである可能性がある。代わりにステップ406において実行される最適化は、反復処理を利用し、i=1,……,nについて、c以外のcのすべての成分(components)を調整し、c=1またはc=0がより小さいL(c)の値を生み出すかどうかに従ってcを更新する。反復ステップは、目的関数が単調に減少するので、局所解に集まる。局所収束を迅速に達成することができ、すなわち各cは、典型的には数回更新されるだけでよく、このために大きな計算負荷が生じることはない。図3の高次元逐次サンプリング処理、すなわち従来の無作為サンプリングは、レコードのグループに適用して、L(c)を最小化するためのcの優れた初期化ポイントを提供することができることに注意されたい。またスペクトル近似のような代替技術を使用して、cの初期値を取得することもできる。
ステップ408では、レコードは、最適化ステップ406で決定されたcの中の値に基づいてサンプルされる。
ステップ410では、処理するさらなるレコードがあるかどうかに関する判断を行う。さらなるレコードがある場合、プロセスはステップ400に戻って、サンプリングを検討するさらなるレコードを取得する。そうでない場合、プロセスは図のように終了する。
図3の処理の場合のように、図4の処理を用いてレコードの所与のセットの適切なサンプルが生成されると、サンプルは、システム100のサンプルデータベース114または他の場所に格納され、これを使用して回帰分析、データマイニング、または他のファンクションを行うことができる。このようなファンクションは、サンプル演算の結果をさらに処理して、レコードのサブグループを含むデータベースを特徴付ける情報を生成することができる方法の例である。
多くの実際の利用においては、レコードは通常連続して届き、Nは極めて大きくなる可能性がある。したがって、図4の最適プロセスを定期的に適用してサンプルを取得し、図3の逐次処理を使用して取得された1つまたは複数の事前のサンプルを用いてこれらのサンプルをマージすることができる。このように、本発明の他の実施形態は、図3および4の逐次サンプリング処理と最適サンプリング処理、またはこのような処理の一部を結合することができる。
図3および4のサンプリング処理の性能シミュレーションについて、次に説明する。こうしたシミュレーションでは性能は、サンプリングレートpおよびレコードのサブグループの行列Aの関数である。パラメータr∈{0,1}を使用して、2つのサブグループ間の相関関係を特徴付け、行列Aの各成分(entry)Aijは、独立したベルヌーイの乱数(Bernoulli random number)として生成され、すなわちP(Aij=1)=rである。次いでサブグループは、値1をとるAの成分によって決定される。各サブグループのサイズは、m=nrの期待値を有し、2つのサブグループは、nr=mrに等しい重複レコードの期待数を有する。したがって、2つのサブグループ間のコサイン相関は約rである。r=0のとき、サブグループは互いに排反し、rが1に近いとき、サブグループの各ペアは、多くの重複レコードを有する。しかしながら、k個の異なるサブグループ中の重複レコードの期待数はnrであり、kが大きくなるにつれて指数関数的に減衰する。
図6は、逐次高次元層別サンプリングおよび最適高次元層別サンプリングのサンプリングレートpに応じた推定誤りを従来の無作為サンプリングの推定誤りと比較するグラフのセットを示している。これらのグラフでは、n=10、J=10000、r=0.001、およびpは0.001から0.5まで変化する。グラフから、従来の無作為サンプリングの推定誤りは、サンプリングレートに対して不変であることがわかる。しかしながら、逐次高次元層別サンプリングと最適高次元層別サンプリングの両方の推定誤りは、極めて小さいサンプリングレートを除いて、無作為サンプリングの推定誤りよりもはるかに良いものである。さらに、逐次高次元層別サンプリングと最適高次元層別サンプリングの両方の推定誤りは、サンプリングレートが大きくなるにつれて、p−1までの線形よりもわずかに速く、急速に減少する。また、最適サンプリングは、小さいサンプリングレートについては特に、逐次サンプリングよりも一様に優れて機能することがわかる。
図7は、逐次高次元層別サンプリングおよび最適高次元層別サンプリングのサブグループの数に応じた推定誤りを従来の無作為サンプリングの推定誤りと比較するグラフの複数のセットを示している。これらのグラフでは、n=10、pは0.001から0.1まで変化し、rは2−14から2−6まで変化し、これは100未満から20,000までのサブグループのサイズに対応する。無作為サンプリングと最適サンプリングの両方の推定誤りは、すべての場合において対数尺度でほぼ1の勾配を有して、Jとともにほぼ線形に増大し、逐次サンプリングは、わずかに大きい勾配を有し、すなわち逐次サンプリングは、Jが大きくなるとき他の2つよりも速く減衰することがわかる。pとrがともに小さいときを除くすべての場合において、無作為サンプリングから最適サンプリングでは有意の誤りの減少がある。逐次サンプリングの性能は一般に、無作為サンプリングよりも優れているが、pとrがともに非常に小さいとき、またはJが大きいときを除いて最適サンプリングよりも劣っている。
先に示したように、本明細書に開示する高次元層別サンプリング技術は、多種多様な用途で実行されることが可能である。例えば、こうした技術は、無線網において各呼に生成される接続レコードを含む、データベースの問い合わせおよび保守管理の用途に使用することができる。このようなネットワークにおける接続レコードのデータベースは、何百もの属性を含む可能性がある。一日におよそ数百万の割合で新しいレコードが届くので、データベースは定期的に更新される必要がある。一般的には、高容量のために長い間データベースにレコードを保持することができない。したがって、レコードのより長期の履歴(例えば数ヶ月)を保護し、また完全なデータベースを表わすことができるサンプルデータベースを有することが有利である。このような用途では、各時間間隔(例えば、5分の間隔)および各位置(例えば、都市のセクタ)で行われる接続が表され、失敗した接続の各カテゴリが、完全なレコードにおけるその比率に基づいてサンプルされるように、レコードをサンプルすることが望ましい場合がある。またサンプルレコードは、セッション確立のタイプ、セッション確立段階における信号の特性、トラフィック量、パイロット数など、呼の障害の根本的原因と相関性がある要因を表すべきである。また、接続の失敗だけでなく、信号強度が強いこと、主要基地局に近いことも示すレコードのように、複数の要因の間の相関性を表すことも重要である。こうした変数の組合せは、何万もの重複するサブグループをもたらす可能性がある。他の例示的用途は、限られた精度で指定されたデータキューブへの問い合わせを効率的に処理すること、および大母集団から引き出される世論調査において不偏サンプルを生成することを含む。
上述の例示的実施形態における逐次高次元層別サンプリング処理および最適高次元層別サンプリング処理を使用して、最小限の計算およびメモリ要件で信頼できるサンプルを生成することができる。これにより、完全なレコードセットがアクセスできない(例えば、世論調査においてすべての顧客から情報を集めることができない)とき、または完全なレコードセットが大きすぎて、システムがすべての問い合わせに正確な回答を与えることができない(例えば、大規模データベースまたはネットワークデータ)とき、異なる情報源の効率的な統合が可能になり、入手可能なサンプルが作り出される。結果のサンプルはほぼ不偏であり、正確な事後分析が可能になる。
先に示したように、本発明の諸実施形態は、少なくとも部分的に、情報処理システムの処理装置のメモリまたは他のコンピュータ可読媒体に格納された1つまたは複数のソフトウェアプログラムの形態で実行することができる。モジュール210、212、214、および215のようなシステム構成要素は、少なくとも部分的にソフトウェアプログラムを使用して実装することができる。当然ながら、本発明に従ってこれらおよび他のシステムを実装する際に、任意の組合せのハードウェア、ソフトウェア、またはファームウェアの数多くの代替配列を利用することができる。例えば、本発明の諸実施形態は、1つまたは複数のフィールドプロブラマブルゲートアレイ(FPGA)、ASIC、デジタル信号プロセッサ、または他のタイプの集積回路デバイスに、任意の組合せで実装することができる。このような集積回路デバイス、ならびにその一部または組合せが、本明細書で使用する「回路」の例である。
上述の諸実施形態は、単に例示のためであり、決して限定と解釈されるべきではないことを、改めて強調すべきである。他の実施形態は、特定の層別サンプリングの利用の必要性に応じて様々なタイプおよび配列のシステム構成要素を使用することができる。したがって代替実施形態は、レコードのセットに正確かつ効率的なサンプリングを実行することが望ましい他の状況において本明細書に記載する技術を利用することができる。また、例示的実施形態を説明する文脈で行った特定の想定は、本発明の要件と解釈されるべきではないことも注意されたい。本発明は、こうした特定の想定が適用されない他の実施形態において実行されることが可能である。添付の特許請求の範囲の範囲内のこれらおよびその他数多くの代替実施形態は、当業者には容易に理解できるであろう。

Claims (11)

  1. 装置であって、前記装置が、
    関連するメモリを有するプロセッサを含む処理装置を備え、
    前記処理装置が、
    所与のレコードについて、前記所与のレコードが複数のサブグループのどれと関連するかを判断し、
    前記所与のレコードと関連する前記サブグループのそれぞれについて、前記サブグループのサンプリングレートが指定のサンプリングレート未満であるかどうかをチェックし、
    前記サブグループのそれぞれの前記サンプリングレートが前記指定のサンプリングレート未満である場合、前記所与のレコードをサンプルし、そうでない場合は前記所与のレコードはサンプルされず、
    複数のさらなるレコードのそれぞれについて、前記判断、チェック、およびサンプルの演算を繰り返す、
    ように動作し、
    前記サンプル演算の結果として生じるサンプルが処理されて、前記サブグループを含むデータベースを特徴付ける情報を生成し、
    前記所与のレコードは、2つ以上の前記サブグループに関連している、装置。
  2. 前記処理装置が、前記所与のレコードおよび前記複数のさらなるレコードについて前記判断、チェック、およびサンプルの演算を行うように構成されたサンプリングモジュールを有するコントローラを備える、請求項1に記載の装置。
  3. 前記サブグループが、前記データベースのレコードの重複セットを含む、請求項1に記載の装置。
  4. 前記処理装置がさらに、前記サブグループのそれぞれについて、そのサブグループと関連するレコード数を示す第1のカウンタ、およびそのサブグループからのレコードがサンプルされた回数を示す第2のカウンタを保持するように動作する、請求項3に記載の装置。
  5. 前記処理装置がさらに、そのサブグループに保持された前記第1のカウンタの値、およびそのサブグループに保持された前記第2のカウンタの値に応じて各サブグループの前記サンプリングレートを判断するように動作する、請求項4に記載の装置。
  6. 前記処理装置がさらに、前記所与のレコードがサンプルされるかどうかに基づいて前記所与のレコードと関連する各サブグループについて前記第1および第2のカウンタの少なくとも1つを更新するように動作する、請求項5に記載の装置。
  7. 請求項1に記載の装置を備える集積回路。
  8. 所与のレコードについて、前記所与のレコードが複数のサブグループのどれと関連するかを判断するステップと、
    前記所与のレコードと関連する前記サブグループのそれぞれについて、前記サブグループのサンプリングレートが指定のサンプリングレート未満であるかどうかをチェックするステップと、
    前記サブグループのそれぞれの前記サンプリングレートが前記指定のサンプリングレート未満である場合、前記所与のレコードをサンプルし、そうでない場合は前記所与のレコードはサンプルされないステップと、
    複数のさらなるレコードのそれぞれについて、前記判断するステップ、チェックするステップ、およびサンプルするステップを繰り返すステップと、
    前記サンプリングのステップの結果として生じるサンプルを処理して、前記サブグループを含むデータベースを特徴付ける情報を生成するステップと、を含
    前記所与のレコードは、2つ以上の前記サブグループに関連している、プロセッサ実行方法。
  9. 処理装置のプロセッサによって実行されるとき、請求項8に記載の方法の前記ステップを前記装置に行わせる実行可能プログラムコードを組み入れたコンピュータ可読記憶媒体を備える製品。
  10. 装置であって、前記装置が、
    関連するメモリを有するプロセッサを含む処理装置を備え、
    前記処理装置が、
    複数のレコードのそれぞれのレコードがサンプルされるかどうかを指定するバイナリインジケータの成分を繰り返して更新することによって、レコードの重複するサブグループの中の前記複数のレコードのどれがサンプルされるかを特徴付ける目的関数を最適化し、
    前記目的関数を最適化する前記バイナリインジケータの前記更新された成分の値に基づいて前記複数のレコードの特定のレコードをサンプルする、
    ように動作し、
    前記サンプル演算の結果として生じるサンプルが処理されて、レコードの前記サブグループを含むデータベースを特徴付ける情報を生成し、
    前記バイナリインジケータの前記成分のそれぞれは、前記複数のレコードのうちの対応する1つを特徴付け、
    前記複数のレコードの少なくとも1つは、2つ以上の前記サブグループに関連している、装置。
  11. 複数のレコードのそれぞれのレコードがサンプルされるかどうかを指定するバイナリインジケータの成分を繰り返して更新することによって、レコードの重複するサブグループの中の前記複数のレコードのどれがサンプルされるかを特徴付ける目的関数を最適化するステップと、
    前記目的関数を最適化する前記バイナリインジケータの前記更新された成分の値に基づいて前記複数のレコードの特定のレコードをサンプルするステップと、
    前記サンプリングのステップの結果として生じるサンプルを処理して、前記複数のレコードを含むデータベースを特徴付ける情報を生成するステップとを含み、
    前記バイナリインジケータの前記成分のそれぞれは、前記複数のレコードのうちの対応する1つを特徴付け、
    前記複数のレコードの少なくとも1つは、2つ以上の前記サブグループに関連している、プロセッサ実行方法。
JP2013518418A 2010-06-28 2011-06-09 高次元層別サンプリング Expired - Fee Related JP5687763B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/824,849 2010-06-28
US12/824,849 US8639692B2 (en) 2010-06-28 2010-06-28 High-dimensional stratified sampling
PCT/US2011/039750 WO2012009071A1 (en) 2010-06-28 2011-06-09 High-dimensional stratified sampling

Publications (2)

Publication Number Publication Date
JP2013534674A JP2013534674A (ja) 2013-09-05
JP5687763B2 true JP5687763B2 (ja) 2015-03-18

Family

ID=44627261

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013518418A Expired - Fee Related JP5687763B2 (ja) 2010-06-28 2011-06-09 高次元層別サンプリング

Country Status (7)

Country Link
US (2) US8639692B2 (ja)
EP (1) EP2585948A1 (ja)
JP (1) JP5687763B2 (ja)
KR (1) KR101442383B1 (ja)
CN (1) CN102985923A (ja)
TW (1) TWI490715B (ja)
WO (1) WO2012009071A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8639692B2 (en) 2010-06-28 2014-01-28 Alcatel Lucent High-dimensional stratified sampling
US8861374B2 (en) * 2012-03-30 2014-10-14 Cisco Technology, Inc. Methods and apparatus for compensating for time-based sampling by sample packet elimination during export of sampled packets
US20140172547A1 (en) * 2012-12-19 2014-06-19 Sas Institute Inc. Scoring Online Data for Advertising Servers
US10482477B2 (en) * 2013-03-15 2019-11-19 Netflix, Inc. Stratified sampling applied to A/B tests
CN104123466B (zh) * 2014-07-24 2017-07-07 中国软件与技术服务股份有限公司 一种基于常态模式的大数据态势分析预警方法及系统
CN105589683B (zh) * 2014-10-22 2020-08-11 腾讯科技(深圳)有限公司 样本抽取方法和装置
US20160260013A1 (en) * 2015-03-06 2016-09-08 Nokia Technologies Oy Method and apparatus for optimization
US10042914B2 (en) 2015-06-10 2018-08-07 International Business Machines Corporation Database index for constructing large scale data level of details
US10740774B2 (en) 2015-07-15 2020-08-11 The Nielsen Company (Us), Llc Reducing processing requirements to correct for bias in ratings data having interdependencies among demographic statistics
CN106997420B (zh) * 2016-01-22 2020-03-27 北京四维图新科技股份有限公司 智能抽样检测地图数据的方法及装置
CN106909594B (zh) * 2016-06-06 2020-05-05 阿里巴巴集团控股有限公司 信息推送方法及装置
CN107122395B (zh) * 2017-03-10 2021-02-26 博彦科技股份有限公司 数据抽样方法和装置
CN110399413A (zh) * 2019-07-04 2019-11-01 博彦科技股份有限公司 数据抽样方法、装置、存储介质和处理器
CN110825783B (zh) * 2019-10-31 2024-07-02 深圳前海微众银行股份有限公司 数据抽样方法、装置、设备及存储介质

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4472784A (en) * 1981-12-11 1984-09-18 At&T Bell Laboratories Ensuring sample independence in random sampling systems
JP2918966B2 (ja) * 1990-03-19 1999-07-12 株式会社日立テレコムテクノロジー 有線放送呼出方式
JPH04268663A (ja) * 1991-02-25 1992-09-24 Nec Corp 標本データサンプリング装置
US7069264B2 (en) * 1999-12-08 2006-06-27 Ncr Corp. Stratified sampling of data in a database system
US6564221B1 (en) * 1999-12-08 2003-05-13 Ncr Corporation Random sampling of rows in a parallel processing database system
GB0025771D0 (en) * 2000-10-20 2000-12-06 New Transducers Ltd Contact sensitive device
US6937994B1 (en) * 2000-02-24 2005-08-30 International Business Machines Corporation System and method for efficiently generating models for targeting products and promotions using classification method by choosing points to be labeled
US6519604B1 (en) * 2000-07-19 2003-02-11 Lucent Technologies Inc. Approximate querying method for databases with multiple grouping attributes
JP2002183178A (ja) * 2000-12-18 2002-06-28 Ricoh Co Ltd データ分析支援装置、その方法および記憶媒体
US6889221B1 (en) * 2001-08-23 2005-05-03 Ncr Corporation Parallel random sampling
CN1477554A (zh) * 2003-07-25 2004-02-25 中国科学院计算技术研究所 一种自适应网络数据采集方法
US7490071B2 (en) 2003-08-29 2009-02-10 Oracle Corporation Support vector machines processing system
US7139864B2 (en) * 2003-12-30 2006-11-21 Sandisk Corporation Non-volatile memory and method with block management system
US7310652B1 (en) * 2005-08-08 2007-12-18 At&T Corp. Method and apparatus for managing hierarchical collections of data
US7805443B2 (en) * 2006-01-20 2010-09-28 Microsoft Corporation Database configuration analysis
US8010538B2 (en) * 2006-05-08 2011-08-30 Black Duck Software, Inc. Methods and systems for reporting regions of interest in content files
US7536403B2 (en) 2006-12-22 2009-05-19 International Business Machines Corporation Method for maintaining a sample synopsis under arbitrary insertions and deletions
US8639692B2 (en) 2010-06-28 2014-01-28 Alcatel Lucent High-dimensional stratified sampling

Also Published As

Publication number Publication date
CN102985923A (zh) 2013-03-20
TW201216100A (en) 2012-04-16
KR101442383B1 (ko) 2014-09-17
JP2013534674A (ja) 2013-09-05
TWI490715B (zh) 2015-07-01
US8639692B2 (en) 2014-01-28
US20110320447A1 (en) 2011-12-29
KR20130029790A (ko) 2013-03-25
WO2012009071A1 (en) 2012-01-19
US20140040268A1 (en) 2014-02-06
US9047362B2 (en) 2015-06-02
EP2585948A1 (en) 2013-05-01

Similar Documents

Publication Publication Date Title
JP5687763B2 (ja) 高次元層別サンプリング
US20210365305A1 (en) Systems and methods for quickly searching datasets by indexing synthetic data generating models
US10268745B2 (en) Inherited dimensions
US8150723B2 (en) Large-scale behavioral targeting for advertising over a network
US7353218B2 (en) Methods and apparatus for clustering evolving data streams through online and offline components
US9477974B2 (en) Method and systems for flexible and scalable databases
US8682885B2 (en) Method and system for combining data objects
US12105832B2 (en) Adaptive differentially private count
Cohen Min-Hash Sketches.
US20220261391A1 (en) Auto unload
Tran et al. Conditioning and aggregating uncertain data streams: Going beyond expectations
Lyu et al. Fine-grained modeling and optimization for intelligent resource management in big data processing
Wagner et al. Fast private kernel density estimation via locality sensitive quantization
US11061916B1 (en) Computing approximate distinct counts for large datasets
Xiaoyue et al. A distributed multiple sample testing for massive data
Wang et al. Skew‐aware online aggregation over joins through guided sampling
US10942908B2 (en) Primary key determination
Zhao et al. Building Hierarchical Spatial Histograms for Exploratory Analysis in Array DBMS
Cahsai et al. Revisiting Exact kNN Query Processing with Probabilistic Data Space Transformations
CN116578886A (zh) 用户聚类方法、装置、计算机设备和存储介质
JP2024068340A (ja) データ操作プログラム、データ操作システム、およびデータ操作方法
CN117033411A (zh) 数据查询方法、装置、计算机设备和存储介质
CN118093544A (zh) 用于在数据库系统中估计不同值个数的方法
WO2023278935A1 (en) Artificial intelligence based hotel demand model
CN118708608A (zh) 处理引擎的选择方法、装置、计算机设备、存储介质

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20131219

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20140319

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20140327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140618

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: 20141225

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150122

R150 Certificate of patent or registration of utility model

Ref document number: 5687763

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees