JP6758406B2 - ワイドアンドディープマシンラーニングモデル - Google Patents

ワイドアンドディープマシンラーニングモデル Download PDF

Info

Publication number
JP6758406B2
JP6758406B2 JP2018553922A JP2018553922A JP6758406B2 JP 6758406 B2 JP6758406 B2 JP 6758406B2 JP 2018553922 A JP2018553922 A JP 2018553922A JP 2018553922 A JP2018553922 A JP 2018553922A JP 6758406 B2 JP6758406 B2 JP 6758406B2
Authority
JP
Japan
Prior art keywords
machine learning
learning model
model
deep
wide
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
JP2018553922A
Other languages
English (en)
Other versions
JP2019517057A (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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of JP2019517057A publication Critical patent/JP2019517057A/ja
Application granted granted Critical
Publication of JP6758406B2 publication Critical patent/JP6758406B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/084Backpropagation, e.g. using gradient descent
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/047Probabilistic or stochastic networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Probability & Statistics with Applications (AREA)
  • Image Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Machine Translation (AREA)

Description

関連出願の相互参照
本出願は、2016年4月13日に出願した米国仮出願第62/322,161号の優先権を主張するものである。先行出願の開示は、本出願の開示の一部とみなされ、参照により本出願の開示に組み込まれる。
本明細書は、マシンラーニングモデルを使用して入力を処理することに関する。
マシンラーニングモデルは、入力を受け取り、受け取った入力に基づいて、出力、たとえば予測出力を生成する。いくつかのマシンラーニングモデルは、パラメトリックモデルであり、受け取った入力とモデルのパラメータの値とに基づいて出力を生成する。
いくつかのマシンラーニングモデルは、受け取った入力に対する出力を生成するためにモデルの複数の層を用いるディープモデルである。たとえば、ディープニューラルネットワークは、出力層と、それぞれが出力を生成するために受け取った入力に非線形変換を適用する1つまたは複数の隠れ層とを含む。
本明細書は、ワイドアンドディープ(wide and deep)マシンラーニングモデル、すなわちワイドマシンラーニングモデルとディープマシンラーニングモデルとの両方を含む組合せマシンラーニングモデルを実装するためのシステムおよび方法を説明する。
一般に、本明細書で説明される主題の1つの革新的な態様は、1つまたは複数のコンピュータと、命令を記憶する1つまたは複数の記憶デバイスとを含むシステムにおいて具体化することができ、命令は、1つまたは複数のコンピュータによって実行されると、1つまたは複数のコンピュータに、マシンラーニング入力を処理するための組合せマシンラーニングモデルを実装させ、マシンラーニング入力は、マシンラーニング入力に対して予測出力を生成するために複数の特徴を含む。組合せマシンラーニングモデルは、ディープモデル中間予測出力を生成するために特徴を処理するように構成されるディープマシンラーニングモデルと、ワイドモデル中間予測出力を生成するために特徴を処理するように構成されるワイドマシンラーニングモデルと、予測出力を生成するために、ディープマシンラーニングモデルによって生成されたディープモデル中間予測出力とワイドマシンラーニングモデルによって生成されたワイドモデル中間予測出力とを処理するように構成される組合せ層とを含むことができ、ディープマシンラーニングモデルおよびワイドマシンラーニングモデルは、ディープモデル中間予測出力とワイドモデル中間予測出力とを生成するために、トレーニングデータに対して共同でトレーニングされている。
上記および他の実施形態は、それぞれ以下の特徴のうちの1つまたは複数を単独でまたは組み合わせてオプションで含むことができる。特徴は、コンテンツ提示設定の特徴とすることができ、予測出力は、コンテンツ提示設定に関する予測出力である。コンテンツ提示設定の特徴は、コンテンツ提示設定において提示されるべきコンテンツアイテムの特徴を含むことができ、コンテンツ提示設定に関する予測出力は、コンテンツアイテムがコンテンツ提示設定において提示された場合に特定の目的が満足される尤度を表す。組合せ層は、コンテンツアイテムがコンテンツ提示設定において提示された場合に特定の目的が満足される尤度を表すスコアを生成するために、ディープマシンラーニングモデルによって生成されたディープモデル中間予測出力とワイドマシンラーニングモデルによって生成されたワイドモデル中間予測出力とを処理するように構成されるロジスティック回帰層とすることができる。コンテンツ提示設定に関する予測出力は、コンテンツアイテムの所定のセット内の各コンテンツアイテムに関するそれぞれのスコアとすることができ、それぞれのスコアは、対応するコンテンツアイテムがコンテンツ提示設定において提示された場合に特定の目的が満足されるそれぞれの尤度を表す。組合せ層は、コンテンツアイテムの所定のセット内の各コンテンツアイテムに関するそれぞれのスコアを生成するために、ディープマシンラーニングモデルによって生成されたディープモデル中間予測出力とワイドマシンラーニングモデルによって生成されたワイドモデル中間予測出力とを処理するように構成されるソフトマックス層とすることができる。特徴は、コンテンツアイテムがコンテンツ提示設定において提示されるべきユーザを特徴付けるユーザ特徴を含むことができる。特徴は、コンテンツ提示設定のコンテキストを特徴付けるコンテキスト情報を含むことができる。ディープモデルは、ディープニューラルネットワークを含むことができる。ディープモデルは、特徴の各々を特徴のそれぞれの数値埋め込みにマッピングするように構成される埋め込み層を含んでもよい。ワイドモデルは、一般化線形モデルとすることができる。ワイドモデルは、ワイドモデル中間出力を生成するために、特徴と、特徴から生成された変換された特徴とを処理するように構成されてもよい。ワイドモデル中間出力およびディープモデル中間出力は、対数オッズ出力とすることができる。
一般に、本明細書で説明される主題の別の革新的な態様は、命令を記憶する1つまたは複数のコンピュータ記憶媒体において具体化することができ、命令は、1つまたは複数のコンピュータによって実行されると、1つまたは複数のコンピュータに上記で説明した組合せマシンラーニングモデルを実装させる。
本明細書で説明される主題の別の革新的な態様は、上記で説明した組合せマシンラーニングモデルをトレーニングする方法において具体化することができる。本方法は、複数のトレーニング入力の各々について、(i)トレーニング入力の特徴と、(ii)トレーニング入力に対する既知の出力とを含むトレーニングデータを取得するアクションと、トレーニング入力の各々について、ディープマシンラーニングモデルのパラメータの現在の値に従ってトレーニング入力に対するディープモデル中間予測出力を生成するためにディープマシンラーニングモデルを使用してトレーニング入力の特徴を処理するアクションと、ワイドマシンラーニングモデルのパラメータの現在の値に従ってトレーニング入力に対するワイドモデル中間予測出力を生成するためにワイドマシンラーニングモデルを使用してトレーニング入力の特徴を処理するアクションと、トレーニング入力に対する予測出力を生成するために組合せ層を使用してトレーニング入力に対するディープモデル中間予測出力とワイドモデル中間予測出力とを処理するアクションと、ディープマシンラーニングモデルおよびワイドマシンラーニングモデルのパラメータの現在の値を共同して調整するために、組合せ層を介してトレーニング入力に対する予測出力とトレーニング入力に対する既知の出力との間の誤差から決定される勾配をワイドマシンラーニングモデルおよびディープマシンラーニングモデルに逆伝播させるアクションとを含むことができる。
上記および他の実施形態は、それぞれ以下の特徴のうちの1つまたは複数を単独でまたは組み合わせてオプションで含むことができる。本方法は、ミニバッチ確率的最適化を使用してディープマシンラーニングモデルおよびワイドマシンラーニングモデルのパラメータの現在の値を調整するアクションを含むことができる。本方法は、L1正則化を伴う正則化リーダに従う(FTRL(follow-the-regularized-leader))アルゴリズムを使用してワイドマシンラーニングモデルのパラメータの現在の値を調整するアクションを含むことができる。本方法は、適応学習率を用いる確率的勾配最適化を使用してディープマシンラーニングモデルのパラメータの現在の値を調整するアクションを含むことができる。
本明細書で説明される主題の別の革新的な態様は、命令を記憶する1つまたは複数のコンピュータ記憶媒体において具体化することができ、命令は、1つまたは複数のコンピュータによって実行されると1つまたは複数のコンピュータに上記で説明した方法の動作を実行させる。
本明細書で説明される主題の別の革新的な態様は、1つまたは複数のコンピュータと、命令を記憶する1つまたは複数の記憶デバイスとにおいて具体化することができ、命令は、1つまたは複数のコンピュータによって実行されると1つまたは複数のコンピュータに上記で説明した方法の動作を実行させる。
本明細書で説明される主題の特定の実施形態は、以下の利点のうちの1つまたは複数を実現するように実装することができる。一般に、ワイドマシンラーニングモデルは、クロス積特徴変換(cross-product feature transformation)のワイドセットを介して特徴相互作用を記憶することができ、ディープマシンラーニングモデルは、入力特徴に埋込み関数を適用することによって、見えない特徴の組み合わせを一般化することができる。ディープマシンラーニングモデルとワイドマシンラーニングモデルの両方を含むことによって、ワイドアンドディープマシンラーニングモデルは、記憶と一般化の両方の利点を取得することができ、したがって、入力特徴のセットからの出力を予測する上でよりよく機能することができる。
本明細書の主題の1つまたは複数の実施形態の詳細は、添付図面および以下の説明において記載される。主題の他の特徴、態様、および利点は、説明、図面、および特許請求の範囲から明らかになるであろう。
ワイドアンドディープマシンラーニングモデルの例のブロック図である。 ワイドアンドディープラーニングモデルを使用して予測入力を生成するための例示的なプロセスのフロー図である。 ワイドアンドディープラーニングモデルを含むマシンラーニングシステムをトレーニングするための例示的なプロセスのフロー図である。
様々な図面における同様の参照番号および名称は、同様の要素を示す。
図1は、ディープマシンラーニングモデル104と、ワイドマシンラーニングモデル106と、組合せ層134とを含むワイドアンドディープマシンラーニングモデル102の例のブロック図である。ワイドアンドディープマシンラーニングモデル102は、複数の特徴、たとえば特徴108〜122を含むモデル入力を受け取り、モデル入力に対する予測出力、たとえば予測出力136を生成するために特徴を処理する。
例として、モデル入力は、単語のシーケンスとすることができ、特徴108〜122は、シーケンス内の単語を表すトークンと、シーケンス内の単語を特徴付ける他の特徴とを含むことができる。この例では、予測出力136は、たとえば特定の単語がシーケンス内の次の単語である尤度、またはシーケンス内の特定の単語に関する品詞もしくは語彙に関する予測であってもよい。
別の例では、特徴108〜122は、コンテンツ提示設定の特徴を含むことができ、予測出力136は、コンテンツ提示設定に関する予測出力とすることができる。
場合によっては、特徴108〜122は、コンテンツアイテムの特徴を含むことができ、コンテンツ提示設定に関する予測出力136は、コンテンツアイテムがコンテンツ提示設定において提示された場合に特定の目的が満足される尤度を表すスコアであってもよい。
場合によっては、特徴108〜112は、コンテンツアイテムがコンテンツ提示設定において提示されるべきユーザを特徴付けるユーザ特徴を含むことができる。
場合によっては、特徴は、コンテンツ提示設定のコンテキストを特徴付けるコンテキスト情報を含むことができる。
場合によっては、コンテンツ提示設定に関する予測出力136は、複数のコンテンツアイテムの所定のセット内の各コンテンツアイテムに関するそれぞれのスコアであり、それぞれのスコアは、対応するコンテンツアイテムがコンテンツ提示設定において提示された場合に特定の目的が満足されるそれぞれの尤度を表す。
たとえば、コンテンツアイテム提示設定は、ユーザによって提出された検索クエリに対する応答であってもよい。たとえば、検索クエリは、インターネット検索エンジンに提出された検索クエリであってもよく、コンテンツアイテムは、検索結果に対する応答に含まれる候補であるインターネットリソースを識別するインターネット検索結果であってもよく、または検索クエリに対する応答においてインターネット検索結果と共に表示される候補であるサードパーティのコンテンツアイテムであってもよい。別の例として、検索クエリは、オンラインアプリストアに提出された検索クエリであってもよく、コンテンツアイテムは、検索クエリに対する応答において表示される候補であるオンラインアプリストアにおいて利用可能なアプリを識別するアプリ検索結果であってもよい。
別の例として、コンテンツアイテム提示設定は、インターネットリソース、たとえばウェブページ内の特定の位置であってもよく、コンテンツアイテムは、インターネットリソース内の特定の位置において表示される候補であるサードパーティのコンテンツアイテムであってもよい。
別の例として、コンテンツアイテム提示設定は、コンテンツ推奨設定、たとえば特定のタイプのコンテンツアイテムがユーザに提示されている設定であってもよく、ユーザにとって興味がある可能性がある特定のタイプの他のコンテンツアイテムの推奨もユーザに提示されてもよい。
この例では、複合モデルによってスコアリングされているコンテンツアイテムは、ユーザに推奨される候補であるコンテンツアイテムであってもよい。たとえば、オンラインビデオ共有サービスによってビデオがユーザに提示されてもよい。提示されたビデオと一緒に、ユーザにとって興味がある可能性がある他のビデオのサムネイルも、ビデオ共有サービスによってユーザに提示されてもよい。別の例として、オンラインマーケットプレイスによって販売される製品を識別する製品ページがユーザに提示されてもよく、製品ページは、ユーザにとって興味がある可能性がある他の製品に関する製品ページへのリンクをさらに含んでもよい。
特定の目的は、コンテンツ提示設定において所与のコンテンツアイテムを提示した結果に関連する様々な目的のうちのいずれかであってもよい。
たとえば、特定の目的は、コンテンツ提示設定において提示されるコンテンツアイテムをユーザが選択することであってもよい。この場合、所与のコンテンツアイテムに関するスコアは、それがコンテンツ提示設定において提示された場合にユーザがコンテンツアイテムをクリックするか、または他の方法で選択する尤度を表す。
別の例として、特定の目的は、ユーザがコンテンツ提示設定において提示されたコンテンツアイテムを見た後に、1つまたは複数の指定されたアクションを実行すること、たとえばアイテムを購入することであってもよい。この場合、所与のコンテンツアイテムに関するスコアは、所与のコンテンツアイテムがコンテンツ提示設定において提示された場合に、指定されたアクションのうちの1つをユーザが実行する尤度を表す。
別の例として、特定の目的は、コンテンツアイテムをコンテンツ提示設定において表示することによって、ユーザエンゲージメントに悪影響を及ぼさないことであってもよい。この場合、所与のコンテンツアイテムに関するスコアは、所与のコンテンツアイテムがコンテンツ提示設定において表示された場合のユーザエンゲージメントメトリックの値またはユーザエンゲージメントメトリックの値の変化を表す。ユーザエンゲージメントメトリックは、提示されたコンテンツアイテムとのユーザのエンゲージメントを測定する任意の適切なメトリックであってもよい。
ディープマシンラーニングモデル104は、埋め込み層150とディープニューラルネットワーク130とを含むディープモデルである。いくつかの実装形態では、埋め込み層はディープニューラルネットワーク130内に含まれる。埋め込み層150は、埋込み関数のセット、たとえば埋込み関数124〜128を含む。ディープニューラルネットワーク130は動作の複数の層を含み、層のうちの少なくとも1つは出力を生成するために受信した入力に非線形変換を適用する。
特に、ディープマシンラーニングモデル104は、ディープモデル中間予測出力を生成するために、ワイドアンドディープラーニングモデル102のモデル入力に含まれる特徴の第1のセットを処理するように構成される。たとえば、ディープマシンラーニングモデル104は、特徴108〜114の第1のセットを処理するように構成される。埋め込み層は、特徴108〜114の第1のセットのうちの1つまたは複数に埋込み関数を適用することができる。たとえば、埋め込み層150は、埋込み関数124〜128を特徴110〜114に適用する。場合によっては、埋め込み層によって処理される特徴は、ユーザ特徴(たとえば、国、言語および人口統計)、コンテキスト特徴(たとえば、デバイス、その日の時刻、曜日)、および印象特徴(たとえば、アプリの年齢、アプリの履歴統計)などのまばらな分類特徴である。埋め込み層によって処理されない他の特徴は、ソフトウェアアプリケーションのインストール数などの連続特徴を含んでもよい。埋込み関数124〜128の各々は、特徴110〜114の各々をそれぞれの数値埋め込み、たとえば特徴の浮動小数点数ベクトル表現にマッピングする変換を特徴110〜114の各々に適用する。数値埋め込みは、1つもしくは複数の浮動小数点数値、またはその符号化が浮動小数点数値を表す1つもしくは複数の量子化整数値を含むことができる。埋込み関数について、図2を参照して以下でより詳細に説明する。
ディープニューラルネットワーク130は、入力として、埋め込み層からの数値埋め込みと、オプションで他の入力特徴(たとえば、特徴108)とを受信する。ディープニューラルネットワーク130は、ディープモデル中間予測出力を生成するために、受信した入力に非線形変換をそれぞれ適用する、複数たとえば3つ以上の動作層を含む。したがって、ディープニューラルネットワーク130は、入力の代替表現、すなわちディープモデル中間予測出力を生成するために、数値埋め込みおよび他の入力特徴に複数の非線形変換を適用する。
ワイドマシンラーニングモデル106は、ワイドアンドディープラーニングモデル102のモデル入力内に含まれる特徴の第2のセット(たとえば、特徴116〜122)を処理し、ワイドモデル中間予測出力を生成するように構成されるワイドアンドシャロー(wide and shallow)モデル、たとえば一般化線形モデル138である。いくつかの実装形態では、特徴の第2のセット内の特徴のうちのいくつかは、特徴の第1のセット内の特徴のうちのいくつかと重複してもよい。いくつかの他の実装形態では、特徴の第2のセットは特徴の第1のセットとは完全に異なっていてもよい。
いくつかの実装形態では、ワイドマシンラーニングモデル106は、ワイドモデル中間出力を生成するために、たとえばクロス積特徴変換132を使用して、特徴の第2のセット内の元の入力特徴(たとえば、特徴120および122)と、他の特徴(たとえば、特徴116〜118)から生成された変換された特徴との両方を処理するように構成される。場合によっては、クロス積特徴変換132は分類特徴に適用される。二値特徴について、クロス積変換は、構成特徴がすべて1の場合は1であり、そうでない場合は0である。この変換は、二値化分類特徴間の相互作用を取り込み、一般化線形モデルに非線形性を加えることができる。
各中間出力内の各値は、たとえば対数オッズ出力、確率値、または別の種類の数値とすることができる。
組合せマシンラーニングモデル102はまた、予測出力136を生成するために、ディープマシンラーニングモデル104によって生成されたディープモデル中間予測出力と、ワイドマシンラーニングモデル106によって生成されたワイドモデル中間予測出力とを処理するように構成される組合せ層134を含む。予測出力が単一のスコアである実装形態では、組合せ層はロジスティック回帰層であってもよい。予測出力が複数のスコアを含む実装形態では、組合せ層はソフトマックス層であってもよい。
図2は、ワイドアンドディープラーニングモデルを使用して予測入力を生成するための例示的なプロセス200のフロー図である。便宜上、プロセス200について、1つまたは複数の場所に配置された1つまたは複数のコンピュータのシステムによって実行されるものとして説明する。
システムは、入力の特徴を取得する(ステップ202)。上記で説明したように、特徴の各々は、シーケンス内の単語を表す1つのトークンまたは複数のトークンと、シーケンス内の単語を特徴付ける他の特徴とを含んでもよい。特徴の各々は、各特徴内に含まれるトークンの数に応じて異なるタイプのものであってもよい。
システムは、ディープモデル中間予測出力を生成するために、ディープマシンラーニングモデルを使用して取得された特徴からの特徴の第1のセットを処理する(ステップ204)。上記で説明したように、ディープマシンラーニングモデルは、ディープニューラルネットワークと、埋込み関数を含む埋め込み層とを含む。いくつかの実装形態では、システムは、埋め込み層を特徴の第1のセットのサブセットに適用する。特に、システムは、特徴の数値埋め込み、たとえば浮動小数点数ベクトル表現を生成するために、サブセット内の特徴の特徴タイプの各々について埋込み関数の各々を使用する。特徴タイプと実装形態とに応じて、所与の特徴タイプに関する埋込み関数は様々な埋込み関数のうちのいずれかとすることができる。
たとえば、特徴が単一のトークンからなる特徴タイプについて、埋込み関数は単純な埋込み関数であってもよい。単純な埋込み関数は、単一のトークンを浮動小数点数ベクトル、すなわち浮動小数点数値のベクトルにマッピングする。たとえば、単純な埋込み関数は、たとえば特定のルックアップテーブルを使用して、現在のパラメータ値に基づいて"cat"というトークンをベクトル[0.1, 0.5, 0.2]にマッピングし、"iPod(登録商標)"という単語をベクトル[0.3, 0.9, 0.0]にマッピングしてもよい。
別の例として、特徴が潜在的に2つ以上のトークンのリストからなる尤度がある特徴タイプについて、埋込み関数は並列埋込み関数であってもよい。並列埋込み関数は、トークンのリスト内の各トークンをそれぞれの浮動小数点数ベクトルにマッピングし、それぞれの浮動小数点数ベクトルの連結である単一のベクトルを出力する。たとえば、{"Atlanta", "Hotel"}というトークンの順序付きリストについて、並列埋込み関数は、"Atlanta"をベクトル[0.1, 0.2, 0.3]にマッピングし、"Hotel"を[0.4, 0.5, 0.6]にマッピングし、次いで[0.1, 0.2, 0.3, 0.4, 0.5, 0.6]を出力してもよい。それぞれの浮動小数点数ベクトルを識別するために、並列埋込み関数は単一のルックアップテーブルまたは複数の異なるルックアップテーブルを使用してもよい。
別の例として、特徴が潜在的に2つ以上のトークンのリストからなる尤度がある特徴タイプについて、埋込み関数は結合埋込み関数であってもよい。結合埋込み関数は、リスト内の各トークンをそれぞれの浮動小数点数ベクトルにマッピングし、次いでそれぞれの浮動小数点数ベクトルを単一のマージベクトルにマージする。結合埋込み関数は、たとえば線形関数、たとえばそれぞれの浮動小数点数ベクトルの和、平均、もしくは重み付き線形結合を使用して、または非線形関数、たとえば構成要素ごとの最大値もしくはノルム制約付き線形結合を使用して、それぞれの浮動小数点数ベクトルをマージすることができる。それぞれの浮動小数点数ベクトルを識別するために、並列埋込み関数は単一のルックアップテーブルまたは複数の異なるルックアップテーブルを使用してもよい。たとえば順序付きリスト{"Atlanta","Hotel"}について、並列埋込み関数は、"Atlanta"を[0.1, 0.2, 0.3]にマッピングし、"Hotel"を[0.4, 0.5, 0.6]にマッピングし、次いで2つのベクトルの和、すなわち[0.5, 0.7, 0.9]を出力してもよい。
別の例として、特徴が潜在的に2つ以上のトークンのリストからなる尤度がある特徴タイプについて、埋込み関数は混合埋込み関数であってもよい。混合埋込み関数は、トークンのリスト内の各トークンをそれぞれの浮動小数点数ベクトルにマッピングし、それぞれの浮動小数点数ベクトルの連結である初期ベクトルを生成する。混合埋込み関数は、次いでそれぞれの浮動小数点数ベクトルをマージベクトルにマージし、マージベクトルを初期ベクトルと連結する。たとえば、順序付きリスト{"Atlanta","Hotel"}について、混合埋込み関数は、並列埋込み関数および複合埋込み関数によって出力されたベクトルの連結、すなわち[0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.5, 0.7, 0.9]を出力してもよい。
実装形態に応じてシステムは、2つの異なる特徴タイプに対して2つの異なる種類の埋込み関数を利用してもよく、2つの埋込み関数はパラメータを共有してもしなくてもよい。たとえば、システムは、第1の特徴タイプのための複合埋込み関数と、第2の特徴タイプのための混合埋込み関数とを利用してもよい。
特徴のうちの1つまたは複数が離散的ではない場合、埋込み関数を使用して特徴を処理する前に、システムは各非離散的特徴をハッシュするためにハッシュ関数を使用する。システムは、次いで各ハッシュ化された特徴をパーティションの所定のセットのうちの1つに分割し、特徴に対して埋込み関数を使用してパーティションに対応する値を処理することができる。加えて、特定の特徴を取得することができない場合、システムはその特徴を所定の値にマッピングすることができる。
いくつかの実装形態では、浮動小数点数の代わりに所与の埋込み関数が異なる種類の数値を生成してもよい。たとえば、埋込み関数は、その符号化が浮動小数点数値を表す量子化整数値を生成してもよい。
システムは、数値埋め込み(たとえば、浮動小数点数ベクトル表現)を処理し、オプションでディープニューラルネットワークを使用して元の入力特徴のうちの1つまたは複数を処理する。ディープニューラルネットワークは、たとえば図1のディープニューラルネットワーク130とすることができる。ディープネットワークは、非線形変換を含む少なくとも1つの層を有する複数の層を含む。非線形変換は、パラメータのそれぞれのセットの値に基づいて定義することができる。たとえば、ディープネットワークは、1つまたは複数の隠れニューラルネットワーク層と、まばらな二値出力層、たとえばあらゆる位置において0または1であるベクトルを出力する層とを含むことができる。一般に、ディープネットワークは、特徴の第1のセット内の特徴のサブセットおよび残りの特徴の浮動小数点数ベクトル表現に基づいて、ディープモデル中間予測出力として入力の代替表現を生成する。
システムは、ワイドモデル中間予測出力を生成するために、ワイドマシンラーニングモデルを使用して取得した特徴からの特徴の第2のセットを処理する(ステップ206)。いくつかの実装形態では、特徴の第2のセットは特徴の第1のセットと重複してもよい。いくつかの他の実装形態では、特徴の第2のセットは特徴の第1のセットと異なってもよい。システムは、変換された特徴を生成するために、特徴の第2のセットのサブセットにクロス積特徴変換を適用することができる。システムは、次いでワイドモデル中間出力を生成するためにワイドモデルを使用して、特徴の第2のセット内の元の入力特徴と、クロス積特徴変換の使用を介して他の特徴から生成された変換された特徴の両方を処理することができる。ワイドモデルは、元の入力特徴と変換された特徴とを定義する複数のパラメータを有する一般化線形モデルとすることができる。システムは、ワイドモデル中間出力を生成するために、元の入力特徴および変換された特徴に一般化線形モデルを適用することができる。
システムは、組合せ層を使用して予測出力を生成するためにディープモデル出力およびワイドモデル出力を処理する(ステップ208)。一般に、組合せ層は、複合出力を生成するためにたとえば2つの出力の和または加重和を計算することによってディープモデル出力とワイドモデル出力とを複合し、次いで複合出力から予測出力を生成する。予測出力が単一のスコアである実装形態では、システムは、ディープモデル出力とワイドモデル出力とを処理するために組合せ層としてロジスティック回帰層を使用することができる。予測出力が複数のスコアを含む実装形態では、システムは、ディープモデル出力とワイドモデル出力とを処理するために、組合せ層としてソフトマックス層を使用することができる。
図3は、ワイドアンドディープラーニングモデルを含むマシンラーニングシステムをトレーニングするための例示的なプロセス300のフロー図である。便宜上、プロセス300について、1つまたは複数の場所に配置された1つまたは複数のコンピュータのシステムによって実行されるものとして説明する。
ワイドモデルおよびディープモデルのパラメータのトレーニングされた値を決定するために、システムは、トレーニングデータに基づいて複合モデルをトレーニングする。
いくつかの実装形態では、図3に記載されるように、システムは、ワイドモデルおよびディープモデルを共同してトレーニングする。
システムは、複数のトレーニング入力の各々について、(i)トレーニング入力の特徴と、(ii)トレーニング入力に対する既知の出力とを含むトレーニングデータを取得する(ステップ302)。
システムは、次いでトレーニング入力の各々について、ディープマシンラーニングモデルのパラメータの現在の値に従ってトレーニング入力に対するディープモデル中間予測出力を生成するためにディープマシンラーニングモデルを使用してトレーニング入力の特徴を処理することによって複合モデルをトレーニングする(ステップ304)。
システムは、ワイドマシンラーニングモデルのパラメータの現在の値に従ってトレーニング入力に対するワイドモデル中間予測出力を生成するためにワイドマシンラーニングモデルを使用してトレーニング入力の特徴を処理する(ステップ306)。
システムは、次いでトレーニング入力に対する予測出力を生成するために組合せ層を使用してトレーニング入力に対するディープモデル中間予測出力とワイドモデル中間予測出力とを処理する(ステップ308)。
システムは、次いでトレーニング入力に対する予測出力とトレーニング入力に対する既知の出力との間の誤差を決定する。加えて、システムは、ディープマシンラーニングモデルおよびワイドマシンラーニングモデルのパラメータの現在の値を誤差を減少させる方向において共同して調整するために、組合せ層を介して誤差から決定される勾配をワイドマシンラーニングモデルおよびディープマシンラーニングモデルに逆伝播させる(ステップ310)。さらに、逆伝播の方法を介して、システムはディープラーニングモデルに誤差信号を送信することができ、これは逆伝播の連続ステージを介してディープラーニングモデルがその内部構成要素、たとえばディープニューラルネットワークおよび埋込み関数のセットのパラメータを調整することを可能にする。システムはまた、ワイドラーニングモデルが一般化線形モデルのパラメータを調整することを可能にするためにワイドラーニングモデルに誤差信号を送信することができる。
一般に、これらの実装形態では、システムはミニバッチ確率的最適化を使用してディープマシンラーニングモデルとワイドマシンラーニングモデルとをトレーニングする。たとえば、システムは、L1正規化を伴う正則化リーダに従う(FTRL)アルゴリズムを使用してワイドマシンラーニングモデルをトレーニングし、適応学習率を用いる確率的勾配最適化を使用して第2のトレーニングデータにおいてディープマシンラーニングモデルをトレーニングすることができる。
いくつかの他の実装形態では、システムは、最初に複合モデルとは別にトレーニングデータの1つのセットにおいてワイドモデルをトレーニングし、次いで複合モデルの一部と同じまたは場合によっては異なるトレーニングデータにおいてディープモデルをトレーニングする。
すなわち、システムは、最初にディープモデルによって生成された中間出力を考慮せずにトレーニングデータにおいてワイドモデルをトレーニングする。
これらの他の実装形態では、ワイドモデルをトレーニングした後、ディープモデルをトレーニングするために使用されているトレーニングデータ内の各トレーニング入力に対して、システムは、ディープマシンラーニングモデルのパラメータの現在の値に従ってトレーニング入力に対するディープモデル中間予測出力を生成するためにディープマシンラーニングモデルを使用してトレーニング入力の特徴を処理し、ワイドマシンラーニングモデルのパラメータのトレーニングされた値に従ってトレーニング入力に対するワイドモデル中間予測出力を生成するためにワイドマシンラーニングモデルを使用してトレーニング入力の特徴を処理し、トレーニング入力に対する予測出力を生成するために組合せ層を使用してトレーニング入力に対するディープモデル中間予測出力とワイドモデル中間予測出力とを処理する。システムは、次いでディープマシンラーニングモデルのパラメータの現在の値を調整するために、組合せ層を介してトレーニング入力に対する予測出力とトレーニング入力に対する既知の出力との間の誤差から決定される勾配をディープマシンラーニングモデルに逆伝播させ、すなわちワイドモデルのパラメータのトレーニングされた値を固定されたままにする。
さらに他の実装形態では、システムは、最初に複合モデルとは別にトレーニングデータの1つのセットにおいてディープモデルをトレーニングし、次いで複合モデルの一部と同じまたは場合によっては異なるトレーニングデータにおいてワイドモデルをトレーニングする。
すなわち、システムは、最初にワイドモデルによって生成された中間出力を考慮せずにトレーニングデータにおいてディープモデルをトレーニングする。
これらの他の実装形態では、ディープモデルをトレーニングした後、ディープモデルをトレーニングするために使用されているトレーニングデータ内の各トレーニング入力に対して、システムは、ワイドマシンラーニングモデルのパラメータの現在の値に従ってトレーニング入力に対するワイドモデル中間予測出力を生成するためにワイドマシンラーニングモデルを使用してトレーニング入力の特徴を処理し、ディープマシンラーニングモデルのパラメータのトレーニングされた値に従ってトレーニング入力に対するディープモデル中間予測出力を生成するためにディープマシンラーニングモデルを使用してトレーニング入力の特徴を処理し、トレーニング入力に対する予測出力を生成するために組合せ層を使用してトレーニング入力に対するワイドモデル中間予測出力とディープモデル中間予測出力とを処理する。システムは、次いでワイドマシンラーニングモデルのパラメータの現在の値を調整するために、トレーニング入力に対する予測出力とトレーニング入力に対する既知の出力との間の誤差から決定される勾配を組合せ層を介してワイドマシンラーニングモデルに逆伝播させ、すなわちディープモデルのパラメータのトレーニングされた値を固定されたままにする。
特定の動作またはアクションを実行するように構成される1つまたは複数のコンピュータのシステムについて、動作中にシステムに動作またはアクションを実行させるソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせをシステムがインストールしたことを意味する。特定の動作またはアクションを実行するように構成される1つまたは複数のコンピュータプログラムについて、データ処理装置によって実行されると装置に動作またはアクションを実行させる命令を1つまたは複数のプログラムが含むことを意味する。
本明細書に記載された主題および機能的動作の実施形態は、デジタル電子回路において、有形に具体化されたコンピュータソフトウェアもしくはファームウェアにおいて、本明細書で開示される構造およびそれらの構造的均等物を含むコンピュータハードウェアにおいて、またはそれらのうちの1つもしくは複数の組み合わせにおいて実装することができる。本明細書に記載された主題の実施形態は、1つまたは複数のコンピュータプログラムとして実装することができ、すなわちデータ処理装置によって実行するため、またはデータ処理装置の動作を制御するための有形の非一時的プログラムキャリア上に符号化されたコンピュータプログラム命令の1つまたは複数のモジュールとして実装することができる。代替的にまたは加えて、プログラム命令は、データ処理装置による実行のための適切なレシーバ装置への送信のために情報を符号化するために生成された人為的に生成された伝搬信号、たとえば機械生成された電気信号、光信号、または電磁信号において符号化することができる。コンピュータ記憶媒体は、機械可読記憶デバイス、機械可読記憶基板、ランダムもしくはシリアルアクセスメモリデバイス、またはそれらのうちの1つもしくは複数の組み合わせとすることができる。しかしながら、コンピュータ記憶媒体は伝搬信号ではない。
「データ処理装置」という用語は、例としてプログラム可能なプロセッサ、コンピュータ、または複数のプロセッサもしくはコンピュータを含むデータを処理するためのすべての種類の装置、デバイス、および機械を包含する。本装置は、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)を含むことができる。本装置はまた、ハードウェアに加えて、問題のコンピュータプログラムのための実行環境を作成するコード、たとえばプロセッサファームウェアを構成するコード、プロトコルスタック、データベース管理システム、オペレーティングシステム、またはそれらのうちの1つもしくは複数の組み合わせを含むことができる。
コンピュータプログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、モジュール、ソフトウェアモジュール、スクリプト、またはコードとも呼ばれ、それらとして説明されることもある)は、コンパイラ型言語もしくはインタープリタ型言語、または宣言型言語もしくは手続き型言語を含む任意の形式のプログラミング言語において書くことができ、スタンドアロンプログラムとしての形式、またはモジュール、コンポーネント、サブルーチン、もしくはコンピューティング環境において使用するのに適した他の単位としての形式を含む任意の形式において展開することができる。コンピュータプログラムは、ファイルシステム内のファイルに対応してもよいが、必ずしも対応する必要はない。プログラムは、他のプログラムもしくはデータ、たとえばマークアップ言語文書内に記憶された1つもしくは複数のスクリプトを保持するファイルの一部において、問題のプログラム専用の単一のファイルにおいて、または複数の連携ファイル、たとえば1つもしくは複数のモジュール、サブプログラム、もしくはコードの一部を記憶するファイルにおいて記憶することができる。コンピュータプログラムは、単一のコンピュータ上で、または1つのサイトにおいて配置されるか、もしくは複数のサイトにわたって分散され、通信ネットワークによって相互接続された複数のコンピュータ上で実行されるように展開することができる。
本明細書で使用される「エンジン」または「ソフトウェアエンジン」は、入力とは異なる出力を提供するソフトウェア実装入力/出力システムを指す。エンジンは、ライブラリ、プラットフォーム、ソフトウェア開発キット("SDK")、またはオブジェクトなどの、符号化された機能ブロックとすることができる。各エンジンは、1つまたは複数のプロセッサとコンピュータ可読媒体とを含む任意の適切なタイプのコンピューティングデバイス、たとえばサーバ、モバイルフォン、タブレットコンピュータ、ノートブックコンピュータ、音楽プレーヤ、電子書籍リーダ、ラップトップもしくはデスクトップコンピュータ、PDA、スマートフォン、または他の固定デバイスもしくはポータブルデバイス上に実装することができる。加えて、エンジンのうちの2つ以上は、同じコンピューティングデバイス上、または異なるコンピューティングデバイス上に実装されてもよい。
本明細書で説明されるプロセスおよび論理フローは、入力データに対して動作し、出力を生成することによって機能を実行するために1つまたは複数のコンピュータプログラムを実行する1つまたは複数のプログラム可能なコンピュータによって実行することができる。プロセスおよび論理フローは、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)によって実行することもでき、装置は、専用論理回路、たとえばFPGA(フィールドプログラマブルゲートアレイ)またはASIC(特定用途向け集積回路)として実装することができる。
コンピュータプログラムの実行に適したコンピュータは、例として汎用マイクロプロセッサもしくは専用マイクロプロセッサ、もしくはその両方、または任意の他の種類の中央処理装置に基づくことができる。一般に、中央処理装置は、読み出し専用メモリまたはランダムアクセスメモリまたはその両方から命令とデータとを受信する。コンピュータの必須要素は、命令を実施または実行するための中央処理装置と、命令およびデータを記憶するための1つまたは複数のメモリデバイスとである。一般に、コンピュータはまた、データを記憶するための1つまたは複数の大容量記憶デバイス、たとえば磁気ディスク、光磁気ディスク、または光ディスクを含むか、またはそれらからデータを受信するか、もしくはそれらにデータを送信するか、もしくはその両方を行うようにそれらに動作可能に結合される。しかしながら、コンピュータは、そのようなデバイスを有する必要はない。さらに、コンピュータは、別のデバイス、たとえばいくつか例を挙げると、携帯電話、携帯情報端末(PDA)、モバイルオーディオもしくはビデオプレーヤ、ゲームコンソール、全地球測位システム(GPS)レシーバ、またはポータブル記憶デバイス、たとえばユニバーサルシリアルバス(USB)フラッシュドライブ内に組み込むことができる。
コンピュータプログラム命令およびデータを記憶するのに適したコンピュータ可読媒体、例として半導体メモリデバイス、たとえばEPROM、EEPROM、およびフラッシュメモリデバイス、磁気ディスク、たとえば内部ハードディスクまたはリムーバブルディスク、光磁気ディスク、ならびにCD ROMディスクおよびDVD-ROMディスクを含むすべての形態の不揮発性メモリ、媒体およびメモリデバイスを含む。プロセッサおよびメモリは、専用論理回路によって補完することができ、またはそれに組み込むことができる。
ユーザとの対話を提供するために、本明細書で開示される主題の実施形態は、情報をユーザに表示するためのディスプレイデバイス、たとえばCRT(陰極線管)またはLCD(液晶ディスプレイ)モニタと、ユーザが入力をコンピュータに提供することができるキーボードおよびポインティングデバイス、たとえばマウスまたはトラックボールとを有するコンピュータ上で実施することができる。同様にユーザとの対話を提供するために他の種類のデバイスを使用することができ、たとえばユーザに提供されるフィードバックは、任意の形態の感覚フィードバック、たとえば視覚フィードバック、聴覚フィードバック、または触覚フィードバックとすることができ、ユーザからの入力は、音響、音声、または触覚入力を含む任意の形態で受信することができる。加えて、コンピュータは、ユーザによって使用されるデバイスに文書を送信し、そこから文書を受信することによって、たとえばウェブブラウザから受信された要求に応答してユーザのクライアントデバイス上のウェブブラウザにウェブページを送信することによってユーザと対話することができる。
本明細書で説明される実施形態は、たとえばデータサーバとしてバックエンド構成要素を含むコンピューティングシステム、またはたとえばアプリケーションサーバとしてミドルウェア構成要素を含むコンピューティングシステム、またはフロントエンド構成要素、たとえばユーザが本明細書で説明される主題の実装形態と対話することができるグラフィカルユーザインターフェースもしくはウェブブラウザを有するクライアントコンピュータを含むコンピューティングシステム、または1つもしくは複数のそのようなバックエンド構成要素、ミドルウェア構成要素、もしくはフロントエンド構成要素の任意の組み合わせを含むコンピューティングシステム、において実施することができる。システムの構成要素は、任意の形式または媒体のデジタルデータ通信、たとえば通信ネットワークによって相互接続することができる。通信ネットワークの例は、ローカルエリアネットワーク("LAN")およびワイドエリアネットワーク("WAN")、たとえばインターネットを含む。
コンピューティングシステムは、クライアントとサーバとを含むことができる。クライアントおよびサーバは、一般に互いに遠隔であり、典型的には通信ネットワークを介して対話する。クライアントとサーバとの関係は、それぞれのコンピュータ上で実行され、互いにクライアント−サーバ関係を有するコンピュータプログラムのおかげで生じる。
本明細書は、多くの具体的な実装形態の詳細を含むが、これらは任意の発明の範囲、または特許請求されてもよい発明の範囲に対する限定として解釈されるべきではなく、むしろ特定の発明の特定の実施形態に特有である場合がある特徴の説明として解釈されるべきである。別個の実施形態の文脈において本明細書で説明される特定の特徴は、単一の実施形態において組み合わせて実装されることも可能である。逆に、単一の実施形態の文脈において説明される様々な特徴は、複数の実施形態において別々にまたは任意の適切な部分的組み合わせにおいて実装されることも可能である。さらに、特徴は、特定の組み合わせにおいて作用するものとして上記で説明され、当初はそのように特許請求されている場合があるが、特許請求された組み合わせからの1つまたは複数の特徴は、場合によっては組み合わせから削除されることが可能であり、特許請求された組み合わせは、部分的組み合わせまたは部分的組み合わせの変形に向けられてもよい。
同様に、動作は特定の順序で図面に示されているが、これは、所望の結果を達成するためにそのような動作が示された特定の順序もしくは逐次的な順序で実行されること、またはすべての図示された動作が実行されることを必要とするものとして理解されるべきではない。特定の状況では、マルチタスク処理および並列処理が有利な場合がある。さらに、上記で説明した実施形態における様々なシステムモジュールおよび構成要素の分離は、すべての実施形態においてそのような分離を必要とするものとして理解されるべきではなく、説明されたプログラム構成要素およびシステムは、一般に単一のソフトウェア製品内に一緒に統合されるか、または複数のソフトウェア製品にパッケージ化されることが可能であることが理解されるべきである。
主題の特定の実施形態について説明した。他の実施形態は、以下の特許請求の範囲内にある。たとえば、特許請求の範囲内に列挙された動作は、異なる順序で実行されることが可能であり、依然として所望の結果を達成することができる。一例として、添付図面において記されたプロセスは、所望の結果を達成するために、示された特定の順序または逐次的な順序を必ずしも必要としない。特定の実装形態では、マルチタスク処理および並列処理が有利な場合がある。
102 ワイドアンドディープマシンラーニングモデル、ワイドアンドディープラーニングモデル、組合せマシンラーニングモデル
104 ディープマシンラーニングモデル
106 ワイドマシンラーニングモデル
108 特徴
110 特徴
112 特徴
114 特徴
116 特徴
118 特徴
120 特徴
122 特徴
124 埋込み関数
126 埋込み関数
128 埋込み関数
130 ディープニューラルネットワーク
132 クロス積変換
134 組合せ層
136 予測出力
138 一般化線形モデル
150 埋め込み層

