Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP7041018B2 - 学習装置、学習方法及び学習プログラム - Google Patents
[go: Go Back, main page]

JP7041018B2 - 学習装置、学習方法及び学習プログラム - Google Patents

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

Info

Publication number
JP7041018B2
JP7041018B2 JP2018139835A JP2018139835A JP7041018B2 JP 7041018 B2 JP7041018 B2 JP 7041018B2 JP 2018139835 A JP2018139835 A JP 2018139835A JP 2018139835 A JP2018139835 A JP 2018139835A JP 7041018 B2 JP7041018 B2 JP 7041018B2
Authority
JP
Japan
Prior art keywords
distribution
vector
distribution target
learning
predetermined user
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
JP2018139835A
Other languages
English (en)
Other versions
JP2020017089A (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 JP2018139835A priority Critical patent/JP7041018B2/ja
Publication of JP2020017089A publication Critical patent/JP2020017089A/ja
Application granted granted Critical
Publication of JP7041018B2 publication Critical patent/JP7041018B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、学習装置、学習方法及び学習プログラムに関する。
従来、各種の情報を利用者に対して提供する技術が知られている。このような技術の一例として、利用者が過去に選択した情報と関連する情報に基づいて、利用者と関連性が高い情報や利用者が興味を有する情報等、利用者と対応する情報を推定し、推定した情報を利用者に提供する技術が知られている。
特開2012-150561号公報
しかしながら、上述した従来技術では、利用者と対応する情報を適切に推定できない恐れがある。
例えば、上述した従来技術では、新規の利用者等、過去に情報を選択していない利用者に対しては、利用者と対応する情報を適切に推定できない。
本願は、上記に鑑みてなされたものであって、利用者と対応する情報の推定精度を向上させることを目的とする。
本願に係る学習装置は、配信対象を示す複数の配信対象ベクトルを取得する取得部と、
所定の利用者に配信された配信対象を示す複数の配信対象ベクトルと、配信候補を示す配信候補ベクトルとが入力されると、当該配信候補ベクトルとの類似性に基づく重みが設定された複数の配信対象ベクトルと、前記配信候補ベクトルとに基づいて、前記配信候補が前記所定の利用者と対応するか否かを判定するモデルを、前記取得部により取得された配信対象ベクトルを用いて学習する学習部とを有することを特徴とする。
実施形態の一態様によれば、利用者と対応する情報の推定精度を向上させることができるという効果を奏する。
図1は、実施形態に係るネットワークシステムの構成例を示す図である。 図2は、実施形態に係る学習処理の一例を示す図である。 図3は、実施形態に係る学習装置の構成例を示す図である。 図4は、実施形態に係る訓練データ記憶部の一例を示す図である。 図5は、実施形態に係る学習装置による学習処理手順を示すフローチャートである。 図6は、ハードウェア構成の一例を示す図である。
以下に、本願に係る学習装置、学習方法及び学習プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る学習装置、学習方法及び学習プログラムが限定されるものではない。また、各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略する。
〔1.ネットワークシステムの構成〕
まず、図1を参照して、実施形態に係るネットワークシステム1の構成について説明する。図1は、実施形態に係るネットワークシステム1の構成例を示す図である。図1に示すように、実施形態に係るネットワークシステム1には、端末装置10と、提供装置20と、学習装置100とが含まれる。端末装置10、提供装置20および学習装置100は、それぞれネットワークNと有線又は無線により接続される。
図1中では図示していないが、ネットワークシステム1は、端末装置10~10を含んでもよい。本明細書では、端末装置10~10を区別する必要がない場合は、端末装置10~10を「端末装置10」と総称する。また、ネットワークシステム1は、複数台の提供装置20や、複数台の学習装置100を含んでもよい。
端末装置10は、ユーザによって利用される情報処理装置である。端末装置10は、スマートフォン、デスクトップ型PC(Personal Computer)、ノート型PC、タブレット型PC、PDA(Personal Digital Assistant)を含む、任意のタイプの情報処理装置であってもよい。
提供装置20は、端末装置10および学習装置100に、各種情報を提供するサーバ装置である。例えば、提供装置20は、端末装置10に対して、コンテンツ(例えば、プッシュ通知)を提供する。また、例えば、提供装置20は、学習装置100に対して、コンテンツに関連する判定モデルを生成するための訓練データを提供する。
学習装置100は、ユーザに適合する情報を判定するモデルを学習するサーバ装置である。学習装置100は、ネットワークNを介して、有線又は無線により端末装置10および提供装置20と通信を行う。
〔2.学習処理〕
次に、図2を参照して、実施形態に係る学習処理の一例について説明する。図2は、実施形態に係る学習処理の一例を示す図である。
図2の例では、提供装置20は、「ユーザU1」によって利用される端末装置10に対して、プッシュ型で複数の「通知N1~Nn(nは、任意の自然数)」および「通知NM1~NMm(mは、任意の自然数)」を送信する。「プッシュ型」という語は、情報が、情報を提供する装置のトリガに基づいて送信される仕組みを指す。言い換えると、提供装置20は、端末装置10に、通知N1~Nnおよび通知NM1~NMmを、プッシュ通知として送信する。
図2の例では、提供装置20は、通知N1~Nnおよび通知NM1~NMmに対する応答を受信する。一例では、提供装置20は、通知N1が選択されたことを示す選択情報を、端末装置10から受信する。この場合、通知N1は、ユーザU1に適合すると考えられる。別の例では、提供装置20は、通知N1が選択されなかったことを示す選択情報を、端末装置10から受信する。この場合、通知N1は、ユーザU1に適合しないと考えられる。
図2の例では、提供装置20は、訓練データを、学習装置100に送信する。訓練データは、通知N1~Nnおよび通知NM1~NMmの通知情報(例えば、通知N1~Nnおよび通知NM1~NMmのタイトル)と、ユーザが通知N1~Nnおよび通知NM1~NMmを選択したか否かを示す選択情報(例えば、選択フラグ)とを含む。
図2の例では、学習装置100は、提供装置20から受信された訓練データを用いて、所定の通知がユーザに適合するか否かを判定する、注意機構(attention mechanism)付きのモデル(アテンションモデルとも呼ばれる)を学習する。より具体的には、学習装置100は、通知N1~Nnおよび通知NM1~NMmの通知情報を、訓練データの入力として用いる。また、学習装置100は、通知N1~Nnが選択されたか否か示す選択情報を、訓練データの出力として用いる。
図2の例では、通知N1~Nnおよび通知NM1~NMmの通知情報は、「BoWベクトル(bag of words vector)BVN1~BVNn」および「BoWベクトルBVNM1~BVNMm」を含む。各BoWベクトルの複数の成分のうちゼロでない少なくとも1つの成分が、各通知の通知情報に含まれる少なくとも1つの単語に対応する。また、通知情報は、BoWベクトルBVN1~BVNnおよびBoWベクトルBVNM1~BVNMmに対応する「埋め込みベクトルNEN1~NENn」および「埋め込みベクトルNENM1~NENMm」を含む。一例では、BoWベクトルは、通知のタイトルに対応する。例えば、通知のタイトルが、単語「今夜」、「映画」、「テレビ」を含む場合に、埋め込みベクトルは、単語「今夜」、「映画」、「テレビ」にそれぞれ対応する3つの分散表現の平均ベクトルである。
図2の例では、通知N1~Nnが選択されたか否か示す選択情報は、0または1の選択フラグを含む。通知N1が選択されたことを示す選択フラグは、「1」である。また、通知N1が選択されなかったことを示す選択フラグは、「0」である。一方、通知NM1~NMmが選択されたか否か示す選択情報は、「1」の選択フラグを含む。すなわち、通知NM1~NMmは、全て過去に選択された通知である。このように、通知NM1~NMmは、注意機構のメモリに相当する。
はじめに、学習装置100は、訓練データを参照し、BoWベクトルBVN1に対応する埋め込みベクトルNEN1を取得する。
次いで、学習装置100は、訓練データを参照し、BoWベクトルBVNM1~BVNMmに対応する埋め込みベクトルNENM1~NENMmを取得する。
次いで、学習装置100は、埋め込みベクトルNEN1と埋め込みベクトルNENM1~NENMmとの間の重みα~αを算出する。学習装置100は、例えば、ソフト注意機構における重みα~αを算出する。重みα~αは、埋め込みベクトルNENM1~NENMmの重要度をそれぞれ示す。一例では、重みα~αは、アラインメントモデル(例えば、順伝播型ニューラルネットとしてパラメトライズされたアラインメントモデル)に基づいて算出される。別の例では、重みα~αは、埋め込みベクトルNEN1と、埋め込みベクトルNENM1~NENMmの各々との内積に基づいて算出される。
次いで、学習装置100は、算出された重みα~αを用いて、埋め込みベクトルNENM1~NENMmの重み付き平均MEM1を算出する。
次いで、学習装置100は、埋め込みベクトルNEN1と、算出された重み付き平均MEM1(すなわち、重み付き平均のベクトル)とを連結(concatenate)することで、ベクトルを生成する。そして、生成されたベクトルに、活性化関数(例えば、ReLU(Rectified Linear unit)関数)を適用することで、隠れ状態ベクトルを生成する。
次いで、学習装置100は、重み行列に生成された隠れ状態ベクトルを乗ずることで、関連度RS1を算出する。
次いで、学習装置100は、通知N1が選択されたか否か示す選択情報に含まれる選択フラグの値と、算出された関連度RS1とを用いて、所定の通知がユーザに適合するか否かを判定する、注意機構付きのモデルを学習する。例えば、学習装置100は、誤差逆伝播法を用いて、通知N1が選択されたか否か示す選択情報に含まれる選択フラグの値と算出された関連度RS1とに対応する目的関数(例えば、交差エントロピー損失関数)が最小化されるように、ソフト注意機構付きのモデルを学習する。
通知N1以外の通知についても、学習装置100は、例えば、通知N2~Nnに対応する訓練データを用いて、ソフト注意機構付きのモデルを学習することができる。学習装置100は、かかる学習処理を繰り返すことで、汎化誤差が最小化されるように、ソフト注意機構付きのモデルを学習することができる。
その後、学習装置100は、学習された注意機構付きのモデルを用いて、ユーザU1と通知との間の関連性を示す関連性スコアを出力する。例えば、学習装置100は、所定の通知に対応する埋め込みベクトルと、通知NM1~NMmに対応する埋め込みベクトル(すなわち、埋め込みベクトルNENM1~NENMm)とを、判定モデルに入力することで、ユーザU1が所定の通知を選択する事後確率を、ユーザU1と通知との間の関連性スコアとして出力する。
上述のように、実施形態に係る学習装置100は、通知に対応する埋め込みベクトルと、過去に選択された特定の通知(すなわち、注意機構のメモリ)に対応する埋め込みベクトルとを、訓練データの入力として用いる。また、学習装置100は、通知の選択フラグの値を、訓練データの出力として用いる。そして、学習装置100は、汎化誤差が最小化されるように、注意機構付きのモデルを学習する。これにより、学習装置100は、所定の通知がユーザに適合するか否かを判定する判定モデルを学習することができる。
ところで、図2の例では、提供装置20は、端末装置10に、通知をプッシュ通知として送信している。一般的に、プッシュ通知は、季節性のある情報である。例えば、提供装置20は、速報性の高い情報(例えば、今夜の番組)を1回だけプッシュ通知として送信する。したがって、このようなプッシュ通知に対応する配信履歴が存在しない場合がある。このような状況は、コールドスタート問題(cold start problem)に関連する。この点に関し、プッシュ通知に対応する配信履歴が存在しない場合でも、学習装置100は、上述の判定モデルを用いて、プッシュ通知がユーザに適合するか否かを判定することができる。このため、学習装置100は、ユーザが、ユーザが関心のあるプッシュ通知をタイムリーに受け取ることを可能にする。以下、このような学習処理を実現する学習装置100について詳細に説明する。
〔3.学習装置の構成〕
次に、図3を参照して、実施形態に係る学習装置100の構成例について説明する。図3は、実施形態に係る学習装置100の構成例を示す図である。図3に示すように、学習装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、学習装置100は、学習装置100を利用する管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。通信部110は、ネットワーク網と有線又は無線により接続され、ネットワーク網を介して、端末装置10および提供装置20との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。図3に示すように、記憶部120は、訓練データ記憶部121と、判定モデル記憶部122とを有する。
(訓練データ記憶部121)
図4は、実施形態に係る訓練データ記憶部121の一例を示す図である。訓練データ記憶部121は、コンテンツに関連する予測モデルを生成するための訓練データを記憶する。予測モデルは、例えば、所定の通知がユーザに適合するか否かを判定する判定モデルである。一例では、判定モデルは、注意機構付きのモデルである。
訓練データ記憶部121は、例えば、受信部131によって受信された訓練データを記憶する。図4の例では、訓練データ記憶部121には、「訓練データ」が「ユーザID」ごとに記憶される。「ユーザID」は、ユーザを識別するための識別子を示す。例示として、「訓練データ」には、項目「通知ID」、「通知情報」および「選択情報」が含まれる。
「通知ID」は、通知を識別するための識別子を示す。「通知情報」は、通知の内容に関する情報を示す。通知の内容は、例えば、通知のタイトルや、通知のボディ(例えば、本文のテキスト)や、通知が選択された場合のアクション(例えば、リンク先への画面遷移)等である。
通知情報は、通知に対応するBoWベクトル(BoW表現とも呼ばれる)を含む。BoWベクトルの複数の成分のうちゼロでない少なくとも1つの成分は、通知の通知情報に含まれる少なくとも1つの単語に対応する。また、通知情報は、BoWベクトルに対応する埋め込みベクトルを含む。一例では、BoWベクトルは、通知のタイトルに対応する。例えば、通知のタイトルが「ジムに行く?」場合に、埋め込みベクトルは、単語「ジム」、「行く」にそれぞれ対応する2つの分散表現の平均ベクトルである。
「選択情報」は、通知の選択に関する情報を示す。例えば、選択情報は、通知が選択されたか否か示す。例えば、選択情報は、通知が選択されたか否か示す選択フラグを含む。図4の例では、通知が選択されたことを示す選択フラグは、「1」である。この例では、通知が選択されなかったことを示す選択フラグは、「0」である。
例えば、図4は、通知ID「N1」で識別される通知が、通知情報NI1に対応することを示している。また、例えば、図4は、ユーザID「U1」で識別されるユーザが、通知ID「N1」で識別される通知を選択したことを示している。
例えば、図4は、通知ID「NM1」~「NMm」にそれぞれ対応する複数の通知が、ユーザID「U1」で識別されるユーザによって全て過去に選択されたことを示している。通知ID「NM1」~「NMm」にそれぞれ対応する複数の通知は、注意機構のメモリに相当する。
(判定モデル記憶部122)
図3に戻ると、判定モデル記憶部122は、配信対象に関連する判定モデルを記憶する。判定モデル記憶部122は、例えば、学習部133によって学習されたモデルであって、配信候補が所定の利用者と対応するか否かを判定するモデルを記憶する。
(制御部130)
制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、学習装置100内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部130は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
(受信部131)
受信部131は、提供装置20から、コンテンツに関連する判定モデルを生成するための訓練データを受信する。訓練データは、通知の通知情報と、ユーザが通知を選択したか否かを示す選択情報とを含む。受信部131は、受信された訓練データを、訓練データ記憶部121に格納してもよい。
受信部131は、提供装置20から、配信対象を示す複数の配信対象ベクトルを受信する。例えば、受信部131は、配信対象となる文章に含まれる単語と対応する次元に所定の値が格納された配信対象ベクトルを受信する。一例では、受信部131は、通知に対応する埋め込みベクトルを受信する。上述の通知情報は、配信対象を示す複数の配信対象ベクトルを含んでもよい。受信部131は、受信された複数の配信対象ベクトルを、訓練データ記憶部121に格納してもよい。受信部131は、配信対象に含まれる情報を受信してもよい。
上述の配信対象は、例えば、通知(例えば、プッシュ通知)、ニュース記事、テキストベースのメッセージ(例えば、レコメント情報)等である。配信対象がプッシュ通知である場合に、上述の配信対象ベクトルは、例えば、プッシュ通知のタイトルに含まれる単語と対応する次元に所定の値が格納されたベクトル(例えば、分散表現)である。
(取得部132)
取得部132は、コンテンツに関連する判定モデルを生成するための訓練データを取得する。取得部132は、例えば、受信部131によって受信された訓練データを取得する。取得部132は、訓練データ記憶部121から訓練データを取得してもよい。
取得部132は、配信対象を示す複数の配信対象ベクトルを取得する。例えば、取得部132は、配信対象となる文章に含まれる単語と対応する次元に所定の値が格納された配信対象ベクトルを取得する。
取得部132は、例えば、受信部131によって受信された配信対象ベクトルを取得する。取得部132は、訓練データ記憶部121から配信対象ベクトルを取得してもよい。
(学習部133)
学習部133は、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルと、配信候補を示す配信候補ベクトルとが入力されると、配信候補ベクトルとの類似性に基づく重みが設定された複数の配信対象ベクトルと、配信候補ベクトルとに基づいて、配信候補が所定の利用者と対応するか否かを判定するモデルを、取得部132により取得された配信対象ベクトルを用いて学習する。例えば、学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルとの共起性をモデルに学習させる。
より具体的には、学習部133は、所定の利用者に配信された配信対象が選択されたか否か示す選択情報(例えば、選択フラグ)に基づいて、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルとの共起性をモデルに学習させる。例えば、学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトルおよび所定の利用者に配信された配信対象を示す複数の配信対象ベクトルを訓練データの入力として用い、かつ所定の利用者に配信された配信対象が選択されたか否か示す選択情報を訓練データの出力として用いることで、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルとの共起性に関する距離をモデルに学習させる。
一例では、モデルは、注意機構付きのモデルである。この例では、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルは、複数の配信対象(例えば、プッシュ通知)にそれぞれ対応する複数の埋め込みベクトル(例えば、分散表現)である。また、この例では、所定の利用者が選択した配信対象を示す配信対象ベクトルは、所定の利用者(例えば、ユーザ)によって過去に選択された配信対象に対応する埋め込みベクトルである。言い換えると、所定の利用者が選択した配信対象を示す配信対象ベクトルは、注意機構のメモリに相当する。
学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトルの上述の重み(すなわち、配信候補ベクトルとの類似性に基づく重み)による重み付き平均から、配信候補が所定の利用者と対応するか否かを判定するモデルを学習する。例えば、学習部133は、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つと重み付き平均とを連結した連結ベクトルから、配信候補が所定の利用者と対応するか否かを判定するモデルを学習する。言い換えれば、学習部133は、複数の配信対象ベクトルのうちの1つと重み付き平均との連結(concatenation)であるベクトルから、モデルを学習する。例えば、学習部133は、次元数が削減されるように連結ベクトルを徐々に畳み込むことで、配信候補が所定の利用者と対応するか否かを示す値を生成するモデルを学習する。
一例では、学習部133は、所定の利用者に配信された配信対象に対応する埋め込みベクトルと、所定の利用者が選択した複数の配信対象にそれぞれ対応する複数の埋め込みベクトルとの間の複数の重みを算出する。そして、学習部133は、所定の利用者が選択した複数の配信対象にそれぞれ対応する複数の埋め込みベクトルのかかる複数の重みによる重み付き平均(すなわち、重み付き平均のベクトル)に対応する中間層を含む注意機構付きのモデルであって、配信候補が所定の利用者と対応するか否かを判定する注意機構付きのモデルを学習する。
例えば、学習部133は、所定の利用者に配信された配信対象に対応する埋め込みベクトルと、所定の利用者が選択した複数の配信対象にそれぞれ対応する複数の埋め込みベクトルの複数の重みによる重み付き平均とを連結することで、第1のベクトルを生成する。次いで、学習部133は、生成された第1のベクトルに活性化関数を適用することで、隠れ状態ベクトルを生成する。次いで、学習部133は、重み行列に隠れ状態ベクトを乗ずることで、関連度を算出する。その後、学習部133は、所定の利用者に配信された配信対象が選択されたか否か示す選択情報(例えば、選択フラグ)と、算出された関連度とを用いて、配信候補が所定の利用者と対応するか否かを判定する注意機構付きのモデルを学習する。
学習部133は、複数の配信対象ベクトルのうちの1つから、複数の配信対象ベクトルのうちの1つが示す配信対象に含まれる情報の特徴を示す特徴ベクトルの平均値の和となるベクトルを生成し、生成されたベクトルに基づいて、配信候補が所定の利用者と対応するか否かを判定するモデルを学習する。
一例では、情報の特徴を示す特徴ベクトルは、分散表現である。この例では、配信対象に含まれる情報が、第1~3の特徴を含む場合に、配信対象に対応する埋め込みベクトルは、第1~3の特徴にそれぞれ対応する3つの分散表現の平均ベクトルである。
学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つであり、かつ所定の利用者が選択した配信対象を示す配信対象ベクトルとが入力された際に、配信候補が所定の利用者と対応する旨を出力し、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つであり、かつ所定の利用者が選択しなかった配信対象を示す配信対象ベクトルとが入力された際に、配信候補が所定の利用者と対応しない旨を出力されるように、モデルを学習する。
例えば、学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトル(例えば、テストデータである配信対象ベクトル)と、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つであり、かつ所定の利用者が選択した配信対象を示す配信対象ベクトル(例えば、注意機構のメモリ)とが入力された際に、モデルによって出力される値が、配信対象が選択されたことを示す値(例えば、選択フラグ「1」)に近づくように、訓練用のデータである配信対象ベクトルを用いてモデルを訓練する。また、例えば、学習部133は、正則化手法(例えば、L2正則化等)を用いて、汎化誤差が最小化されるようにモデルを学習する。
学習部133は、例えば、所定の利用者に配信された配信対象が選択されたか否か示す選択情報およびモデルの出力に対応する目的関数が最小化されるように、モデルを学習する。一例では、学習部133は、誤差逆伝播法を用いて、選択情報に含まれる選択フラグの値および注意機構付きのモデルの出力(例えば、上述の関連度)に対応する目的関数が最小化されるように、注意機構付きのモデルを学習する。
(生成部134)
生成部134は、配信対象の候補となる配信対象に含まれる情報と対応する次元に所定の値が格納された候補ベクトルを生成する。例えば、生成部134は、所定のサーバから、配信対象の候補となる配信対象に含まれる情報に含まれるキーワードに対応する少なくとも1つのベクトル(例えば、分散表現)を取得する。そして、生成部134は、情報に含まれるキーワードに対応する少なくとも1つのベクトルに基づいて、候補ベクトルを生成する。
生成部134は、配信対象に含まれる情報を用いて、配信対象を示す配信対象ベクトルを生成してもよい。また、配信対象に含まれる情報を用いて、配信対象に対応するBoWベクトルを生成してもよい。
(判定部135)
判定部135は、学習部133により学習されたモデルを用いて、候補ベクトルから、配信対象の候補を所定の利用者に配信するか否かを判定する。また、判定部135は、候補ベクトルが入力された際に、候補ベクトルが示す配信候補が、所定の利用者と対応する旨をモデルが出力した場合は、配信候補を所定の利用者に配信すると判定する。
一例では、判定部135は、学習されたモデル(例えば、注意機構付きのモデル)を用いて、所定の利用者と配信対象の候補との間の関連性を示す関連性スコアを出力する。より具体的には、判定部135は、所定の利用者が選択した配信対象を示す配信対象ベクトルと、配信対象の候補に対応する候補ベクトルとを、モデルに入力することで、所定の利用者が配信対象の候補を選択する確率を、所定の利用者と配信対象の候補との間の関連性スコアとして出力する。
(提供部136)
提供部136は、学習部133により学習されたモデルを提供する。例えば、提供部136は、学習されたモデルを提供装置20に提供する。提供部136は、判定部135による判定結果を、提供装置20に提供してもよい。
〔4.学習処理のフロー〕
次に、実施形態に係る学習装置100による学習処理の手順について説明する。図5は、実施形態に係る学習装置100による学習処理手順を示すフローチャートである。
図5に示すように、はじめに、学習装置100は、配信対象を示す複数の配信対象ベクトルを取得する(ステップS101)。例えば、学習装置100は、配信対象となる文章に含まれる単語と対応する次元に所定の値が格納された配信対象ベクトルを取得する。
次いで、学習装置100は、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルと、配信候補を示す配信候補ベクトルとが入力されると、配信候補ベクトルとの類似性に基づく重みが設定された複数の配信対象ベクトルと、配信候補ベクトルとに基づいて、配信候補が所定の利用者と対応するか否かを判定するモデルを、取得された配信対象ベクトルを用いて学習する(ステップS102)。例えば、学習装置100は、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルとの共起性をモデルに学習させる。
より具体的には、学習装置100は、所定の利用者が選択した配信対象を示す配信対象ベクトルおよび所定の利用者に配信された配信対象を示す複数の配信対象ベクトルを訓練データの入力として用い、かつ所定の利用者に配信された配信対象が選択されたか否か示す選択情報を訓練データの出力として用いることで、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルとの共起性に関する距離をモデルに学習させる。
〔5.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の一部を手動的に行うこともできる。あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
例えば、図3に示した記憶部120の一部又は全部は、学習装置100によって保持されるのではなく、ストレージサーバ等に保持されてもよい。この場合、学習装置100は、ストレージサーバにアクセスすることで、訓練データ等の各種情報を取得する。
〔6.ハードウェア構成〕
また、上述してきた実施形態に係る学習装置100は、例えば図6に示すような構成のコンピュータ1000によって実現される。図6は、ハードウェア構成の一例を示す図である。コンピュータ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、フラッシュメモリ等により実現される。
出力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が学習装置100として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部130の機能を実現する。
〔7.効果〕
上述してきたように、実施形態に係る学習装置100は、取得部132と、学習部133とを有する。取得部132は、配信対象を示す複数の配信対象ベクトルを取得する。学習部133は、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルと、配信候補を示す配信候補ベクトルとが入力されると、配信候補ベクトルとの類似性に基づく重みが設定された複数の配信対象ベクトルと、配信候補ベクトルとに基づいて、配信候補が所定の利用者と対応するか否かを判定するモデルを、取得部132により取得された配信対象ベクトルを用いて学習する。
また、実施形態に係る学習装置100において、取得部132は、配信対象となる文章に含まれる単語と対応する次元に所定の値が格納された配信対象ベクトルを取得する。
また、実施形態に係る学習装置100において、学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルとの共起性を前記モデルに学習させる。
また、実施形態に係る学習装置100において、学習部133は、配信候補ベクトルとの類似性に基づく重みによる、所定の利用者が選択した配信対象を示す配信対象ベクトルの重み付き平均から、配信候補が所定の利用者と対応するか否かを判定するモデルを学習する。
また、実施形態に係る学習装置100において、学習部133は、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つと重み付き平均とを連結した連結ベクトルから、配信候補が所定の利用者と対応するか否かを判定するモデルを学習する。
また、実施形態に係る学習装置100において、学習部133は、次元数が削減されるように連結ベクトルを徐々に畳み込むことで、配信候補が所定の利用者と対応するか否かを示す値を生成するモデルを学習する。
また、実施形態に係る学習装置100において、学習部133は、複数の配信対象ベクトルのうちの1つから、複数の配信対象ベクトルのうちの1つが示す配信対象に含まれる情報の特徴を示す特徴ベクトルの平均値の和となるベクトルを生成し、生成されたベクトルに基づいて、配信候補が前記所定の利用者と対応するか否かを判定するモデルを学習する。
また、実施形態に係る学習装置100において、学習部133は、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つであり、かつ所定の利用者が選択した配信対象を示す配信対象ベクトルとが入力された際に、配信候補が所定の利用者と対応する旨を出力し、所定の利用者が選択した配信対象を示す配信対象ベクトルと、所定の利用者に配信された配信対象を示す複数の配信対象ベクトルのうちの1つであり、かつ所定の利用者が選択しなかった配信対象を示す配信対象ベクトルとが入力された際に、配信候補が所定の利用者と対応しない旨を出力されるように、モデルを学習する。
また、実施形態に係る学習装置100は、配信対象の候補となる配信対象に含まれる情報と対応する次元に所定の値が格納された候補ベクトルを生成する生成部134を有する。また、実施形態に係る学習装置100は、学習部133により学習されたモデルを用いて、候補ベクトルから、配信対象の候補を所定の利用者に配信するか否かを判定する判定部135を有する。
また、実施形態に係る学習装置100において、判定部135は、候補ベクトルが入力された際に、候補ベクトルが示す配信候補が、所定の利用者と対応する旨をモデルが出力した場合は、配信候補を所定の利用者に配信すると判定する。
上述した各処理により、学習装置100は、所定の通知がユーザに適合するか否かを判定する判定モデルを学習することができる。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
また、上述した学習装置100は、複数のサーバコンピュータで実現してもよく、また、機能によっては外部のプラットフォーム等をAPI(Application Programming Interface)やネットワークコンピューティングなどで呼び出して実現するなど、構成は柔軟に変更できる。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、受信部は、受信手段や受信回路に読み替えることができる。
1 ネットワークシステム
10 端末装置
20 提供装置
100 学習装置
120 記憶部
121 訓練データ記憶部
122 判定モデル記憶部
130 制御部
131 受信部
132 取得部
133 学習部
134 生成部
135 判定部
136 提供部

Claims (9)

  1. 所定の利用者に配信された第1の配信対象を示す第1の配信対象ベクトルと、当該所定の利用者に配信され、かつ当該所定の利用者によって選択された複数の第2の配信対象をそれぞれ示す複数の第2の配信対象ベクトルと、当該所定の利用者が当該第1の配信対象を選択したかを示す選択情報とを取得する取得部と、
    前記第1の配信対象ベクトル及び前記複数の第2の配信対象ベクトルを、訓練データの入力として用い、かつ前記選択情報を、当該訓練データの出力として用いて、前記所定の利用者が配信候補に適合するか否かを判定するモデルであって、当該配信候補を示す配信候補ベクトルと、前記複数の第2の配信対象ベクトルとを、入力として用い、当該配信候補ベクトルと前記複数の前記第2の配信対象ベクトルとの間の複数の重みが設定されモデルを学習する学習部と
    を有することを特徴とする学習装置。
  2. 前記取得部は、
    前記第1の配信対象となる文章に含まれる単語と対応する次元に所定の値が格納されたベクトルに対応する前記第1の配信対象ベクトルを取得し、対応する第2の配信対象となる文章に含まれる単語と対応する次元に所定の値が格納されたベクトルに対応するそれぞれの第2の配信対象ベクトルを取得する
    ことを特徴とする請求項1に記載の学習装置。
  3. 前記学習部は、
    前記第1の配信対象ベクトルと前記複数の第2の配信対象ベクトルとの間の重みを用いて算出された前記複数の第2の配信対象ベクトルの重み付き平均から、前記所定の利用者が前記第1の配信対象を選択する確率を算出し、前記選択情報と、算出された確率とを用いて、前記所定の利用者が前記配信候補に適合するか否かを判定することとして、前記所定の利用者が前記配信候補を選択する確率を算出する前記モデルを学習する
    ことを特徴とする請求項に記載の学習装置。
  4. 前記学習部は、
    前記第1の配信対象ベクトルと前記重み付き平均とを連結することによって生成された連結ベクトルから、前記所定の利用者が前記第1の配信対象を選択する確率を算出する
    ことを特徴とする請求項に記載の学習装置。
  5. 前記学習部は、
    前記連結ベクトルに活性化関数を適用することで、隠れ状態ベクトルを生成し、生成された隠れ状態ベクトルを重み行列に乗ずることで、前記所定の利用者が前記第1の配信対象を選択する確率を算出する
    ことを特徴とする請求項に記載の学習装置。
  6. 前記学習部は、
    前記第1の配信対象となる文章に含まれる複数の単語にそれぞれ対応する複数の分散表現の平均ベクトルを、前記第1の配信対象ベクトルとして生成し、対応する第2の配信対象となる文章に含まれる複数の単語にそれぞれ対応する複数の分散表現の平均ベクトルを、それぞれの第2の配信対象ベクトルとして生成する
    ことを特徴とする請求項1~のうちいずれか1つに記載の学習装置。
  7. 前記配信候補に含まれる情報を用いて、前記配信候補ベクトルを生成する生成部と、
    前記学習部により学習されたモデルに、前記生成部によって生成された前記配信候補ベクトルと前記複数の第2の配信対象ベクトルとを入力することで、前記所定の利用者が前記配信候補を選択する確率を、前記所定の利用者と配信候補の間の関連性を示す関連性スコアとして出力する判定部と
    を有することを特徴とする請求項1~のうちいずれか1つに記載の学習装置。
  8. 学習装置が実行する方法であって、
    所定の利用者に配信された第1の配信対象を示す第1の配信対象ベクトルと、当該所定の利用者に配信され、かつ当該所定の利用者によって選択された複数の第2の配信対象をそれぞれ示す複数の第2の配信対象ベクトルと、当該所定の利用者が当該第1の配信対象を選択したかを示す選択情報とを取得する取得工程と、
    前記第1の配信対象ベクトル及び前記複数の第2の配信対象ベクトルを、訓練データの入力として用い、かつ前記選択情報を、当該訓練データの出力として用いて、前記所定の利用者が配信候補に適合するか否かを判定するモデルであって、当該配信候補を示す配信候補ベクトルと、前記複数の第2の配信対象ベクトルとを、入力として用い、当該配信候補ベクトルと前記複数の前記第2の配信対象ベクトルとの間の複数の重みが設定されモデルを学習する学習工程と
    を含むことを特徴とする学習方法。
  9. 所定の利用者に配信された第1の配信対象を示す第1の配信対象ベクトルと、当該所定の利用者に配信され、かつ当該所定の利用者によって選択された複数の第2の配信対象をそれぞれ示す複数の第2の配信対象ベクトルと、当該所定の利用者が当該第1の配信対象を選択したかを示す選択情報とを取得する取得手順と、
    前記第1の配信対象ベクトル及び前記複数の第2の配信対象ベクトルを、訓練データの入力として用い、かつ前記選択情報を、当該訓練データの出力として用いて、前記所定の利用者が配信候補に適合するか否かを判定するモデルであって、当該配信候補を示す配信候補ベクトルと、前記複数の第2の配信対象ベクトルとを、入力として用い、当該配信候補ベクトルと前記複数の前記第2の配信対象ベクトルとの間の複数の重みが設定されモデルを学習する学習手順と
    をコンピュータに実行させるための学習プログラム。
JP2018139835A 2018-07-25 2018-07-25 学習装置、学習方法及び学習プログラム Active JP7041018B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018139835A JP7041018B2 (ja) 2018-07-25 2018-07-25 学習装置、学習方法及び学習プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018139835A JP7041018B2 (ja) 2018-07-25 2018-07-25 学習装置、学習方法及び学習プログラム

Publications (2)

Publication Number Publication Date
JP2020017089A JP2020017089A (ja) 2020-01-30
JP7041018B2 true JP7041018B2 (ja) 2022-03-23

Family

ID=69581486

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018139835A Active JP7041018B2 (ja) 2018-07-25 2018-07-25 学習装置、学習方法及び学習プログラム

Country Status (1)

Country Link
JP (1) JP7041018B2 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048360A (ja) 2010-08-25 2012-03-08 Sony Corp Id価値評価装置、id価値評価システム、及びid価値評価方法
JP2017016523A (ja) 2015-07-03 2017-01-19 ヤフー株式会社 提供装置、提供方法及び提供プログラム
WO2017201444A1 (en) 2016-05-20 2017-11-23 Google Llc Classifying input examples using a comparison set
JP2018088051A (ja) 2016-11-28 2018-06-07 ヤフー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2018097595A (ja) 2016-12-13 2018-06-21 ヤフー株式会社 配信装置、配信方法、配信プログラム、端末装置、表示方法、及び表示プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05314186A (ja) * 1992-05-06 1993-11-26 Canon Inc 自動情報源選択装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012048360A (ja) 2010-08-25 2012-03-08 Sony Corp Id価値評価装置、id価値評価システム、及びid価値評価方法
JP2017016523A (ja) 2015-07-03 2017-01-19 ヤフー株式会社 提供装置、提供方法及び提供プログラム
WO2017201444A1 (en) 2016-05-20 2017-11-23 Google Llc Classifying input examples using a comparison set
JP2018088051A (ja) 2016-11-28 2018-06-07 ヤフー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2018097595A (ja) 2016-12-13 2018-06-21 ヤフー株式会社 配信装置、配信方法、配信プログラム、端末装置、表示方法、及び表示プログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
宮▲崎▼ 太郎,外4名,Twitterからの有用情報抽出のための学習データのマルチクラス化,情報処理学会 研究報告 情報基礎とアクセス技術(IFAT) 2017-IFAT-127 [online],情報処理学会,2017年07月15日,pp.1~6,[2017年7月18日検索]Internet<URL:https://ipsj.ixsq.nii.ac.jp/ej/?action=repository_uri&item_id=182755&file_id=1&file_no=1>

Also Published As

Publication number Publication date
JP2020017089A (ja) 2020-01-30

Similar Documents

Publication Publication Date Title
AU2019200746B2 (en) Method to generate summaries tuned to topics of interest of readers
JP6355800B1 (ja) 学習装置、生成装置、学習方法、生成方法、学習プログラム、および生成プログラム
CN110059172B (zh) 基于自然语言理解的推荐答案的方法和装置
KR20200106566A (ko) 광역 및 심층 기계 학습 모델들
US20220180044A1 (en) Automatic delineation and extraction of tabular data in portable document format using graph neural networks
KR20210034679A (ko) 엔티티-속성 관계 식별
CN107391545A (zh) 一种对用户进行分类的方法、输入方法及装置
CN114997967A (zh) 一种智能推荐系统及方法
CN118035542A (zh) 对象列表推荐方法、装置、电子设备及可读存储介质
JP6679448B2 (ja) 生成装置、生成方法、及び生成プログラム
US11061943B2 (en) Constructing, evaluating, and improving a search string for retrieving images indicating item use
CN113779380A (zh) 跨域推荐、内容推荐方法、装置及设备
JP7561178B2 (ja) 学習装置、学習方法、情報処理装置、レコメンド決定方法、およびプログラム
JP2020047126A (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP7073227B2 (ja) 提供装置、提供方法及び提供プログラム
JP7096093B2 (ja) 学習装置、学習方法及び学習プログラム
JP7244449B2 (ja) 情報処理装置、情報処理方法及び情報処理プログラム
JP7041018B2 (ja) 学習装置、学習方法及び学習プログラム
JP6775366B2 (ja) 選択装置、および選択方法
JP6751955B1 (ja) 学習方法、評価装置、及び評価システム
JP2020004054A (ja) 出力装置、出力方法および出力プログラム
CN111767290B (zh) 用于更新用户画像的方法和装置
JP6964481B2 (ja) 学習装置、プログラムおよび学習方法
JP2021162997A (ja) 情報処理装置及び情報処理方法
JP2023164347A (ja) 関連商品を推薦するための方法、コンピュータ装置、およびコンピュータプログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20191101

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20191108

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200819

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20210625

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210713

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210910

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220310

R150 Certificate of patent or registration of utility model

Ref document number: 7041018

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250