JP5442846B2 - スケーラブルなクラスタリング - Google Patents

スケーラブルなクラスタリング Download PDF

Info

Publication number
JP5442846B2
JP5442846B2 JP2012504721A JP2012504721A JP5442846B2 JP 5442846 B2 JP5442846 B2 JP 5442846B2 JP 2012504721 A JP2012504721 A JP 2012504721A JP 2012504721 A JP2012504721 A JP 2012504721A JP 5442846 B2 JP5442846 B2 JP 5442846B2
Authority
JP
Japan
Prior art keywords
cluster
data structure
feature
keywords
advertisement
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.)
Active
Application number
JP2012504721A
Other languages
English (en)
Other versions
JP2012523621A5 (ja
JP2012523621A (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.)
Microsoft Corp
Original Assignee
Microsoft Corp
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 Microsoft Corp filed Critical Microsoft Corp
Publication of JP2012523621A publication Critical patent/JP2012523621A/ja
Publication of JP2012523621A5 publication Critical patent/JP2012523621A5/ja
Application granted granted Critical
Publication of JP5442846B2 publication Critical patent/JP5442846B2/ja
Active 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/24Querying
    • G06F16/245Query processing
    • G06F16/2458Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
    • G06F16/2465Query processing support for facilitating data mining operations in structured databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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/26Visual data mining; Browsing structured data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/40Data acquisition and logging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/23Clustering techniques
    • G06F18/232Non-hierarchical techniques
    • G06F18/2321Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16BBIOINFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR GENETIC OR PROTEIN-RELATED DATA PROCESSING IN COMPUTATIONAL MOLECULAR BIOLOGY
    • G16B40/00ICT specially adapted for biostatistics; ICT specially adapted for bioinformatics-related machine learning or data mining, e.g. knowledge discovery or pattern finding
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16CCOMPUTATIONAL CHEMISTRY; CHEMOINFORMATICS; COMPUTATIONAL MATERIALS SCIENCE
    • G16C20/00Chemoinformatics, i.e. ICT specially adapted for the handling of physicochemical or structural data of chemical particles, elements, compounds or mixtures
    • G16C20/70Machine learning, data mining or chemometrics
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H50/00ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
    • G16H50/70ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for mining of medical data, e.g. analysing previous cases of other patients
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2216/00Indexing scheme relating to additional aspects of information retrieval not explicitly covered by G06F16/00 and subgroups
    • G06F2216/03Data mining

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Artificial Intelligence (AREA)
  • Medical Informatics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Computing Systems (AREA)
  • Evolutionary Biology (AREA)
  • Probability & Statistics with Applications (AREA)
  • Public Health (AREA)
  • Computational Linguistics (AREA)
  • Epidemiology (AREA)
  • Crystallography & Structural Chemistry (AREA)
  • Spectroscopy & Molecular Physics (AREA)
  • Bioethics (AREA)
  • Biophysics (AREA)
  • Computer Hardware Design (AREA)
  • Chemical & Material Sciences (AREA)
  • Biotechnology (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Biomedical Technology (AREA)
  • Pathology (AREA)
  • Primary Health Care (AREA)
  • Fuzzy Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Transfer Between Computers (AREA)
  • Image Analysis (AREA)

Description

本発明は、スケーラブルなクラスタリングシステムに関する。
ある類似した概念に基づいて項目をクラスタリング(clustering)するのは、多くのアプリケーションにおいて度々生じる難問である。例えば、文書を関連文書のグループにクラスタリングするには、情報検索アプリケーション、文書解析アプリケーションおよび他のタスクが必要になる。クラスタ化される項目は、文書、電子メール、ウェブページ、広告、イメージ、ビデオまたは他のタイプの項目になり得る。クラスタリングは、カテゴリ化(categorizing)または分類(classifying)とも呼ばれ得る。
従来の手法の中には、教師あり分類スキーマ(supervised classification schemes)を伴うものがある。このスキーマにおいて、機械学習システムを訓練して自動的に分類を実行するために、分類される項目の大部分を手動でラベル付けすることが必要である。しかしながら、この手法は、ウェブスケールのアプリケーションなどのかなり膨大な項目の集合に対しては実用的でない。この状況では、項目の大部分を手動でラベル付けすることは実用的でない。
教師なしクラスタリング(unsupervised clustering)手法も、そのクラスタリングシステムがデータに最適に合うどんなカテゴリも自在に作り出すことで知られている。そのような手法の例は、K平均クラスタリングおよび凝集(agglomerative)クラスタリングを含む。しかしながら、このような手法の多くは、必要とする訓練時間が非常に長いおよび/またはその結果の質が良くないという点で、膨大なデータセット(数百ものクラスタにクラスタ化される数十万もの項目)には上手くスケールアップ(scale up)しない。
別のタイプの教師なしクラスタリング手法は、ベルヌーイのプロファイルの混合を使用してクラスタリングモデルを形成すること、および最尤法を使用してモデルパラメータの最適値を学習することを伴う。そのような最尤法は、有向上昇勾配(direct gradient ascent)および期待値最大化(EM)を含む。しかしながら、そのような最尤法は、訓練中にデータに対して収束するためのいくつかのパスを必要とするので、その手法は、極めて膨大なデータセットには適さない。その手法において、初期化は、尤度が複数モードの理由から不可欠であるが、これにより、高次元データを伴うアプリケーションにおいて達成するのはかなり困難である。
本明細書で説明される実施形態は、周知のクラスタリングシステムの不利点の一部またはすべてを解決する実装に限定されない。
Bishop,C.M. "Pattern Recognition and Machine Learning" Springer 2006
以下では、読者に基本的な理解を与えるために本開示の簡易化された概要を提示する。本概要は、本開示の広範囲にわたる概要ではなく、本発明の主要/重要な要素を特定するものでも本発明の範囲を明確にするものでもない。その唯一の目的は、後で提示されるより詳細な説明の前置きとして簡易化された形において本明細書で開示されるいくつかの概念を提示することである。
スケーラブルなクラスタリングシステムが説明される。一実施形態において、クラスタリングシステムは、数千万もの特徴を有する数百万もの項目がクラスタ化される極めて大規模なアプリケーションに対して動作可能である。一実施形態において、クラスタリングシステムは、データセット内の不確実性をモデル化する確率的クラスタモデルを使用し、そのデータセットは、例えば、キーワードで契約される広告、テキストキーワードを含むテキスト文書、関連する特徴または他の項目を有するイメージになり得る。一実施形態において、クラスタリングシステムは、所与の項目と関連付けるための付加的な特徴を生成するのに使用される。例えば、広告主が契約しそうな付加的なキーワードが提案される。生成される付加的な特徴は、関連する確率値を有し、その確率値は、いくつかの実施形態においてその特徴をランク付けするのに使用され得る。いくつかの例において、生成される特徴についてのユーザフィードバックが受信されて、その特徴の生成プロセスを修正する(revise)のに使用される。
付随する特徴の多くは、添付図面と併せて検討される以下の詳細な説明を参照することによって、さらに容易に認識されると同時に理解もより深まるであろう。
本説明は、以下の詳細な説明を添付図面に照らして読むことによって理解がより深まるであろう。同種の参照数字は、添付図面の同種の部分を指定するのに使用される。
クラスタリングシステムの略図である。 データ構造内で保持されるモデルパラメータの略図である。 クラスタリングモデルを訓練する方法の略図である。 契約キーワードを有し、2つのクラスタを示す広告の略図である。 図4に付加された広告を示す略図である。 クラスタリングモデルを訓練する方法のフロー図である。 クラスタリングシステムで使用する例示的な有向グラフモデルの図である。 クラスタリングシステムで使用する例示的な因子グラフの図である。 クラッタークラスタエンジンおよびガーベジコレクションエンジンの略図である。 ガーベジコレクションエンジンにおける方法のフロー図である。 ガーベジコレクションエンジンにおける別の方法のフロー図である。 ガーベジコレクションエンジンにおける別の方法のフロー図である。 並列処理を使用してクラスタリングシステムを訓練する方法のフロー図である。 キーワードを広告主に提案する方法のフロー図である。 2つの異なるクラスタ内の最も顕著な特徴を示すテーブルである。 クラスタリングシステムの実施形態が実装され得る例示的なコンピューティングベースのデバイスを示す図である。
添付図面と併せて以下に与えられる詳細な説明は本例の説明として意図されるものであり、本例が構築または利用され得る形態のみを表すことを意図しない。その説明は、本例の機能および本例を構築して動作するためのステップのシーケンスを示す。しかしながら、同じまたは同等の機能およびシーケンスは、異なる例によって実現され得る。
本例は、広告が契約されたクラスタリングキーワードに対するクラスタリングシステムに実装されるものとして本明細書で説明されるが、説明されるシステムは、例として与えられるものであり限定されない。当業者は認識するであろうが、本例は、異なるタイプのさまざまなクラスタリングシステムにおけるアプリケーションに適する。
図1は、クラスタリングシステム101の略図であり、入力時に特徴を有する項目100についての情報を入手する。例えば、その項目は広告になり得るし、その特徴は、広告が契約されたキーワードになり得る。しかしながら、これは必須ではなく、その項目はテキスト文書であってもよいし、その特徴はその文書内のテキストワードであってもよい。他の例において、その項目は、イメージまたはビデオクリップであってもよいし、その特徴は、ビジュアルワード、テキストン(textons)または他の特徴であってもよい。つまり、項目は、文書、ファイル、電子メール、ウェブページ、広告、オーディオファイル、音声メッセージ、スニペットテキスト、イメージ、名前または他の項目など適した任意のタイプであってもよい。その特徴は、その項目と関連付けられる任意の特性である。本明細書で説明される実施形態において、所与の項目に対して実現可能な特徴が多数あるので(例えば、実現可能な特徴が数百から数十万とある)、クラスタリングシステムへの入力には高次元ある。
本明細書で説明される実施形態において、クラスタリングシステムへの入力は、二値ベクトル形式で提供される。例えば、項目が文書であり、特徴がテキストワードである場合、所与の文書に対する入力は、1ベクトルおよび0ベクトルであり、1ベクトルは、テキストワードが文書内に存在することを示す。0ベクトルは、テキストワードが文書内に存在しないことを示す。別の例において、項目は在庫(stocks)になり得るし、特徴はその在庫が指定された期間の間に売られた値段になり得る。価格値(price values)の範囲または「瓶(bin)」は、二値ベクトルが在庫ごとに形成されて、クラスタリングシステムへの入力時に提供され得るように指定され得る。別の例において、項目は広告であり、特徴はその広告が契約されるキーワードである。この場合、広告に対する二値ベクトルは、契約する広告のキーワードごとに1ベクトル、およびその広告の契約が存在しないキーワードごとに0ベクトルを備える。
クラスタリングシステム101は、データ構造102を保持するメモリを有するクラスタリングエンジンを備える。データ構造は、デフォルト状態で開始するクラスタモデルを保持し、大規模なセットの訓練データを使用して訓練される。訓練データは上述したような二値ベクトルを備える。訓練プロセスは、以下で詳述されるように、ベイズ更新プロセスを使用する更新エンジン103によって実行される。学習プロセスの間、クラスタモデルのパラメータは、そのモデルのパラメータについての不確実性だけでなく学習も行う。クラスタリングシステム101は、学習したモデルのクラスタおよびパラメータについての詳細といったクラスタ情報104を出力時に提供する。そのモデルは、モデルパラメータについての不確実性を考慮に入れて、訓練または更新プロセスの間にこの不確実性を効率的に学習するように調整される。以前の手法は、このように不確実性を考慮に入れることができていない。
図2に、クラスタモデル102の詳細を略した方法で示す。クラスタモデルは、複数のクラスタ201を備える。明確にするために3つのクラスタのみが示されているが、実際には数百または数千(またはそれ以上)ものクラスタが使用され得る。使用されるクラスタの数は、特定のアプリケーションおよび利用可能な処理リソースによって決まる。クラスタモデルは、クラスタごとに事前クラスタ(cluster prior)200も備える。これは、項目のうちのいずれかがそのクラスタのメンバであるという信念(belief)を表す事前確率分布である。この事前クラスタは、事前クラスタの確率分布を記述する統計データ(またはパラメータ)を使用して格納される。適した任意のタイプの確率分布を使用して事前クラスタを表し得るが、本明細書で説明される実施形態では、ディリクレ分布(Dirichlet distribution)が使用される。しかしながら、これは必須ではなく、他のタイプの分布も使用され得る。事前クラスタをこのように使用することによって、クラスタモデルは、どの項目がクラスタのメンバであるかを確率的方法で定義する理由により、クラスタを「ソフトに」表現する。クラスタモデルが初期化される時、どの項目がどのクラスタのメンバであるかについての不確実性は高いが、訓練が進むにつれてこの不確実性は軽減し得る。クラスタモデルは、事前クラスタがクラスタモデルのパラメータである理由により、この不確実性についての知識(knowledge)を獲得することができる。
クラスタモデルは、クラスタ201と特徴202との組み合わせごとに事前特徴の確率分布204も備える。例えば、図2のクラスタ1に対する事前特徴の確率分布において、特徴Aはt1Aである。事前特徴の確率分布t1Aは、クラスタ1内の項目が特徴Aを有するという信念を表す。事前特徴(feature priors)は、事前特徴の分布を記述する統計データまたはパラメータとして格納される。適した任意のタイプの確率分布を使用して事前特徴を表し得るが、本明細書で説明される実施形態ではベータ分布が使用される。ベータ分布は、パラメータαおよびβによって記述され得るし、このパラメータは、それぞれの事前特徴のモデルによって格納され得る。スパース表現(sparse representation)を提供するために、事前特徴の確率分布は、クラスタと特徴との組み合わせの多くに対してデフォルトに設定され得る。これについては以下で詳述する。
上述したように、クラスタモデルは、デフォルト値に設定されるパラメータを用いて初期状態で開始する。学習または訓練プロセスが次に起こり、大規模なデータセット上でクラスタモデルを訓練する。例えば、そのデータセットは、数十万またはそれ以上もの項目を備え得る。クラスタモデルのパラメータは確率変数として扱われる。推論は、そのパラメータの事後分布を計算することを備え、そのパラメータは、その真値についての不確実性を獲得する。これによって、不確実性が多く残るパラメータ値の解釈について注意を払うことが可能になる。それはまた、クラスタモデルが最も不確実であるパラメータ値について宣言するので、実験計画を可能にする。さらに、訓練プロセスが各データポイント(または項目)に一度だけアクセスする場合にはそれで十分である。これによって、訓練プロセスが、ウェブアプリケーションにおいて典型的な大規模なコーパスに首尾よくスケールするのを可能にする。
図3は、クラスタモデル102を訓練する方法のフロー図である。クラスタリングシステムは、符号300においてクラスタモデルを保持するデータ構造を格納する。クラスタモデルは、上述したようにパラメータを有し、そのパラメータは、その最適値についての不確実性を獲得する。パラメータは、符号301において初期化されて、クラスタリングシステムは、符号302において訓練用に使用される項目のストアから、特徴を有する項目を備える第1のデータポイントを受信する。事後確率分布を得るために、ノイズは、符号303において任意にモデルパラメータに導入されて、その観測に基づいてベイズ更新プロセスは、事前確率分布を更新するのに使用される。1つのデータポイントを処理した後に得られる事後確率分布は、事前確率分布が次のデータポイントを処理する時に渡される。これは、符号304においてデータ構造を更新し、任意には、符号305において格納された観測を削除することによって達成される。このプロセスは図3に示すように次のデータポイントに進み、各データポイントは一度だけ処理される必要がある。つまり、訓練プロセスは、各データポイントに必要であれば二度以上アクセスするのに使用され得るが、これは必須ではない。
図4は、契約キーワード401を有し、クラスタモデル内で表される2つのクラスタ403を示す広告400の略図である。クラスタごとに、事前特徴405が、この例においてキーワードである各特徴404に示される。各クラスタは、事前クラスタ(図示せず)を有する。この例において、クラスタ1に対する事前契約キーワードのベータ分布であるオフィスの平均は0.8であり、クラスタ1内の任意の広告がキーワード「オフィス」で契約する比較的強い信念を示す。この例において、ベータ確率分布の平均のみを示すが、その方法は、その平均値についての信念の不確実性を考慮に入れることができる。他のクラスタと特徴との組み合わせに対する事前契約キーワードも与えられる。
次のデータポイントが訓練項目から得られ、訓練の間にモデルを更新するのに使用されると仮定する。このことは、図4と同じように図5に示すが、別の広告500を示す。この付加的な広告500は、キーワード「オフィス」、「TVショー」および「コメディ」を有する。この例において、キーワード「コメディ」は、モデルによってこれまで観測されなかったので、このキーワードは、事前契約キーワードのデフォルト(例では0.5で示す)を用いて各クラスタに付加される。更新プロセスが次に起こる。この更新プロセスの間、クラスタごとに反応性402が計算される。クラスタの反応性(responsibility)は、そのクラスタが特定の項目(この場合、広告500)を生成する確率として考えることができる。反応性402は合計1になる。更新プロセスは、結果として事前特徴(この場合、事前契約キーワード)に変わり、これを図5の矢印502で示す。上向きの矢印は、事前特徴の確率がその矢印のサイズで表される量だけ増えたことを示す。下向きの矢印は、事前特徴の確率がその矢印のサイズで表される量だけ減ったことを示す。
事前特徴の更新の大きさは、反応性に関係し、その事前特徴についての不確実性の量にも関係する。例えば、比較的高い確実性と分かる事前特徴は、更新プロセスによって非常に不確実である事前特徴よりも変更されにくい。また、反応性が高い場合、事前特徴の変化の大きさは、低い反応性よりも大きい。単一のデータポイント(広告500)に対する更新プロセスの後、反応性値は廃棄され得るし、そのプロセスは、次のデータポイントへと移動する。
クラスタモデルは、因子グラフ(factor graph)としてデータ構造内に格納され得る。図6を参照すると、因子グラフは、符号600において作り出されて、その因子グラフのノードは、符号601においてクラスタモデルのデフォルトパラメータ値を用いてインスタンス化される。訓練の間に、第1の項目が、訓練項目セットから取り出され、符号603においてこの「観測された」項目についての情報は、因子グラフに入力される。メッセージの受け渡し(message passing)は、符号602において因子グラフ上で行われ、ベイズ推論を使用してパラメータを更新し得る。プロセスは、次に訓練セット内の次の項目に移動して、その訓練セットからの各項目が一度処理されるまでプロセスを繰り返す。
クラスタモデル内で使用するための例示的な因子グラフの一部を図8に示し、本明細書でより詳細に説明する。
クラスタリングシステムの詳細な例を今から説明するが、そのシステム内の項目は広告であり、その特徴はその広告を契約するキーワードである。しかしながら、この例は、他のタイプの項目および特徴にも適用可能であることに留意されたい。
i番目のオブジェクトが
Figure 0005442846
であるオブジェクトNのセットが、D次元の二値変数ベクトルによって記述されると見なす。実在の(concrete)アプリケーションにおいて、これらのオブジェクトは、課金制検索のオンライン広告であり、その広告が契約されるキーワードのセットによって記述される。合計Dの固有のキーワードがあり、i番目の広告が契約されたキーワードに対するベクトル
Figure 0005442846
は、1を含む:i番目の広告がd番目のキーワードで契約された場合、xid=1またはxid=0である。
広告のキーワードベクトルは、クラスタKのうちの1つまたは混合コンポーネントによって生成される。各広告
Figure 0005442846
は、それと関連付けられた変数ci∈{1,・・・,K}を有し、その変数は、広告が属するクラスタのインデックスを示す。i番目の広告がクラスタjに属する場合、ci=jである。クラスタ内では、独立ベルヌーイ確率分布に従って、広告をキーワードで契約する。i番目の広告がクラスタjに属する場合、d番目のキーワードで契約される確率は、tjd=p(xid=1|ci=j)によって与えられる。結果として、i番目の広告がクラスタjに属する確率は、クラスタ依存のベルヌーイプロファイルによって与えられる。
Figure 0005442846
広告がどのクラスタに属するかが前もって分からない場合、その不確実性は、i番目の広告(または実際の他の広告)がクラスタに属する事前確率j:πj=p(ci=j)によって獲得される。事前クラスタ{πj}およびキーワード{tjd}に契約する確率が分かっている場合、そのモデルの標本分布は、ベルヌーイプロファイルの混合によって与えられる。
Figure 0005442846
このモデルから広告を標本化することは、ベクトルパラメータ
Figure 0005442846
を用いた離散型分布からクラスタKのうちの最初の1つを引き出すことによって選択することを伴う。第2のステップにおいて、契約する広告のキーワードは、選択されるクラスタのベルヌーイプロファイルから引き出される。
ここで提示されるベルヌーイプロファイルの混合について、契約キーワードのベルヌーイ確率は、ベータ事前分布
Figure 0005442846
と共役して(conjugate)与えられる。パラメータαおよびβを、擬似カウントとして解釈することができる:αは、キーワードがスイッチオンされた回数として、βは、キーワードがスイッチオフされた回数として解釈される。契約キーワードの確率tの確率密度関数(PDF)は、以下になる。
Figure 0005442846
擬似カウントの合計が多いほど、値tについての不確実性が低くなる。
他の知られていない興味深い変数は事前クラスタ確率{πj}であり、この確率はベクトルパラメータ
Figure 0005442846
を用いたディリクレ事前分布
Figure 0005442846
が与えられる。ベータ分布と同様に、γjをクラスタjに属する広告数の擬似カウントとして解釈することができる。
図7は、ベータ分布およびディリクレ分布のパラメータを含む完全なベイズモデルに対応する有向(directed)グラフモデルを示す。平面700、平面701で囲まれたグラフ部分は、その平面のインデックスに従って複製される。例えば、外側の平面の固定値iに対して、内側の平面は、キーワードのインデックスdの各値につきD回複製される。矢印は、変数間の依存性を示す。
グラフ表現は、変数間の条件付き独立性を明らかにする利点があり、事後分布の周辺を効率的に計算するのに重要である。図8は、iのインデックスが付いた単一のデータポイントに対する、図7の一部(a slice)の有向グラフの因子グラフ表現を示す。因子グラフは、二部グラフであり、因子ノード(影付き四角形)800、802につながれた変数ノード(円形)801、803による結合確率分布を表す。因子ノードは、そのノードにつながれた変数における関数関係を表し、すべての因子の積(product)は、結合確率分布に対応する。周辺分布は、因子ノードから変数ノードへのメッセージを計算することによって得られる:所与の変数ノードの周辺分布は、そのノードの入力メッセージ(incoming messages)の積である。因子グラフの推論は、メッセージの受け渡しとして知られ、それについては、非特許文献1で詳細に記載されており、そのすべては参照によって本明細書に組み込まれる。図8の表現では、観測された変数xid,d=1,・・・,Dを因子fidに吸収(absorb)する。メッセージの受け渡しによって得られるクラスタ割り当て
Figure 0005442846
の周辺確率および契約キーワードの周辺確率tidは、事後分布が望ましい。
図8の因子グラフは、単一の広告しか表していないが、およそD×Kの変数をすでに含み、潜在的には、キーワードDの数では数百万もあり、クラスタKの数では数百もある。ほとんどのキーワードは、実際には、典型的な検索エンジンクエリと同種のキーフレーズであり、このためDを非常に大規模にすることができる。完全なグラフは、この一部をN回(訓練データの数)さらに複製し、Nの数は数千万もある。そのサイズのグラフをメモリに格納し、または必要なメッセージを計算して格納するのは実用的でない。
この推論を実用的にするためには、近似的推論の仮定密度フィルタリング(ADF)に基づいて、オンラインの学習スキーマが使用される。データポイント(広告)は、一つずつ処理されて、1つのデータポイントを処理した後に得られる
Figure 0005442846
およびtidの事後分布は、事前分布が次のデータポイントを処理する時に渡される。
このオンラインの学習シナリオにおける因子グラフがツリーである理由により、メッセージは、一度ルートノードからリーフノードに計算されて、戻されるだけでよい。i番目のデータポイントを処理するための実用的なスケジュールは、以下の通りである。
● 事前分布g(tld)および
Figure 0005442846
を、前のデータポイントを処理したことから得られるtjdおよび
Figure 0005442846
の事後周辺分布に設定する。
● キーワード因子fidからクラスタ割り当て変数ciへのメッセージ
Figure 0005442846
を計算する。
● クラスタ割り当て因子
Figure 0005442846
からクラスタ割り当て確率変数
Figure 0005442846
へのメッセージ
Figure 0005442846
を計算する。
● メッセージ
Figure 0005442846
を計算する。
● キーワード因子fidごとに送信メッセージ
Figure 0005442846
を計算する。
● 新しい周辺分布
Figure 0005442846
および
Figure 0005442846
を計算する。
ADFステップの間メッセージを格納する必要はないが、およそD×Kの周辺分布の順序でのみ格納することに留意されたい。
idからciへのメッセージは、次のように与えられる。
Figure 0005442846
ここで
Figure 0005442846
は、
Figure 0005442846
の平均であり、
Figure 0005442846
は、インジケータ関数であり、その独立変数(argument)が真であれば1に等しく、偽であれば0に等しい。ciから因子hへのメッセージは、
Figure 0005442846
であり、従って、因子hから
Figure 0005442846
へのメッセージは、以下になる。
Figure 0005442846
因子hからciへのメッセージは、ディリクレ事前分布
Figure 0005442846
に従って(スケールされた)クラスタ割り当ての平均確率を送信する。
Figure 0005442846
いくつかの実施形態において、反応性と呼ばれるパラメータは、任意に、中間ステップとして計算される。これは、クラスタインデックスの周辺分布である。この反応性を、図5を参照して上記で論じたように、所与のクラスタが特定の広告を生成するであろう確率として考えることができる。周辺分布の入力メッセージの正規化された積によって与えられる周辺分布ciは、以下になる。
Figure 0005442846
ここでは広告iが、
Figure 0005442846
および
Figure 0005442846
によって、クラスタlの反応性と呼ばれる。
Figure 0005442846
Figure 0005442846
idノードからtldノードへのメッセージ(4)が、混合ベータ分布に定数をプラスしたものと考えれば、周辺分布tldも、ベータ分布ではない。
Figure 0005442846
代わりに、現在の広告がクラスタlに属すると仮定した、tldのベータ事前分布とベータ事後分布との凸結合がある。ベータ事後分布は、クラスタlの反応性が大きいほど重み付けを大きくする。
メッセージ
Figure 0005442846
をベータ分布族(Beta family)内に保持するために、その周辺分布p(tld)は、モーメントマッチングによってベータ分布上にプロジェクトされ得る。周辺分布の第1の積率順序(order moment)は、以下になる。
Figure 0005442846
非心モーメント(non-central)の第2の積率順序は、以下になる。
Figure 0005442846
第1の積率順序、すなわち周辺分布の平均は、(項rilの反応性を考慮に入れることなく)ベータ分布の完全な更新に従った、事前平均と事後平均との凸結合であることに留意されたい。その積率に関してベータ分布パラメータの式を使用して、近似したベータ分布のパラメータは、次のように計算される。
Figure 0005442846
ここで、
Figure 0005442846
は、更新された擬似カウント(それ以前からの擬似カウントを含む)であり、観測された広告のおおまかな総数である。
Figure 0005442846
の厳密な周辺分布は、ディリクレ分布の混合であり、以下になる。
Figure 0005442846
ここで、
Figure 0005442846
は、長さKのi番目の単位ベクトルである。1クラスタ当たり1混合ディリクレであり、その値は、対応するクラスタがアクセスされる(visited)広告に対して完全に反応すると仮定した結果である。混合係数(mixing coefficients)は、クラスタがその広告に対して行った実反応性(actual responsibilities)である。近似値(approximation)は、ディレクリ分布族に残される。例えば、その平均は、保存されて、γjの合計が1つずつ増加することが確実になる。これを、対応するディレクリ分布
Figure 0005442846
のパラメータにクラスタの反応性を付加することによって達成することができる。
上記で説明したように、単一のデータポイントを一度に処理するADFを使用することによって、計算時間およびメモリ使用に関して大幅に節約することが可能になる。このオンラインの学習フレームワークにおいてさえ、クラスタリングの大規模なデータセットは計算的に要求が多い。典型的なデータセットは、数百万もの固有のキーワードを有する数百万もの広告を含むことができる。すべてのクラスタが、実現可能なすべてのキーワードごとに1つのベータ分布を含む場合、その必要メモリはおよそ数百ギガバイトになるであろう。さらに、各広告に対する反応性の計算は、数千万もの項(term)を伴うであろうし、そのため訓練に極めて時間がかかるであろう。いくつかのステップを踏み、クラスタリングシステムが適度な時間で稼動して、適度なメモリ量を使用することができることを実現し得る。
データセット内には、潜在的に数百万もの固有のキーワードがあるが、個々の広告は、非常に疎(sparse)であり、典型的には、各広告の契約に対しておよそ10個のキーワードである。同様の広告のクラスタも疎であると仮定するならば、そのクラスタに対してスパース表現を使用することによって、そのクラスタのプロパティを利用することができる。このプロパティも、他のタイプの項目および特徴を他のアプリケーションドメインに適用する。しかしながら、明確にするために、ここでの例は、広告およびキーワードを参照して論じられる。この表現において、クラスタにとって「重要な」キーワードのみが明示的なベータ分布によって表され、他のすべてのキーワードは、そのクラスタの同じ単一の「デフォルト」ベータ分布によって表される。ここでの「重要なもの」とは、1)その広告のかなりの数がクラスタ内に含まれていること、および2)そのクラスタが十分に識別できることを兼ね備えたものである。すべてのクラスタが数百万の代わりに数百の固有の分布を含む場合、そのモデルは、少量のメモリを使用するであろうし、式(3)の計算を迅速に行うことができる。いくつかのステップを踏み、そのモデルが疎の状態のままにすることを実現し得る。
図9は、モデル900を保持するデータ構造が、クラッタークラスタおよびガーベジコレクションエンジン901との通信を行うクラスタリングシステムの一部の例である。
ガーベジコレクションエンジン901を調整して、例えば、図10および図11の方法のいずれかまたは両方を実行し得る。この方法(または他の同様の方法)は、モデルから特徴(キーワードなど)を選択する期間において実行され得る。符号1000において、例えば、図10に示すように、すべてのクラスタを通じて同様の確率を有するキーワードを特定し得る。それらは、関連するベータ分布と同様の平均を有するキーワードになり得る。符号1001において、特定されたキーワードの明示的な確率分布は、デフォルト確率分布によって置き換えられ得る。
図11は、クラスタ内で実行される方法のフロー図である。符号1100において、そのクラスタ内のキーワードの確率分布は、デフォルト確率分布によって置き換えられる(このステージにおいて実際の置き換えではなく試験目的で置き換えられる)。符号1101において、結果的に反応性の変更が著しく発生する場合、符号1102において、そのキーワードの確率分布が記憶(retain)される。そうでなければ、符号1103において、そのキーワードの確率分布は、除去されてデフォルトによって置き換えられる。
いくつかの実施形態において、クラスタモデルはクラッタークラスタを備えるが、これは必須ではない。新しい概念の情報に適していないクラスタにその概念が入力されるのを避けるために、クラッタークラスタはクラスタモデルの一部として使用され得る。例えば、2つのクラスタがあり、1つは本に関するクラスタで、もう1つはDVDに関するクラスタであると仮定する。ベビーフードに関する新しい広告が観測される。上述のように、2つのクラスタのそれぞれに対してベビーフード広告の反応性値が計算される。以前に説明した通り、その反応性値の合計は1に決められているので、新しい広告は、その2つのクラスタのそれぞれに対する反応性値0.5が与えられる。クラッタークラスタが提供される場合において、そのクラッタークラスタは、ベビーフード広告に対して高い反応性値を有するであろう。クラッタークラスタは、特定グループの特徴について特化しないように調整される。このように、ベビーフード広告は、効率的に「消失する」であろう。
図12は、ガーベジコレクションの間に実行される例示的な方法のフロー図である。符号1200において、数の少ない項目を含みやすいクラスタが特定されて、他の(恐らくそれよりも大規模な)クラスタにマージされる。例えば、異なる10個の特化したクラスタの場合、クラッタークラスタは、他の10個のクラスタのうちの1つに合わない実例を明らかにする(account for)ために付加され得る。このクラッタークラスタは、特定の特徴のグループに特化しない目的で単一のベータ分布が与えられる。一例において、2つの大型のクラスタがあり、1つはオフィス用家具に関するクラスタで、もう1つはオフィススペースに関するクラスタであると考える。オフィスケータリング用の小さいクラスタも存在する。小規模のクラスタに対するガーベジコレクション処理の間、ガーベジコレクションエンジンは、小さいクラスタをオフィス用家具のクラスタにマージする決定をし得る。他の場合において、ガーベジコレクションエンジンは、小さいクラスタをクラッタークラスタにマージする決定をし得る。ルールベースのシステムは、ガーベジコレクションエンジン内に提供されて、現在の状態のクラスタモデルおよび/または特定のアプリケーションについて、数、タイプ、サイズおよび他の要因による異なる状況においてどの手法を取るべきかを決定し得る。
いくつかの実施形態において、クラスタリングシステムは、クラスタモデルを訓練するプロセスを支援するように調整された複数のプロセッサを備える。そのプロセッサは、マルチコアコンピュータにおいて提供され得るし、または分散コンピューティング環境において別個のエンティティになり得る。図13は、そのようなクラスタリングシステムにおける例示的な方法のフロー図である。図3を参照して上述したように、符号1300において、初期状態(訓練前の状態)のモデルが最初に直列的に訓練される。このステージにおいて、そのモデルは、参照し易いように「事前モデル(prior model)」と呼ばれる。その直列訓練は、利用可能な訓練データのサブセットを使用して実行される。符号1301において、残りの(まだ使用されていない)訓練データは、バッチに分割されて、符号1303において、事前モデルの複数の子コピーが形成される。訓練データは、事前モデルの子コピーの数よりもさらに多くバッチに分割される。符号1304において、各子コピーに対して訓練データの異なるバッチを使用することと並行して図3を参照して上述した訓練方法を使用して、子コピーは訓練される。符号1305において、訓練された各子コピーに対して次に、事前モデルとその訓練された子コピーとの間で差異が計算される。この差異は、子コピーの事後分布をその事前分布で除すことによって計算される。この差分は、子コピーの事前分布に、子コピーの事後分布と等しくなるように自身を更新するように伝えるメッセージである。それぞれの子コピーから得られる差異は、すべての子コピーによって学習される情報を集めるために、子コピーの事前分布に適用される。符号1306において、その差異は事後分布を得るために事前モデルに適用される。その事後分布は、事前モデルの代わりに使用される。更新された事前モデルを使用して新しい子コピーが作り出されて、まだ使用されていない訓練データのバッチを使用して訓練プロセスが繰り返される。このプロセスは全てのバッチが使用されるまで続行される。子モデルよりも多いバッチが使用されるので、子が構築する(build up)モデルは、遠くまでドリフトせず、通常の期間で解消(consolidate)される。
モデルの並列コピーが異なるモードで整定する(settle)場合、1つのコピーにおける所与のクラスタは、もう1つのコピーにおいて対応するクラスタとまったく同じ記述がされにくい。これに対処するため、最初に1つのプロセスのみで訓練がスタートし、そのクラスタモデルが少なくとも部分的に形成されるまで訓練される。これは、「分化ステップ(differentiation step)」と呼ばれ得るし、そのモデルの並列コピーが異なるモードで整定する自由を減らすが、そのモデルがマルチモデルの時にはかなり問題になる。分化ステップは、全く最初の並列ステップの前にのみ必要であり、後続の並列ステップでは必要ない。また、その並列訓練が1バッチずつ実行される理由により、ステップ1306において作り出された事後分布が事前分布として使用される各バッチの後、次の単一のクラスタの複数のコピーは、並列訓練フェーズの間は遠くまでドリフトすることができない。
いくつかの実施形態において、特定の項目と関連付ける特徴を提案するための特徴提案装置が提供される。例えば、その項目は、文書、ビデオ、イメージ、ファイルなどであってもよいし、その特徴は、それらの項目と関連付けられる(またはタグ付けされる)キーワードであってもよく、キーワード検索を使用して、後でストアからその項目を検索する助けとなる。この場合において、図1のクラスタリングシステムを、所与の項目と関連付ける特徴を生成する生成的方法に使用し得る。
一例において、項目は広告であり、特徴はその広告が契約されるキーワードである。この場合において、その目的は、広告主に、その広告の売り上げが伸びるように、すでに契約された広告に関連する複数のキーワードを提案することになり得る。図14は、図1のクラスタリングシステムを使用してこれを達成する、コンピュータ実行方法のフロー図である。この方法は、広告およびキーワードに関して論じられるが、他のタイプの項目および特徴にも適用可能である。
オンライン広告(例えば、課金制広告の検索)において、広告は、広告主が契約するキーワードに基づいて表示されることが多い。例えば、表示されると見なされる広告は、ユーザによって発行されるクエリに含まれるキーワードで契約する広告になり得る。しかしながら、たとえ広告が具体的なクエリに関連していても、クエリ内に存在するキーワードで契約されなければその広告は、表示される対象とならない。広告主にとって、これは、契約する妥当なキーワードを選択する問題を内含する。さらに、契約されるキーワードは、いわゆる入札者密度(bidder density)に強い影響をもつ。ページの最初のスロットは、ページの最後のスロットよりもずっと興味を引くので、利用可能な広告スロットの数は限られる。広告スロットは、一般化されたセカンドプライスオークション(Vickre−Clarke−Groves)を使用して競売にかけられ、広告主に課せられる金額は、即値(immediately)下位スロットによる広告主の入札および連続スロットによる広告のクリックスルー率によって決まり得る。結果として、入札者密度が高い場合、つまり、競売に参加する広告主が多くなるほど価格は、徐々に上がる。
広告収入を増やすために、カバレッジおよび入札者密度を高める必要がある。これを2つの構造によって達成することができる。広告主が契約する関連するキーワード数を増加して、トピックの識別が可能なツールを数の少ない広告主に提供する。
符号1400において、所与の広告に契約した広告主のキーワードについての情報を備える新しい広告キャンペーンが受信される。所与の広告に基づいて、符号1401において、実際に契約されるキーワードに基づいてクラスタの反応性が計算される。符号1402において、キーワード確率分布が計算されて、その反応性値によって重み付けされる。この計算された確率分布は、符号1403において、広告主に提案されるキーワードを引き出すのに使用される。そのキーワードは、符号1404において、明確なランク付け基準を用いて提案されて、符号1405において、広告主が提案されたキーワードのどれかを要求するかどうかを示すユーザ選択情報が受信される。符号1401において、そのフィードバック情報は、クラスタの反応性を再計算するのに使用され、その方法は必要に応じて繰り返される。
この方法についてさらなる詳細を今から与える。本明細書で説明されるクラスタリングシステムを、図7で示したモデルのような有向グラフに従って、生成的形式で使用することができる。キーワード提案について、具体的な広告は、部分的に観測されたデータを表す:広告主は、契約するキーワードにある考えを入力したかもしれないが、なおもある重要な考えを見逃しているかもしれない。契約されるキーワードは、従って、その広告主が意図するインジケータとして機能するが、契約されないキーワードの(巨大な)セットは、「未観測」として扱われる。
この部分的に観測されたデータを用いて、観測されないキーワード、所与の契約されたキーワードの確率を計算するために、メッセージの受け渡しが実行される。この作業は、以下の通りである。S⊂{1・・・D}をi番目の広告の契約されるすべてのキーワードのセットにする。全ての因子{fid},d∈Sは、式2の形式のメッセージをノードCiに送信する。ここで、それは、因子hからの入力メッセージと組み合わされる。式3の更新シナリオにあるように、広告に対するクラスタの反応性が計算されるが、この情報は、実際に契約されるキーワードのみに基づく。
Figure 0005442846
図8の因子fidに暗示的に付けられるデータ(キーワード)ノードの期待値は、観測されるキーワード
Figure 0005442846
を得るために計算される。
Figure 0005442846
観測されないキーワードに対するベルヌーイプロファイルと、観測されたキーワードから計算された反応性に基づく重み付けとの線形結合である。この方法を使用して、キーワードを、明確なランク付け基準(上記の確率または他の関係する控えめな確率推定)を用いてユーザに提案することができる。例えば、平均分布μが使用され得る。重み付けされたキーワード分布の合計を計算することも可能であり、その計算からキーワードを見る/提案するための平均または控えめな見積もり(平均から標準偏差を差し引くなど)のいずれかを計算する。
本明細書で説明されるクラスタリングシステムを使用し得る多数のアプリケーションドメインにおいて、データ内のノイズによって生じる問題がある。つまり、ノイズの多い項目は、その項目がいくつかの関連する特徴を有する場所で発生する可能性があり、その特徴は、所与のクラスタの主な主題的特徴(thematic features)および少なくとも1つの関連する特徴とはまったく関係のない特徴である。本明細書で説明されるクラスタリングシステムが、項目―特徴関連についての不確実性を考慮に入れるように調整される理由により、ノイズの多いデータは、代替的なクラスタリング技術を用いた場合ほど問題はない。これを、項目が広告であり、特徴がキーワードである例を参照して今から説明する。
例において、契約される最大の確率を有するキーワードを検査することによってクラスタのトピックが決定される。データのノイズが多い性質の理由により、ある関係のないキーワードが、偽って高い平均契約確率を有するのは可能である。このキーワードは、ノイズの多い広告によって契約されたかもしれないし、同時にクラスタの主な主題的キーワードのいくつかで契約されたかもしれない。契約確率についての不確実性の手段を提供することによってこの問題に対処できるようにするベイズ法が提案される。図15は、最も高い平均契約確率を有するキーワードμ−「ペストコントロール」が適合しない非常に均一なクラスタの一例を示す。しかしながら、このキーワードは、このクラスタに起因する少ない広告でアクティブに見られた。ベータ分布の擬似カウントαの総数は、このクラスタに起因し、キーワードで契約された広告の擬似有効数を表す。同一平均値μを有するが異なるα値を有する2つのキーワードを考えると、そのモデルは、最も高い値αを有するキーワードにより確定する。従って、μの代わりにαによってソートすることを不確実性の考慮に入れる。図15において効果は明白である:その擬似キーワードは下位の位置に格下げされる。
本明細書で説明されるクラスタリングシステムは、以前のクラスタリングシステムと比較して減少した訓練回数を提供し、さらに、生み出されるほとんどすべてのクラスタが、ほんのわずかしか備わっていないトピックの混合を用いて(査定人によって評価されるように)一貫性のある品質の高い計算結果を提供する。本明細書で説明されるクラスタリングシステムと、いくつかの他のクラスタリング方法:K平均法、凝集クラスタリング、および期待値最大化(EM)に基づくベルヌーイプロファイルの混合の推定による最尤法との比較が行われる。
異なる方法による訓練回数が評価されて、計算結果を出したクラスタの最も顕著なキーワードという意味においての一貫性に対する目視検査(visual inspection)が行われる。定性的に、K平均法および凝集クラスタリングは、ほとんどの広告が単一のクラスタへ折り畳むことで困難に陥る。これは、契約される広告によってもたらされるクラスタ間の、一貫性のないキーワードのセットへの擬似接続(spurious connections)によって生じる可能性がある。本明細書で説明される方法は、定性的に、K平均法および凝集クラスタよりもよい計算結果を実現し、より多くの意味のあるクラスタを特定するように管理し、このことを通じて広告をより均一に拡散する。そのためには、すべてのデータセットに何回もアクセスする必要がある理由により、EMアルゴリズムを用いたML型推論が計算的に非常に強固(intense)である。計算的に最も効率的な方法は、本明細書で説明された、わずか1時間の訓練時間による方法であり、EMアルゴリズムによって要求される40時間と比較して短い。
本明細書で説明される実施形態は、データからクラスタリングモデルを計算的に効率的に学習して、そのクラスタリングモデルを特徴の提案に使用する方法を提供する。使用されるクラスタリングモデルは、クラスタに特化した、特徴と契約する確率に対するベルヌーイから生み出された分布との混合モデルになり得る。以前のクラスタリング技術は、データからクラスタリングモデルを構築するために計算的に要求の多い技術が要求される(例えば、期待値最大化EMアルゴリズム)。
上述のように、ベイズ手法は、例えば、クラスタリングのメンバシップ確率をディリクレ事前分布に備えて、事前ベータをクラスタに特化したキーワード確率に備えることによって使用される。これによって、全ての確率についての不確実性を完全に保持することができる。
モデルをデータから学習することについて、例では、オンラインの方法でクラスタリングモデルを学習する技術である、仮定密度フィルタリング(ADF)に基づいて近似的ベイズ推論を使用する。項目が処理される時、その項目は1つずつ処理され、そのモデルパラメータは、(通常わずかな)更新を受信し、その後項目に再度アクセスする必要はない。この方法において、クラスタリングモデルを完全に学習するには、各項目に一度だけアクセスする必要がある。これによって、過去に提案されたモデルを学習するためのインタラクティブな手法と比較して著しい高速化が可能になる。新しい項目が利用可能になる時、従来のほとんどの方法は、項目全体の拡張したコーパスから再度学習する必要があるのに対して、提案された方法は、クラスタリングシステムを徐々に更新することを可能にする。さらに、メッセージの受け渡しを用いた因子グラフおよび近似的ベイズ推論に関するモデルの表現によって、クラスタモデルの学習を並列処理することが可能になる。モデルから観測された特徴をほとんど除去しない「ガーベジコレクション」ストラテジーによってスピードがさらに向上する。
図16は、例示的なコンピューティングベースのデバイス1600のさまざまなコンポーネントを示し、それらのコンポーネントは、コンピューティングおよび/または電子デバイスの任意の形態として実装され得るし、クラスタリングシステムの実施形態が実装され得る。
コンピューティングベースのデバイス1600は、1または複数の入力デバイス1606を備え、それらは、メディアコンテンツ、インターネットプロトコル(IP)入力、クラスタ化される項目、クラスタ化される項目についての特徴情報、ユーザ入力または他のタイプの入力を受信するための適した任意の入力デバイスである。それらのデバイスは、ネットワーク上で適した任意のタイプの他のエンティティとの通信を行うための通信インタフェース1607も備える。例えば、このような他のエンティティは、他のクラスタリングシステムになり得る。
コンピューティングベースのデバイス1600は、1または複数のプロセッサ1601も備え、それらは、項目をクラスタ化するためにそのデバイスの動作を制御するコンピューティング実行可能命令を処理するためのマイクロプロセッサ、コントローラまたは適したその他のタイプのプロセッサを含み得る。オペレーティングシステム1604または適した他のプラットフォームソフトウェアを備えるプラットフォームソフトウェアは、コンピューティングベースのデバイスにおいて提供されて、アプリケーションソフトウェア1603がそのデバイス上で実行できるようにし得る。
コンピュータ実行可能命令は、メモリ1602などの任意のコンピュータ可読媒体を使用して提供され得る。メモリは、ランダムアクセスメモリ(RAM)、磁気または光ストレージデバイス、ハードディスクドライブ、またはCD、DVDまたは他のディスクドライブなどの任意のタイプのディスクストレージデバイスなどの適した任意のタイプのメモリである。フラッシュメモリ、EPROMまたはEEPROMも使用され得る。
オーディオおよび/またはビデオ出力デバイスなどの出力デバイスも、コンピューティングベースのデバイスと統合する、または通信を行うディスプレイシステムに提供される。ディスプレイシステムは、グラフィカルユーザインタフェース、または適した任意のタイプの他のユーザインタフェースを提供し得るが、これは必須ではない。ディスプレイインタフェース1605は、ディスプレイシステムを制御するために提供され得る。
用語「コンピュータ」は、本明細書では、命令を実行することができるような処理能力を有する任意のデバイスを指すために使用される。そのような処理能力は、多くの異なるデバイスに組み込まれるので、用語「コンピュータ」は、PC、サーバ、携帯電話、PDAおよび多くの他のデバイスを含むことを当業者は気付くであろう。
本明細書で説明される方法は、明示的なストレージ媒体上の機械可読形態内のソフトウェアによって行われる。そのソフトウェアは、その方法ステップが適した任意の順序または実質的に同時に実行され得るように、並列プロセッサまたは直列プロセッサ上で実行するのに適することができる。
このことは、ソフトウェアは、価値のある個別的な貿易財にすることができることを認識させる。「ダム(dumb)」または標準ハードウェアを稼動または制御して望ましい機能を実行するソフトウェアを網羅することを意図する。シリコンチップを設計するまたはユニバーサルプログラマブルチップを構成するために使用されるようなHDL(ハードウェア記述言語)ソフトウェアなどの、ハードウェアの構成を「記述する」または定義して望ましい機能を実行するソフトウェアを網羅することも意図する。
プログラム命令を格納するのに利用されるストレージデバイスをネットワークを通じて分散することができることを当業者は気付くであろう。例えば、リモートコンピュータは、ソフトウェアとして説明された例示的なプロセスを格納し得る。ローカルまたはターミナルコンピュータは、リモートコンピュータにアクセスして、ソフトウェアの一部またはすべてをダウンロードしてプログラムを稼動し得る。代替的には、ローカルコンピュータは、必要であればソフトウェアのいくつかをダウンロードし、またはローカルターミナルにおいていくつかのソフトウェア命令およびリモートコンピュータ(またはコンピュータネットワーク)においていくつかのソフトウェアを実行し得る。当業者には周知である従来型技術を利用することによって、ソフトウェア命令のすべてまたは一部が、DSP、プログラマブル論理アレイなどの専用回路によって実行され得るということも当業者は気付くであろう。
当業者には明らかであるように、本明細書で与えられる任意の範囲またはデバイスの価値は、その効果への探求(effect sought)を損なうことなく拡張または変更され得る。
上述した利益および利点は、一実施形態に関係し得るし、またはいくつかの実施形態に関係し得ることが理解されよう。その実施形態は、述べられた問題の一部またはすべてを解決する実施形態または述べられた利益または利点の一部またはすべてを有する実施形態に限定されない。「1つの(an)」項目への参照は、その項目の1または複数を指すことがさらに理解されよう。
本明細書で説明される方法のステップは、適切な場合には、適する任意の順序または同時に実行され得る。さらに、個々のブロックは、本明細書に説明される発明の主題の精神または範囲から逸脱することなくいずれの方法からも削除され得る。上述した例のいずれかの態様を、上述した他の例のいずれかの態様と組み合わせて、その効果への探求を損なうことなくさらに例を形成し得る。
用語「備える」は、特定された方法ブロックまたは要素を含むことを意味するために本明細書で使用されるが、そのようなブロックまたは要素は排他的リスト(exclusive list)を備えず、方法または装置は、付加的なブロックまたは要素を含み得る。
好適な実施形態の上記の説明は、例示する目的のみに与えられ、当業者によってさまざまな修正が行われ得ることが理解されよう。上記の仕様、例およびデータは、本発明の例示的な実施形態の構造および使用の完全な説明を与える。本発明のさまざまな実施形態は、ある程度の特殊性を用いて、または1または複数の個々の実施形態を参照して説明されているが、当業者は、本発明の精神または範囲から逸脱することなく開示された実施形態に対して多くの変更を行ってもよい。

