IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッドの特許一覧

特許7194233オブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体
<>
  • 特許-オブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体 図1
  • 特許-オブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体 図2
  • 特許-オブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体 図3
  • 特許-オブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体 図4
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-12-13
(45)【発行日】2022-12-21
(54)【発明の名称】オブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体
(51)【国際特許分類】
   G06F 16/9035 20190101AFI20221214BHJP
   G06N 3/08 20060101ALI20221214BHJP
   G06N 20/00 20190101ALI20221214BHJP
【FI】
G06F16/9035
G06N3/08
G06N20/00
【請求項の数】 12
【外国語出願】
(21)【出願番号】P 2021100755
(22)【出願日】2021-06-17
(65)【公開番号】P2021152941
(43)【公開日】2021-09-30
【審査請求日】2021-06-17
(31)【優先権主張番号】202011280880.4
(32)【優先日】2020-11-16
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】512015127
【氏名又は名称】バイドゥ オンライン ネットワーク テクノロジー(ペキン) カンパニー リミテッド
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100106208
【弁理士】
【氏名又は名称】宮前 徹
(74)【代理人】
【識別番号】100196508
【弁理士】
【氏名又は名称】松尾 淳一
(74)【代理人】
【識別番号】100138759
【弁理士】
【氏名又は名称】大房 直樹
(72)【発明者】
【氏名】チャーン・ガオ
(72)【発明者】
【氏名】ドーンチン・イー
(72)【発明者】
【氏名】ハオ・ウエン
【審査官】齊藤 貴孝
(56)【参考文献】
【文献】特開平08-271275(JP,A)
【文献】米国特許第07472097(US,B1)
【文献】特開2000-298662(JP,A)
【文献】特表2005-521144(JP,A)
【文献】国際公開第2020/005499(WO,A1)
【文献】特開2019-219813(JP,A)
【文献】中国特許出願公開第111090993(CN,A)
【文献】中国特許出願公開第111414539(CN,A)
【文献】米国特許出願公開第2019/0295302(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 16/00-16/958
G06N 3/08
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
コンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法であって、前記ニューラルネットワークは第1のニューラルネットワークおよび第2のニューラルネットワークを含み、前記方法は、
少なくとも1つのユーザサブ特徴を含むユーザ特徴、および少なくとも1つの推薦オブジェクトサブ特徴を含む推薦オブジェクトのオブジェクト特徴を前記第1のニューラルネットワークに入力し、前記第1のニューラルネットワークから出力された前記推薦オブジェクトに対する第1の推薦結果を取得することと、
前記少なくとも1つのユーザサブ特徴および前記少なくとも1つの推薦オブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のある特徴を決定することと、
前記第1の推薦結果および前記強化する必要のある特徴を前記第2のニューラルネットワークに入力し、前記第2のニューラルネットワークから出力された前記推薦オブジェクトに対する第2の推薦結果を取得することと、
少なくとも前記第2の推薦結果に基づき、前記推薦オブジェクトに対する最終推薦結果を決定することと、を含むニューラルネットワークを利用してユーザにオブジェクトを推薦する方法。
【請求項2】
前記推薦オブジェクトのオブジェクト特徴は、推薦シーン識別子を含み、前記強化する必要のある特徴は、前記推薦シーン識別子に基づいて決定される請求項1に記載の方法。
【請求項3】
前記推薦オブジェクトに対する前記最終推薦結果は、前記第1の推薦結果および前記第2の推薦結果に基づいて決定されるものである請求項1に記載の方法。
【請求項4】
前記推薦オブジェクトに対する前記最終推薦結果は、前記第1の推薦結果と前記第2の推薦結果との加重和である請求項3に記載の方法。
【請求項5】
前記第1のニューラルネットワークおよび前記第2のニューラルネットワークのうちの1つまたは2つは、完全接続ニューラルネットワークである請求項1に記載の方法。
【請求項6】
前記推薦オブジェクトは、文字、オーディオおよびビデオのうちの1つまたは複数のタイプのデータを含む請求項1~5のいずれか一項に記載の方法。
【請求項7】
コンピュータにより実現されるニューラルネットワークのトレーニング方法であって、前記ニューラルネットワークは第1のニューラルネットワークおよび第2のニューラルネットワークを含み、前記トレーニング方法は、
第1のニューラルネットワークのトレーニングを完了することと、
少なくとも1つのサンプルユーザサブ特徴を含むサンプルユーザ特徴、および少なくとも1つのサンプルオブジェクトサブ特徴を含むサンプルオブジェクトのオブジェクト特徴を取得し、前記サンプルオブジェクトに対する実際推薦結果をラベリングすることと、
前記少なくとも1つのサンプルユーザサブ特徴および前記少なくとも1つのサンプルオブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のあるサンプル特徴を決定することと、
前記サンプルユーザ特徴および前記サンプルオブジェクトのオブジェクト特徴の前記第1のニューラルネットワークへの入力に応答して、前記第1のニューラルネットワークから前記サンプルオブジェクトに対する第1の予測推薦結果を出力することと、
前記第1の予測推薦結果および前記強化する必要のあるサンプル特徴の前記第2のニューラルネットワークへの入力に応答して、前記第2のニューラルネットワークから前記サンプルオブジェクトに対する第2の予測推薦結果を出力することと、
少なくとも前記実際推薦結果および前記第2の予測推薦結果に基づき、損失値を決定することと、
前記損失値に基づき、前記第2のニューラルネットワークのパラメータを調整することと、を含むニューラルネットワークのトレーニング方法。
【請求項8】
前記サンプルオブジェクトのオブジェクト特徴は、サンプルシーン識別子を含み、前記強化する必要のあるサンプル特徴は、前記サンプルシーン識別子に基づいて決定される請求項7に記載のトレーニング方法。
【請求項9】
前記損失値を決定することは、前記実際推薦結果、前記第1の予測推薦結果および前記第2の予測推薦結果に基づいて決定することである請求項7に記載のトレーニング方法。
【請求項10】
プロセッサと、
前記プロセッサにより実行されると、前記プロセッサに請求項1~9のいずれか一項に記載の方法を実行させる命令を含むプログラムが記憶されたメモリと、を含むコンピューティング装置。
【請求項11】
コンピューティング装置のプロセッサにより実行されると、前記コンピューティング装置に請求項1~9のいずれか一項に記載の方法を実行させる命令を含むプログラムが記憶されたコンピュータ可読記憶媒体。
【請求項12】
コンピュータプログラムであって、前記コンピュータプログラムはプロセッサによって実行されると、請求項1~9のいずれか一項に記載の方法を実現する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、人工知能の技術分野に関し、具体的には、コンテンツ推薦および深層学習の技術分野であり、特にオブジェクト推薦方法、ニューラルネットワークおよびそのトレーニング方法、装置ならびに媒体に関する。
【背景技術】
【0002】
人工知能は、コンピュータに人間の何らかの思惟過程および知的行動(例えば、学習、推理、思考、計画など)をシミュレートさせるように研究する科目であり、ハードウェア面の技術もあれば、ソフトウェア面の技術もある。人工知能のハードウェア技術は、一般的にセンサ、人工知能専用チップ、クラウドコンピューティング、分散ストレージ、ビッグデータ処理などの分野を含み、人工知能のソフトウェア技術は、主にコンピュータ視覚技術、音声認識技術、自然言語処理技術および機械学習/深層学習、ビッグデータ処理技術、ナレッジグラフ技術などのいくつかの大きな方向を含む。人工知能は、オブジェクト推薦分野などの様々な分野に益々多く適用されている。
【0003】
この部分で説明される方法は、必ずしも以前に想定された方法または採用された方法ではない。なお、特に断りのない限り、この部分に記載されているいずれの方法は、この部分に含まれるだけで従来技術であると考えられるとすべきではない。同様に、特に断りのない限り、この部分に言及する問題は、いかなる従来技術において公認されたものとは考えられるべきではない。
【発明の概要】
【0004】
本開示の一つの態様によれば、コンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法を提供し、ニューラルネットワークは第1のニューラルネットワークおよび第2のニューラルネットワークを含み、方法は、少なくとも1つのユーザサブ特徴を含むユーザ特徴、および少なくとも1つの推薦オブジェクトサブ特徴を含む推薦オブジェクトのオブジェクト特徴を第1のニューラルネットワークに入力し、第1のニューラルネットワークから出力された推薦オブジェクトに対する第1の推薦結果を取得することと、少なくとも1つのユーザサブ特徴および少なくとも1つの推薦オブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のある特徴を決定することと、第1の推薦結果および強化する必要のある特徴を第2のニューラルネットワークに入力し、第2のニューラルネットワークから出力された推薦オブジェクトに対する第2の推薦結果を取得することと、少なくとも第2の推薦結果に基づき、推薦オブジェクトに対する最終推薦結果を決定することと、を含む。
【0005】
本開示のもう一つの態様によれば、コンピュータにより実現されるニューラルネットワークのトレーニング方法をさらに提供し、ニューラルネットワークは第1のニューラルネットワークおよび第2のニューラルネットワークを含み、トレーニング方法は、第1のニューラルネットワークのトレーニングを完了することと、少なくとも1つのサンプルユーザサブ特徴を含むサンプルユーザ特徴、および少なくとも1つのサンプルオブジェクトサブ特徴を含むサンプルオブジェクトのオブジェクト特徴を取得し、サンプルオブジェクトに対する実際推薦結果をラベリングすることと、少なくとも1つのサンプルユーザサブ特徴および少なくとも1つのサンプルオブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のあるサンプル特徴を決定することと、サンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴の第1のニューラルネットワークへの入力に応答して、第1のニューラルネットワークからサンプルオブジェクトに対する第1の予測推薦結果を出力することと、第1の予測推薦結果および強化する必要のあるサンプル特徴の第2のニューラルネットワークへの入力に応答して、第2のニューラルネットワークからサンプルオブジェクトに対する第2の予測推薦結果を出力することと、少なくとも実際推薦結果および第2の予測推薦結果に基づき、損失値を決定することと、損失値に基づき、第2のニューラルネットワークのパラメータを調整することと、を含む。
【0006】
本開示のもう一つの態様によれば、コンピュータにより実現されるニューラルネットワークをさらに提供し、ニューラルネットワークは、推薦オブジェクトの最終推薦結果を予測するためにユーザ特徴および推薦オブジェクトのオブジェクト特徴を受信するように構成され、ニューラルネットワークは、少なくとも1つのユーザサブ特徴を含むユーザ特徴、および少なくとも1つの推薦オブジェクトサブ特徴を含む推薦オブジェクトのオブジェクト特徴の入力に応答して、推薦オブジェクトに対する第1の推薦結果を出力するように構成される第1のニューラルネットワークと、少なくとも1つのユーザサブ特徴および少なくとも1つの推薦オブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のある特徴を決定するように構成される決定ユニットと、第1の推薦結果および強化する必要のある特徴の入力に応答して、推薦オブジェクトに対する第2の推薦結果を出力するように構成される第2のニューラルネットワークと、少なくとも第2の推薦結果に基づき、最終推薦結果を決定するように構成される出力ユニットと、を含む。
【0007】
本開示のもう一つの態様によれば、コンピューティング装置をさらに提供し、コンピューティング装置は、プロセッサと、プロセッサによって実行されると、プロセッサに上記の方法を実行させる命令を含むプログラムが記憶されたメモリと、を含む。
【0008】
本開示のもう一つの態様によれば、プログラムが記憶されたコンピュータ可読記憶媒体をさらに提供し、プログラムはコンピューティング装置のプロセッサによって実行されると、コンピューティング装置に上記の方法を実行させる命令を含む。
【0009】
本開示のもう一つの態様によれば、コンピュータプログラムを含むコンピュータプログラム製品をさらに提供し、当該コンピュータプログラムはプロセッサによって実行されると、上記の方法を実現する。
【0010】
本開示は、ニューラルネットワークを利用してユーザにオブジェクトを推薦する過程で、推薦効果に影響する重要な特徴を強化し、さらに推薦結果の正確性を向上させることができる。
【図面の簡単な説明】
【0011】
図面は、実施形態を例示的に示し、明細書の一部を構成し、明細書の文字による説明とともに、実施形態の例示的な実施形態を説明するために用いられる。図示の実施形態は例示的目的のみであり、特許請求の範囲を限定するものではない。すべての図面において、同一の符号は類似しているが、必ずしも同じとは限らない要素を指す。
図1】例示的な実施例によるコンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法を示すフローチャートである。
図2】例示的な実施例によるコンピュータにより実現されるニューラルネットワークのトレーニング方法を示すフローチャートである。
図3】例示的な実施例によるコンピュータにより実現されるニューラルネットワークを示す模式図である。
図4】例示的な実施例に適用することができる例示的なコンピューティング装置を示す構造ブロック図である。
【発明を実施するための形態】
【0012】
本開示では、特に明記しない限り、様々な要素を説明するための「第1」、「第2」などの用語の使用は、これらの要素の位置関係、タイミング関係、または重要性関係を限定することを意図していない。このような用語は、ある要素を別の要素と区別するためにのみ使用される。いくつかの例では、第1の要素と第2の要素は、要素の同じ例を指すことができ、場合によっては、コンテキストの説明に基づいて、異なる例を指すことができる。
【0013】
本開示の様々な例の説明で使用される用語は、特定の例を説明することのみを目的としており、限定することを意図していない。コンテキストが他に明確に示されていない限り、特に要素の数を限定しないなら、要素は一つであってもよいし、複数であってもよい。また、本開示で使用される用語「および/または」は、リストされた項目のいずれかおよび可能なすべての組み合わせをカバーする。
【0014】
人工知能技術の応用の一つの面として、コンピュータにトレーニングされたニューラルネットワークに基づいて人の思惟過程をシミュレートさせることで、異なるユーザに対して方向性を持って製品、内容、サービスなどのオブジェクトを推薦することができる。例えば、情報インタラクションの推薦シーンでは、ユーザにユーザが興味を持つ可能性のあるオーディオ、ビデオ、テキストコンテンツなどを推薦することができ、商品購入の推薦シーンでは、ユーザにユーザが興味を持つ可能性のある商品を推薦することができ、恋愛・結婚または友達作りの推薦シーンでは、ユーザにユーザが興味を持つ可能性のある人を推薦するなどができる。
【0015】
関連技術において、あるユーザにある推薦オブジェクトを推薦するか否かを判断するために、当該ユーザのユーザ特徴および当該推薦オブジェクトのオブジェクト特徴をトレーニングされたニューラルネットワークに入力し、且つ当該ニューラルネットワークから出力された推薦結果に基づき、推薦を実行するか否かを決定することができる。ここで、推薦結果の決定は、ニューラルネットワークに基づく独立した処理過程である。
【0016】
従って、トレーニングされたニューラルネットワークは、人の思惟過程をシミュレートして特定の判断を実現できるブラックボックスであると考えられてもよい。ニューラルネットワークの入力端で判断用の関連情報を入力することで、ニューラルネットワークは、出力端で当該判断を実現するための対応する結果を出力することができる。しかしながら、ニューラルネットワークにおいて入力端から出力端への処理過程は、非常に複雑で、解釈し難い場合が多い。
【0017】
これに基づき、本開示は、コンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法、ニューラルネットワークおよびそのトレーニング方法、コンピューティング装置ならびに媒体を提案する。当該ニューラルネットワークはユーザにオブジェクトを推薦する第1のニューラルネットワークおよび第2のニューラルネットワークを含み、第1のニューラルネットワークを利用してユーザ特徴および推薦オブジェクトのオブジェクト特徴を処理し、当該推薦オブジェクトに対する第1の推薦結果を出力し、入力における強化する必要のある特徴を決定し、第1のニューラルネットワークから出力された第1の推薦結果および強化する必要のある特徴を第2のニューラルネットワークに入力し、少なくとも第2のニューラルネットワークから出力された第2の推薦結果に基づき、推薦オブジェクトに対する最終推薦結果を決定する。これにより、強化する必要のある特徴をニューラルネットワークの処理過程で効果的に補強し、ニューラルネットワークによる推薦の正確性を向上させることができ、また、強化する必要のある特徴の推薦結果に対する影響を向上させることで、推薦結果の解釈可能性を実現することもできる。
【0018】
以下、図面を参照しながら、本開示のコンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法についてさらに説明する。
図1は、本開示の例示的な実施例によるコンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法を示すフローチャートであり、ニューラルネットワークは第1のニューラルネットワークおよび第2のニューラルネットワークを含む。図1に示すように、当該方法は、少なくとも1つのユーザサブ特徴を含むユーザ特徴、および少なくとも1つの推薦オブジェクトサブ特徴を含む推薦オブジェクトのオブジェクト特徴を第1のニューラルネットワークに入力し、第1のニューラルネットワークから出力された推薦オブジェクトに対する第1の推薦結果を取得するステップS101と、少なくとも1つのユーザサブ特徴および少なくとも1つの推薦オブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のある特徴を決定するステップS102と、第1の推薦結果および強化する必要のある特徴を第2のニューラルネットワークに入力し、第2のニューラルネットワークから出力された推薦オブジェクトに対する第2の推薦結果を取得するステップS103と、少なくとも第2の推薦結果に基づき、推薦オブジェクトに対する最終推薦結果を決定するステップS104と、を含む。これにより、ニューラルネットワークを利用してユーザにオブジェクトを推薦する過程で、強化する必要のある特徴を効果的に補強し、強化する必要のある特徴の推薦結果に対する影響を向上させ、さらに推薦の正確性および解釈可能性を向上させることができる。
【0019】
いくつかの実施例によれば、第1のニューラルネットワークおよび第2のニューラルネットワークのうちの1つまたは2つは、完全接続ニューラルネットワークであってよい。具体的には、第1のニューラルネットワークおよび第2のニューラルネットワークのうちの1つを完全接続ニューラルネットワークとしてもよいし、第1のニューラルネットワークおよび第2のニューラルネットワークをすべて完全接続ニューラルネットワークとしてもよい。これにより、ニューラルネットワークの構造を簡略化し、ニューラルネットワークを利用してオブジェクト推薦を行う効率を向上させることができる。
【0020】
なお、本開示における第1のニューラルネットワークおよび第2のニューラルネットワークは、完全接続ニューラルネットワークに制限されず、例えば畳み込みニューラルネットワークを含めた他のネットワークタイプを採用してもよく、ここで制限しない。
【0021】
いくつかの実施例によれば、推薦オブジェクトは、文字、オーディオおよびビデオのうちの1つまたは複数のタイプのデータを含んでよい。なお、推薦オブジェクトのタイプは具体的な推薦シーンに基づくものであり、以上に言及されたタイプに制限されず、ここで制限しない。
【0022】
いくつかの実施例によれば、上記のオブジェクト推薦方法における第1の推薦結果、第2の推薦結果および最終推薦結果は、推薦オブジェクトに対する推薦程度を表す数値、例えば推薦確率を含んでもよい。一例において、推薦オブジェクトに対する推薦確率が閾値(例えば0.7、0.6または0.5)よりも小さい場合、推薦オブジェクトを推薦しないと決定することができ、推薦オブジェクトに対する推薦確率が閾値以上である場合、推薦オブジェクトを推薦すると決定することができる。
【0023】
いくつかの実施例によれば、ステップS101において、ユーザ特徴における各ユーザサブ特徴および推薦オブジェクトの各推薦オブジェクトサブ特徴のワンホットコードを決定することができ、例えば、性別に係るユーザサブ特徴について、「女」をワンホットコード[1,0,0]に対応付け、「男」をワンホットコード[0,1,0]に対応付け、「未知」という性別をワンホットコード[0,0,1]に対応付けることができる。さらに、第1の埋め込み層によりすべてのサブ特徴(すべてのユーザサブ特徴およびすべての推薦オブジェクトサブ特徴を含む)のワンホットコードに次元削減を行うことで、各サブ特徴の埋め込み単語ベクトルを得ることができる。例えば、「女」という性別に対応する埋め込み単語ベクトルは[0.2,0.5]とすることができ、「男」という性別に対応する埋め込み単語ベクトルは[0.7,0.1]とすることができ、「未知」という性別に対応する埋め込み単語ベクトルは[0.4,0.6]とすることができる。一例において、第1のニューラルネットワークの入力を得るように、すべてのサブ特徴の埋め込み単語ベクトルを繋ぎ合わせることができる。これにより、後続のニューラルネットワークの処理を容易にすることができる。
【0024】
ステップS102について、いくつかの実施例によれば、推薦オブジェクトのオブジェクト特徴は、推薦シーン識別子を含んでよく、強化する必要のある特徴は、推薦シーン識別子に基づいて決定されてよい。これにより、異なる推薦シーンの応用上のニーズに基づき、それに応じた強化する必要のある特徴を決定することができ、異なる推薦シーンでの強化する必要のある特徴を効果的に補強することができる。
【0025】
いくつかの実施例によれば、強化する必要のある特徴は、1つまたは複数のユーザサブ特徴のみを含んでもよく、或いは1つまたは複数の推薦オブジェクトサブ特徴のみを含んでもよく、或いは1つまたは複数のユーザサブ特徴を含むだけでなく1つまたは複数の推薦オブジェクトサブ特徴をも含んでもよい。
【0026】
いくつかの実施例によれば、強化する必要のある特徴は、先行経験に応じて決定されてもよい。例えば、ローカルニュースの推薦シーンでは、ユーザがローカルニュースを優先して取得できるように、地理的位置に係るユーザサブ特徴を強化する必要のある特徴として決定することができ、スポーツ試合情報の推薦シーンでは、ユーザが最新のスポーツ試合情報を優先して取得できるように、発表時間に係る推薦オブジェクトの推薦オブジェクトサブ特徴を強化する必要のある特徴として決定することができる。
【0027】
ステップS103について、いくつかの実施例によれば、「第1の推薦結果および強化する必要のある特徴を第2のニューラルネットワークに入力する」ことに対して、第1の推薦結果のワンホットコード、および強化する必要のある特徴に含まれる各サブ特徴(強化する必要のある特徴に含まれるすべてのユーザサブ特徴およびすべての推薦オブジェクトサブ特徴を含む)のワンホットコードを決定することができる。さらに、第2の埋め込み層により第1の推薦結果のワンホットコードに次元削減を行うことで、第1の推薦結果の埋め込み単語ベクトルを得ることができる。強化する必要のある特徴に含まれるすべてのサブ特徴としては、上記のステップS101で決定された埋め込み単語ベクトルを直接用いてもよい。一例において、第2のニューラルネットワークの入力を得るように、得られた第1の推薦結果および強化する必要のある特徴のそれぞれに対応するすべての埋め込み単語ベクトルを繋ぎ合わせることができる。ここで、第2の埋め込み層は、上記のステップS101における第1の埋め込み層とは異なる。
【0028】
ステップS104について、いくつかの実施例によれば、推薦オブジェクトに対する最終推薦結果を決定する際に、第2の推薦結果のみに基づいて決定してもよい。1つの例示的な実施例において、第2の推薦結果を最終推薦結果として決定することができる。
【0029】
別のいくつかの実施例によれば、推薦オブジェクトに対する最終推薦結果を決定する際に、第1の推薦結果および第2の推薦結果に基づいて決定してもよい。これにより、第1のニューラルネットワークおよび第2のニューラルネットワークから出力された推薦結果を組み合わせて最終推薦結果を決定し、最終推薦結果の正確性を向上させることができる。
【0030】
1つの例示的な実施例において、最終推薦結果は、第1の推薦結果と第2の推薦結果との加重和であってよい。特に、最終推薦結果は、第1の推薦結果と第2の推薦結果との平均値であってもよい。
【0031】
理解しやすくするために、恋愛・結婚または友達作りの推薦シーンを例として、上記のコンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法について説明する。なお、本開示により提案されたオブジェクト推薦方法は、恋愛・結婚または友達作りの推薦シーンに制限されず、他のニーズのオブジェクト推薦シーンにも適用可能であり、ここで制限しない。
【0032】
1つの具体的な実施例中において、コンピュータにより実現される、ニューラルネットワークを利用してユーザにオブジェクトを推薦する方法は、以下の内容を含むことができる。
【0033】
ユーザ特徴および推薦オブジェクトのオブジェクト特徴を第1のニューラルネットワークに入力する。ここで、ユーザ特徴は、例えば、性別、年齢、学歴、所得水準などの複数のユーザサブ特徴を含んでよい。推薦オブジェクトは、ユーザに推薦される人であってよく、推薦オブジェクトのオブジェクト特徴は、同じく、例えば、性別、年齢、学歴、所得水準などの複数の推薦オブジェクトサブ特徴を含んでよい。上記のユーザ特徴およびオブジェクト特徴の第1のニューラルネットワークへの入力に応答して、第1のニューラルネットワークから出力された推薦オブジェクトに対する第1の推薦結果を取得する。具体的には、第1の推薦結果は、0.7のような数値であり得る。
【0034】
恋愛・結婚または友達作りの推薦シーンでは、恋愛・結婚または友達作りの推薦シーン識別子に基づき、性別、年齢に係るユーザサブ特徴と、性別、年齢および所得水準に係る推薦オブジェクトサブ特徴とを強化する必要のある特徴として決定することができる。
【0035】
第1の推薦結果および強化する必要のある特徴を第2のニューラルネットワークに入力し、第2のニューラルネットワークから出力された第2の推薦結果を取得し、例えば0.8である。
【0036】
第2の推薦結果に基づき、推薦オブジェクトに対する最終推薦結果を決定してもよいし、または第1の推薦結果と第2の推薦結果との加重和に基づき、推薦オブジェクトに対する最終推薦結果を決定してもよい。
【0037】
予め設定された閾値に基づき、最終推薦結果がこの閾値よりも大きい場合、当該推薦オブジェクトをユーザに推薦する。例えば、予め設定された閾値は0.5とされ、0.7とされる第1の推薦結果と0.8とされる第2の推薦結果との平均値で決定された推薦オブジェクトに対する最終推薦結果は、0.75となる。最終推薦結果の0.75が閾値の0.5よりも大きいため、当該推薦オブジェクトをユーザに推薦する。
【0038】
図2は、本開示の例示的な実施例によるコンピュータにより実現されるニューラルネットワークのトレーニング方法を示すフローチャートであり、ニューラルネットワークは第1のニューラルネットワークおよび第2のニューラルネットワークを含む。図2に示すように、トレーニング方法は、第1のニューラルネットワークのトレーニングを完了するステップS201と、少なくとも1つのサンプルユーザサブ特徴を含むサンプルユーザ特徴、および少なくとも1つのサンプルオブジェクトサブ特徴を含むサンプルオブジェクトのオブジェクト特徴を取得し、サンプルオブジェクトに対する実際推薦結果をラベリングするステップS202と、少なくとも1つのサンプルユーザサブ特徴および少なくとも1つのサンプルオブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のあるサンプル特徴を決定するステップS203と、サンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴の第1のニューラルネットワークへの入力に応答して、第1のニューラルネットワークからサンプルオブジェクトに対する第1の予測推薦結果を出力するステップS204と、第1の予測推薦結果および強化する必要のあるサンプル特徴の第2のニューラルネットワークへの入力に応答して、第2のニューラルネットワークからサンプルオブジェクトに対する第2の予測推薦結果を出力するステップS205と、少なくとも実際推薦結果および第2の予測推薦結果に基づき、損失値を決定するステップS206と、損失値に基づき、第2のニューラルネットワークのパラメータを調整するステップS207と、を含んでよい。これにより、ニューラルネットワークのトレーニング過程で、ニューラルネットワークが強化する必要のある特徴を強化学習することができ、さらに当該ニューラルネットワークに基づく推薦正確性を向上させることができる。
【0039】
ステップS201について、第1のニューラルネットワークは、第2のニューラルネットワークをトレーニングし始める前に、先にトレーニングを完了してもよい。
いくつかの実施例によれば、第1のニューラルネットワークのトレーニング過程は、少なくとも1つのサンプルユーザサブ特徴を含むサンプルユーザ特徴、および少なくとも1つのサンプルオブジェクトサブ特徴を含むサンプルオブジェクトのオブジェクト特徴を取得し、サンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴の実際推薦結果をラベリングすることと、サンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴の第1のニューラルネットワークへの入力に応答して、第1のニューラルネットワークからサンプルオブジェクトに対する第1の予測推薦結果を出力することと、実際推薦結果および第1の予測推薦結果に基づき、損失値を決定することと、損失値に基づき、第1のニューラルネットワークのパラメータを調整することとを含んでもよい。
【0040】
いくつかの実施例によれば、第1のニューラルネットワークのトレーニング過程で使用されるサンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴は、第2のニューラルネットワークのトレーニング過程で使用されるサンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴と同じでもよい。なお、第1のニューラルネットワークのトレーニング過程で使用されるサンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴は、第2のニューラルネットワークのトレーニング過程で使用されるサンプルユーザ特徴およびサンプルオブジェクトのオブジェクト特徴と異なってもよく、ここで制限しない。
【0041】
ステップS203について、いくつかの実施例によれば、サンプルオブジェクトのオブジェクト特徴は、サンプルシーン識別子を含んでよく、強化する必要のあるサンプル特徴は、サンプルシーン識別子に基づいて決定される。
【0042】
ステップS206について、いくつかの実施例によれば、実際推薦結果および第2の予測推薦結果のみに基づき、損失値を決定してもよい。
ステップS206について、別のいくつかの実施例によれば、実際推薦結果、第1の予測推薦結果および第2の予測推薦結果に基づき、損失値を決定してもよい。これにより、第1のニューラルネットワークおよび第2のニューラルネットワークから出力された予測推薦結果を組み合わせてニューラルネットワークをトレーニングし、ニューラルネットワークのトレーニング効果を向上させることができる。
【0043】
1つの例示的な実施例において、実際推薦結果および第1の予測推薦結果と第2の予測推薦結果との加重和に基づき、損失値を決定することができる。特に、実際推薦結果および第1の予測推薦結果と第2の予測推薦結果との平均値に基づき、損失値を決定することができる。
【0044】
本開示のもう一つの態様によれば、図3に示すように、コンピュータにより実現されるニューラルネットワーク300をさらに提供し、ニューラルネットワーク300は、推薦オブジェクトの最終推薦結果を予測するためにユーザ特徴および推薦オブジェクトのオブジェクト特徴を受信するように構成され、ニューラルネットワーク300は、少なくとも1つのユーザサブ特徴を含むユーザ特徴、および少なくとも1つの推薦オブジェクトサブ特徴を含む推薦オブジェクトのオブジェクト特徴の入力に応答して、推薦オブジェクトに対する第1の推薦結果を出力するように構成される第1のニューラルネットワーク301と、少なくとも1つのユーザサブ特徴および少なくとも1つの推薦オブジェクトサブ特徴のうちの1つまたは複数を含む強化する必要のある特徴を決定するように構成される決定ユニット302と、第1の推薦結果および強化する必要のある特徴の入力に応答して、推薦オブジェクトに対する第2の推薦結果を出力するように構成される第2のニューラルネットワーク303と、少なくとも第2の推薦結果に基づき、最終推薦結果を決定するように構成される出力ユニット304と、を含む。
【0045】
いくつかの実施例によれば、推薦オブジェクトのオブジェクト特徴は、推薦シーン識別子を含んでよく、決定ユニットは、推薦シーン識別子に基づき、強化する必要のある特徴を決定するように構成されてよい。
【0046】
いくつかの実施例によれば、出力ユニットは、第1の推薦結果および第2の推薦結果に基づき、推薦オブジェクトに対する最終推薦結果を決定するように構成されてよい。
いくつかの実施例によれば、出力ユニットは、さらに第1の推薦結果と第2の推薦結果との加重和を最終推薦結果として決定するように構成されてよい。
【0047】
いくつかの実施例によれば、第1のニューラルネットワークおよび第2のニューラルネットワークのうちの1つまたは2つは、完全接続ニューラルネットワークである。
いくつかの実施例によれば、推薦オブジェクトは、文字、オーディオおよびビデオのうちの1つまたは複数のタイプのデータを含んでよい。
【0048】
本開示のもう一つの態様によれば、コンピューティング装置をさらに提供し、プロセッサと、プログラムが記憶されたメモリと、を含み、プログラムは命令を含み、命令はプロセッサによって実行されると、プロセッサに上記のオブジェクト推薦方法およびトレーニング方法のうちの1つまたは複数を実行させる。
【0049】
本開示のもう一つの態様によれば、さらにプログラムが記憶されたコンピュータ可読記憶媒体を提供し、プログラムは命令を含み、命令はコンピューティング装置のプロセッサによって実行されると、コンピューティング装置に上記のオブジェクト推薦方法およびトレーニング方法のうちの1つまたは複数を実行させる。
【0050】
図4に示すように、本開示の各態様に適用できるハードウェア装置の一例であるコンピューティング装置4000について説明する。コンピューティング装置4000は、処理および/またはコンピューティングを実行するように配置された任意のマシンであってもよく、ワークステーション、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、パーソナルデジタルアシスタント、ロボット、スマートフォン、車載コンピュータ、またはその任意の組み合わせであってもよいが、これらに限定されない。上記の方法は、全部または少なくとも部分的にコンピューティング装置4000または類似する装置またはシステムにより実現することができる。
【0051】
ソフトウェア要素(プログラム)はワーキングメモリ4014に配置することができ、前記ソフトウェア要素(プログラム)はオペレーティングシステム4016、1つまたは複数のアプリケーションプログラム4018、ドライバ、および/または他のデータとコードを含むが、これらに限定されない。上記の方法およびステップを実行するための命令は、1つまたは複数のアプリケーションプログラム4018に含まれることができ、上記のオブジェクト推薦方法およびトレーニング方法のうちの1つまたは複数は、プロセッサ4004によって1つまたは複数のアプリケーションプログラム4018の命令を読み取って実行することで実現することができる。より具体的には、上記のオブジェクト推薦方法において、ステップS101~ステップS104は、例えば、プロセッサ4004によりステップS101~ステップS104の命令を有するアプリケーションプログラム4018を実行することで実現することができる。上記のトレーニング方法において、ステップS201~ステップS207は、例えば、プロセッサ4004によりステップS201~ステップS207の命令を有するアプリケーションプログラム4018を実行することで実現することができる。さらに、上記のオブジェクト推薦方法およびトレーニング方法のうちの1つまたは複数の他のステップは、例えば、プロセッサ4004により対応するステップにおける命令を有するアプリケーションプログラム4018を実行することで実現することができる。ソフトウェア要素(プログラム)の命令の実行可能コードまたはソースコードは、非一時的なコンピュータ可読記憶媒体(例えば、記憶装置4010)に記憶されることができ、実行時にはワーキングメモリ4014に記憶されることができる(コンパイルおよび/またはインストール可能)。ソフトウェア要素(プログラム)の命令の実行可能コードまたはソースコードは、リモートの位置からダウンロードすることもできる。
【0052】
具体的な要求によって様々な変形が可能であることも理解すべきである。例えば、カスタマイズハードウェアを使用してもよく、および/または、ハードウェア、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語、またはこれらの任意の組み合わせで特定の要素を実現してもよい。例えば、開示された方法および装置の一部または全部は、本開示によるロジックおよびアルゴリズムを使用して、アセンブリ言語或いはハードウェアプログラミング言語(例えばVERILOG(登録商標)、VHDL、C++など)でハードウェア(例えば、フィールドプログラマブルゲートアレイ(FPGA)および/またはプログラマブルロジックアレイ(PLA)を含むプログラマブルロジック回路)に対してプログラミングすることによって実現することができる。
【0053】
上記の方法は、サーバ-クライアントモードによって実現することができるのも理解されるべきである。例えば、クライアントは、ユーザから入力されたデータを受信し、データをサーバに送信することができる。クライアントもユーザが入力したデータを受信し、上記の方法の一部の処理を行い、処理で得られたデータをサーバに送信することができる。サーバは、クライアントからのデータを受信し、上記の方法または上記の方法の他の部分を実行し、その実行結果をクライアントに返信することができる。クライアントは、方法の実行結果をサーバから受信し、例えば出力装置を介してユーザに表示することができる。サーバは、分散型システムのサーバ、またはブロックチェーンを組み合わせたサーバであってもよい。サーバは、クラウドサーバでもよいし、人工知能技術を備えたスマートクラウドコンピューティングサーバやスマートクラウドホストでもよい。
【0054】
コンピューティング装置4000のコンポーネントは、ネットワーク上に分散され得ることも理解されるべきである。例えば、1つのプロセッサを使用していくつかの処理を実行してもよく、同時に当該1つのプロセッサから離れた別のプロセッサによって他の処理を実行してもよい。コンピューティングシステム4000の他のコンポーネントもこれに類似して分布することができる。このように、コンピューティング装置4000は、複数の位置で処理を行う分散型コンピューティングシステムとして解釈することができる。
【0055】
本開示の実施形態または例は図面を参照して説明されたが、上記の方法、システム、および装置は単なる例示的な実施形態または例であり、本発明の範囲はこれらの実施形態または例によって制限されるものではなく、授権後の特許請求の範囲およびその均等範囲のみによって限定されることを理解されたい。実施例または例の様々な要素は省略されてもよく、またはそれらの均等要素によって代替されてもよい。また、各ステップは、本開示で説明した順序とは異なる順序で実行されてもよい。さらに、実施形態または例の様々な要素は、様々な方法で組み合わせられてもよい。重要なのは、技術の進化に伴い、ここで説明される多くの要素は、本開示の後に現れる同等の要素に置き換えることができるということである。
図1
図2
図3
図4