Claims (19)

1つまたは複数のコンピュータと、命令を記憶する1つまたは複数の記憶デバイスとを含むシステムであって、前記命令は、前記1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに、マシンラーニング入力を処理するための組合せマシンラーニングモデルを実装させ、前記マシンラーニング入力は、前記マシンラーニング入力に対して予測出力を生成するための複数の特徴を含み、前記組合せマシンラーニングモデルが、
ディープモデル中間予測出力を生成するために前記特徴を処理するように構成されるディープマシンラーニングモデルと、
ワイドモデル中間予測出力を生成するために前記特徴を処理するように構成されるワイドマシンラーニングモデルであって、前記ワイドマシンラーニングモデルが一般化線形モデルである、ワイドマシンラーニングモデルと、
前記予測出力を生成するために、前記ディープマシンラーニングモデルによって生成された前記ディープモデル中間予測出力と前記ワイドマシンラーニングモデルによって生成された前記ワイドモデル中間予測出力とを処理するように構成される組合せ層と
を備え、
前記ディープマシンラーニングモデルおよび前記ワイドマシンラーニングモデルが、前記ディープモデル中間予測出力と前記ワイドモデル中間予測出力とを生成するために、トレーニングデータに対して共同でトレーニングされている、
システム。
前記特徴がコンテンツ提示設定の特徴であり、前記予測出力が前記コンテンツ提示設定に関する予測出力である、請求項1に記載のシステム。
前記コンテンツ提示設定の前記特徴が、前記コンテンツ提示設定において提示されるべきコンテンツアイテムの特徴を含み、前記コンテンツ提示設定に関する前記予測出力が、前記コンテンツアイテムが前記コンテンツ提示設定において提示された場合に特定の目的が満足される尤度を表す、請求項2に記載のシステム。
前記組合せ層が、前記コンテンツアイテムが前記コンテンツ提示設定において提示された場合に前記特定の目的が満足される前記尤度を表すスコアを生成するために、前記ディープマシンラーニングモデルによって生成された前記ディープモデル中間予測出力と前記ワイドマシンラーニングモデルによって生成された前記ワイドモデル中間予測出力とを処理するように構成されるロジスティック回帰層である、請求項3に記載のシステム。
前記コンテンツ提示設定に関する前記予測出力が、コンテンツアイテムの所定のセット内の各コンテンツアイテムに関するそれぞれのスコアであり、それぞれのスコアが、対応するコンテンツアイテムが前記コンテンツ提示設定において提示された場合に特定の目的が満足されるそれぞれの尤度を表す、請求項2に記載のシステム。
前記組合せ層が、コンテンツアイテムの所定のセット内の各コンテンツアイテムに関するそれぞれのスコアを生成するために、前記ディープマシンラーニングモデルによって生成された前記ディープモデル中間予測出力と前記ワイドマシンラーニングモデルによって生成された前記ワイドモデル中間予測出力とを処理するように構成されるソフトマックス層である、請求項5に記載のシステム。
前記特徴が、コンテンツアイテムが前記コンテンツ提示設定において提示されるべきユーザを特徴付けるユーザ特徴を含む、請求項2から6のいずれか一項に記載のシステム。
前記特徴が、前記コンテンツ提示設定のコンテキストを特徴付けるコンテキスト情報を含む、請求項2から7のいずれか一項に記載のシステム。
前記ディープマシンラーニングモデルがディープニューラルネットワークを含む、請求項1から8のいずれか一項に記載のシステム。
前記ディープマシンラーニングモデルが、前記特徴の各々を前記特徴のそれぞれの数値埋め込みにマッピングするように構成される埋め込み層を含む、請求項9に記載のシステム。
前記ワイドマシンラーニングモデルが、前記ワイドモデル中間予測出力を生成するために、前記特徴と前記特徴から生成された変換された特徴とを処理するように構成される、請求項1に記載のシステム。
前記ワイドモデル中間予測出力および前記ディープモデル中間予測出力が対数オッズ出力である、請求項1から11のいずれか一項に記載のシステム。
1つまたは複数のコンピュータによって実行されると、前記1つまたは複数のコンピュータに請求項1から12のいずれか一項に記載の前記組合せマシンラーニングモデルを実装させる、1つまたは複数のコンピュータ記憶媒体に記憶された、命令。
請求項1から12のいずれか一項に記載の組合せマシンラーニングモデルをトレーニングする方法であって、
複数のトレーニング入力の各々について、(i)前記トレーニング入力の特徴と、(ii)前記トレーニング入力に対する既知の出力とを備えるトレーニングデータを取得するステップと、
前記トレーニング入力の各々について、
前記ディープマシンラーニングモデルのパラメータの現在の値に従って前記トレーニング入力に対するディープモデル中間予測出力を生成するために前記ディープマシンラーニングモデルを使用して前記トレーニング入力の前記特徴を処理するステップと、
前記ワイドマシンラーニングモデルのパラメータの現在の値に従って前記トレーニング入力に対するワイドモデル中間予測出力を生成するために前記ワイドマシンラーニングモデルを使用して前記トレーニング入力の前記特徴を処理するステップと、
前記トレーニング入力に対する予測出力を生成するために前記組合せ層を使用して前記トレーニング入力に対する前記ディープモデル中間予測出力と前記ワイドモデル中間予測出力とを処理するステップと、
前記ディープマシンラーニングモデルおよび前記ワイドマシンラーニングモデルの前記パラメータの前記現在の値を共同して調整するために、前記組合せ層を介して前記トレーニング入力に対する前記予測出力と前記トレーニング入力に対する前記既知の出力との間の誤差から決定される勾配を前記ワイドマシンラーニングモデルおよび前記ディープマシンラーニングモデルに逆伝播させるステップと
を備える、方法。
ミニバッチ確率的最適化を使用して前記ディープマシンラーニングモデルおよび前記ワイドマシンラーニングモデルの前記パラメータの前記現在の値を調整するステップをさらに備える、請求項14に記載の方法。
L1正則化を伴う正則化リーダに従う(FTRL)アルゴリズムを使用して前記ワイドマシンラーニングモデルの前記パラメータの前記現在の値を調整するステップをさらに備える、請求項14または15に記載の方法。
適応学習率を用いる確率的勾配最適化を使用して前記ディープマシンラーニングモデルの前記パラメータの前記現在の値を調整するステップをさらに備える、請求項14から16のいずれか一項に記載の方法。
1つまたは複数のコンピュータによって実行されると前記1つまたは複数のコンピュータに請求項14から17のいずれか一項に記載の方法を実行させる、1つまたは複数のコンピュータ記憶媒体に記憶された、命令。
1つまたは複数のコンピュータによって実行されると前記1つまたは複数のコンピュータに請求項14から17のいずれか一項に記載の方法を実行させる命令を記憶する、1つまたは複数の記憶デバイス。
JP2018553922A 2016-04-13 2016-12-28 ワイドアンドディープマシンラーニングモデル Active JP6758406B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201662322161P 2016-04-13 2016-04-13
US62/322,161 2016-04-13
PCT/US2016/068842 WO2017180208A1 (en) 2016-04-13 2016-12-28 Wide and deep machine learning models