Claims (19)

  1. 項目をクラスタリングするコンピュータ実行方法であって、各項目は、少なくとも1つの関連する特徴を有し、前記方法は、
    データ構造をメモリに格納するステップであって、前記データ構造は、複数のクラスタと、各項目に対し1または複数の関連する特徴と、各クラスタに対し、前記項目のうちのいずれかがそのクラスタのメンバであるかどうかについての信念を表す事前確率分布に関係する少なくとも1つのクラスタメンバシップパラメータと、クラスタと特徴との組み合わせのそれぞれに対し、そのクラスタ内の項目のうちのいずれかがその特徴と関連付けられているかどうかについての信念を表す事前確率分布に関係する少なくとも1つの特徴パラメータとを保持する、ステップと、
    観測された関連する特徴を有する観測された項目を備える入力を受信して格納するステップと、
    受信された入力に基づいておよびベイズ更新プロセスを使用して、前記データ構造内の前記パラメータを更新するステップと、
    全てのクラスタを通じて類似の特徴パラメータを有する特徴を識別し、および前記特徴パラメータに対して同じデフォルト値を使用するステップと、
    複数のそのような入力に対する前記受信するステップおよび前記更新するステップを繰り返すステップと、
    を備えることを特徴とする方法。
  2. 前記データ構造内の前記パラメータを更新するステップに続いて、前記格納された入力を削除するステップと、この削除するステップを、前記受信するステップおよび前記更新するステップと共に繰り返すステップと
    をさらに備えることを特徴とする請求項1に記載の方法。
  3. 前記データ構造は、前記データ構造がベルヌーイ分布の産物であるベルヌーイプロファイルの混合に基づいたクラスタモデルを保持するように格納されることを特徴とする請求項1に記載の方法。
  4. 前記データ構造は、前記データ構造が因子グラフを使用してクラスタモデルを保持するように格納されることを特徴とする請求項1に記載の方法。
  5. 前記データ構造は、前記データ構造がツリー構造としての前記因子グラフを保持するように格納されることを特徴とする請求項4に記載の方法。
  6. 前記データ構造は、各クラスタのメンバシップパラメータがディリクレ分布に関係するように格納されることを特徴とする請求項1に記載の方法。
  7. 前記データ構造は、各特徴パラメータがベータ分布に関係するように格納されることを特徴とする請求項1に記載の方法。
  8. 前記更新するステップは、仮定密度フィルタリングを使用することを備えることを特徴とする請求項1に記載の方法。
  9. 前記特徴パラメータのサブセットを選択するステップと、前記特徴パラメータを同じデフォルト値にセットするステップとをさらに備えることを特徴とする請求項1に記載の方法。
  10. クラスタ内で、デフォルト値を用いて特徴パラメータを置き換えるかどうかをチェックすることは、クラスタリング方法の結果を著しく変更し、および著しい変更がなければ、その特徴パラメータに対して前記デフォルト値を使用することをさらに備えることを特徴とする請求項1に記載の方法。
  11. 指定された閾値以下の項目の数を有するクラスタを識別するステップと、前記識別されたクラスタを単一のクラスタに吸収するステップとをさらに備えることを特徴とする請求項1に記載の方法。
  12. 訓練データを使用して前記データ構造を直列的に訓練すること、前記データ構造の複数の子コピーを生成して格納すること、さらなる訓練データのセットにアクセスしてその訓練データを複数のバッチに形成すること、各子コピーに対して異なるバッチを使用して前記データ構造の前記子コピーを並列に訓練すること、前記訓練された子コピーを使用して前記データ構造を更新すること、前記更新されたデータ構造を使用して新しい子コピーを生成すること、以前に使用されていないバッチを使用して前記新しい子コピーを訓練し、前記データ構造を更新すること、およびこのプロセスを繰り返すことをさらに備えることを特徴とする請求項1に記載の方法。
  13. 前記項目は広告であり、前記特徴は、前記広告が契約されたキーワードであることを特徴とする請求項11に記載の方法。
  14. 複数の関連するキーワードを有する広告を受信するステップと、前記データ構造を使用して前記広告への契約についての追加のキーワードを生成するステップとをさらに備えることを特徴とする請求項13に記載の方法。
  15. 複数の契約キーワードを有する広告に基づいて、広告主に提案する追加のキーワードを識別するコンピュータ実行方法であって、
    前記方法は、
    複数の契約キーワードを有する広告を受信するステップと、
    契約キーワードを有する複数の広告を備えるデータセット上で訓練される確率的クラスタモデルを保持するデータ構造と、前記データセット内でモデルの不確実性を構成される前記クラスタモデルとを備えるクラスタリングシステムにアクセスするステップと、
    前記クラスタリングシステムを使用して、受信された広告に基づいてキーワードおよび関連する確率を生成するステップと、
    全てのクラスタを通じて類似の特徴パラメータを有する特徴を識別し、および前記特徴パラメータに対して同じデフォルト値を使用するステップと、
    前記生成されたキーワードを前記広告主への提案として出力するステップと
    を備えることを特徴とする方法。
  16. 出力は、関連する確率の推定値を使用してランク付されて生成されたキーワードの少なくともいくつかのリストを備えることを特徴とする請求項15に記載の方法。
  17. 前記生成されたキーワードの少なくともいくつかについてのユーザフィードバックを受信するステップと、キーワード生成プロセスを修正するために前記ユーザフィードバックを使用するステップとをさらに備えることを特徴とする請求項15に記載の方法。
  18. クラスタリングシステムであって、
    特徴と関連する複数の文書を備えるデータセット上で訓練される確率的クラスタモデルおよび前記データセット内で不確実性をモデル化するように構成される前記クラスタモデルを保持するデータ構造を格納するメモリと、
    前記文書の特徴を備える情報をクラスタリングするための文書についての情報を受信するように構成される入力と、
    全てのクラスタを通じて類似の特徴パラメータを有する特徴を識別し、および前記特徴パラメータに対して同じデフォルト値を使用するように構成されるプロセッサと、
    前記文書のクラスタについての情報を提供するように構成される出力と
    を備えることを特徴とするクラスタリングシステム。
  19. 特定の特徴を有する文書についての情報を受信するように構成される入力をさらに備え、前記プロセッサは、前記データ構造を使用して前記文書に関連する少なくとも1つの追加の特徴を生成するように構成されることを特徴とする請求項18に記載のクラスタリングシステム。
