JP6523498B1 - 学習装置、学習方法および学習プログラム - Google Patents

学習装置、学習方法および学習プログラム Download PDF

Info

Publication number
JP6523498B1
JP6523498B1 JP2018007286A JP2018007286A JP6523498B1 JP 6523498 B1 JP6523498 B1 JP 6523498B1 JP 2018007286 A JP2018007286 A JP 2018007286A JP 2018007286 A JP2018007286 A JP 2018007286A JP 6523498 B1 JP6523498 B1 JP 6523498B1
Authority
JP
Japan
Prior art keywords
information
model
learning
input
output
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
JP2018007286A
Other languages
English (en)
Other versions
JP2019125313A (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.)
Yahoo Japan Corp
Original Assignee
Yahoo Japan 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 Yahoo Japan Corp filed Critical Yahoo Japan Corp
Priority to JP2018007286A priority Critical patent/JP6523498B1/ja
Priority to US16/250,460 priority patent/US11699095B2/en
Application granted granted Critical
Publication of JP6523498B1 publication Critical patent/JP6523498B1/ja
Publication of JP2019125313A publication Critical patent/JP2019125313A/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
    • G06N20/00Machine learning
    • 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/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N5/00Computing arrangements using knowledge-based models
    • G06N5/02Knowledge representation; Symbolic representation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • G06N20/10Machine learning using kernel methods, e.g. support vector machines [SVM]
    • 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/044Recurrent networks, e.g. Hopfield 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)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • General Health & Medical Sciences (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Medical Informatics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

【課題】利用者と対応する情報の推定精度を向上させること。【解決手段】本願に係る学習装置は、入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得部と、前記第1モデルに所定の入力情報を入力した際に、前記第1モデルが当該所定の入力情報と対応する所定の出力情報を出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習部とを有することを特徴とする。【選択図】図1

Description

本発明は、学習装置、学習方法および学習プログラムに関する。
従来、各種の情報を利用者に対して提供する技術が知られている。このような技術の一例として、利用者が過去に選択した情報や利用者の属性等といった利用者と関連する情報に基づいて、利用者と関連性が高い情報や利用者が興味を有する情報等、利用者と対応する情報を推定し、推定した情報を利用者に提供する技術が知られている。
特開2012−150561号公報
しかしながら、上述した従来技術では、利用者と対応する情報を適切に推定できない恐れがある。
例えば、上述した従来技術では、利用者の選択履歴に基づいて、利用者と関連する情報と配信対象となる情報との間の共起性を学習し、学習した共起性に基づいて、利用者と対応する情報を推定する。しかしながら、このような技術では、利用者の選択履歴が不十分な場合、学習精度が低下し、利用者と対応する情報を精度良く推定できなくなる恐れがある。
また、複数のサービスを利用する利用者に対して、あるサービスの利用時に、他のサービスに関する情報を提供するクロスドメインレコメンデーションの技術が知られている。例えば、ある属性を有する第1利用者が映画配信サービスを利用する際に、ウェブ検索サービスにおける検索履歴が第1利用者と共通する第2利用者が映画配信サービスにおいて選択した映画コンテンツを提案するといった技術が知られている。しかしながら、各サービスを共通して利用する利用者の数が少ない場合、このようなクロスドメインレコメンデーションにおいて提案する情報を精度良く推定できなくなる恐れがある。
本願は、上記に鑑みてなされたものであって、利用者と対応する情報の推定精度を向上させることを目的とする。
本願に係る学習装置は、入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得部と、前記第1モデルに所定の入力情報を入力した際に、前記第1モデルが当該所定の入力情報と対応する所定の出力情報を出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習部とを有することを特徴とする。
実施形態の一態様によれば、利用者と対応する情報の推定精度を向上させることができる。
図1は、実施形態に係る情報提供装置の一例を示す図である。 図2は、実施形態に係るモデルが有する構造の概念の一例を示す図である。 図3は、実施形態に係る情報提供装置が有する機能構成の一例を示す図である。 図4は、実施形態に係る第1ドメイン情報データベースに登録される情報の一例を示す図である。 図5は、実施形態に係る第2ドメイン情報データベースに登録される情報の一例を示す図である。 図6は、実施形態に係る情報提供装置が生成する学習モデルのバリエーションを説明する図である。 図7は、実施形態に係る情報提供装置が実行する学習処理の流れの一例を示すフローチャートである。 図8は、ハードウェア構成の一例を示す図である。
以下に、本願に係る学習装置、学習方法および学習プログラムおよび情報提供装置を実施するための形態(以下、「実施形態」と記載する。)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る学習装置、学習方法および学習プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略する。
〔1.情報提供装置の概要〕
以下、図1を用いて、学習装置の一例となる情報提供装置10の一例について説明する。図1は、実施形態に係る情報提供装置の一例を示す図である。なお、図1に示す例では、情報提供装置10が第1ドメインサーバ100および第2ドメインサーバ200が提供する情報を用いて実行する学習処理の一例について記載した。
情報提供装置10は、インターネット等の所定のネットワークN(例えば、図3を参照。)を介して、第1ドメインサーバ100および第2ドメインサーバ200と通信可能な情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。なお、情報提供装置10は、ネットワークNを介して、任意の数の第1ドメインサーバ100および第2ドメインサーバ200(以下、単に「サーバ」と総称する場合がある。)と通信可能であってもよい。また、情報提供装置10は、任意のドメインに属する任意の数のサーバと通信可能であるものとする。
第1ドメインサーバ100は、所定のサービスを提供する情報処理装置であり、サーバ装置やクラウドシステム等により実現される。また、第1ドメインサーバ100は、所定の第1ドメインが示すサービスの提供を行う。例えば、第1ドメインサーバ100は、所定のドメイン名「ドメイン#1」を含むURL(Uniform Resource Locator)によりアクセス可能なウェブコンテンツを利用者に配信し、利用者に配信したウェブコンテンツを介して各種のコンテンツを利用者に提供するコンテンツ配信サービスを提供する。
第2ドメインサーバ200は、所定のサービスを提供する情報処理装置であり、サーバ装置やクラウドシステム等により実現される。また、第2ドメインサーバ200は、第1ドメインとは異なる所定の第2ドメインが示すサービスの提供を行う。例えば、第2ドメインサーバ200は、所定のドメイン名「ドメイン#2」を含むURL(Uniform Resource Locator)によりアクセス可能なウェブコンテンツを利用者に配信し、利用者に配信したウェブコンテンツを介して各種のコンテンツを利用者に提供するコンテンツ配信サービスを提供する。
なお、上述したドメイン#1とドメイン#2とは、それそれ異なるドメインであればよく、完全に独立したドメインである必要はない。例えば、ドメイン#1とドメイン#2とは、共通するドメイン#0に属するサブドメインであってもよく、それぞれ異なるドメインに属するサブドメインであってもよい。
ここで、第1ドメインサーバ100および第2ドメインサーバ200は、ログとして、配信されたコンテンツと、コンテンツの配信先となる利用者に関する利用者情報とを対応付けて保持する。例えば、第1ドメインサーバ100および第2ドメインサーバ200は、利用者情報として、利用者を識別するための識別子、利用者のデモグラフィック属性やサイコグラフィック属性等といった属性情報等を保持する。なお、第1ドメインサーバ100および第2ドメインサーバ200は、ある利用者に対し、各ドメインで共通の同一の識別子や属性情報を保持してもよく、異なる識別子や属性情報を保持してもよい。また、第1ドメインサーバ100および第2ドメインサーバ200は、利用者が予め登録した属性情報を保持してもよく、利用者の閲覧履歴や購入履歴、利用者が入力した検索クエリの履歴等に基づいて推定した属性情報を保持してもよい。このような属性情報の推定は、任意の推定技術が採用可能である。
また、第1ドメインサーバ100および第2ドメインサーバ200は、任意のサービスを提供してもよい。例えば、第1ドメインサーバ100および第2ドメインサーバ200は、電子商店街において商品や役務を紹介もしくは購入するためのウェブコンテンツを配信してもよく、ニュース、ウェブ検索、ポータルサイト等に関するウェブコンテンツを配信してもよい。また、第1ドメインサーバ100および第2ドメインサーバ200は、SNS(Social Networking Service)やマイクロブログの配信を行ってもよい。
以下、情報提供装置10が実行する学習処理の一例として、第1ドメインサーバ100および第2ドメインサーバ200は、第1ドメインおよび第2ドメインに関するサービスとして、動画等といったコンテンツの配信サービスを提供するものとする。
〔1−1.学習処理の概要について〕
ここで、ある利用者に対してコンテンツを配信する配信処理において、利用者が興味を有すると推定されるコンテンツや、利用者が選択する可能性が高いコンテンツ等、利用者に対応するコンテンツを配信若しくは提案するといった手法が考えられる。例えば、利用者が過去に選択したコンテンツの履歴と、その利用者の属性情報との間の共起性をあらかじめ学習し、学習結果に基づいて、配信先となる利用者と対応するコンテンツを推定する技術が考えられる。しかしながら、このような技術では、利用者が選択したコンテンツの履歴と、利用者の属性情報との組があまり多くない場合に、コンテンツの推定精度が低下する恐れがある。
また、第1ドメインにおけるコンテンツの視聴履歴や選択履歴に基づいて、第2ドメインにおけるコンテンツのうち、利用者の視聴履歴や選択履歴を推定するといったクロスドメインレコメンデーションの技術が考えられる。例えば、ある属性を有する第1利用者が映画配信サービスを利用する際に、ウェブ検索サービスにおける検索履歴が第1利用者と共通する第2利用者が映画配信サービスにおいて選択した映画コンテンツを提案するといった技術が知られている。しかしながら、各サービスを共通して利用する利用者の数が少ない場合、このようなクロスドメインレコメンデーションにおいて提案する情報を精度良く推定できなくなる恐れがある。
そこで、情報提供装置10は、以下の学習処理を実行する。まず、情報提供装置10は、入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する。そして、情報提供装置10は、第1モデルに所定の入力情報を入力した際に、第1モデルが所定の入力情報と対応する所定の出力情報を出力し、かつ、複数の中間層のうち所定の中間層が出力する中間情報が、所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、第1モデルの学習を行う。
ここで、情報提供装置10は、所定の入力情報として第1ドメインと関連する入力情報を第1モデルに入力した際に、出力情報として入力された所定の入力情報の分類を示す情報を出力し、かつ、中間情報が、第1ドメインとは異なる第2ドメインと関連する対応情報を考慮した特徴情報に近づくように、第1モデルの学習を行う。
例えば、情報提供装置10は、所定の入力情報として第1情報とその第1情報に紐付けられる第2情報とを第1モデルに入力した際に、出力情報として、第1情報に応じた第2情報の分類結果を出力し、かつ、中間情報が、第1情報と紐付けられる第3情報が有する特徴に応じた特徴情報に近づくように、第1モデルの学習を行う。より具体的な例を挙げると、情報提供装置10は、第1ドメインに属する第1情報および第2情報と、第1ドメインとは異なる第2ドメインに属する第3情報とを用いて、第1モデルの学習を行う。例えば、情報提供装置10は、利用者の特徴を示す第1情報と、第1情報が示す特徴を有する利用者が選択した選択対象を示す第2情報と、第1情報が示す特徴を有する利用者が選択した選択対象であって、第2情報が示す選択対象とは異なる選択対象を示す第3情報とを用いて、第1モデルの学習を行う。
例えば、第1ドメインに属するコンテンツとそのコンテンツが配信された利用者の属性情報との組が十分に存在する場合、これらコンテンツと属性情報との共起性を学習させたモデルは、利用者の属性情報から利用者と対応するコンテンツを精度良く推定することができる。一方、第2ドメインに属するコンテンツとそのコンテンツが配信された利用者の属性情報との組が十分に存在しない場合、これらコンテンツと属性情報との共起性を学習させたモデルは、利用者の属性情報から利用者と対応するコンテンツを精度良く推定することができないと考えられる。この結果、例えば、第2ドメインに属するサービスが開始されてから時間があまり経過していない場合等には、所謂コールドスタート問題が生じる。
一方で、第2ドメインに属するサービスにおいて配信されるコンテンツ、すなわち、第2ドメインに属するコンテンツについては、第2ドメインに属するサービスの開始時点においても、ある程度の数が存在すると考えられる。また、第2ドメインに属するコンテンツのうち配信先の利用者と対応するコンテンツは、第1ドメインに属するコンテンツのうち、配信先の利用者と対応するコンテンツと対応するとも考えられる。例えば、第1ドメインにおいてニュースが配信され、第2ドメインにおいて動画像が配信される場合、第1ドメインにおいて所定のニュースを選択した利用者は、その所定のニュースと共起性を有する動画像を気に入る可能性が高いとも考えられる。
そこで、情報提供装置10は、第1ドメインに属する利用者の属性情報とコンテンツを示す情報(例えば、コンテンツのメタデータ)との間の共起性をモデルに学習させる際に、第2ドメインに属するコンテンツが有する特徴を考慮した学習を行う。例えば、情報提供装置10は、第2ドメインに属するコンテンツの特徴を学習させた第2モデルをあらかじめ生成する。より具体的には、情報提供装置10は、第2ドメインに属するコンテンツの特徴を抽出する第2モデルをあらかじめ生成する。そして、情報提供装置10は、第1ドメインのコンテンツを示す情報、そのコンテンツを選択した利用者の属性情報との間の共起性を第1モデルに学習させる際に、そのコンテンツを示す情報を第2モデルに入力することで得られる特徴に基づいた補正を行う。
このように、情報提供装置10は、第1ドメインに属する情報が有する特徴の学習を行う際に、第2ドメインに属する情報が有する特徴を考慮した学習を行う。より具体的には、情報提供装置10は、第1ドメインに属するサービスにおける動画像と利用者との間の関係性が有する特徴(例えば、共起性の特徴)を第1モデルに学習させる際に、第1モデルが有する中間層の出力を、第2ドメインに属する情報が有する特徴を示す情報と類似するように、第1モデルの学習を行う。
このような補正を行った場合、第1モデルは、第1ドメインに属する動画像から、第1ドメインに属する動画像の特徴を示す情報として、第2ドメインに属する動画像の特徴を示す情報に類似する情報を生成する。すなわち、第1モデルは、第2ドメインに属する動画像の特徴に応じた観点で、第1ドメインに属する動画像の特徴を示す情報を生成する。この結果、第1モデルは、第2ドメインに属する動画像の特徴をある程度考慮した推定を実現するので、第2ドメインにおける配信履歴の数が少ない場合にも、ある程度の精度を持って、第2ドメインにおける動画像と利用者との関係性を推定することができる。
〔1−2.学習処理の一例について〕
以下、情報提供装置10が実行する学習処理の一例について説明する。なお、以下の説明では、第1モデルとして、DSN(Domain Separation Network)を採用する例について説明するが、実施形態は、これに限定されるものではない。また、以下の説明では、情報提供装置10が実行する学習処理の一例として、第1ドメインに属するコンテンツと利用者との関係性の特徴を学習する際に、第2ドメインに属するコンテンツの特徴に基づいた補正を行うことで、第2ドメインに関するコンテンツと配信先となる利用者の属性との間の関係性を推定する第1モデルを学習する処理の一例について説明する。
まず、情報提供装置10は、第2ドメインサーバ200から、配信対象となるコンテンツを示す情報として、配信対象となるコンテンツのメタデータを受付ける(ステップS1)。例えば、情報提供装置10は、第2ドメインのサービスにおいて映画が配信される場合、コンテンツのメタデータとして、コンテンツの題名、ジャンル、監督、出演者、上映時間、公開念等を示すメタデータを受付ける。
このような場合、情報提供装置10は、配信対象となるコンテンツのメタデータが有する特徴を第2モデルに学習させる(ステップS2)。例えば、情報提供装置10は、第2モデルとして、多段に接続された複数のノードを有し、入力された情報(以下、「入力情報」と記載する。)次元数を徐々に低下させることで、入力情報の特徴を示す情報(以下、「特徴情報」と記載する。)を生成し、生成した特徴情報の次元数を徐々に増加させることで、入力情報に対応する出力情報を生成するモデルを生成する。より具体的な例を挙げると、情報提供装置10は、所謂オートエンコーダと呼ばれるモデルの学習を行う。
例えば、情報提供装置10は、オートエンコーダとなる第2モデルに対し、第2ドメインに属するコンテンツのメタデータを入力情報Fとして入力し、第2モデルが出力する入力情報Fを得る。そして、情報提供装置10は、入力情報Fと入力情報Fとの差が小さくなるように、第2モデルが有するノード間の接続係数、すなわち、重みの値を修正する。例えば、情報提供装置10は、バックプロパゲーション等の学習手法を用いて、入力情報と出力情報とが同じ値になるように、第2モデルの学習を行う。この結果、情報提供装置10は、第2ドメインに属するコンテンツの特徴を学習した第2モデルを得ることができる。
続いて、情報提供装置10は、DSNを用いて、利用者情報とメタデータとをそれぞれ符号化し、符号化情報から利用者情報とメタデータとをそれぞれ復号するとともに、メタデータを符号化した情報に基づいてメタデータの分類を行うための第1モデルを取得する(ステップS3)。より具体的には、情報提供装置10は、第1情報と第2情報とが入力された場合に、第1情報と第2情報との関係性に基づいた第2情報の分類結果を示す第1モデルを生成する。例えば、情報提供装置10は、利用者情報として利用者の属性情報と、コンテンツのメタデータとが入力されると、入力されたメタデータを有するコンテンツに対し、入力された利用者情報と対応する利用者がそのコンテンツと対応する確度を示す情報を出力する構成の第1モデルを生成する。
例えば、情報提供装置10は、第1エンコーダ、第2エンコーダ、第3エンコーダ、デコーダ、および分類器により構成される第1モデルを生成する。このような第1エンコーダ、第2エンコーダ、第3エンコーダ、デコーダ、および分類器は、それぞれがDNN、CNN(Convolutional Neural Network)、RNN(Recurrent Neural Network)、LSTM等、任意の構造を有するニューラルネットワークにより実現されてもよい。なお、第1モデルは、全体として、少なくとも複数の中間層(隠れ層)を有するニューラルネットワークにより構成されるものとする。
以下、第1モデルの具体例について説明する。例えば、情報提供装置10は、第1モデルに入力される第1情報Xを符号化する第1エンコーダを取得する。このような第1エンコーダは、第1情報Xに対し、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第1情報Xを符号化した第1符号化情報h を生成する。なお、このような第1エンコーダは、例えば、Target private encoderと呼ばれる場合がある。
また、情報提供装置10は、第1モデルに入力される第2情報Xを符号化する第2エンコーダを取得する。このような第2エンコーダは、第2情報Xに対し、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第2情報Xを符号化した第2符号化情報h を生成する。なお、このような第2エンコーダは、例えば、Source private encoderと呼ばれる場合がある。
また、情報提供装置10は、第1情報Xと第2情報Xとを符号化する第3エンコーダを取得する。このような第3エンコーダは、第1情報Xに対し、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第1情報Xを符号化した第3符号化情報h を生成する。また、このような第3エンコーダは、第2情報Xに対し、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第2情報Xを符号化した第4符号化情報h を生成する。
ここで、第3エンコーダは、第1情報Xを符号化するエンコーダ(以下、「第1副エンコーダ」と記載する。)と、第2情報Xとを符号化するエンコーダ(以下、「第2副エンコーダ」と記載する。)とにより実現されてもよい。例えば、第1副エンコーダおよび第2副エンコーダとは、同じ構成を有するニューラルネットワークにより構成される。より具体的には、第1副エンコーダと第2副エンコーダとは、同じ数の層を有し、各層に同じ数のノードを含み、かつ、ノード間の接続形態が同じニューラルネットワークにより構成されてもよい。
また、第3エンコーダは、第1副エンコーダの機能と第2副エンコーダの機能とを有する単一のニューラルネットワークにより実現されてもよい。すなわち、第3エンコーダは、単一のニューラルネットワークを用いて、第1情報Xを符号化した第3符号化情報h を生成するとともに、第2情報Xを符号化した第4符号化情報h を生成する機能を有していてもよい。なお、このような第3エンコーダは、Shared encorderと呼ばれる場合がある。
また、情報提供装置10は、第1符号化情報h と第3符号化情報h とから、第1復号化情報X’を生成し、第2符号化情報h と第4符号化情報h とから、第2復号化情報X’を生成するデコーダを取得する。例えば、情報提供装置10は、第1符号化情報h と第3符号化情報h との和に対して、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第1復号化情報X’を生成し、第2符号化情報h と第4符号化情報h との和に対して、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第2復号化情報X’を生成するデコーダを取得する。
なお、このようなデコーダは、第3エンコーダと同様に、第1符号化情報h と第3符号化情報h とから、第1復号化情報X’を生成するニューラルネットワークと、第2符号化情報h と第4符号化情報h とから、第2復号化情報X’を生成するニューラルネットワークとによって実現されてもよい。また、デコーダは、単一のニューラルネットワークを用いて、第1符号化情報h と第3符号化情報h とから、第1復号化情報X’を生成するとともに、第2符号化情報h と第4符号化情報h とから、第2復号化情報X’を生成してもよい。なお、このようなデコーダは、Shared decorderと呼ばれる場合がある。また、図1に示す例では、X’をハット記号を付したXで示した。
また、情報提供装置10は、複数の中間層を有し、第3エンコーダが生成した第4符号化情報h から、第2情報Xの分類結果を示す分類情報y’を生成する分類器を取得する。このような分類器は、第4符号化情報h に対して、各層のノードと対応する活性化関数やノード間の接続係数に基づいた演算を行うことで、第4符号化情報h の分類結果を示す分類情報y’を生成する。なお、分類器がどのような観点に基づいた分類を行うかについては、後述する学習処理により説明する。なお、このような分類器は、Classifierと呼ばれる場合がある。また、図1に示す例では、y’をハット記号を付したyで示した。
続いて、情報提供装置10は、利用者情報と選択された第1ドメインのコンテンツのメタデータとの組を第1ドメインサーバ100から受付ける(ステップS4)。より具体的には、情報提供装置10は、第1ドメインに属するコンテンツ(すなわち、動画像)のメタデータと、そのコンテンツの配信を受付けた利用者の利用者情報との組を学習データとして受付ける。
このような場合、情報提供装置10は、第2モデルにメタデータを入力した際に第2モデルの中間層が出力する特徴情報と、第1モデルに利用者情報とメタデータとを入力した際に分類器の中間層が出力する情報とが類似するように、第1モデルの学習を行う(ステップS5)。より具体的には、情報提供装置10は、第1モデルに対して、第1情報Xとして利用者情報を入力し、第2情報Xとしてメタデータを入力し、第1復号化情報X’と第2復号化情報X’と分類情報y’とを取得する。そして、情報提供装置10は、第1復号化情報X’と第1情報Xとの差がより小さくなり、かつ第2復号化情報X’と第2情報Xとの差がより小さくなるように、第1モデルの学習を行う。また、情報提供装置10は、入力されたメタデータを有するコンテンツと入力された利用者情報を有する利用者とが対応する旨を示す値と分類情報y’の値との差がより小さくなるように、第1モデルの学習を行う。すなわち、情報提供装置10は、入力されたメタデータを、入力された利用者情報を有する利用者が選択した旨を示す分類情報y’を出力するように、第1モデルの学習を行う。例えば、情報提供装置10は、第1モデルに含まれる各エンコーダ、デコーダ、分類器に含まれるノード間の接続係数を更新する。
ここで、情報提供装置10は、第1モデルに入力したメタデータを第2モデルに入力し、第2モデルが有する中間層のうち、所定の中間層が出力する情報を特徴情報hとして取得する。例えば、情報提供装置10は、第2モデルにメタデータを入力した際に、第2モデルが有する中間層のうちノードの数が最も少ない中間層、すなわち、最も端的に入力された情報の特徴を示す情報を出力する中間層の出力を、特徴情報hとして取得する。また、情報提供装置10は、分類器に含まれる中間層のうち、最も出力層側に近い中間層の出力を、中間情報Vとして取得する。そして、情報提供装置10は、特徴情報hと中間情報Vとの差が小さくなるように、第1モデルの学習を行う。
例えば、情報提供装置10は、あるメタデータと利用者情報とを入力した際に、第1復号化情報X’と第1情報Xとの差を第1指標とし、第2復号化情報X’と第2情報Xとの差を第2指標とし、所望する分類情報の値と実際の分類情報y’の値との差を第3指標とし、第2ドメインに属するコンテンツの特徴を学習した第2モデルを用いてメタデータから抽出した特徴情報hと分類器の中間層の出力である中間情報Vとの差を第4指標とする。そして、情報提供装置10は、第1指標から第4指標までの和を最小化するように、第1モデルが有する接続係数の更新を行う。
このような学習を行った場合、第1モデルは、第2情報(すなわち、第1ドメインに属するコンテンツのメタデータ)と同じクラス(分類)に属する情報であって第2ドメインに属する第3情報(すなわち、第2ドメインに属するコンテンツのメタデータ)の特徴を考慮して、第1ドメインに属する第1情報と第2情報との関係性を学習する。すなわち、第1モデルは、第2ドメインに属するコンテンツの特徴を考慮した状態で、第1ドメインに属するコンテンツの特徴と利用者情報の特徴との間の関係性の特徴を学習することとなる。
このような学習が行われた第1モデルに対し、第2ドメインに属するサービスを受けようとする利用者の利用者情報と、その利用者に配信しようとする第2ドメインのコンテンツのメタデータとを入力した場合、第2ドメインに属するコンテンツの特徴を考慮した状態で、第2ドメインに属するコンテンツの分類を行うことができると推定される。このため、情報提供装置10は、第2ドメインに属するサービスを受けた利用者の履歴が少ない場合にも、第2ドメインに属するコンテンツを利用者の属性に応じて分類可能なモデルを得ることができる。
例えば、情報提供装置10は、第2ドメインサーバ200から配信候補となるコンテンツのメタデータと配信先の利用者情報とを受付ける(ステップS6)。このような場合、情報提供装置10は、学習済のDSNである第1モデルに対し、配信候補となるコンテンツのメタデータと配信先の利用者情報とを入力し、分類器による分類結果を取得する(ステップS7)。より具体的には、情報提供装置10は、配信先の利用者の利用者情報を第1情報とし、配信候補となるコンテンツのメタデータを第2情報として、第1モデルに入力する。
そして、情報提供装置10は、第1モデルの分類器が出力する分類結果を第2ドメインサーバ200へと提供する(ステップS8)。例えば、情報提供装置10は、配信候補となるコンテンツが、配信先の利用者と対応するコンテンツであるか否かを示す分類結果を提供する。このような処理の結果、情報提供装置10は、コールドスタート時等、第2ドメインの利用履歴が少ない場合にも、第2ドメインに属するコンテンツと配信先の利用者とが対応するか否かを精度良く推定することができる。
〔1−3.第1モデルの学習について〕
上述したように、情報提供装置10は、所定の入力情報として第1情報と第1情報と紐付けられる第2情報とを第1モデルに入力した際に、出力情報として第2情報の分類結果を出力し、かつ、中間情報が、第1情報と紐付けられる第3情報が有する特徴に応じた特徴情報に近づくように、第1モデルの学習を行う。より具体的には、情報提供装置10は、第1ドメインに属する第1情報および第2情報と、第1ドメインとは異なる第2ドメインに属する第3情報とを用いて、第1モデルの学習を行う。
例えば、情報提供装置10は、利用者の特徴を示す第1情報(すなわち、利用者情報)と、第1情報が示す特徴を有する利用者が選択した選択対象を示す第2情報(例えば、第1ドメインに属するコンテンツのメタデータ)と、第2情報が示す選択対象とは異なる選択対象を示す第3情報(例えば、第2ドメインに属するコンテンツのメタデータ)とを用いて、第1モデルの学習を行う。より具体的な例を挙げると、情報提供装置10は、第3情報の特徴を学習した第2モデルを取得する。そして、情報提供装置10は、第1モデルの学習において、中間情報が、第2情報から第2モデルが生成した特徴情報に近づくように、第1モデルの学習を行う。
例えば、情報提供装置10は、第2モデルとして、第2情報と同じ種別の情報(例えば、同じ種別の対象を示す情報)である第3情報の特徴を学習した第2モデルを取得する。また、情報提供装置10は、第1情報と第2情報とを第1モデルに入力した際に、出力情報として第2情報の分類を示す情報を出力し、かつ、第2情報を第2モデルに入力した際に第2モデルが生成した特徴情報に中間情報が近づくように、第1モデルの学習を行う。
また、情報提供装置10は、第1情報が入力された場合に第1情報を符号化した第1符号化情報を出力する第1エンコーダを有する第1モデルを取得する。また、情報提供装置10は、第2情報が入力された場合に第2情報を符号化した第2符号化情報を出力する第2エンコーダを有する第1モデルを取得する。また、情報提供装置10は、第1情報と第2情報とが入力された場合に第1情報を符号化した第3符号化情報と、第2情報を符号化した第4符号化情報とを出力する第3エンコーダを有する第1モデルを取得する。
また、情報提供装置10は、第1符号化情報と第3符号化情報とから第1復号化情報を復号し、第2符号化情報と第4符号化情報とから第2復号化情報を復号するデコーダを含む第1モデルを取得する。また、情報提供装置10は、複数の中間層を有し、第4符号化情報から、第2情報の分類結果を示す分類情報を生成する分類部を有する第1モデルを取得する。そして、情報提供装置10は、第1情報と第1復号化情報とが類似し、第2情報と第2復号化情報とが類似するとともに、分類部が有する複数の中間層のうち所定の中間層が出力する情報が特徴情報に近づくように、第1モデルの学習を行う。
例えば、情報提供装置10は、第3エンコーダとして、複数の層を有するモデルを取得し、第1情報から第3符号化情報を生成する際に第3符号化部が有する各層が出力する情報と、第2情報から第4符号化情報を生成する際に第3符号化部が有する各層が出力する情報とが近づくように、第1モデルの学習を行う。
以下、数式を用いて、情報提供装置10が実行する学習処理の一例を説明する。例えば、第1モデルとしてDSNが採用される場合、情報提供装置10は、以下の式(1)に示すLDSNの値を最小化するように、第1モデルに含まれるノード間の接続係数を補正する。
Figure 0006523498
ここで、式(1)におけるLtaskとは、DSNにおけるクラシフィケーションロスであり、第1情報と第2情報との組に対応するラベル(例えば、第1情報が示す利用者が第2情報が示すコンテンツを気に入るか否かや、利用者がコンテンツを気に入る確度)と、分類情報が示すラベルとの誤差を示す情報である。例えば、情報提供装置10は、以下の式(2)に示すLtaskを設定する。ここで、式(2)に示すyとは、教師データとしてi番目に第1モデルに入力された第1情報と第2情報との組に対応するラベルを示し、ハットが付されたyは、その第1情報と第2情報との組を第1モデルに入力した際に、第1モデルが出力した情報、すなわち、予測された第2情報のラベルを示す情報である。
Figure 0006523498
また、式(1)におけるLreconとは、入力された第1情報と第1復号化情報との差、および、入力された第2情報と第2復号化情報との差により示されるリコンストラクションエラーである。例えば、情報提供装置10は、以下の式(3)に示すLreconを設定する。ここで式(3)に示すX は、i番目に教師データとして入力された第1情報を示し、ハットが付されたX は、教師データとしてX が示す第1情報が入力された際に第1モデルが出力した第1復号化情報を示す。また、式(3)に示すX は、i番目に教師データとして入力された第2情報を示し、ハットが付されたX は、教師データとしてX が示す第2情報が入力された際に第1モデルが出力した第2復号化情報を示す。
Figure 0006523498
また、式(1)におけるLdifferenceとは、入力された情報から異なる種別の特徴を抽出するように各エンコーダの学習を行うために設定される項である。例えば、情報提供装置10は、以下の式(4)に示すLdifferenceの値を設定する。ここで、式(4)に示すH は、第3エンコーダが抽出した第3符号化情報h に基づく行列である。また、式(4)に示すH は、第1エンコーダが抽出した第1符号化情報h に基づく行列である。また、式(4)に示すH は、第3エンコーダが抽出した第4符号化情報h に基づく行列である。また、式(4)に示すH は、第2エンコーダが抽出した第2符号化情報h に基づく行列である。
Figure 0006523498
また、式(1)におけるLsimilarityとは、第3エンコーダが第1情報から生成する第3符号化情報と、第3エンコーダが第2情報から生成する第4符号化情報とが類似するように(差別化が難しくなるように)学習を行うために設定される項である。例えば、情報提供装置10は、以下の式(5)に示すLsimilarityの値を設定する。ここで、式(5)に示すdとは、i番目に入力された教師データのドメインを示すバイナリラベルであり、ハットが付されたdは、第1モデルが予測したドメインラベルを示す。
Figure 0006523498
一方、オートエンコーダを第2モデルとした場合、情報提供装置10は、第2モデルに第2ドメインに属するコンテンツを示す第3情報を入力した際に、第3情報と類似する情報を第2モデルが出力するように、第2モデルの学習を行う。例えば、情報提供装置10は、以下の式(6)に示すLSDAEの値が小さくなるように、第2モデルが有する接続係数の値を修正する。ここで、式(6)に示すxは、第2ドメインに属するコンテンツを示す情報(例えば、メタデータ)であり、ハットが付されたxは、xを第2モデルに入力した際に第2モデルが出力するデータを示す。
Figure 0006523498
ここで、第2ドメインに属するコンテンツのメタデータを教師データとし、式(6)に示すLSDAEの値が小さくなるように第2モデルの学習を行った場合、第2モデルは、第2ドメインに属するコンテンツのメタデータが有する特徴(すなわち、第2ドメインに属するコンテンツの特徴)を学習することができる。より具体的には、第2モデルは、第2ドメインに属するコンテンツのメタデータが第3情報として入力された場合は、第3情報が有する特徴を示す特徴情報を抽出し、抽出した特徴情報から元も第3情報を復元して出力する。
一方、第1モデルは、第1ドメインに属するコンテンツのメタデータを第2情報とし、第2情報を符号化した情報から第2情報の分類を示す分類結果を出力することとなる。すなわち、第1モデルの一部は、第2モデルと同様に、入力された情報が有する特徴を抽出し、抽出した特徴から入力された情報の分類結果を出力する。
ここで、第1ドメインに属するコンテンツの種別と、第2ドメインに属するコンテンツの種別とが類似する場合、第2モデルは、第1ドメインに属するコンテンツの特徴をある程度精度良く抽出することができると推定される。より具体的には、第2モデルは、第2ドメインに属するコンテンツを用いた学習が行われた場合、第2ドメインに属するコンテンツが有する特徴を考慮して、第1ドメインに属するコンテンツの特徴を抽出することができると考えられる。
この結果、第1モデルが第1ドメインに属する第2情報から抽出する特徴が、第2モデルが第2情報から抽出した特徴に類似するように第1モデルの学習を行った場合、第1モデルは、第2ドメインに属するコンテンツの特徴を考慮して、コンテンツと利用者との間の共起性を学習することができると考えられる。そこで、情報提供装置10は、以下の式(7)に示すEの値が最小化するように、第1モデルおよび第2モデルの学習を行う。
Figure 0006523498
ここで、式(7)に示すLDSNは、式(1)に示すLDSNである。また、式(7)に示すLitemは、第1モデルが第2情報から抽出した第2情報の特徴と、第2モデルが第2情報から抽出した第2情報の特徴とか類似するように、第1モデルの学習を行うための項である。例えば、情報提供装置10は、Litemとして、以下の式(8)に示す項を設定する。ここで、式(8)に示すvyiとは、i番目の第2情報を第1モデルに入力した際に、第1モデルの分類器に含まれる隠れ層のうち、出力層の前段の隠れ層が出力したベクトル(すなわち、ソフトマックスに対する重み)である。すなわち、式(8)に示すvyiとは、第1モデルが有する分類器が第2情報の分類を行う際に用いる第2情報の特徴を示す特徴情報である。また、式(8)に示すhとは、i番目の第2情報を第2モデルに入力した際に、第2モデルが有する隠れ層のうち最も次元数が少ない情報を出力する隠れ層が出力したベクトルを示す。
Figure 0006523498
なお、式(7)に示すλitemとは、Litemに対する所定の重みである。また、式(7)に示すLIRとは、第1モデルおよび第2モデルに入力した第2情報と、第2モデルが出力した第2情報との差を示す損失関数である。また、式(7)に示すλIRとは、LIRに対する所定の重みである。
すなわち、情報提供装置10は、第1ドメインに属する第1情報と第2情報との組に対応するラベルと、第1モデルが出力する分類情報が示すラベルとが類似するように第1モデルの学習を行う。また、情報提供装置10は、第1情報と第1復号化情報との差および第2情報と第2復号化情報との差が小さくなるように第1モデルの学習を行う。また、情報提供装置10は、第1エンコーダ、第2エンコーダ、および第3エンコーダが入力された第1情報および第2情報から異なる特徴を抽出するように第1モデルの学習を行う。また、情報提供装置10は、第3エンコーダが第1情報から生成する第3符号化情報と、第3エンコーダが第2情報から生成する第4符号化情報とが類似するように第1モデルの学習を行う。また、情報提供装置10は、第2モデルが第2情報から生成した特徴情報と、第1モデルが第2情報から生成した特徴情報とが類似するように第1モデルの学習を行う。また、情報提供装置10は、上述した第1モデルの学習と平行して、第2モデルに第2情報を入力した際に、第2情報と類似する情報を出力するように、第2モデルの学習を行う。
例えば、図2は、実施形態に係るモデルが有する構造の概念の一例を示す図である。図2に示す例では、図1に示した第1モデルおよび第2モデルにより構成されるモデル全体の構造(アーキテクチャ)の概念について記載した。
例えば、第1モデルは、利用者情報とコンテンツのメタデータとが入力された場合、複数の隠れ層による演算処理を実行することで、利用者情報を示すユーザベクトルuを生成するとともに、コンテンツの特徴を示すコンテンツベクトルvを生成する。ここで、コンテンツベクトルvは、分類器が有する隠れ層のうち、出力層の前段の隠れ層が出力する情報(すなわち、ソフトマックス演算を行う前段の情報)であり、式(8)に示すvyiに対応する。また、ユーザベクトルuは、分類器が有する隠れ層のうち、コンテンツベクトルvを出力する層よりも前段の隠れ層が出力する情報である。そして、第1モデルは、生成したコンテンツベクトルvに基づいて、コンテンツが各クラスに分類される確度を分類結果として出力する。
一方、第2モデルは、コンテンツのメタデータが入力された場合に、入力された情報の次元数を圧縮することでコンテンツの特徴を示す特徴情報hを生成し、生成した特徴情報hに基づいて出力情報を生成する。そして、情報提供装置10は、特徴情報hとコンテンツベクトルvとが類似するように、第1モデルおよび第2モデルの学習を行う。
このような学習処理の結果、情報提供装置10は、第2ドメインに属する第3情報の特徴を考慮した状態で、第1ドメインに属する第1情報と第2情報との共起性を第1モデルに学習させることができる。また、第2情報と第3情報との種別が類似する場合、第1ドメインにおける第1情報と第2情報との共起性は、第2ドメインにおける第1情報と第3情報との共起性に類似すると考えられる。このため、情報提供装置10は、第2ドメインに属する教師データが少ない場合にも、上述した学習処理を実行することで、第2ドメインにおける第1情報と第3情報との共起性を推定可能なモデルを得ることができる。
また、情報提供装置10は、第1ドメインに属する第2情報の特徴を第1モデルに学習させる。ここで、第2ドメインに属する第3情報が第1ドメインに属する第2情報と種別が類似する場合、第1モデルは、第2ドメインに属する情報の特徴をある程度の精度で抽出することができると推定される。この結果、情報提供装置10は、第2ドメインに属する第3情報に、第1ドメインに属する第2情報とは異なる情報が含まれる場合にも、第3情報の特徴に基づいた分類を行うことができるので、第2ドメインに属する情報の分類を実現することができる。
〔2.情報提供装置の構成〕
続いて、図3を用いて、情報提供装置10が有する機能構成の一例について説明する。図3は、実施形態に係る情報提供装置が有する機能構成の一例を示す図である。通信部20は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部20は、ネットワークNと有線または無線で接続され、第1ドメインサーバ100および第2ドメインサーバ200との間で情報の送受信を行う。
記憶部30は、例えば、RAM、フラッシュメモリ等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。また、記憶部30は、第1ドメイン情報データベース31、第2ドメイン情報データベース32、およびモデルデータベース33を記憶する。
第1ドメイン情報データベース31は、第1ドメインに属する情報が登録される。例えば、図4は、実施形態に係る第1ドメイン情報データベースに登録される情報の一例を示す図である。図4に示すように、第1ドメイン情報データベース31には、「データID(Identifier)」、「ドメイン情報」、「利用者情報」および「コンテンツ情報」といった項目を有する情報が登録される。
ここで、「データID」とは、登録された情報を識別するための識別子である。また、「ドメイン情報」とは、情報が属するドメインを示す情報である。また、「利用者情報」とは、対応付けられたコンテンツ情報が示すコンテンツを選択した利用者を示す情報であり、例えば、利用者の属性を示す属性情報である。また、「コンテンツ情報」とは、対応付けられた利用者情報が示す利用者により選択されたコンテンツであって、対応付けられたドメイン情報が示すドメインに属するコンテンツを示す情報である。例えば「コンテンツ情報」とは、コンテンツのメタデータである。
例えば、図4に示す例では、第1ドメイン情報データベース31には、データID「データ#1−1」、ドメイン情報「ドメイン#1」、利用者情報「利用者#1」およびコンテンツ情報「コンテンツ#1−1」が対応付けて登録されている。このような情報は、データID「データ#1−1」が示す情報がドメイン情報「ドメイン#1」が示すドメインに属する情報であり、利用者情報「利用者#1」が示す属性情報と、コンテンツ情報「コンテンツ#1−1」が示すメタデータとの組である旨を示す。
なお、図4に示す例では、「利用者#1」や「コンテンツ#1−1」といった概念的な値を記載したが、実際には、第1ドメイン情報データベース31には、利用者の属性を示す各種の属性情報や、コンテンツのメタデータ等が登録されることとなる。また、図4に示す情報以外にも、第1ドメイン情報データベース31には、任意の情報が登録されていてよい。
図3に戻り、説明を続ける。第2ドメイン情報データベース32は、第2ドメインに属する情報が登録される。例えば、図5は、実施形態に係る第2ドメイン情報データベースに登録される情報の一例を示す図である。図5に示すように、第2ドメイン情報データベース32には、「データID」、「ドメイン情報」、および「コンテンツ情報」といった項目を有する情報が登録される。
例えば、図5に示す例では、第2ドメイン情報データベース32には、データID「データ#2−1」、ドメイン情報「ドメイン#2」、およびコンテンツ情報「コンテンツ#2−1」が対応付けて登録されている。このような情報は、データID「データ#2−1」が示す情報がドメイン情報「ドメイン#2」が示すドメインに属する情報であり、コンテンツ情報「コンテンツ#2−1」が示すメタデータを含む旨を示す。
なお、図5に示す例では、「コンテンツ#2−1」といった概念的な値を記載したが、実際には、第2ドメイン情報データベース32には、コンテンツのメタデータ等が登録されることとなる。また、図5に示す情報以外にも、第2ドメイン情報データベース32には、任意の情報が登録されていてよい。
図3に戻り、説明を続ける。モデルデータベース33には、第1モデルおよび第2モデルを含むモデル(以下、「学習モデル」と記載する場合がある。)が登録される。
例えば、モデルデータベース33には、学習モデルに入力される情報である入力情報が入力される入力層と、入力層に入力された入力情報に対して所定の処理を順次行う複数の中間層(隠れ層)と、中間層の出力に基づいて、入力情報に対応する出力情報を生成する出力層とを有する学習モデルのデータが登録されている。より具体的には、モデルデータベース33には、各ノードの接続関係や、ノード間の接続係数を示すデータが登録される。
ここで、学習モデルは、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、入力層に入力された情報と対応する情報を出力層から出力するようコンピュータを機能させる。なお、学習モデルは、人工知能ソフトウェアの一部であるプログラムモジュールとしての利用が想定されるものであってもよい。
例えば、モデルデータベース33には、図1に示す構造を有する第1モデルおよび第2モデルを含む学習モデルが登録される。例えば、モデルデータベース33には、複数の中間層を有し、第1情報を符号化することで第1符号化情報を生成する第1エンコーダ、複数の中間層を有し、第2情報を符号化することで第2符号化情報を生成する第2エンコーダ、複数の中間層を有し、第1情報を符号化することで第3符号化情報を生成するとともに第2情報を符号化することで第4符号化情報を生成する第3エンコーダを含む第1モデルが登録される。また、モデルデータベース33には、複数の中間層を有し、第1符号化情報と第3符号化情報とから第1復号化情報を生成するとともに、第2符号化情報と第4符号化情報とから第2復号化情報を生成するデコーダを含む第1モデルが登録される。また、モデルデータベース33には、複数の中間層を有し、第4符号化情報から第1情報に応じた第2情報の分類結果を示す分類情報を生成する分類器を含む第1モデルが登録される。また、モデルデータベース33には、複数の中間層を有し、入力された情報の特徴を示す特徴情報を生成する第2モデルが登録される。
このような学習モデルは、第1モデルの入力層に第1情報と第2情報とが入力され、第2モデルの入力層に第2情報が入力された場合に、第1モデルの出力層から、第1情報と類似する第1符号化情報と、第2情報に類似する第2符号化情報と、第1情報に応じた第2情報の分類を示す分類情報とを出力するように学習が行われる。また、学習モデルは、分類器に含まれる中間層が出力した第2情報に基づく中間情報が、第2モデルの中間層が出力する特徴情報と類似するように学習が行われる。
このような学習モデルは、第1モデルの入力層に第1情報と第3情報が入力された場合に、第1情報に応じた第3情報の分類を示す分類情報を出力するようにコンピュータを機能させる。例えば、学習モデルは、CPU及びメモリを備えるコンピュータにて用いられる。具体的には、コンピュータのCPUが、メモリに記憶された学習モデルからの指令に従って、学習モデルの入力層に入力された情報に対して、ニューラルネットワークにおける学習済みの重みづけ係数と応答関数等に基づく演算を行い、出力層から入力情報に対応する出力情報を出力するよう動作する。
例えば、学習モデルは、第1モデルの入力層に第2ドメインに属するサービスを利用する利用者を示す第1情報(例えば、利用者の属性情報)と、第2ドメインに属するコンテンツを示す第2情報(例えば、コンテンツのメタデータ)とが入力された場合、第1情報に応じた第2情報の分類結果を出力するようコンピュータを機能させる。すなわち、学習モデルは、第1モデルの入力層に第2ドメインに属するサービスを利用する利用者を示す第1情報と、第2ドメインに属するコンテンツを示す第2情報とが入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、入力層に入力された第1情報および第2情報に対し、出力層以外の各層に属する各要素を第1要素として、第1要素と第1要素の重みとに基づく演算を行うことにより、第1情報に応じた第2情報の分類結果を出力するようコンピュータを機能させる。例えば、学習モデルは、入力された属性情報を有する利用者が、入力されたメタデータと対応するコンテンツを気に入るか否かを、コンテンツを気に入る確度を示す数値等を分類結果として出力する。
ここで、学習モデルをDNN等、1つまたは複数の中間層を有するニューラルネットワークで実現される場合、学習モデルが含む第1要素とは、入力層または中間層が有するいずれかのノードと見做すことができ、第2要素とは、第1要素と対応するノードから値が伝達されるノード、すなわち、次段のノードと対応し、第1要素の重みとは、第1要素と対応するノードから第2要素と対応するノードに伝達される値に対して考慮される重み、すなわち、接続係数である。
ここで、情報提供装置10は、第1ドメイン情報データベース31および第2ドメイン情報データベース32に登録された情報を用いて学習モデルを生成する。すなわち、学習モデルは、第2ドメインに属する第3情報の特徴を学習した第2モデルを含み、第1ドメインに属する第1情報と第2情報とを第1モデルに入力し、第1ドメインに属する第2情報を第2モデルに入力した際に、第1モデルが第1情報に応じた第2情報の分類結果を出力するとともに、第1モデルが有する中間層のうち所定の層が出力する情報が、第2モデルが第2情報から抽出した第2情報の特徴を示す特徴情報に近づくように、学習が行われたモデルである。
このように、第1ドメイン情報データベース31および第2ドメイン情報データベース32に登録される学習データは、第1情報と第2情報とが入力される入力層と、出力層と、入力層から出力層までのいずれかの層であって出力層以外の層に属する第1要素と、第1要素と第1要素の重みとに基づいて値が算出される第2要素と、を含み、第1情報と第2情報との特徴を反映させた重みに基づく演算を行うことにより、入力された第1情報と第2情報とに対応する出力情報(例えば、第1情報に応じた第2情報の分類結果)を出力層から出力するよう、コンピュータを機能させるためのデータである。
なお、情報提供装置10は、上述したニューラルネットワーク等、任意の構造を有するモデルを用いて、分類結果の算出を行ってよい。具体的には、学習モデルは、第2ドメインに属する第3情報の特徴を学習した第2モデルを有し、第1モデルに第1ドメインに属する第1情報および第2情報とが入力された際に、第1情報に応じた第2情報の分類結果を出力するとともに、第1モデルが第1情報と第2情報とから生成した中間情報が、第2モデルに第2情報を入力した際に第2モデルの中間層が出力した第2情報の特徴を示す特徴情報と類似するように学習が行われたものであればよい。また、学習モデルは、第2ドメインに属する第3情報が入力された際に、第3情報の分類結果を出力するものであればよい。
ここで、学習モデルは、第1情報と第3情報とが入力された際に、第1情報に応じた第3情報の分類結果を出力するように計数が設定される。情報提供装置10は、このような学習モデルを用いて、第1情報に対応する第3情報の分類結果を得る。
なお、上記例では、学習モデルが、第1情報と第3情報とが入力された際に第1情報に応じた第3情報の分類結果を出力するモデル(以下、モデルXとする)である例を示した。しかし、実施形態に係る学習モデルは、モデルXにデータの入出力を繰り返すことで得られる結果に基づいて生成されるモデルであってもよい。例えば、学習モデルは、利用者の属性情報を示す第1情報と、コンテンツのメタデータを示す第3情報とを入力とし、モデルXが出力する第3情報の分類結果を出力とするよう学習されたモデル(モデルY)であってもよい。または、学習モデルは、第1情報および第3情報を入力とし、モデルYの出力値を出力とするよう学習されたモデルであってもよい。
また、情報提供装置10がGAN(Generative Adversarial Networks)を用いた学習処理を行う場合、学習モデルは、GANの一部を構成するモデルであってもよい。
制御部40は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、情報提供装置10内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部40は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
また、制御部40は、記憶部30に記憶される学習モデルを実行することで、学習モデルの入力層に入力された第1情報と第3情報とに対し、学習モデルが有する係数(すなわち、学習モデルが学習した各特徴に対応する係数)に基づく演算を行い、入力された第1情報に応じた第3情報の分類結果を示す分類情報を生成し、学習モデルの出力層から出力する。
図3に示すように、制御部40は、収集部41、取得部42、学習部43、受付部44、演算部45、および提供部46を有する。収集部41は、モデルの学習に用いる教師データの収集を行う。より具体的には、収集部41は、第1ドメインに属する第1情報およびその第1情報と紐付けられる第2情報との組を収集する。また、収集部41は、第2情報と同じ種別の情報であって、第1ドメインとは異なる第3ドメインに属する第2情報を収集する。
例えば、収集部41は、第1ドメインサーバ100から、第1ドメインに属するコンテンツのメタデータを第2情報とし、その第2情報が示すメタデータを有するコンテンツを選択した利用者の属性情報を第1情報として収集する。そして、収集部41は、収集した第1情報および第2情報を第1ドメイン情報データベース31に登録する。また、収集部41は、第2ドメインサーバ200から、第2ドメインに属するコンテンツのメタデータを第3情報として収集する。そして、収集部41は、収集した第3情報を第2ドメイン情報データベース32に登録する。
取得部42は、学習モデルを取得する。例えば、取得部42は、学習部43から学習処理を行う旨の通知を受付けると、モデルデータベース33に登録された学習モデルを取得する。なお、取得部42は、モデルデータベース33にモデルが登録されていない場合は、モデルの生成を行ってもよい。すなわち、以下に説明する「取得」とは、記憶領域上に登録されたモデルのデータを取得する処理のみならず、モデルのデータを生成することでモデルを取得する処理をも含む概念である。
例えば、取得部42は、DNNにより構成されるモデルを学習モデルとして取得する。例えば、取得部42は、第1モデルと、第2モデルとを含む学習モデルを取得する。より具体的には、取得部42は、入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する。
より具体的な例を挙げると、取得部42は、第1モデルとして、第1情報が入力された場合に第1情報を符号化した第1符号化情報を出力する第1エンコーダを含む第1モデルを取得する。また、取得部42は、第2情報が入力された場合に第2情報を符号化した第2符号化情報を出力する第2エンコーダを有する第1モデルを取得する。また、取得部42は、第1情報と第2情報とが入力された場合に第1情報を符号化した第3符号化情報と、第2情報を符号化した第4符号化情報とを出力する第3エンコーダを有する第1モデルを取得する。また、取得部42は、第1符号化情報と第3符号化情報とから第1復号化情報を復号し、第2符号化情報と第4符号化情報とから第2復号化情報を復号するデコーダを有する第1モデルを取得する。また、取得部42は、複数の中間層を有し、第4符号化情報から、第2情報の分類結果を示す分類情報を生成する分類器を有する第1モデルを取得する。
また、取得部42は、第3情報の特徴を学習した第2モデルを含む学習モデルを取得する。例えば、取得部42は、第2モデルとして、第2情報と同じ種別の第3情報が有する特徴をあらかじめ学習したモデルを取得する。例えば、取得部42は、オートエンコーダを第2モデルとして生成し、生成した第2モデルに、第3情報が有する特徴を学習させる。より具体的には、取得部42は、第2ドメイン情報データベース32に登録されたコンテンツ情報(すなわち、コンテンツのメタデータ)を第3情報として第2モデルに入力し、第2モデルの出力が入力した第3情報に類似するように、バックプロパゲーション等の学習技術を用いて、第2モデルが有する接続係数を修正する。この結果、取得部42は、第2ドメインに属する第3情報の特徴を学習した第2モデルを取得することができる。そして、取得部42は、第1モデルと第2モデルとを学習部43に提供する。
学習部43は、学習モデルを生成し、生成した学習モデルを記憶部30のモデルデータベース33に格納する。例えば、学習部43は、第1ドメインに属する第1情報と第2情報とを第1モデルに入力した際に、第1情報に応じた第2情報の分類結果を示す分類情報を第1モデルが出力するとともに、第1モデルが有する所定の中間層(例えば、分類器が有する複数の中間層のうち所定の中間層)が出力する情報が、第2モデルに第2情報を入力した際に第2モデルが有する所定の中間層(例えば、出力する情報の次元数が最も少ない中間層)が出力する特徴情報と類似するように、学習モデルが有する接続係数を修正することで、学習モデルの学習を行う。
なお、学習部43は、いかなる学習アルゴリズムを用いて学習モデルの学習を行ってもよい。例えば、学習部43は、ニューラルネットワーク(neural network)、サポートベクターマシン(support vector machine)、クラスタリング、強化学習等の学習アルゴリズムを用いて学習モデルを生成してもよい。一例として、学習部43がニューラルネットワークを用いて学習モデルを生成する場合、学習モデルは、一以上のニューロンを含む入力層と、一以上のニューロンを含む中間層と、一以上のニューロンを含む出力層とを有する。そして、学習部43は、第1ドメイン情報データベース31に登録された情報を用いて、学習モデルが有する接続係数を修正することで、学習モデルの学習を実現する。
例えば、学習部43は、第1モデルに所定の入力情報を入力した際に、第1モデルが所定の入力情報と対応する所定の出力情報を出力し、かつ、複数の中間層のうち所定の中間層が出力する中間情報が、所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、第1モデルの学習を行う。例えば、学習部43は、所定の入力情報として第1ドメインと関連する入力情報を前記第1モデルに入力した際に、出力情報として入力情報の分類を示す情報を出力し、かつ、中間情報が、第1ドメインとは異なる第2ドメインと関連する対応情報を考慮した特徴情報に近づくように、第1モデルの学習を行う。
また、学習部43は、所定の入力情報として第1情報とその第1情報と紐付けられる第2情報とを第1モデルに入力した際に、出力情報として第2情報の分類結果を出力し、かつ、中間情報が、その第2情報が有する特徴に応じた特徴情報であって、第1情報と紐付けられる第3情報が有する特徴を考慮した特徴情報に近づくように、第1モデルの学習を行う。また、学習部43は、第1ドメインに属する第1情報および第2情報と、第1ドメインとは異なる第2ドメインに属する第3情報とを用いて、第1モデルの学習を行う。
例えば、学習部43は、利用者の特徴を示す第1情報と、その第1情報が示す特徴を有する利用者が選択した選択対象を示す第2情報と、その第2情報が示す選択対象とは異なる選択対象を示す第3情報とを用いて、第1モデルの学習を行う。また、学習部43は、中間情報が、第2情報から第2モデルが生成した特徴情報に近づくように、第1モデルの学習を行う。また、学習部43は、第1情報と第2情報とを第1モデルに入力した際に、出力情報として第2情報の分類を示す情報を出力し、かつ、第2情報を第2モデルに入力した際に第2モデルが生成した特徴情報に中間情報が近づくように、第1モデルの学習を行う。また、学習部43は、第1情報と第1復号化情報とが類似し、第2情報と第2復号化情報とが類似するとともに、分類器が有する複数の中間層のうち所定の中間層が出力する情報が特徴情報に近づくように、第1モデルの学習を行う。
以下、学習部43が実行する学習処理の一例について説明する。まず、学習部43は、学習処理を実行する所定のタイミングで、取得部42に対し、学習モデルの取得を指示する。このような場合、取得部42は、上述した第1エンコーダ、第2エンコーダ、第3エンコーダ、デコーダおよび分類器を有する第1モデルと、第2ドメイン情報データベース32に登録されたコンテンツ情報の特徴を学習した第2モデル、すなわち、第2ドメインに属する第3情報の特徴を学習した第2モデルを取得し、取得した第1モデルおよび第2モデルを学習部43に提供する。
続いて、学習部43は、第1ドメイン情報データベース31から、教師データとなる第1情報と第2情報との組を取得する。すなわち、学習部43は、第1ドメインに属するコンテンツを選択した利用者の利用者情報を第1情報として取得し、第1情報として取得した利用者情報が示す利用者が選択したコンテンツのコンテンツ情報を第2情報として取得する。そして、学習部43は、第1モデルに第1情報と第2情報とを入力するとともに、第2モデルに第2情報を入力する。例えば、学習部43は、第1モデルが有する第1エンコーダおよび第3エンコーダに第1情報を入力し、第2エンコーダおよび第3エンコーダに第2情報を入力するとともに、第2モデルに対して第2情報を入力する。
ここで、第1情報および第2情報が入力された場合、第1モデルは、第1情報から第1符号化情報を生成し、第2情報から第2符号化情報を生成するとともに、第1情報および第2情報から第3符号化情報および第4符号化情報を生成する。また、第1モデルは、第1符号化情報と第3符号化情報とに基づいて、第1復号化情報を生成し、第2符号化情報と第4符号化情報とに基づいて、第2符号化情報を生成する。また、第1モデルは、第4符号化情報に基づいて、分類情報を生成する。また、第2モデルは、第2情報から、第2情報が有する特徴を示す特徴情報を生成する。
そして、学習部43は、第1復号化情報と第1情報とが類似し、第2復号化情報と第2情報とが類似し、分類情報が第1情報に応じた第2情報の分類結果に類似するとともに、第1モデルが有する所定の中間層が出力する中間情報が、第2モデルが生成した特徴情報と類似するように、学習モデルの学習を行う。例えば、学習部43は、上述した式(7)が最小化するように、第1モデルが有する接続係数の修正を行うことで、学習モデルの学習を行う。その後、学習部43は、学習を行った学習モデルをモデルデータベース33に登録する。
このような学習処理の結果、学習モデルは、第2ドメインに属する第3情報の特徴を考慮した状態で、第1情報と第2情報との間の関係性を学習する。ここで、第2情報と第3情報とが同じクラスに属するため、学習モデルは、間接的に第1情報と第3情報との間の関係性を学習することとなる。この結果、学習モデルは、教師データとなる第1情報と第3情報との数が少ない場合にも、第1情報と第3情報との間の関係性を学習できる。また、学習モデルは、第2ドメインに属する第3情報に、第1ドメインに属する第2情報と共通しない情報が含まれる場合にも、第3情報の特徴を考慮した学習を行うので、第1情報に応じた第3情報の分類を実現することができる。
受付部44は、学習モデルを用いた推定処理の実行要求を受付ける。例えば、第2ドメインサーバ200は、第2ドメインにアクセスした利用者の利用者情報を取得し、取得した利用者情報を推定処理の実行要求と共に受付部44に送信する。このような場合、受付部44は、第2ドメインサーバ200から受付けた利用者情報を演算部45に出力する。
演算部45は、学習モデルを用いた演算を行うことで、第1情報に応じた第3情報の分類結果を推定する推定処理を実行する。例えば、演算部45は、モデルデータベース33に登録された学習モデルを読み出す。そして、演算部45は、第2ドメインサーバ200から受付けた利用者情報を第1情報とし、第2ドメイン情報データベース32に登録されたコンテンツ情報を第3情報として学習モデルに入力することで、第1情報に応じた第3情報の分類結果を取得する。例えば、演算部45は、第2ドメイン情報データベース32に登録された各コンテンツ情報ごとに、第2ドメインサーバ200から受付けた利用者情報に応じた分類情報を生成する。
すなわち、演算部45は、学習モデルに従った情報処理により、利用者の情報と第2ドメインに属するコンテンツの情報とを学習モデルの入力層に入力する。そして、演算部45は、入力した情報を中間層と出力層に伝播させることで出力層から利用者の情報に応じたコンテンツの分類結果(例えば、コンテンツを利用者が気に入るか否かを示す情報や、コンテンツを利用者が気に入る確度)を出力させる。すなわち、演算部45は、学習モデルに利用者の情報とコンテンツの情報とを入力することで、利用者に応じたコンテンツの分類を推定する。
例えば、演算部45は、第2ドメインサーバ200から受付けた利用者情報を第1情報として第1モデルの第1エンコーダと第3エンコーダとに入力し、第2ドメインに属するコンテンツのコンテンツ情報を第3情報として第2エンコーダおよび第3エンコーダに入力する。そして、演算部45は、学習モデルの分類器が出力した分類情報を取得する。
提供部46は、演算部45によって取得された分類結果を提供する。例えば、提供部46は、演算部45によって推定された第2ドメインに属する各コンテンツの分類結果を第2ドメインサーバ200に提供する。この結果、第2ドメインサーバ200は、例えば、利用者がより気に入ると推定されるコンテンツの情報を優先的に利用者に提供することができる。
〔3.変形例〕
上記では、情報提供装置10による学習処理および推定処理の一例について説明した。しかしながら、実施形態は、これに限定されるものではない。以下、学習処理および推定処理のバリエーションについて説明する。
〔3−1.モデル構成について〕
上述した説明では、情報提供装置10は、第1モデルと第2モデルとを含む学習モデルの学習を行い、学習モデルを用いた推定処理を実行した。しかしながら、実施形態は、これに限定されるものではない。例えば、情報提供装置10は、第1モデルと第2モデルとを個別のモデルとして取り扱ってもよい。例えば、情報提供装置10は、第1モデルを学習モデルとし、第2モデルを用いて、学習モデルの学習を行ってもよい。また、情報提供装置10は、第1モデルのみを用いて、上述した推定処理を実行してもよい。
また、情報提供装置10は、DSNの構成以外にも、任意の構成を有する第1モデルを学習モデルとして採用してもよい。例えば、情報提供装置10は、DNN、CNN、RNN、LSTM等、任意の構造を有するニューラルネットワークを第1モデルとして生成する。より具体的には、情報提供装置10は、第1情報と第2情報とを入力する入力層と、中間層と、第1情報に応じた第2情報の分類結果を出力する出力層とを有する第1モデルを生成する。そして、情報提供装置10は、第1モデルに対して第1情報と第2情報とを入力した際に、第1モデルが第1情報に応じた第2情報の分類情報を出力し、かつ、第1モデルが有する所定の中間層の出力が、第2情報の特徴情報と類似するように、第1モデルの学習を行えばよい。
ここで、情報提供装置10は、任意の構造を有する第1モデルにおける任意の中間層の出力を中間情報とし、中間情報が特徴情報に類似するように第1モデルの学習を行えばよい。例えば、情報提供装置10は、第1情報に基づく情報(例えば、第1情報に基づく値が伝達されるノードが出力した値)と、第2情報に基づく情報(例えば、第2情報に基づく値が伝達されるノードが出力した値)との両方が伝達される中間層、すなわち、第1情報と第2情報とに基づく値を出力する中間層が出力する情報を中間情報とすればよい。
また、情報提供装置10は、第3情報の特徴を考慮した情報であれば、任意の情報を特徴情報として採用してよい。例えば、情報提供装置10は、第3ドメインに属する各コンテンツから任意の手法で予め生成した特徴情報を用いて、第1モデルの学習を行ってもよい。例えば、情報提供装置10は、第1ドメインに属するコンテンツのコンテンツ情報を第2情報として第1モデルの学習を行う場合、そのコンテンツと類似する第2ドメインのコンテンツを特定し、特定したコンテンツの特徴を示す情報を特徴情報として取得する。そして、情報提供装置10は、第1モデルの学習を行う際、第1モデルが出力する中間情報が、取得した特徴情報に類似するように、第1モデルの学習を行えばよい。
ここで、式(7)を用いて学習モデルの学習を行う場合、第1モデルが出力する各復号化情報は、入力した第1情報や第2情報に類似するように学習が行われる。このような学習が行われた場合、第1モデルが学習する第1情報と第2情報との関係性は、ある程度担保されうる。そこで、情報提供装置10は、中間情報が、任意の第3情報の特徴を示す特徴情報に類似するように、第1モデルの学習を行ってもよい。
また、クロスドメインレコメンデーションを考慮すると、第2ドメインに属するコンテンツの情報は、第1ドメインに属するサービスを受けた利用者が選択しうるコンテンツを示す情報となる。このため、第3情報は、第1情報と紐付けられる情報であって、第1情報とは異なるドメインに属する情報であると言える。そこで、情報提供装置10は、第1情報と紐付けられる情報であれば、学習モデルの利用目的に応じた任意の情報の特徴を示す特徴情報を用いて、第1モデルの学習を行ってよい。
すなわち、情報提供装置10は、入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルであれば、任意の構成を有するモデルを第1モデルとして採用してよい。また、情報提供装置10は、第1モデルに所定の入力情報を入力した際に、第1モデルが当該所定の入力情報と対応する所定の出力情報を出力し、かつ、複数の中間層のうち所定の中間層が出力する中間情報が、所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、第1モデルの学習を行うのであれば、任意の学習手法を採用してよい。
〔3−2.第1モデルのアーキテクチャについて〕
上述した説明では、情報提供装置10は、利用者情報とコンテンツ情報とを入力すると、コンテンツ情報が示すコンテンツを利用者情報が示す利用者が気に入るか否か、若しくは、利用者が気に入る確度を示す分類情報を出力するよう、学習モデルの学習を行った。しかしながら、実施形態は、これに限定されるものではない。
例えば、図6は、実施形態に係る情報提供装置が生成する学習モデルのバリエーションを説明する図である。図6に示す学習モデルは、基本的に図1に示す学習モデルと同様に、各エンコーダ、デコーダ、および分類器を有する第1モデルと、第2モデルとを有する。ここで、図6に示す例では、情報提供装置10は、第2ドメインに属する各コンテンツが共通して有する特徴を第2モデルに学習させ、第2モデルが出力する特徴情報と分類器が生成する中間情報とを類似させることで、第1モデルに対して第2ドメインに属する各コンテンツが共通して有する特徴を学習させる。
例えば、情報提供装置10は、第2モデルの入力層に対し、第2ドメインに属する各コンテンツのメタデータを並列に入力し、入力した各コンテンツのメタデータの次元数を減少させ、その後、元のメタデータを復元するように、第2モデルの学習を行う。このような学習処理の結果、第2モデルは、第2ドメインに属する各コンテンツが共通して有する特徴を抽出するようになる。
そして情報提供装置10は、第2ドメインに属する各コンテンツが共通して有する特徴を特徴情報とし、第1モデルの分類器が生成する中間情報が特徴情報に近づくように学習を行う。具体的には、情報提供装置10は、第1モデルの分類器が生成する中間情報と、第2ドメインに属する各コンテンツが共通して有する特徴を示す特徴情報との差分が最小化するように、第1モデルの学習を行う。このような処理の結果、情報提供装置10は、第2ドメインに属するコンテンツの特徴を考慮して、第1ドメインに属するコンテンツと利用者との間の関係性を学習モデルに学習させることができる。
〔3−3.推定処理について〕
ここで情報提供装置10は、第2ドメインに属するコンテンツのうち利用者と対応するコンテンツを推定する場合、学習モデルの全体を用いて推定を行ってもよく、学習モデルの一部から生成された推定モデルを用いて、推定を行ってもよい。例えば、情報提供装置10は、上述した学習処理により学習モデルの学習を実行した場合は、学習モデルから第2エンコーダ、第3エンコーダ、および分類器を抽出し、抽出した第2エンコーダ、第3エンコーダ、および分類器を含む推定モデルを生成する。そして、情報提供装置10は、推定処理を実行する場合は、利用者情報を第1情報とし、第2ドメインに属するコンテンツのメタデータを第2情報として、推定モデルの第2エンコーダおよび第3エンコーダに入力することで、第1情報に応じた第2情報の分類結果を推定してもよい。
〔3−4.配信対象について〕
上述した例では、情報提供装置10は、第1ドメインまたは第2ドメインに属するコンテンツの配信を行う例について記載した。ここで、情報提供装置10は、動画像、音楽、ウェブページ等といったコンテンツを配信対象としてもよく、広告に関するコンテンツを配信対象としてもよい。
例えば、情報提供装置10は、第1ドメインに属するウェブページを閲覧中に利用者が選択した広告の情報(以下、「広告情報」と記載する。)を第2情報とし、第2ドメインに属するウェブページを閲覧中に配信される広告の広告情報を第3情報としてもよい。そして、情報提供装置10は、上述した学習処理および推定処理を実行することで、第2ドメインに属するウェブページを閲覧中に利用者が選択する可能性が高い広告を推定し、推定した広告を配信対象としてもよい。
また、第1ドメインに属するコンテンツと第2ドメインに属するコンテンツとは、異なる種別のコンテンツであってもよい。例えば、第1ドメインに属するコンテンツがニュースである場合、第2ドメインに属するコンテンツは、動画像であってもよい。また、情報提供装置10は、第2情報や第3情報として、配信対象となるコンテンツのデータそのものを採用してもよい。
〔3−5.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、逆に、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上記してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
〔4.情報提供装置が実行する処理の流れの一例〕
続いて、図7を用いて、情報提供装置10が実行する処理の流れの一例を説明する。図7は、実施形態に係る情報提供装置が実行する学習処理の流れの一例を示すフローチャートである。
例えば、情報提供装置10は、第2ドメインに属するコンテンツのメタデータを取得し(ステップS101)、第2ドメインに属するコンテンツが有する特徴を第2モデルに学習させる(ステップS102)。例えば、情報提供装置10は、オートエンコーダである第2モデルに第2ドメインに属するコンテンツのメタデータを入力し、入力したメタデータの次元数を減少させた後で元のメタデータを復元するように、第2モデルが有する接続係数を修正することで、第2モデルの学習を行う。
続いて、情報提供装置10は、第1モデルを取得し(ステップS103)、第1ドメインに属するコンテンツのメタデータと、そのコンテンツを選択した利用者の利用者情報とを教師データとして取得する(ステップS104)。また、情報提供装置10は、第1モデルに教師データを入力するとともに、第2モデルに教師データに含まれるコンテンツのメタデータを入力する(ステップS105)。そして、情報提供装置10は、第1モデルの中間層が出力する情報であって、コンテンツのメタデータの特徴に基づく情報(すなわち、中間情報)と、第2モデルの中間層が出力する情報(すなわち、特徴情報)とが類似するように、第1モデルの学習を行い(ステップS106)、処理を終了する。
〔5.プログラム〕
上述した実施形態に係る情報提供装置10は、例えば図8に示すような構成のコンピュータ1000によって実現される。図8は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力IF(Interface)1060、入力IF1070、ネットワークIF1080がバス1090により接続された形態を有する。
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置1040は、RAM等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等により実現される。
出力IF1060は、モニタやプリンタといった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力IF1070は、マウス、キーボード、およびスキャナ等といった各種の入力装置1020から情報を受信するためのインタフェースであり、例えば、USB等により実現される。
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置1020は、USBメモリ等の外付け記憶媒体であってもよい。
ネットワークIF1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
演算装置1030は、出力IF1060や入力IF1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
例えば、コンピュータ1000が実施形態に係る情報提供装置10として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040や二次記憶装置1050上にロードされたプログラムまたはデータ(例えば、学習モデル)を実行することにより、制御部40の機能を実現する。コンピュータ1000の演算装置1030は、これらのプログラムまたはデータ(例えば、学習モデル)を一次記憶装置1040や二次記憶装置1050から読み取って実行するが、他の例として、他の装置からネットワークNを介してこれらのプログラムを取得してもよい。
〔6.効果〕
上述したように、情報提供装置10は、入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する。そして、情報提供装置10は、第1モデルに所定の入力情報を入力した際に、第1モデルがその所定の入力情報と対応する所定の出力情報を出力し、かつ、複数の中間層のうち所定の中間層が出力する中間情報が、所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、第1モデルの学習を行う。
このような学習処理の結果、情報提供装置10は、入力情報と対応する対応情報が有する特徴を考慮した状態で、入力情報が有する特徴に基づき、入力情報に対応する出力情報を出力する第1モデルを生成することができる。このため、情報提供装置10は、例えば、あるドメインに属する教師データの数が少ない場合にも、そのドメインに属する情報のうち利用者と対応する情報を推定する学習モデルの学習を実現できる。
また、情報提供装置10は、所定の入力情報として第1ドメインと関連する入力情報を第1モデルに入力した際に、出力情報としてその入力情報の分類を示す情報を出力し、かつ、中間情報が、第1ドメインとは異なる第2ドメインと関連する対応情報を考慮した特徴情報に近づくように、第1モデルの学習を行う。このような処理の結果、情報提供装置10は、第1ドメインに属する教師データを用いて、第2ドメインに属する情報の分類を実現する学習モデルの学習を行うことができる。
また、情報提供装置10は、所定の入力情報として第1情報とその第1情報と紐付けられる第2情報とを第1モデルに入力した際に、出力情報としてその第2情報の分類結果を出力し、かつ、中間情報が、第2情報が有する特徴に応じた特徴情報であって、第1情報と紐付けられる第3情報が有する特徴を考慮した特徴情報に近づくように、第1モデルの学習を行う。例えば、情報提供装置10は、第1ドメインに属する第1情報および第2情報と、第1ドメインとは異なる第2ドメインに属する第3情報とを用いて、第1モデルの学習を行う。例えば、情報提供装置10は、利用者の特徴を示す第1情報と、その第1情報が示す特徴を有する利用者が選択した選択対象を示す第2情報と、第2情報が示す選択対象とは異なる選択対象を示す第3情報とを用いて、第1モデルの学習を行う。このような処理の結果、情報提供装置10は、第1情報と紐付けられる第3情報の数が少ない場合にも、第1情報に応じた第3情報の分類を実現する第1モデルの学習を実現できる。
また、情報提供装置10は、第3情報の特徴を学習した第2モデルをさらに取得し、中間情報が、第2情報から第2モデルが生成した特徴情報に近づくように、第1モデルの学習を行う。また、情報提供装置10は、第2モデルとして、第2情報と同じ種別の第3情報が有する特徴をあらかじめ学習したモデルを取得する。このため、情報提供装置10は、第3情報の特徴を考慮して、第1情報と第2情報との関係を第1モデルの学習させることができる。
また、情報提供装置10は、第1情報と第2情報とを第1モデルに入力した際に、出力情報として第2情報の分類を示す情報を出力し、かつ、第2情報を第2モデルに入力した際にその第2モデルが生成した特徴情報に中間情報が近づくように、第1モデルの学習を行う。このため、情報提供装置10は、第3情報の特徴を考慮して、第1情報と第2情報との関係性を適切に第1モデルに学習させることができる。
また、情報提供装置10は、第1モデルとして、第1情報が入力された場合にその第1情報を符号化した第1符号化情報を出力する第1エンコーダ、第2情報が入力された場合にその第2情報を符号化した第2符号化情報を出力する第2エンコーダ、第1情報と第2情報とが入力された場合にその第1情報を符号化した第3符号化情報と、その第2情報を符号化した第4符号化情報とを出力する第3エンコーダ、第1符号化情報と第3符号化情報とから第1復号化情報を復号し、第2符号化情報と第4符号化情報とから第2復号化情報を復号するデコーダ、および、複数の中間層を有し、第4符号化情報から、第2情報の分類結果を示す分類情報を生成する分類器を有するモデルを取得する。そして、情報提供装置10は、第1情報と第1復号化情報とが類似し、第2情報と第2復号化情報とが類似するとともに、分類器が有する複数の中間層のうち所定の中間層が出力する情報が特徴情報に近づくように、第1モデルの学習を行う。このように、情報提供装置10は、所謂DSNの構成を有する第1モデルに対し、第3情報の特徴を考慮した状態で、第1情報と第2情報との間の関係性を学習させることができる。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、特定部は、特定手段や特定回路に読み替えることができる。
10 情報提供装置
20 通信部
30 記憶部
31 第1ドメイン情報データベース
32 第2ドメイン情報データベース
33 モデルデータベース
40 制御部
41 収集部
42 取得部
43 学習部
44 受付部
45 演算部
46 提供部
100 第1ドメインサーバ
200 第2ドメインサーバ

Claims (14)

  1. 入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得部と、
    前記第1モデルに所定の入力情報として第1ドメインと関連する入力情報を前記第1モデルに入力した際に、該所定の入力情報と対応する所定の出力情報として当該入力情報の分類を示す情報前記第1モデルが出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記所定の入力情報と対応する対応情報であって、前記第1ドメインとは異なる第2ドメインと関連する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習部と
    を有することを特徴とする学習装置。
  2. 入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得部と、
    前記第1モデルに所定の入力情報として第1情報と当該第1情報と紐付けられる第2情報とを前記第1モデルに入力した際に、当該所定の入力情報と対応する所定の出力情報として当該第2情報の分類結果を前記第1モデルが出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記第2情報が有する特徴に応じた特徴情報であって、前記第1情報と紐付けられる第3情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習部と
    を有することを特徴とする学習装置。
  3. 前記学習部は、第1ドメインに属する前記第1情報および前記第2情報と、第1ドメインとは異なる第2ドメインに属する前記第3情報とを用いて、前記第1モデルの学習を行う
    ことを特徴とする請求項に記載の学習装置。
  4. 前記学習部は、利用者の特徴を示す前記第1情報と、当該第1情報が示す特徴を有する利用者が選択した選択対象を示す第2情報と、前記第2情報が示す選択対象とは異なる選択対象を示す第3情報とを用いて、前記第1モデルの学習を行う
    ことを特徴とする請求項に記載の学習装置。
  5. 前記取得部は、前記第3情報の特徴を学習した第2モデルをさらに取得し、
    前記学習部は、前記中間情報が、前記第2情報から前記第2モデルが生成した特徴情報に近づくように、前記第1モデルの学習を行う
    ことを特徴とする請求項のうちいずれか1つに記載の学習装置。
  6. 前記取得部は、前記第2モデルとして、第2情報と同じ種別の第3情報が有する特徴をあらかじめ学習したモデルを取得する
    ことを特徴とする請求項に記載の学習装置。
  7. 前記学習部は、前記第1情報と前記第2情報とを前記第1モデルに入力した際に、前記出力情報として前記第2情報の分類を示す情報を出力し、かつ、前記第2情報を前記第2モデルに入力した際に当該第2モデルが生成した特徴情報に前記中間情報が近づくように、前記第1モデルの学習を行う
    ことを特徴とする請求項またはに記載の学習装置。
  8. 1情報が入力された場合に当該1情報を符号化した第1符号化情報を出力する第1符号化部、第2情報が入力された場合に当該第2情報を符号化した第2符号化情報を出力する第2符号化部、前記第1情報と前記第2情報とが入力された場合に当該第1情報を符号化した第3符号化情報と、当該第2情報を符号化した第4符号化情報とを出力する第3符号化部、前記第1符号化情報と前記第3符号化情報とから第1復号化情報を復号し、前記第2符号化情報と前記第4符号化情報とから第2復号化情報を復号する復号化部、および、複数の中間層を有し、前記第4符号化情報から、前記第2情報の分類結果を示す分類情報を生成する分類部を有する第1モデルを取得する取得部と
    前記第1モデルに所定の入力情報を入力した際に、前記第1モデルが当該所定の入力情報と対応する所定の出力情報を出力し、前記第1情報と前記第1復号化情報とが類似し、前記第2情報と前記第2復号化情報とが類似するとともに、前記分類部が有する複数の中間層のうち所定の中間層が出力する情報が、前記所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習部と
    を有することを特徴とする学習装置。
  9. 学習装置が実行する学習方法であって、
    入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得工程と、
    前記第1モデルに所定の入力情報として第1ドメインと関連する入力情報を前記第1モデルに入力した際に、該所定の入力情報と対応する所定の出力情報として当該入力情報の分類を示す情報前記第1モデルが出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記所定の入力情報と対応する対応情報であって、前記第1ドメインとは異なる第2ドメインと関連する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習工程と
    を含むことを特徴とする学習方法。
  10. 入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得手順と、
    前記第1モデルに所定の入力情報として第1ドメインと関連する入力情報を前記第1モデルに入力した際に、該所定の入力情報と対応する所定の出力情報として当該入力情報の分類を示す情報前記第1モデルが出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記所定の入力情報と対応する対応情報であって、前記第1ドメインとは異なる第2ドメインと関連する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習手順と
    をコンピュータに実行させるための学習プログラム。
  11. 学習装置が実行する学習方法であって、
    入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得工程と、
    前記第1モデルに所定の入力情報として第1情報と当該第1情報と紐付けられる第2情報とを前記第1モデルに入力した際に、当該所定の入力情報と対応する所定の出力情報として当該第2情報の分類結果を前記第1モデルが出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記第2情報が有する特徴に応じた特徴情報であって、前記第1情報と紐付けられる第3情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習工程と
    を含むことを特徴とする学習方法。
  12. 入力情報を入力する入力層と、入力された入力情報が有する特徴に基づいた演算を行う複数の中間層と、中間層の出力に応じた出力情報を出力する出力層とを有する第1モデルを取得する取得手順と、
    前記第1モデルに所定の入力情報として第1情報と当該第1情報と紐付けられる第2情報とを前記第1モデルに入力した際に、当該所定の入力情報と対応する所定の出力情報として当該第2情報の分類結果を前記第1モデルが出力し、かつ、前記複数の中間層のうち所定の中間層が出力する中間情報が、前記第2情報が有する特徴に応じた特徴情報であって、前記第1情報と紐付けられる第3情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習手順と
    をコンピュータに実行させるための学習プログラム。
  13. 学習装置が実行する学習方法であって、
    第1情報が入力された場合に当該第1情報を符号化した第1符号化情報を出力する第1符号化部、第2情報が入力された場合に当該第2情報を符号化した第2符号化情報を出力する第2符号化部、前記第1情報と前記第2情報とが入力された場合に当該第1情報を符号化した第3符号化情報と、当該第2情報を符号化した第4符号化情報とを出力する第3符号化部、前記第1符号化情報と前記第3符号化情報とから第1復号化情報を復号し、前記第2符号化情報と前記第4符号化情報とから第2復号化情報を復号する復号化部、および、複数の中間層を有し、前記第4符号化情報から、前記第2情報の分類結果を示す分類情報を生成する分類部を有する第1モデルを取得する取得工程と、
    前記第1モデルに所定の入力情報を入力した際に、前記第1モデルが当該所定の入力情報と対応する所定の出力情報を出力し、前記第1情報と前記第1復号化情報とが類似し、前記第2情報と前記第2復号化情報とが類似するとともに、前記分類部が有する複数の中間層のうち所定の中間層が出力する情報が、前記所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習工程と
    を含むことを特徴とする学習方法。
  14. 第1情報が入力された場合に当該第1情報を符号化した第1符号化情報を出力する第1符号化部、第2情報が入力された場合に当該第2情報を符号化した第2符号化情報を出力する第2符号化部、前記第1情報と前記第2情報とが入力された場合に当該第1情報を符号化した第3符号化情報と、当該第2情報を符号化した第4符号化情報とを出力する第3符号化部、前記第1符号化情報と前記第3符号化情報とから第1復号化情報を復号し、前記第2符号化情報と前記第4符号化情報とから第2復号化情報を復号する復号化部、および、複数の中間層を有し、前記第4符号化情報から、前記第2情報の分類結果を示す分類情報を生成する分類部を有する第1モデルを取得する取得手順と、
    前記第1モデルに所定の入力情報を入力した際に、前記第1モデルが当該所定の入力情報と対応する所定の出力情報を出力し、前記第1情報と前記第1復号化情報とが類似し、前記第2情報と前記第2復号化情報とが類似するとともに、前記分類部が有する複数の中間層のうち所定の中間層が出力する情報が、前記所定の入力情報と対応する対応情報が有する特徴に応じた特徴情報に近づくように、前記第1モデルの学習を行う学習手順と
    をコンピュータに実行させるための学習プログラム。
JP2018007286A 2018-01-19 2018-01-19 学習装置、学習方法および学習プログラム Active JP6523498B1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2018007286A JP6523498B1 (ja) 2018-01-19 2018-01-19 学習装置、学習方法および学習プログラム
US16/250,460 US11699095B2 (en) 2018-01-19 2019-01-17 Cross-domain recommender systems using domain separation networks and autoencoders

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018007286A JP6523498B1 (ja) 2018-01-19 2018-01-19 学習装置、学習方法および学習プログラム

Publications (2)

Publication Number Publication Date
JP6523498B1 true JP6523498B1 (ja) 2019-06-05
JP2019125313A JP2019125313A (ja) 2019-07-25

Family

ID=66730557

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018007286A Active JP6523498B1 (ja) 2018-01-19 2018-01-19 学習装置、学習方法および学習プログラム

Country Status (2)

Country Link
US (1) US11699095B2 (ja)
JP (1) JP6523498B1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023139774A1 (ja) * 2022-01-24 2023-07-27 日本電気株式会社 学習装置、推定システム、学習方法、および記録媒体

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11663493B2 (en) * 2019-01-30 2023-05-30 Intuit Inc. Method and system of dynamic model selection for time series forecasting
US20200410296A1 (en) * 2019-06-30 2020-12-31 Td Ameritrade Ip Company, Inc. Selective Data Rejection for Computationally Efficient Distributed Analytics Platform
JP7166738B2 (ja) * 2019-10-15 2022-11-08 Kddi株式会社 情報処理装置、情報処理方法、及びプログラム
US11423250B2 (en) 2019-11-19 2022-08-23 Intuit Inc. Hierarchical deep neural network forecasting of cashflows with linear algebraic constraints
US11657302B2 (en) 2019-11-19 2023-05-23 Intuit Inc. Model selection in a forecasting pipeline to optimize tradeoff between forecast accuracy and computational cost
US11551024B1 (en) * 2019-11-22 2023-01-10 Mastercard International Incorporated Hybrid clustered prediction computer modeling
US11783025B2 (en) 2020-03-12 2023-10-10 International Business Machines Corporation Training diverse and robust ensembles of artificial intelligence computer models
US10839269B1 (en) * 2020-03-20 2020-11-17 King Abdulaziz University System for fast and accurate visual domain adaptation
JP6925495B1 (ja) * 2020-10-07 2021-08-25 株式会社カカクコム 情報処理システム、サーバ、情報処理方法及び情報処理プログラム
US11689468B2 (en) * 2020-12-31 2023-06-27 Forescout Technologies, Inc. Device classification using machine learning models
US11574131B2 (en) * 2021-05-21 2023-02-07 Google Llc Machine-learned language models which generate intermediate textual analysis in service of contextual text generation

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7643558B2 (en) * 2003-03-24 2010-01-05 Qualcomm Incorporated Method, apparatus, and system for encoding and decoding side information for multimedia transmission
JP4487761B2 (ja) * 2004-12-21 2010-06-23 カシオ計算機株式会社 データ出力装置、および、プログラム
WO2011045927A1 (ja) * 2009-10-14 2011-04-21 パナソニック株式会社 符号化装置、復号装置およびこれらの方法
JP5467062B2 (ja) 2011-01-17 2014-04-09 日本電信電話株式会社 情報推薦装置及び方法及びプログラム
JP2016076758A (ja) * 2014-10-03 2016-05-12 株式会社東芝 再生装置、符号化装置、および再生方法
JP6261547B2 (ja) * 2015-09-07 2018-01-17 ヤフー株式会社 判定装置、判定方法及び判定プログラム
JP2017151230A (ja) * 2016-02-23 2017-08-31 国立大学法人豊橋技術科学大学 音声変換装置および音声変換方法ならびに計算機プログラム
JP6951659B2 (ja) * 2017-05-09 2021-10-20 オムロン株式会社 タスク実行システム、タスク実行方法、並びにその学習装置及び学習方法
CN110741367B (zh) * 2017-06-14 2023-06-20 阿里巴巴集团控股有限公司 用于实时交互式推荐的方法和装置
US11035227B2 (en) * 2017-07-14 2021-06-15 The Board Of Regents Of The University Of Oklahoma Generating spectral responses of materials
JP6568175B2 (ja) * 2017-10-20 2019-08-28 ヤフー株式会社 学習装置、生成装置、分類装置、学習方法、学習プログラム、および動作プログラム
JP6381768B1 (ja) * 2017-11-20 2018-08-29 ヤフー株式会社 学習装置、学習方法、学習プログラムおよび動作プログラム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023139774A1 (ja) * 2022-01-24 2023-07-27 日本電気株式会社 学習装置、推定システム、学習方法、および記録媒体

Also Published As

Publication number Publication date
JP2019125313A (ja) 2019-07-25
US20190228336A1 (en) 2019-07-25
US11699095B2 (en) 2023-07-11

Similar Documents

Publication Publication Date Title
JP6523498B1 (ja) 学習装置、学習方法および学習プログラム
US11514333B2 (en) Combining machine-learning and social data to generate personalized recommendations
US11711447B2 (en) Method and apparatus for real-time personalization
JP6355800B1 (ja) 学習装置、生成装置、学習方法、生成方法、学習プログラム、および生成プログラム
US9785888B2 (en) Information processing apparatus, information processing method, and program for prediction model generated based on evaluation information
US20200134300A1 (en) Predictive analysis of target behaviors utilizing rnn-based user embeddings
US10354184B1 (en) Joint modeling of user behavior
JP7160980B2 (ja) 情報提供装置、情報提供方法、およびプログラム
US9864951B1 (en) Randomized latent feature learning
KR20180099812A (ko) 딥러닝 모델을 사용한 엔티티의 식별
Hawashin et al. An efficient hybrid similarity measure based on user interests for recommender systems
US11403663B2 (en) Ad preference embedding model and lookalike generation engine
JP6501939B2 (ja) モデル生成装置、情報配信装置、モデル生成方法、情報配信方法、モデル生成プログラム、情報配信プログラム、推定装置および推定方法
CN110209931B (zh) 媒体内容的推送方法和装置、存储介质、电子装置
JP2017054214A (ja) 判定装置、学習装置、情報配信装置、判定方法及び判定プログラム
JP6767342B2 (ja) 検索装置、検索方法および検索プログラム
US20190080290A1 (en) Updating messaging data structures to include predicted attribute values associated with recipient entities
KR102586569B1 (ko) 아이템 임베딩 장치 및 방법
CN117836765A (zh) 基于多模态超图的点击预测
CN115066906A (zh) 用于基于用户提供的标准进行推荐的方法和系统
JP2017201535A (ja) 判定装置、学習装置、判定方法及び判定プログラム
US11514123B2 (en) Information retrieval system, method and computer program product
US20230023552A1 (en) Systems and methods for multi-channel customer communications content recommender
KR20210061739A (ko) 사용자 맞춤형 추천정보 제공장치 및 제공방법, 이를 실행시키기 위한 프로그램을 기록한 컴퓨터 해독 가능한 기록 매체
JP5588938B2 (ja) アイテム推薦装置及び方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181213

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20181213

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20181214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190122

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190308

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190425

R150 Certificate of patent or registration of utility model

Ref document number: 6523498

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350