Publications (2)

Publication Number Publication Date
JP2019517057A JP2019517057A (ja) 2019-06-20
JP6758406B2 true JP6758406B2 (ja) 2020-09-23

Family

ID=57799918

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018553922A Active JP6758406B2 (ja) 2016-04-13 2016-12-28 ワイドアンドディープマシンラーニングモデル

Country Status (6)

Country Link
US (2) US10762422B2 (ja)
EP (2) EP4068165A1 (ja)
JP (1) JP6758406B2 (ja)
KR (2) KR102240662B1 (ja)
CN (1) CN109196527A (ja)
WO (1) WO2017180208A1 (ja)

Families Citing this family (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10554505B2 (en) 2012-09-28 2020-02-04 Intel Corporation Managing data center resources to achieve a quality of service
US10387531B1 (en) * 2015-08-18 2019-08-20 Google Llc Processing structured documents using convolutional neural networks
US10699185B2 (en) * 2017-01-26 2020-06-30 The Climate Corporation Crop yield estimation using agronomic neural network
US11182414B2 (en) * 2017-03-20 2021-11-23 International Business Machines Corporation Search queries of multi-datatype databases
US10592383B2 (en) * 2017-06-29 2020-03-17 Intel Corporation Technologies for monitoring health of a process on a compute device
CN110019658B (zh) * 2017-07-31 2023-01-20 腾讯科技(深圳)有限公司 检索项的生成方法及相关装置
CA3028278A1 (en) * 2017-11-23 2019-05-23 Beijing Didi Infinity Technology And Development Co., Ltd. System and method for estimating arrival time
US10360482B1 (en) * 2017-12-04 2019-07-23 Amazon Technologies, Inc. Crowd-sourced artificial intelligence image processing services
CN108363745B (zh) 2018-01-26 2020-06-30 阿里巴巴集团控股有限公司 机器人客服转人工客服的方法和装置
EP3701351A4 (en) * 2018-01-30 2021-01-27 D5Ai Llc SELF-ORGANIZING PARTIALLY ORGANIZED NETWORKS
US11093830B2 (en) * 2018-01-30 2021-08-17 D5Ai Llc Stacking multiple nodal networks
CN110187647A (zh) * 2018-02-23 2019-08-30 北京京东尚科信息技术有限公司 模型训练方法及系统
CN108416625A (zh) * 2018-02-28 2018-08-17 阿里巴巴集团控股有限公司 营销产品的推荐方法和装置
FR3078804B1 (fr) * 2018-03-06 2021-07-30 Arkema France Procede de selection de solvants adaptes a des polymeres fluores
CN113837804A (zh) * 2018-03-13 2021-12-24 创新先进技术有限公司 一种信息推荐的方法、装置及设备
CN110379411B (zh) * 2018-04-11 2023-06-23 阿里巴巴集团控股有限公司 针对目标说话人的语音合成方法和装置
CN110647696B (zh) * 2018-06-08 2022-06-14 北京三快在线科技有限公司 一种业务对象的排序方法及装置
US11100633B2 (en) 2018-06-13 2021-08-24 Cosmo Artificial Intelligence—Al Limited Systems and methods for processing real-time video from a medical image device and detecting objects in the video
US10810460B2 (en) 2018-06-13 2020-10-20 Cosmo Artificial Intelligence—AI Limited Systems and methods for training generative adversarial networks and use of trained generative adversarial networks
US20200034665A1 (en) 2018-07-30 2020-01-30 DataRobot, Inc. Determining validity of machine learning algorithms for datasets
CN111092850B (zh) * 2018-10-24 2021-06-04 珠海格力电器股份有限公司 监控网络安全的方法及装置、空调器、家用电器
CN110152298B (zh) * 2018-11-22 2022-03-15 腾讯科技(深圳)有限公司 实现虚拟角色的装备推荐方法、装置及计算机设备
CN110782648B (zh) * 2018-12-03 2022-02-18 北京嘀嘀无限科技发展有限公司 确定预计到达时间的系统和方法
CN110033091B (zh) * 2018-12-13 2020-09-01 阿里巴巴集团控股有限公司 一种基于模型进行预测的方法和装置
US10789510B2 (en) * 2019-01-11 2020-09-29 Google Llc Dynamic minibatch sizes
CN109784407A (zh) * 2019-01-17 2019-05-21 京东数字科技控股有限公司 确定表字段的类型的方法和装置
US11109083B2 (en) * 2019-01-25 2021-08-31 Adobe Inc. Utilizing a deep generative model with task embedding for personalized targeting of digital content through multiple channels across client devices
WO2020180424A1 (en) 2019-03-04 2020-09-10 Iocurrents, Inc. Data compression and communication using machine learning
CN110175857B (zh) * 2019-03-25 2023-06-02 创新先进技术有限公司 优选业务确定方法及装置
CN110059802A (zh) * 2019-03-29 2019-07-26 阿里巴巴集团控股有限公司 用于训练学习模型的方法、装置和计算设备
CN110135435B (zh) * 2019-04-17 2021-05-18 上海师范大学 一种基于广度学习系统的显著性检测方法及装置
US11681923B2 (en) 2019-04-19 2023-06-20 Samsung Electronics Co., Ltd. Multi-model structures for classification and intent determination
KR102034827B1 (ko) * 2019-05-14 2019-11-18 주식회사 뷰노 훈련된 심층 신경망 모델의 재현 성능을 개선하는 방법 및 이를 이용한 장치
CN110309281A (zh) * 2019-05-28 2019-10-08 平安科技(深圳)有限公司 基于知识图谱的问答方法、装置、计算机设备及存储介质
CN110147851B (zh) * 2019-05-29 2022-04-01 北京达佳互联信息技术有限公司 图像筛选方法、装置、计算机设备及存储介质
CN110299194B (zh) * 2019-06-06 2022-11-08 昆明理工大学 基于综合特征表示与改进宽深度模型的相似病例推荐方法
CN110298497A (zh) * 2019-06-11 2019-10-01 武汉蓝智科技有限公司 基于大数据的工业预测维修系统及其使用方法
US11392469B2 (en) * 2019-06-20 2022-07-19 Microsoft Technology Licensing, Llc Framework for testing machine learning workflows
US11397742B2 (en) 2019-06-21 2022-07-26 Microsoft Technology Licensing, Llc Rescaling layer in neural network
US11204968B2 (en) * 2019-06-21 2021-12-21 Microsoft Technology Licensing, Llc Embedding layer in neural network for ranking candidates
US11847545B2 (en) 2019-09-09 2023-12-19 Nxp B.V. Systems and methods involving a combination of machine learning models
CN110598954B (zh) * 2019-09-24 2022-03-11 中国人民大学 基于深度学习的利用评审意见预测论文被引用数的方法
CN114503130A (zh) * 2019-09-27 2022-05-13 维萨国际服务协会 在机器学习模型的嵌入之间映射用户向量
JP7381861B2 (ja) 2019-11-29 2023-11-16 富士通株式会社 複合モデル生成プログラム及び方法、並びに情報処理システム
CN110830515A (zh) * 2019-12-13 2020-02-21 支付宝(杭州)信息技术有限公司 流量检测方法、装置、电子设备
CN111242280A (zh) * 2020-01-06 2020-06-05 北京拙河科技有限公司 一种深度强化学习模型的组合方法、装置及计算机设备
EP4097653A4 (en) * 2020-01-27 2024-02-28 Akkio Inc METHOD AND SYSTEMS FOR DYNAMICLY GENERATING A MULTIPLE MACHINE LEARNING SYSTEMS WHILE PROCESSING A USER DATA SET
CN111325624B (zh) * 2020-02-11 2022-04-26 支付宝(杭州)信息技术有限公司 网络交易的实时防控系统及方法
US11070881B1 (en) 2020-07-07 2021-07-20 Verizon Patent And Licensing Inc. Systems and methods for evaluating models that generate recommendations
US11797755B2 (en) * 2020-08-13 2023-10-24 Microsoft Technology Licensing, Llc Unsupervised method to generate annotations for natural language understanding tasks
US20220207347A1 (en) * 2020-12-28 2022-06-30 International Business Machines Corporation Split-net configuration for predictive modeling
US20220284433A1 (en) * 2021-03-04 2022-09-08 Capital One Services, Llc Unidimensional embedding using multi-modal deep learning models
CN113112059A (zh) * 2021-03-31 2021-07-13 亿海蓝(北京)数据技术股份公司 船舶靠泊时间预测方法及系统
CN112950291B (zh) * 2021-03-31 2023-07-21 北京奇艺世纪科技有限公司 模型的偏差优化方法、装置、设备及计算机可读介质
CN115769239A (zh) * 2021-04-29 2023-03-07 京东方科技集团股份有限公司 一种疾病预测方法、装置、电子设备和计算机可读存储介质
CN113190749B (zh) * 2021-05-06 2023-10-31 北京百度网讯科技有限公司 用于确定对象属性的方法及装置、电子设备和介质
CN113255977B (zh) * 2021-05-13 2023-06-23 江西鑫铂瑞科技有限公司 基于工业互联网的智慧工厂生产设备故障预测方法及系统
WO2023018423A1 (en) * 2021-08-13 2023-02-16 Innopeak Technology, Inc. Learning semantic binary embedding for video representations

Also Published As

Publication number Publication date
EP4068165A1 (en) 2022-10-05
CN109196527A (zh) 2019-01-11
KR20180120240A (ko) 2018-11-05
US10762422B2 (en) 2020-09-01
WO2017180208A1 (en) 2017-10-19
JP2019517057A (ja) 2019-06-20
US20170300814A1 (en) 2017-10-19
KR102155261B1 (ko) 2020-09-11
EP3427193A1 (en) 2019-01-16
US20200372359A1 (en) 2020-11-26
KR102240662B1 (ko) 2021-04-15
KR20200106566A (ko) 2020-09-14

Similar Documents

Publication Publication Date Title
JP6758406B2 (ja) ワイドアンドディープマシンラーニングモデル
US11954597B2 (en) Using embedding functions with a deep network
US11809824B1 (en) Computing numeric representations of words in a high-dimensional space
JP6790286B2 (ja) 強化学習を用いたデバイス配置最適化
US20230244933A1 (en) Training neural networks using a prioritized experience memory
JP6671515B2 (ja) 比較セットを使用する入力例の分類
US20200401896A1 (en) Generating larger neural networks
CN108140143A (zh) 正则化机器学习模型
EP2973023A1 (en) Scoring concept terms using a deep network
CN108369664A (zh) 调整神经网络的大小
US10755171B1 (en) Hiding and detecting information using neural networks

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190104

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191210

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200127

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200319

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200901

R150 Certificate of patent or registration of utility model

Ref document number: 6758406

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250