JP2012504721A 2009-04-10 2010-04-01 スケーラブルなクラスタリング Active JP5442846B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/421,853 US8204838B2 (en) 2009-04-10 2009-04-10 Scalable clustering
US12/421,853 2009-04-10
PCT/US2010/029715 WO2010117889A2 (en) 2009-04-10 2010-04-01 Scalable clustering

Publications (3)

Publication Number Publication Date
JP2012523621A JP2012523621A (ja) 2012-10-04
JP2012523621A5 JP2012523621A5 (ja) 2013-05-09
JP5442846B2 true JP5442846B2 (ja) 2014-03-12

Family

ID=42935152

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012504721A Active JP5442846B2 (ja) 2009-04-10 2010-04-01 スケーラブルなクラスタリング

Country Status (7)

Country Link
US (1) US8204838B2 (ja)
EP (1) EP2417538A4 (ja)
JP (1) JP5442846B2 (ja)
KR (1) KR101644667B1 (ja)
CN (1) CN102388382B (ja)
CA (1) CA2757703C (ja)
WO (1) WO2010117889A2 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9065727B1 (en) 2012-08-31 2015-06-23 Google Inc. Device identifier similarity models derived from online event signals
US8458154B2 (en) 2009-08-14 2013-06-04 Buzzmetrics, Ltd. Methods and apparatus to classify text communications
US8990105B1 (en) * 2010-01-07 2015-03-24 Magnetic Media Online, Inc. Systems, methods, and media for targeting advertisements based on user search information
WO2012064893A2 (en) * 2010-11-10 2012-05-18 Google Inc. Automated product attribute selection
US8473437B2 (en) * 2010-12-17 2013-06-25 Microsoft Corporation Information propagation probability for a social network
US9104765B2 (en) * 2011-06-17 2015-08-11 Robert Osann, Jr. Automatic webpage characterization and search results annotation
JP5153925B2 (ja) * 2011-07-12 2013-02-27 ヤフー株式会社 入札対象推薦装置、システム及び方法
WO2013059904A1 (en) 2011-10-28 2013-05-02 Research In Motion Limited Factor-graph based matching systems and methods
EP2771806A4 (en) * 2011-10-28 2015-07-22 Blackberry Ltd MANAGEMENT OF ELECTRONIC EQUIPMENT WITH PROFILE-BASED INFERENCES BETWEEN DOMAINS
US8914262B2 (en) 2011-11-08 2014-12-16 The Mathworks, Inc. Visualization of data dependency in graphical models
US20130116988A1 (en) 2011-11-08 2013-05-09 Fu Zhang Automatic solver selection
US20130116989A1 (en) 2011-11-08 2013-05-09 Fu Zhang Parameter tuning
US9354846B2 (en) 2011-11-08 2016-05-31 The Mathworks, Inc. Bidomain simulator
US9377998B2 (en) 2011-11-08 2016-06-28 The Mathworks, Inc. Code generation for control design
US8935137B1 (en) * 2011-11-08 2015-01-13 The Mathworks, Inc. Graphic theoretic linearization of sensitivity analysis
US20130159254A1 (en) * 2011-12-14 2013-06-20 Yahoo! Inc. System and methods for providing content via the internet
JP5425941B2 (ja) * 2012-02-07 2014-02-26 ヤフー株式会社 広告評価装置、広告評価方法およびプログラム
JP5485311B2 (ja) * 2012-02-07 2014-05-07 ヤフー株式会社 広告評価装置、広告評価方法およびプログラム
US8880438B1 (en) 2012-02-15 2014-11-04 Google Inc. Determining content relevance
US9053185B1 (en) 2012-04-30 2015-06-09 Google Inc. Generating a representative model for a plurality of models identified by similar feature data
US20150242906A1 (en) * 2012-05-02 2015-08-27 Google Inc. Generating a set of recommended network user identifiers from a first set of network user identifiers and advertiser bid data
US8914500B1 (en) 2012-05-21 2014-12-16 Google Inc. Creating a classifier model to determine whether a network user should be added to a list
US20160038673A1 (en) 2013-03-15 2016-02-11 Animas Corporation Insulin time-action model
US10319035B2 (en) 2013-10-11 2019-06-11 Ccc Information Services Image capturing and automatic labeling system
US9697475B1 (en) 2013-12-12 2017-07-04 Google Inc. Additive context model for entity resolution
US10963810B2 (en) 2014-06-30 2021-03-30 Amazon Technologies, Inc. Efficient duplicate detection for machine learning data sets
US11100420B2 (en) 2014-06-30 2021-08-24 Amazon Technologies, Inc. Input processing for machine learning
US10318882B2 (en) 2014-09-11 2019-06-11 Amazon Technologies, Inc. Optimized training of linear machine learning models
US9672474B2 (en) * 2014-06-30 2017-06-06 Amazon Technologies, Inc. Concurrent binning of machine learning data
US10169715B2 (en) * 2014-06-30 2019-01-01 Amazon Technologies, Inc. Feature processing tradeoff management
US10339465B2 (en) 2014-06-30 2019-07-02 Amazon Technologies, Inc. Optimized decision tree based models
US9886670B2 (en) 2014-06-30 2018-02-06 Amazon Technologies, Inc. Feature processing recipes for machine learning
US10102480B2 (en) 2014-06-30 2018-10-16 Amazon Technologies, Inc. Machine learning service
US10540606B2 (en) 2014-06-30 2020-01-21 Amazon Technologies, Inc. Consistent filtering of machine learning data
US10452992B2 (en) 2014-06-30 2019-10-22 Amazon Technologies, Inc. Interactive interfaces for machine learning model evaluations
US9984159B1 (en) 2014-08-12 2018-05-29 Google Llc Providing information about content distribution
US11182691B1 (en) 2014-08-14 2021-11-23 Amazon Technologies, Inc. Category-based sampling of machine learning data
US20160055495A1 (en) * 2014-08-22 2016-02-25 Wal-Mart Stores, Inc. Systems and methods for estimating demand
US9971683B1 (en) * 2014-10-20 2018-05-15 Sprint Communications Company L.P. Automatic computer memory management coordination across a group of servers
US10846589B2 (en) * 2015-03-12 2020-11-24 William Marsh Rice University Automated compilation of probabilistic task description into executable neural network specification
US10257275B1 (en) 2015-10-26 2019-04-09 Amazon Technologies, Inc. Tuning software execution environments using Bayesian models
WO2018093935A1 (en) * 2016-11-15 2018-05-24 Google Llc Training neural networks using a clustering loss
KR102005420B1 (ko) * 2018-01-11 2019-07-30 국방과학연구소 전자메일 저자 분류 방법 및 장치
US10929110B2 (en) 2019-06-15 2021-02-23 International Business Machines Corporation AI-assisted UX design evaluation
CN113836373B (zh) * 2021-01-20 2022-12-13 国义招标股份有限公司 一种基于密度聚类的投标信息处理方法、设备及存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6807537B1 (en) 1997-12-04 2004-10-19 Microsoft Corporation Mixtures of Bayesian networks
US6581058B1 (en) 1998-05-22 2003-06-17 Microsoft Corporation Scalable system for clustering of large databases having mixed data attributes
US6564197B2 (en) 1999-05-03 2003-05-13 E.Piphany, Inc. Method and apparatus for scalable probabilistic clustering using decision trees
GB9922221D0 (en) * 1999-09-20 1999-11-17 Ncr Int Inc Classsifying data in a database
IL132663A (en) * 1999-10-31 2004-06-01 Insyt Ltd Protocol system for knowledge engineering
JP3615451B2 (ja) * 2000-03-16 2005-02-02 日本電信電話株式会社 文書分類方法、およびその分類方法を記述したプログラムを記録している記録媒体
US7047169B2 (en) * 2001-01-18 2006-05-16 The Board Of Trustees Of The University Of Illinois Method for optimizing a solution set
US6952700B2 (en) * 2001-03-22 2005-10-04 International Business Machines Corporation Feature weighting in κ-means clustering
US7246125B2 (en) * 2001-06-21 2007-07-17 Microsoft Corporation Clustering of databases having mixed data attributes
US20020169730A1 (en) 2001-08-29 2002-11-14 Emmanuel Lazaridis Methods for classifying objects and identifying latent classes
US7231393B1 (en) 2003-09-30 2007-06-12 Google, Inc. Method and apparatus for learning a probabilistic generative model for text
WO2004038656A2 (en) * 2002-10-24 2004-05-06 Duke University Binary prediction tree modeling with many predictors
US7480640B1 (en) * 2003-12-16 2009-01-20 Quantum Leap Research, Inc. Automated method and system for generating models from data
US8117203B2 (en) 2005-07-15 2012-02-14 Fetch Technologies, Inc. Method and system for automatically extracting data from web sites
US7739314B2 (en) 2005-08-15 2010-06-15 Google Inc. Scalable user clustering based on set similarity
US8341158B2 (en) 2005-11-21 2012-12-25 Sony Corporation User's preference prediction from collective rating data
US7647289B2 (en) 2006-06-02 2010-01-12 Microsoft Corporation Learning belief distributions for game moves
US7788264B2 (en) * 2006-11-29 2010-08-31 Nec Laboratories America, Inc. Systems and methods for classifying content using matrix factorization
CN100578500C (zh) * 2006-12-20 2010-01-06 腾讯科技(深圳)有限公司 一种网页分类方法及装置
US20100034102A1 (en) * 2008-08-05 2010-02-11 At&T Intellectual Property I, Lp Measurement-Based Validation of a Simple Model for Panoramic Profiling of Subnet-Level Network Data Traffic

Also Published As

Publication number Publication date
KR20110138229A (ko) 2011-12-26
EP2417538A4 (en) 2016-08-31
JP2012523621A (ja) 2012-10-04
US8204838B2 (en) 2012-06-19
WO2010117889A3 (en) 2011-01-20
CA2757703A1 (en) 2010-10-14
WO2010117889A2 (en) 2010-10-14
CN102388382B (zh) 2015-11-25
EP2417538A2 (en) 2012-02-15
US20100262568A1 (en) 2010-10-14
CN102388382A (zh) 2012-03-21
CA2757703C (en) 2017-01-17
KR101644667B1 (ko) 2016-08-01

Similar Documents

Publication Publication Date Title
JP5442846B2 (ja) スケーラブルなクラスタリング
US8589317B2 (en) Human-assisted training of automated classifiers
US8498950B2 (en) System for training classifiers in multiple categories through active learning
EP3143523B1 (en) Visual interactive search
Gartrell et al. Bayesian low-rank determinantal point processes
US9087332B2 (en) Adaptive targeting for finding look-alike users
Agarwal et al. Statistical methods for recommender systems
JP5921536B2 (ja) コンピュータ化エージェントのシステムとユーザ指図セマンティックネットワーキング
US8719192B2 (en) Transfer of learning for query classification
US8265778B2 (en) Event prediction using hierarchical event features
EP2860672A2 (en) Scalable cross domain recommendation system
US20070214140A1 (en) Assigning into one set of categories information that has been assigned to other sets of categories
CN112989213B (zh) 内容推荐方法、装置、系统、电子设备及存储介质
Loni et al. Top-N recommendation with multi-channel positive feedback using factorization machines
Kang et al. Task recommendation in crowdsourcing based on learning preferences and reliabilities
Du et al. Privileged matrix factorization for collaborative filtering
Borrajo et al. TCBR-HMM: An HMM-based text classifier with a CBR system
US11392751B1 (en) Artificial intelligence system for optimizing informational content presentation
Girase et al. Role of matrix factorization model in collaborative filtering algorithm: a survey
Boutemedjet et al. Long-term relevance feedback and feature selection for adaptive content based image suggestion
Shanahan et al. Digital advertising: An information scientist’s perspective
Ishikawa et al. Dynamic collaborative filtering Thompson Sampling for cross-domain advertisements recommendation
US20240135413A1 (en) Processing of Queries using a Consolidated Matching Architecture
Liu et al. A Joint Dynamic Ranking System with DNN and Vector-based Clustering Bandit
CN117112906A (zh) 一种基于人工智能的信息推送方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130319

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130319

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20130712

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20130719

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20131101

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131218

R150 Certificate of patent or registration of utility model

Ref document number: 5442846

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250