(57)【要約】【課題】本発明は混合メタ学習ネットワーク訓練装置及び方法を提供する。【解決手段】装置は、推薦ニューラルネットワークの損失を得て汎化損失を計算し；汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算し；勾配を第一メタ学習ネットワークに入力し、各推薦ニューラルネットワークの重みパラメータの更新値を取得し；更新値に基づいて推薦ニューラルネットワークの重みパラメータを更新し；推薦ニューラルネットワークの損失がより小さい方向に向けて第一メタ学習ネットワークを訓練し；過去推薦項集合における各推薦項と新出現推薦項集合における各推薦項との間の第一、第二類似度を計算し；類似度損失がより小さい方向に向けて嵌入層及び第二メタ学習ネットワークの重みパラメータを訓練し；及び、上述処理を、第一反復終了条件が満足されるまで反復して実行するユニットを含む。【選択図】図１
2020144852.tif 000002
【特許請求の範囲】
【請求項１】
混合メタ学習ネットワーク訓練装置であって、
訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、前記複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算する汎化損失計算ユニットであって、前記異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、前記複数の推薦ニューラルネットワークの構造は互い異なる汎化損失計算ユニット；
前記汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する勾配計算ユニット；
前記勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得する学習ユニットであって、前記第一メタ学習ネットワークは勾配に対して学習を行うニューラルネットワークである学習ユニット；
前記更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する第一更新ユニット；
前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、及び前記第一更新ユニットの処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの前記汎化損失に基づいて、前記複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する第二更新ユニット；
前記複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、前記第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、前記第一推薦ニューラルネットワークの推薦項ワードリストと、前記第二推薦ニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記第一推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記第二推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ユニット；
前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、前記第一更新ユニット、及び前記第二更新ユニットの処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ユニットであって、前記第二メタ学習ネットワークは前記第二類似度に対して学習を行うニューラルネットワークである第二類似度計算ユニット；
前記各２つの推薦ニューラルネットワークについて前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び前記第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークを取得する類似度損失計算ユニット；及び
更新後の前記複数の推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークに基づいて、前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、前記第一更新ユニット、前記第二更新ユニット、前記第二類似度計算ユニット、及び前記類似度損失計算ユニットの処理を、第一反復終了条件が満足されるまで反復して実行する第三更新ユニットを含み、
前記混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び前記第二メタ学習ネットワークを含む、装置。
【請求項２】
請求項1に記載の装置であって、
前記複数の推薦ニューラルネットワークのうちの各々は、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである、装置。
【請求項３】
請求項1に記載の装置であって、
前記第二類似度計算ユニットは、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴と、前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、学習された変換を用いて、前記第一推薦ニューラルネットワークの前記過去推薦項集合における推薦項のワード嵌入特徴を前記第二推薦ニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、前記第二類似度計算ユニットは、前記マッピング後の推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、前記第二類似度を計算する、装置。
【請求項４】
請求項3に記載の装置であって、
前記第二類似度計算ユニットは、前記マッピング後の推薦項のワード嵌入特徴の正規化値及び前記第二推薦ニューラルネットワークの前記新出現推薦項集合における推薦項のワード嵌入特徴の正規化値に基づいて、前記第二類似度を計算する、装置。
【請求項５】
請求項1に記載の装置であって、
前記第一類似度計算ユニットは、前記第一推薦ニューラルネットワーク及び前記第二推薦ニューラルネットワークについて、所定長さのワード窓に従って、共起ワード周波数行列を構成し、前記共起ワード周波数行列から、それぞれ、前記共起ワード周波数特徴を抽出する、装置。
【請求項６】
請求項1に記載の装置であって、
前記汎化損失計算ユニットは、さらに、前記複数の推薦ニューラルネットワークの損失の平均化を行い、平均後の損失を前記汎化損失とする、装置。
【請求項７】
請求項1に記載の装置であって、
前記勾配計算ユニットは、前記汎化損失の、各推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対しての勾配を計算する、装置。
【請求項８】
請求項1に記載の装置であって、
前記少なくとも１つの第一メタ学習ネットワークの数が、前記複数の推薦ニューラルネットワークにおけるネットワーク層の類型の数と同じであり、
各推薦ニューラルネットワークの各ネットワーク層の勾配が、該層の類型に対応する１つの第一メタ学習ネットワークに入力される、装置。
【請求項９】
混合メタ学習ネットワーク訓練方法であって、
訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、前記複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算する汎化損失計算ステップであって、前記異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、前記複数の推薦ニューラルネットワークの構造は互い異なる汎化損失計算ステップ；
前記汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する勾配計算ステップ；
前記勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得する学習ステップであって、前記第一メタ学習ネットワークは勾配に対して学習を行うニューラルネットワークである学習ステップ；
前記更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する第一更新ステップ；
前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、及び前記第一更新ステップの処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの前記汎化損失に基づいて、前記複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する第二更新ステップ；
前記複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、前記第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、前記第一推薦ニューラルネットワークの推薦項ワードリストと、前記第二推薦ニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記第一推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記第二推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ステップ；
前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、前記第一更新ステップ、及び前記第二更新ステップの処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ステップであって、前記第二メタ学習ネットワークは前記第二類似度に対して学習を行うニューラルネットワークである第二類似度計算ステップ；
前記各２つの推薦ニューラルネットワークについて前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び前記第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークを取得する類似度損失計算ステップ；及び
更新後の前記複数の推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークに基づいて、前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、前記第一更新ステップ、前記第二更新ステップ、前記第二類似度計算ステップ、及び前記類似度損失計算ステップの処理を、第一反復終了条件が満足されるまで反復して実行する第三更新ステップを含み、
前記混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び前記第二メタ学習ネットワークを含む、方法。
【請求項１０】
請求項1〜8のうちの任意の１項に記載の混合メタ学習ネットワーク訓練装置の訓練により得られた混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置であって、
訓練データを用いて、訓練待ちのニューラルネットワークの損失を取得する損失取得ユニット；
前記損失の、前記訓練待ちのニューラルネットワークの重みパラメータに対する勾配を計算するニューラルネットワーク勾配計算ユニット；
前記勾配を、それぞれ、前記第一反復終了条件が満足されるときに取得された訓練済みの前記少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力することで、前記訓練待ちのニューラルネットワークの重みパラメータの更新値を取得する勾配学習ユニット；
前記更新値に基づいて、前記訓練待ちのニューラルネットワークの重みパラメータを更新する第一パラメータ更新ユニット；
前記訓練待ちのニューラルネットワーク及び前記訓練待ちのニューラルネットワークに対応する推薦タスクの直前の推薦タスクのための直前推薦ニューラルネットワークについて、前記直前推薦ニューラルネットワークの推薦項ワードリストと、前記訓練待ちのニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記直前推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記訓練待ちのニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ユニット；
前記損失取得ユニット、前記ニューラルネットワーク勾配計算ユニット、前記勾配学習ユニット、及び前記第一パラメータ更新ユニットの処理を反復して実行し、第三所定条件が満足されるときに、前記第三所定条件が満足されるときの、前記直前推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記訓練待ちのニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、前記第一反復終了条件が満足されるときに取得された訓練済みの前記第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ユニット；
前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記訓練待ちのニューラルネットワークの嵌入層の重みパラメータを訓練することで、更新後の訓練待ちのニューラルネットワークの嵌入層を取得する類似度損失計算ユニット；及び
更新後の前記訓練待ちのニューラルネットワークの嵌入層に基づいて、前記損失取得ユニット、前記ニューラルネットワーク勾配計算ユニット、前記勾配学習ユニット、前記第一パラメータ更新ユニット、前記第二類似度計算ユニット、及び前記類似度損失計算ユニットの処理を、第二反復終了条件が満足されるまで反復して実行する第二パラメータ更新ユニットを含む、装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理分野に関し、特に、混合（hybrid）メタ学習ネットワーク訓練装置及び方法、並びに、混合メタ学習ネットワーク訓練装置の訓練により得られた混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置及び方法に関する。
【背景技術】
【０００２】
ニューラルネットワーク推薦システム（例えば、ユーザにウェブサイトにおける品物リストを推薦するためのニューラルネットワーク推薦システム）が学術界及び産業界で幅広く用いられている。また、ニューラルネットワーク推薦システムが時間の経過に伴って更新される必要もある。しかし、ニューラルネットワークにおいて一般的に採用されるmini-batchランダム勾配降下法では、ニューラルネットワーク推薦システムの更新時効性及び小サンプル訓練制約を満足することができる。
【０００３】
ニューラルネットワーク推薦システムでは、嵌入層が必須である。メタ情報としてのタスク（task）ニューラルネットワークの勾配情報を学習するメタ学習方法により、効率がより高いタスクニューラルネットワークの重みパラメータの最適化経路の予測を学習することができる。しかし、嵌入層を含むタスクニューラルネットワークについて言えば、該メタ学習方法のパフォーマンスが良くない。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明の目的は、従来技術における１つ又は複数の欠点を解決し得る混合メタ学習ネットワーク訓練装置及び方法、並びに、混合メタ学習ネットワーク訓練装置の訓練により得られた混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置及び方法を提供することにある。
【課題を解決するための手段】
【０００５】
本発明の一側面によれば、混合メタ学習ネットワーク訓練装置が提供され、それは、
訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、前記複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算する汎化損失計算ユニットであって、前記異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、且つ前記複数の推薦ニューラルネットワークの構造は互い異なる汎化損失計算ユニット；
前記汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する勾配計算ユニット；
前記勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得する学習ユニットであって、前記第一メタ学習ネットワークは勾配に対して学習を行うニューラルネットワークである学習ユニット；
前記更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する第一更新ユニット；
前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、及び前記第一更新ユニットの処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの前記汎化損失に基づいて、前記複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する第二更新ユニット；
前記複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、前記第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、前記第一推薦ニューラルネットワークの推薦項ワードリスト（word  list）と、前記第二推薦ニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記第一推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記第二推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ユニット；
前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、前記第一更新ユニット、及び前記第二更新ユニットの処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ユニットであって、前記第二メタ学習ネットワークは前記第二類似度に対して学習を行うニューラルネットワークである第二類似度計算ユニット；
前記各２つの推薦ニューラルネットワークについて前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び前記第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークを取得する類似度損失計算ユニット；及び
更新後の前記複数の推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークに基づいて、前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、前記第一更新ユニット、前記第二更新ユニット、前記第二類似度計算ユニット、及び前記類似度損失計算ユニットの処理を、第一反復終了条件が満足されるまで反復して実行する第三更新ユニットを含み、
前記混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び前記第二メタ学習ネットワークを含む。
【０００６】
本発明の他の側面によれば、混合メタ学習ネットワーク訓練方法が提供され、それは、
訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、前記複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算する汎化損失計算ステップであって、前記異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、且つ前記複数の推薦ニューラルネットワークの構造は互い異なる汎化損失計算ステップ；
前記汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する勾配計算ステップ；
前記勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得する学習ステップであって、前記第一メタ学習ネットワークは勾配に対して学習を行うニューラルネットワークである学習ステップ；
前記更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する第一更新ステップ；
前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、及び前記第一更新ステップの処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの前記汎化損失に基づいて、前記複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する第二更新ステップ；
前記複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、前記第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、前記第一推薦ニューラルネットワークの推薦項ワードリストと、前記第二推薦ニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記第一推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記第二推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ステップ；
前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、前記第一更新ステップ、及び前記第二更新ステップの処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ステップであって、前記第二メタ学習ネットワークは前記第二類似度に対して学習を行うニューラルネットワークである第二類似度計算ステップ；
前記各２つの推薦ニューラルネットワークについて前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び前記第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークを取得する類似度損失計算ステップ；及び
更新後の前記複数の推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークに基づいて、前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、前記第一更新ステップ、前記第二更新ステップ、前記第二類似度計算ステップ、及び前記類似度損失計算ステップの処理を、第一反復終了条件が満足されるまで反復して実行する第三更新ステップを含み、
前記混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び前記第二メタ学習ネットワークを含む。
【０００７】
本発明の他の側面によれば、訓練済みの混合メタ学習ネットワークを用いて、ニューラルネットワークに対して訓練を行う装置が提供され、それは、
訓練データを用いて、訓練待ちのニューラルネットワークの損失を取得する損失取得ユニット；
前記損失の、前記訓練待ちのニューラルネットワークの重みパラメータに対する勾配を計算するニューラルネットワーク勾配計算ユニット；
前記勾配を、それぞれ、前記第一反復終了条件が満足されるときに取得された訓練済みの前記少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力することで、前記訓練待ちのニューラルネットワークの重みパラメータの更新値を取得する勾配学習ユニット；
前記更新値に基づいて、前記訓練待ちのニューラルネットワークの重みパラメータを更新する第一パラメータ更新ユニット；
前記訓練待ちのニューラルネットワーク及び前記訓練待ちのニューラルネットワークに対応する推薦タスクの直前の推薦タスクのための直前推薦ニューラルネットワークについて、前記直前推薦ニューラルネットワークの推薦項ワードリストと、前記訓練待ちのニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記直前推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記訓練待ちのニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ユニット；
前記損失取得ユニット、前記ニューラルネットワーク勾配計算ユニット、前記勾配学習ユニット、及び前記第一パラメータ更新ユニットの処理を反復して実行し、第三所定条件が満足されるときに、前記第三所定条件が満足されるときの、前記直前推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記訓練待ちのニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、前記第一反復終了条件が満足されるときに取得された訓練済みの前記第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ユニット；
前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記訓練待ちのニューラルネットワークの嵌入層の重みパラメータを訓練することで、更新後の訓練待ちのニューラルネットワークの嵌入層を取得する類似度損失計算ユニット；及び
更新後の前記訓練待ちのニューラルネットワークの嵌入層に基づいて、前記損失取得ユニット、前記ニューラルネットワーク勾配計算ユニット、前記勾配学習ユニット、前記第一パラメータ更新ユニット、前記第二類似度計算ユニット、及び前記類似度損失計算ユニットの処理を、第二反復終了条件が満足されるまで反復して実行する第二パラメータ更新ユニットを含む。
【０００８】
本発明の他の側面によれば、さらに、上述の本発明による方法を実現するためのコンピュータプログラムコード及びコンピュータプログラムプロダクトが提供される。
【図面の簡単な説明】
【０００９】
【図１】本発明の実施例における混合メタ学習ネットワーク訓練装置の構成ブロック図である。
【図２Ａ】本発明の実施例における嵌入層を含む複数の推薦ニューラルネットワークの簡略構成図である。
【図２Ｂ】本発明の実施例における嵌入層を含む複数の推薦ニューラルネットワークの詳細構成図である。
【図３】本発明の実施例における第一メタ学習ネットワークが実行する処理の一例を示す図である。
【図４】本発明の実施例における複数の推薦ニューラルネットワークの勾配情報に基づく第一メタ学習ネットワーク及び従来のデータに基づくタスクネットワークのシングルタスクに対しての２次元損失曲面の上面図である。
【図５】本発明の実施例における期間が隣接する２つの推薦ニューラルネットワークの推薦項ワードリストの間の集合の関係図である。
【図６】本発明の実施例における第一類似度及び第二類似度を用いて第二メタ学習ネットワーク及び嵌入層に対して訓練を行う一例を示す図である。
【図７】本発明の実施例における混合メタ学習ネットワーク訓練方法の例示的なフローチャートである。
【図８】訓練済みの混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置の構成ブロック図である。
【図９】訓練済みの混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う方法の例示的なフローチャートである。
【図１０】本発明の実施例で採用される汎用コンピュータの例示的な構成ブロック図である。
【発明を実施するための形態】
【００１０】
以下、添付した図面を参照しながら、本発明を実施するための好適な形態を詳細に説明する。なお、このような実施形態は、例示に過ぎず、本発明を限定するものでない。
【００１１】
まず、図1に基づいて本発明の実施例における混合メタ学習ネットワーク訓練装置100の機能ブロック図を説明する。図1は、本発明の実施例における混合メタ学習ネットワーク訓練装置100の構成ブロック図である。図1に示すように、本発明の実施例における混合メタ学習ネットワーク訓練装置100は、汎化損失計算ユニット102、勾配計算ユニット104、学習ユニット106、第一更新ユニット108、第二更新ユニット110、第一類似度計算ユニット112、第二類似度計算ユニット114、類似度損失計算ユニット116、及び第三更新ユニット118を含む。
【００１２】
汎化損失計算ユニット102は、訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算し、そのうち、異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、且つ複数の推薦ニューラルネットワークの構造は互い異なる。
【００１３】
一例として、この分野における通常の損失計算関数、例えば、softmaxなどを用いて、推薦ニューラルネットワークの損失を得ることができる。
【００１４】
一例として、異なる推薦タスクが類似性を有するとは、推薦タスクのビジネスシーンが相似しており、例えば、異なる推薦タスクの推薦ニューラルネットワークの入力が相似しており、及び／又は、異なる推薦タスクの推薦ニューラルネットワークの出力が相似しており、或いは、異なる推薦タスクの推薦ニューラルネットワークの構造が相似していることを指す。
【００１５】
好ましくは、汎化損失計算ユニット102は、さらに、複数の推薦ニューラルネットワークの損失の平均化を行い、且つ平均化後の損失を汎化損失とする。なお、当業者が理解すべきは、複数の推薦ニューラルネットワークの損失に対して他の処理を行った後の結果を汎化損失としても良いということであるが、ここでは、その詳しい説明を省略する。
【００１６】
一例として、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークは、それぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークであり、上述の推薦タスクは、ユーザにウェブサイトにおける品物リストを推薦するという類似性を有し、各推薦ニューラルネットワークは、入力が関連付け無しの閲覧品物である嵌入層を有し、また、前記複数の推薦ニューラルネットワークの構造は、互い異なる。以下、分かりやすくするために、各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークであることを例として説明を行う。一例として、品物リストは、商品リストであっても良い。
【００１７】
本発明の実施例における複数の推薦ニューラルネットワークは、基本ユニットからなるシーケンス（例えば、閲覧品物シーケンス）を入力とし、次の１つの基本ユニット（例えば、次の１つの閲覧可能なの品物）を予測する。推薦ニューラルネットワークのアーキテクトが多くある。一例として、図2A及び図2Bには、各推薦ニューラルネットワークが嵌入層、回帰型ニューラルネットワーク層及びアフィン層により構成される例が示されており、そのうち、各推薦ニューラルネットワークは、すべて、この３層により構成されるが、複数の推薦ニューラルネットワークの構造、即ち、重みパラメータは、互いに異なる。図2A及び図2Bは、本発明の実施例における嵌入層を含む複数の推薦ニューラルネットワークの例示的な構成を示す図である。そのうち、図2Aは、本発明の実施例における複数の推薦ニューラルネットワークの簡略構成図であり、図2Bは、本発明の実施例における複数の推薦ニューラルネットワークの詳細構成図である。
【００１８】
図2A及び図2Bでは、Q1:n-1=[Q1,Q2,…,Qn-1]がコンテクスト基本ユニット索引シーケンスであり、各Qi（i=1,2,…,n-1）が基本ユニットの索引番号を表し、そのうち、推薦ニューラルネットワークが、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、コンテクスト基本ユニットは、閲覧の品物の名称である。嵌入層は、基本ユニット索引番号を低次元連続非スパースワード（non-sparse  word）ベクトルに変換する。回帰型ニューラルネットワーク（一例として、回帰型ニューラルネットワークが長・短期記憶ネットワークLSTMであっても良い）は、コンテクスト基本ユニット索引シーケンスに対応するワードベクトルシーケンスを入力とし、ループ展開により、Qn-1に対応するn-1の位置のコンテクスト特徴hn-1を出力し、そのうち、h0が初期特徴である。アフィン層は、hn-1を基本ユニット辞典と同じ次元のベクトルOn-1に変換する。最後に、現在の推薦ニューラルネットワークの重みパラメータ下のOn-1（それが推薦の品物に対応する）と、次の１つのリアルな基本ユニット（Qnに対応するユニット）のワンホットベクトル（それがリアルな閲覧品物に対応する）との間の損失値を汎化損失として計算する。汎化損失をできるだけ小さくすることで、推薦ニューラルネットワークの重みパラメータを最適化することができる。
【００１９】
後述のように、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を第一メタ学習ネットワークの入力サンプルとすることで、第一メタ学習ネットワークに、より多くの入力サンプルを提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができる。
【００２０】
勾配計算ユニット104は、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する。
【００２１】
具体的には、汎化損失の、各推薦ニューラルネットワークの重みパラメータに関する偏導（partial  derivative）を求めた結果を勾配とする。
【００２２】
推薦ニューラルネットワーク学習プロセスが本質的に、推薦ニューラルネットワークの重みパラメータを連続して更新することで汎化損失をできるだけ小さくするプロセスである。上述の勾配は、推薦ニューラルネットワークの重みパラメータの更新の方向を制御するために用いられても良く、また、上述の勾配は、さらに、推薦ニューラルネットワークの重みパラメータの更新の幅を制御することもできる。
【００２３】
好ましくは、勾配計算ユニット104は、汎化損失の、各推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対する勾配を計算する。
【００２４】
一例として、推薦ニューラルネットワークは、複数のネットワーク層を含んでも良い（例えばて、推薦ニューラルネットワークが畳み込みニューラルネットワークである場合、畳み込みニューラルネットワークは、複数の畳み込み層、複数の全結合層などを含んでも良い）。推薦ニューラルネットワークの重みパラメータの学習とは、推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータを学習することを指す。よって、勾配計算ユニット104は、汎化損失の、推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対する勾配を計算する必要がある。
【００２５】
学習ユニット106は、勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得し、そのうち、第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。
【００２６】
前述のように、推薦ニューラルネットワーク学習プロセスは、推薦ニューラルネットワークの各ネットワーク層の重みパラメータを連続して更新することで汎化損失をできるだけ小さくするプロセスとして現化することができる。
【００２７】
推薦ニューラルネットワークにおける１つのネットワーク層の重みパラメータの更新がWi+1=Wi+ΔWと表されても良く、そのうち、Wiは、該ネットワーク層の更新前の重みパラメータであり、Wi+1は、該ネットワーク層の更新後の重みパラメータであり、ΔWは、該ネットワーク層の重みパラメータの更新値である。
【００２８】
重みパラメータの更新値ΔWは、ΔW=λ*gradと表することができ、そのうち、λは、学習率であり、重みパラメータの更新の幅を制御するために用いられ、例えば、経験値、又は、実験により確定されるパラメータであり、gradは、汎化損失の、該ネットワーク層の重みパラメータに対する勾配であり、重みパラメータの更新の方向を制御するために用いられても良く、また、gradは、さらに、重みパラメータの更新の幅を制御することもできる。上述の公式より分かるように、更新量ΔWは、推薦ニューラルネットワーク学習スピードに直接影響する。
【００２９】
本発明の実施例における第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。推薦ニューラルネットワークの各ネットワーク層の勾配gradをそれぞれメタ学習ネットワークに入力することで、第一メタ学習ネットワークは、該層の重みパラメータの更新値ΔWを出力する。
【００３０】
好ましくは、第一メタ学習ネットワークは、推薦ニューラルネットワークの各ネットワーク層の重みパラメータの前回の更新の状態に基づいて、該層の重みパラメータの更新値を出力する。
【００３１】
具体的には、第一メタ学習ネットワークは、推薦ニューラルネットワークの各ネットワーク層の重みパラメータの勾配及び該層の重みパラメータの前回の更新により生成された状態ベクトル（初期の状態ベクトルがゼロベクトルである）に基づいて、該層の重みパラメータの更新値及び該層の重みパラメータの今回の更新により生成された状態ベクトルを出力する。前の重みパラメータ更新結果が後の重みパラメータ更新結果に影響を与えることができ、これで分かるように、重みパラメータの更新は、後効果を有する。
【００３２】
図3は、本発明の実施例における第一メタ学習ネットワークが実行する処理の一例を示す図。
【００３３】
図3では、推薦ニューラルネットワークにおける１つのネットワーク層の重みパラメータの勾配gradを第一メタ学習ネットワークに入力し、そのうち、gradは、１つの２次元行列である。
【００３４】
第一メタ学習ネットワークでは、まず、前処理操作により２次元行列のgradを行の方向に沿って１次元ベクトルの前処理勾配ベクトルに展開する。
【００３５】
回帰型ニューラルネットワークにより重みパラメータの更新の後効果を表すことができ、図3に示すように、複数の回帰型ニューラルネットワークが存在し、例えば、図3において“1”、“2”“3”、“4”、“5”、“6”がつく回帰型ニューラルネットワークである。図3では、回帰型ニューラルネットワークが長・短期記憶ネットワークLSTMであることが示されているが、当業者が理解すべきは、回帰型ニューラルネットワークは、さらに、長・短期記憶ネットワーク以外のネットワークであっても良いということである。前処理勾配ベクトル、及び、回帰型ニューラルネットワークの前回の状態ベクトル（それが、前述の、タスクネットワーク実例の重みパラメータの前回の更新により生成された状態ベクトルに対応し、図3における“前回更新状態”の中の“前回更新状態ベクトル”である）が回帰型ニューラルネットワーク層の入力とされ、出力が一連の回帰型ニューラルネットワークの出力ベクトルであり（図3における“LSTM出力ベクトル”である）、そのうち、回帰型ニューラルネットワークの状態ベクトルがゼロベクトルと統一初期化される。そのうち、前処理勾配ベクトルの各要素が回帰型ニューラルネットワーク層の重みパラメータをシェアする。なお、同じ類型のネットワーク層のサイズの不一致により、回帰型ニューラルネットワークの内部の入力重みをシェアできないことを引き起こすことがあり、サイズが不一致の問題を解決するために、回帰型ニューラルネットワークでは、マルチベクトルのうちの各要素のループ展開及び重みシェアのポリシーが採用されている。展開の中間状態（例えば、図3における斜線付き小塊）を保存する必要がなく、展開の最後の１つの位置の状態の出力のみを今回の更新により生成された状態ベクトル（即ち、図3における“今回更新状態”の中の“今回更新状態ベクトル”）として保存しても良い。
【００３６】
続いて、１つの線形変換層により各回帰型ニューラルネットワークの出力ベクトルをスカラー要素に変換し、そして、すべてのスカラー要素を合併して最終出力ベクトルとする。
【００３７】
最後に、後処理により最終出力ベクトルをgradのサイズと同じである行列に変換してΔWとする。
【００３８】
第一更新ユニット108は、更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する。
【００３９】
第二更新ユニット110は、汎化損失計算ユニット102、勾配計算ユニット104、学習ユニット106、及び第一更新ユニット108の処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの汎化損失に基づいて、複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する。
【００４０】
具体的には、上述の反復処理を行う前に、まず、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを初期化し、一例として、経験に基づいて前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを初期化し、又は、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータをランダム初期化し、又は、当業者が想到し得る他の方法で前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを初期化しても良い。推薦ニューラルネットワークの重みパラメータを反復して更新するプロセスにおいて、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを固定する。
【００４１】
一例として、上述の所定条件は、所定の反復回数に達することであっても良い。一例として、推薦ニューラルネットワークの重みパラメータを反復して更新し、所定の反復回数に達するときに、前記複数の推薦ニューラルネットワークのパラメータを固定し、複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、少なくとも１つの第一メタ学習ネットワークの重みパラメータを更新することができる。一例として、従来の最適化アルゴリズム（例えば、Adamアルゴリズム）を用いて前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを更新することができる。
【００４２】
前述のように、本発明の実施例における第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。以上にも言及されているように、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を第一メタ学習ネットワークの入力サンプルとすることで、第一メタ学習ネットワークに、より多くの推薦ニューラルネットワークの勾配を提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができる。これらの沢山の推薦ニューラルネットワークの勾配を第一メタ学習ネットワークのサンプルデータとすることで第一メタ学習ネットワークに対して訓練を行うことにより、訓練済みの第一メタ学習ネットワークは、推薦ニューラルネットワークの学習更新規則を推定し、効率がより高い推薦ニューラルネットワークの重みパラメータの最適化経路を予測し、より良い重みパラメータの更新値を計算することで、推薦ニューラルネットワークを学習するスピードを加速することができる。
【００４３】
好ましくは、前記少なくとも１つの第一メタ学習ネットワークの数が、複数の推薦ニューラルネットワークにおけるネットワーク層の類型の数と同じであり、且つ、推薦ニューラルネットワークの各ネットワーク層の勾配が、該層の類型に対応する第一メタ学習ネットワークに入力される。言い換えると、それぞれ、異なる第一メタ学習ネットワークを採用して、それぞれ、推薦ニューラルネットワークにおける異なる類型のネットワーク層の勾配情報を学習し、また、同じ第一メタ学習ネットワークを採用して、推薦ニューラルネットワークにおける同じ類型のネットワーク層の勾配情報を学習する。一例として、推薦ニューラルネットワークが畳み込みニューラルネットワークであり、且つ畳み込みニューラルネットワークが複数の畳み込み層及び複数の全結合層を含む場合、１つの第一メタ学習ネットワークを採用して畳み込みニューラルネットワーク実例における前記複数の畳み込み層の勾配情報を学習し、また、前記１つの第一メタ学習ネットワークとは異なる他の第一メタ学習ネットワークを用いて畳み込みニューラルネットワーク実例における前記複数の全結合層の勾配情報を学習する。
【００４４】
図4は、本発明の実施例における複数の推薦ニューラルネットワークの勾配情報に基づく第一メタ学習ネットワーク及び従来のデータに基づくタスクネットワークのシングルタスクに対しての２次元損失曲面の上面図である。
【００４５】
図4に示す損失曲面では、曲面の顔色が濃いほど、その位置の損失値が小さい。各矢印線分が、一回のネットワーク層の重みパラメータ更新後の損失降下の方向及びステップ長を表す。そのうち、白色矢印線分により構成される経路が従来のデータに基づくタスクネットワークの損失降下方式であり、点線枠に含まれる黒色矢印線分からなる経路が本発明の実施例における複数の推薦ニューラルネットワークの勾配情報に基づく第一メタ学習ネットワークの損失降下方式である。従来のデータに基づくタスクネットワークでは、例えば、mini-batchランダム勾配降下法を用いたタスクネットワークでは、比較的小さい損失に収束（収斂）するスピードが往々にして遅い。その原因は、主に、ローカルbatchデータ上の損失に基づいて得られた更新勾配に偏ったものがあるため、毎回のパラメータ更新の方向が必ずしも最優的なものでなく（迂回する可能性がある）、一旦前の更新偏差が大き過ぎると、収斂のスピードが遅くなり、収斂せず、又は、非常に良くないローカル最小損失のところに収斂することを引き起こすことができる。図4から分かるように、黒色線分が損失の比較的低い点に到達するに必要な更新回数は、データに基づくタスクネットワークの更新回数よりも遥かに小さい。よって、本発明の実施例における複数の推薦ニューラルネットワークの勾配情報に基づく第一メタ学習ネットワークは、効率がより高い複数の推薦ニューラルネットワークの重みパラメータの最適化経路を予測することで、複数の推薦ニューラルネットワークを学習するスピードを加速化することができる。
【００４６】
ニューラルネットワーク推薦システム（例えば、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークシステム）の更新が新しい事物の発生及び古い事物の消滅によるものである。これにより、異なる期間に対応するニューラルネットワーク推薦システムの推薦項ワードリストが変化するようになる。嵌入層は、離散整形数値信号がニューラルネットワークを応用し得るキーとなる層であり、その品質は、推薦タスク全体のパフォーマンスに直接影響を与える。しかし、それは、最も訓練し難い層である。主な原因は、嵌入層が離散整形数値信号（例えば、閲覧の品物の索引番号）を受け、且つ離散整形数値信号の間に数値レベの相互関係が存在しないことにある。上述のメタ情報としての推薦ニューラルネットワークの勾配情報を学習する第一メタ学習方法は、効率がより高い推薦ニューラルネットワークの重みパラメータの最適化経路の予測を学習することができるが、推薦ニューラルネットワークにおける嵌入層について言えば、該第一メタ学習ネットワークのパフォーマンスが良くない。
【００４７】
離散入力信号間の相互関係を得て嵌入層の訓練を加速するために、本発明は、共起（Co-occurrence）周波数特徴に基づく離散信号類似度による第二メタ学習ネットワーク（類似度によるメタ学習ネットワークとも言う）を提供する。この類似度情報により嵌入層の迅速な学習を補助する。第二メタ学習ネットワークを訓練し、嵌入層の訓練を加速するために、訓練データ（第一類似度及び第二類似度）を構成する必要がある。以下、第一類似度計算ユニット112、第二類似度計算ユニット114、及び類似度損失計算ユニット116をもとに、第二メタ学習ネットワーク及び嵌入層に対しての訓練を説明する。
【００４８】
第一類似度計算ユニット112は、複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワーク、及び、時間上、第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークを含む各２つの推薦ニューラルネットワークについて、第一推薦ニューラルネットワークの推薦項ワードリスト及び第二推薦ニューラルネットワークの推薦項ワードリストの共通部分を活躍推薦項集合とし、第一推薦ニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、第二推薦ニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除きた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、過去推薦項集合における各推薦項と、新出現推薦項集合における各推薦項との、活躍推薦項集合に対しての共起ワード周波数特徴の間の第一類似度を計算する。
【００４９】
サンプルデータとしての第一類似度を得るために、期間が隣接する２つの推薦ニューラルネットワークの推薦項ワードリスト（即ち、推薦品物リスト）をデータサンプリングユニットとしても良い。なお、第一類似度の計算に用いる推薦項ワードリストが、推薦ニューラルネットワークと無関係であり、予め確定されるものであり、一例として、ユーザの品物の閲覧記録に基づいて、予め、推薦項ワードリストを確定しても良い。２つの隣接する期間に対応する推薦項ワードリストには、図5に示すような集合の関係が存在する。
【００５０】
図5は、本発明の実施例における期間が隣接する２つの推薦ニューラルネットワークの推薦項ワードリストの間の集合の関係図である。
【００５１】
図5に示すように、第一推薦ニューラルネットワーク1及び第一推薦ニューラルネットワーク1に対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワーク2について、第一推薦ニューラルネットワーク1の推薦項ワードリスト及び第二推薦ニューラルネットワーク2の推薦項ワードリストの共通部分を活躍推薦項集合Bとし、第一推薦ニューラルネットワーク1の推薦項ワードリストから活躍推薦項集合Bを除いた後に取得される集合を過去推薦項集合Aとして、第二推薦ニューラルネットワーク2の推薦項ワードリストから活躍推薦項集合Bを除いた後に取得される集合を新出現推薦項集合Cとする。
【００５２】
複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、第一推薦ニューラルネットワークの推薦項ワードリスト及び第二推薦ニューラルネットワークの推薦項ワードリストに基づいて、それぞれ、上述の過去推薦項集合A、活躍推薦項集合B及び新出現推薦項集合Cを得ることができる。
【００５３】
好ましくは、第一類似度計算ユニット112は、第一推薦ニューラルネットワーク及び第二推薦ニューラルネットワークについて、所定長さのワード窓に従って、それぞれ、過去推薦項集合A、活躍推薦項集合B、及び新出現推薦項集合Cの共起ワード周波数行列を構成し、そして、共起ワード周波数行列から、それぞれ、過去推薦項集合Aにおける各推薦項及び新出現推薦項集合Cおける各推薦項の活躍推薦項集合Bに対しての共起ワード周波数特徴を抽出する。そのうち、共起ワード周波数とは、異なる集合において共同出現するワードの周波数を指し、共起ワード周波数行列とは、共起ワード周波数を記録する行列を指す。なお、当業者は、経験に基づいて前記所定長さを確定しても良く、例えば、ユーザの品物の閲覧記録に基づいて前記所定長さを確定しても良い。
【００５４】
それぞれ、過去推薦項集合Aにおける各推薦項の活躍推薦項集合Bに対しての共起ワード周波数特徴と、新出現推薦項集合Cにおける各推薦項の活躍推薦項集合Bに対しての共起ワード周波数特徴との間の第一類似度を計算することができ、該データサンプルの形式が(a’1,i,c’2,j,score)と表されても良い。そのうち、a’1,iは、第一推薦ニューラルネットワーク1の過去推薦項集合Aにおける第i個目のワードの、活躍推薦項集合Bに対しての共起ワード周波数特徴を示し、c’2,jは、第二推薦ニューラルネットワーク2の新出現推薦項集合Cにおける第j個目のワードの、活躍推薦項集合Bに対しての共起ワード周波数特徴を示し、scoreは、a’1,iとc’2,jとの間の類似度を示す。
【００５５】
第二類似度計算ユニット114は、汎化損失計算ユニット102、勾配計算ユニット104、学習ユニット106、第一更新ユニット108、及び第二更新ユニット110の処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの第一推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより、過去推薦項集合における各推薦項と新出現推薦項集合における各推薦項との間の第二類似度を計算し、そのうち、第二メタ学習ネットワークは、第二類似度に対して学習を行うニューラルネットワークである。
【００５６】
前述のように、更新後の第一メタ学習ネットワークは、推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路よりを正確に予測し、良い重みパラメータの更新値を計算することができるので、第二更新ユニット110の更新後の少なくとも１つの第一メタ学習ネットワークに基づいて、再び推薦ニューラルネットワークの重みパラメータを反復して更新し、推薦ニューラルネットワークを学習するスピードを加速することができる。上述のプロセスを繰り返し、即ち、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを、第二所定条件が満足されるまで交替更新する（前述のように、複数の推薦ニューラルネットワークの重みパラメータを反復して更新し、前記第一所定条件が満足されるときに、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを更新することができる）。一例として、第二所定条件は、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータの交替更新が所定回数に達することであっても良い。
【００５７】
好ましくは、第二類似度計算ユニット114は、第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴と、第二推薦ニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、そして、学習済みの変換を用いて、第一推薦ニューラルネットワークの過去推薦項集合における推薦項のワード嵌入特徴を第二推薦ニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、第二類似度計算ユニット114は、前記マッピング後の推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、第二類似度を計算する。
【００５８】
一例として、ワード嵌入特徴がスカラー推薦項をベクトルで表すために用いられ、言い換えると、ワード嵌入特徴は、推薦項の特徴表示である。まず、ワード嵌入特徴をランダム初期化し、その後、ワード嵌入特徴を絶えず更新し、反復が上述の第二所定条件を満足するときに、上述の各２つの推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴を取得する。
【００５９】
上述のように、第一類似度計算に用いる推薦項ワードリストが推薦ニューラルネットワークと無関係であり、予め確定されるものである。これに対して、第二類似度計算に用いるワード嵌入特徴が推薦ニューラルネットワークと関係があり、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを交替更新し、第二所定条件が満足されるときに生成される推薦ニューラルネットワークのワード嵌入特徴である。
【００６０】
前記第二所定条件が満足されるときに、各２つの推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワーク1の活躍推薦項集合Bにおける第i個目の推薦項のワード嵌入特徴がb1,iであり、第二推薦ニューラルネットワーク2の活躍推薦項集合Bにおける対応推薦項のワード嵌入特徴がb2,iであるとする。第二類似度計算ユニット114は、第二所定条件が満足されるときのb1,iとb2,iとの間の変換b2,i=f(b1,i)を学習する。
【００６１】
その後、第二類似度計算ユニット114は、学習された変換fを用いて、第一推薦ニューラルネットワーク1の過去推薦項集合Aにおける推薦項のワード嵌入特徴a1,iを第二推薦ニューラルネットワーク2のベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴a2,i=f(a1,i)を得る。そのうち、a1,iは、第一推薦ニューラルネットワーク1の過去推薦項集合Aにおける第i個目のワードのワード嵌入特徴を表し、a2,iは、第二推薦ニューラルネットワーク2の過去推薦項集合Aにおける第i個目のワードのマッピング後のワード嵌入特徴を表す。その後、第二類似度計算ユニット114は、前記マッピング後の推薦項のワード嵌入特徴a2,iと、第二推薦ニューラルネットワークの新出現推薦項集合Cにおける推薦項のワード嵌入特徴c2,jとの間の第二類似度を計算し、そのうち、c2,jは、第二推薦ニューラルネットワーク2の新出現推薦項集合Cにおける第j個目のワードのワード嵌入特徴を表す。
【００６２】
好ましくは、第二類似度計算ユニット114は、マッピング後の推薦項のワード嵌入特徴a2,iの正規化値及び第二推薦ニューラルネットワーク2の新出現推薦項集合Cにおける推薦項のワード嵌入特徴c2,jの正規化値に基づいて、第二類似度を計算する。なお、a2,i及びc2,jに対して正規化処理を行うことでa2,iの正規化値及びc2,jの正規化値を得ることは、a2,i及びc2,jの値の変化が大き過ぎることを防ぐためである。
【００６３】
図6は、本発明の実施例における第一類似度及び第二類似度を用いて第二メタ学習ネットワーク及び嵌入層に対して訓練を行う一例を示す図である。
【００６４】
図6では、|A|により、上述の期間が隣接する２つの推薦ニューラルネットワーク（第一推薦ニューラルネットワーク1及び第二推薦ニューラルネットワーク2）の過去推薦項集合の共起ワード周波数行列を表し、|B|により、活躍推薦項集合の共起ワード周波数行列を表し、|C|は、新出現推薦項集合の共起ワード周波数行列を表す。Scoreは、a’1,iとc’2,jとの間の類似度を示す。
【００６５】
図6の左上の部分に示すように、b1,iとb2,iとの間の変換b2,i=f(b1,i)を学習する。その後、学習された変換fを用いて、a1,iを第二推薦ニューラルネットワーク2のベクトル空間にマッピングすることで、a2,i=f(a1,i)を得る。その後、a2,iを正規化し、c2,jを正規化する。図6における嵌入層は、第二推薦ニューラルネットワーク2の嵌入層を示す。図6では、一例として、第二メタ学習ネットワークは、整合ネットワーク、線形化ユニット、及びSigmoidユニットを含む。第二メタ学習ネットワークを用いてa2,iの正規化値とc2,jの正規化値との間の第二類似度を計算する。
【００６６】
最後に、第一類似度と第二類似度との間の類似度損失を用いて第二メタ学習ネットワークの重みパラメータ及び第二推薦ニューラルネットワークの嵌入層を学習することで、第二メタ学習ネットワークの重みパラメータ及び第二推薦ニューラルネットワークの重みパラメータを更新する。
【００６７】
類似度損失計算ユニット116は、各２つの推薦ニューラルネットワークについて第一類似度計算と第二類似度との間の類似度損失を計算し、そして、類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層和第二メタ学習ネットワークを得る。
【００６８】
なお、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを第二所定条件が満足されるまで交替更新するときに、複数の推薦ニューラルネットワークの嵌入層以外の層の重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを固定し、類似度損失計算ユニット116により前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークの重みパラメータを更新する。
【００６９】
上述のように、メタ情報としての推薦ニューラルネットワークの勾配情報を学習する第一メタ学習方法は、推薦ニューラルネットワークの嵌入層以外の層の重みパラメータの最適化経路の予測を正確且つ迅速に学習することができる。これに対して、推薦ニューラルネットワークにおける嵌入層については、該第一メタ学習ネットワークのパフォーマンスが良くない。類似度損失計算ユニット116により、各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを訓練することで、嵌入層を有する推薦ニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができる。各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより迅速且つ正確に提供することができる。
【００７０】
第三更新ユニット118は、更新後の複数の推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークに基づいて、汎化損失計算ユニット102、勾配計算ユニット104、学習ユニット106、第一更新ユニット108、第二更新ユニット110、第二類似度計算ユニット114、及び類似度損失計算ユニット116の処理を、第一反復終了条件が満足されるまで反復して実行する。なお、上述の混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び第二メタ学習ネットワークを含む。
【００７１】
前述のように、類似度損失計算ユニット116により、各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを更新することで、嵌入層を有する推薦ニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができる。よって、更新後の複数の推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークに基づいて、再び複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを交替更新し、そして、第二所定条件が満足されるときに、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを固定し、類似度損失計算ユニット116により、各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを更新することができる。上述のプロセスを、第一反復終了条件が満足されるまで反復して実行する。
【００７２】
一例として、第一反復終了条件は、所定の反復回数に達すること、汎化損失が収斂することが、汎化損失の降下がとても小さいこと、及び汎化損失が上昇することのうちの少なくとも１つであっても良い。
【００７３】
上述の説明から分かるように、上述の推薦ニューラルネットワーク及び混合メタ学習ネットワークを訓練する方法が非同期方法であり、推薦ニューラルネットワークの重みパラメータの更新周波数が最も高く、第一メタ学習ネットワークの重みパラメータの更新周波数が２番目に高く、第二メタ学習ネットワークの重みパラメータの更新周波数が最も低い。
【００７４】
第一反復終了条件が満足されるときに、混合メタ学習ネットワーク訓練装置100におけるネットワーク全体に対しての訓練を終了する。第一反復終了条件が満足されるときに得られた混合メタ学習ネットワークは、推薦ニューラルネットワークの学習更新規則をより正確且つ迅速に推定することができ、これにより、新しい神経ニューラルネットワークの迅速な学習を指導することできる。
【００７５】
本発明の実施例における混合メタ学習ネットワーク訓練装置100では、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を第一メタ学習ネットワークの入力サンプルとすることで、第一メタ学習ネットワークに、より多くの入力サンプルを提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができ、第一メタ学習ネットワークは、推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測し、現在のより良い推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの更新値を計算することで、新しいタスクニューラルネットワークの訓練スピードを加速することができ、類似度損失計算ユニット116は、各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを計算することができ、これにより、嵌入層を有する推薦ニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができ、各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより迅速且つ正確に提供することができる。
【００７６】
以下、上述の混合メタ学習ネットワーク訓練装置の実施例に対応して、本発明は、さらに、混合メタ学習ネットワーク訓練方法の実施例を提供する。
【００７７】
図7は、本発明の実施例における混合メタ学習ネットワーク訓練方法700の例示的なフローチャートである。
【００７８】
図7に示すように、本発明の実施例における混合メタ学習ネットワーク訓練方法700は、汎化損失計算ステップS702、勾配計算ステップS704、学習ステップS706、第一更新ステップS708、第二更新ステップS710、第一類似度計算ステップS712、第二類似度計算ステップS714、類似度損失計算ステップS716、及び第三更新ステップS718を含む。
【００７９】
汎化損失計算ステップS702では、訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算し、そのうち、異なる推薦タスクは、類似性を有し、各推薦ニューラルネットワークは、入力が関連付け無しの離散値である嵌入層を有し、複数の推薦ニューラルネットワークの構造は、互い異なる。
【００８０】
一例として、この分野における通常の損失計算関数、例えば、softmaxなどを用いて、推薦ニューラルネットワークの損失を得ることができる。
【００８１】
一例として、異なる推薦タスクが類似性を有するとは、推薦タスクのビジネスシーンが相似しており、例えば、異なる推薦タスクの推薦ニューラルネットワークの入力が相似しており、及び／又は、異なる推薦タスクの推薦ニューラルネットワークの出力が相似しており、或いは、異なる推薦タスクの推薦ニューラルネットワークの構造が相似していることを指す。
【００８２】
好ましくは、汎化損失計算ステップS702では、さらに、複数の推薦ニューラルネットワークの損失の平均化を行い、平均化後の損失を汎化損失とする。なお、当業者が理解すべきは、さらに、複数の推薦ニューラルネットワークの損失に対して他の処理を行った後の結果を汎化損失としても良いということであるが、ここでは、その詳しい説明を省略する。
【００８３】
一例として、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークが、それぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークであり、上述の推薦タスクは、ユーザにウェブサイトにおける品物リストを推薦する類似性を有し、各推薦ニューラルネットワークは、入力が関連付け無しの閲覧品物である嵌入層を有し、また、前記複数の推薦ニューラルネットワークの構造は、互い異なる。以下、分かりやすくするために、各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークであることを例として説明を行う。
【００８４】
複数の推薦ニューラルネットワークの構成についての詳細な説明は、装置の実施例中の図2についての説明を参照することができ、ここでは、重複記載が省略される。
【００８５】
後述のように、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を第一メタ学習ネットワークの入力サンプルとすることで、第一メタ学習ネットワークに、より多くの入力サンプルを提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができる。
【００８６】
勾配計算ステップS704では、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する。
【００８７】
具体的には、汎化損失の各推薦ニューラルネットワークの重みパラメータに関する偏導を求めた結果を勾配とする。
【００８８】
推薦ニューラルネットワーク学習プロセスが本質的に、推薦ニューラルネットワークの重みパラメータを連続して更新することで汎化損失をできるだけ小さくするプロセスである。上述の勾配は、推薦ニューラルネットワークの重みパラメータの更新の方向を制御するために用いられても良く、また、上述の勾配は、さらに、推薦ニューラルネットワークの重みパラメータの更新の幅を制御することもできる。
【００８９】
好ましくは、勾配計算ステップS704では、汎化損失の、各推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対する勾配を計算する。
【００９０】
一例として、推薦ニューラルネットワークは、複数のネットワーク層を含んでも良い（例えばて、推薦ニューラルネットワークが畳み込みニューラルネットワークである場合、畳み込みニューラルネットワークは、複数の畳み込み層、複数の全結合層などを含んでも良い）。推薦ニューラルネットワークの重みパラメータの学習とは、推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータを学習することを指す。よって、勾配計算ステップS704では、要汎化損失の、推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対する勾配を計算する必要がある。
【００９１】
学習ステップS706では、勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得し、そのうち、第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。
【００９２】
好ましくは、第一メタ学習ネットワークは、推薦ニューラルネットワークの各ネットワーク層の重みパラメータの前回の更新の状態に基づいて、該層の重みパラメータの更新値を出力する。
【００９３】
具体的には、第一メタ学習ネットワークは、推薦ニューラルネットワークの各ネットワーク層の重みパラメータの勾配及び該層の重みパラメータの前回の更新により生成された状態ベクトル（初期の状態ベクトル為零ベクトル）に基づいて、該層の重みパラメータの更新値及び該層の重みパラメータの今回の更新により生成された状態ベクトルを出力する。これで分かるように、重みパラメータの更新は、後効果を有する。
【００９４】
メタ学習ネットワークについての詳細な説明は、装置の実施例中の学習ユニット106及び図3についての説明を参照することができ、ここでは、重複記載が省略される。
【００９５】
第一更新ステップS708では、更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する。
【００９６】
第二更新ステップS710では、汎化損失計算ステップS702、勾配計算ステップS704、学習ステップS706及び第一更新ステップS708の処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの汎化損失に基づいて、複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する。
【００９７】
具体的には、上述の反復処理を行う前に、まず、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを初期化し、一例として、経験に基づいて、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを初期化し、又は、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータをランダム初期化し、又は、当業者が想到し得る他の方法で前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを初期化しても良い。推薦ニューラルネットワークの重みパラメータを反復して更新するプロセスにおいて、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを固定する。
【００９８】
一例として、上述の所定条件は、所定の反復回数に達することであっても良い。一例として、推薦ニューラルネットワークの重みパラメータを反復して更新し、所定の反復回数に達するときに、前記複数の推薦ニューラルネットワークのパラメータを固定し、複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、少なくとも１つの第一メタ学習ネットワークの重みパラメータを更新することができる。一例として、従来の最適化アルゴリズム（例えば、Adamアルゴリズム）を用いて前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを更新することができる。
【００９９】
前述のように、本発明の実施例における第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。上術のように、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を第一メタ学習ネットワークの入力サンプルとすることで、第一メタ学習ネットワークに、より多くの推薦ニューラルネットワークの勾配を提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができる。これらの沢山の推薦ニューラルネットワークの勾配を第一メタ学習ネットワークのサンプルデータとすることで第一メタ学習ネットワークに対して訓練を行うことにより、訓練済みの第一メタ学習ネットワークは、推薦ニューラルネットワークの学習更新規則を推定し、効率がより高い推薦ニューラルネットワークの重みパラメータの最適化経路を予測し、より良い重みパラメータの更新値を計算することで、推薦ニューラルネットワークを学習するスピードを加速することができる。
【０１００】
好ましくは、前記少なくとも１つの第一メタ学習ネットワークの数が、複数の推薦ニューラルネットワークにおけるネットワーク層の類型の数と同じであり、且つ、推薦ニューラルネットワークの各ネットワーク層の勾配が、該層の類型に対応する第一メタ学習ネットワークに入力される。言い換えると、それぞれ、異なる第一メタ学習ネットワークを採用して、それぞれ、推薦ニューラルネットワークにおける異なる類型のネットワーク層の勾配情報を学習し、また、同じ第一メタ学習ネットワークを採用して、推薦ニューラルネットワークにおける同じ類型のネットワーク層の勾配情報を学習する。一例として、推薦ニューラルネットワークが畳み込みニューラルネットワークであり、且つ畳み込みニューラルネットワークが複数の畳み込み層和複数の全結合層を含む場合、１つの第一メタ学習ネットワーク採用して畳み込みニューラルネットワーク実例における前記複数の畳み込み層の勾配情報を学習し、また、前記１つの第一メタ学習ネットワークとは異なる他の第一メタ学習ネットワークを用いて畳み込みニューラルネットワーク実例における前記複数の全結合層の勾配情報を学習する。
【０１０１】
離散入力信号間の相互関係を得て嵌入層の迅速な訓練を実現するために、本発明は、共起周波数特徴に基づく離散信号類似度による第二メタ学習ネットワーク（類似度によるメタ学習ネットワーク）を提供する。この類似度情報により嵌入層の迅速な学習を補助する。第二メタ学習ネットワーク及び嵌入層を訓練するために、訓練データ（第一類似度及び第二類似度）を形成する必要がある。以下、第一類似度計算ステップS712、第二類似度計算ステップS714、及び類似度損失計算ステップS716に基づいて第二メタ学習ネットワーク及び嵌入層に対する訓練を説明する。
【０１０２】
第一類似度計算ステップS712では、複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワーク及び第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークを含む各２つの推薦ニューラルネットワークについて、第一推薦ニューラルネットワークの推薦項ワードリスト及び第二推薦ニューラルネットワークの推薦項ワードリストの共通部分を活躍推薦項集合とし、第一推薦ニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得される集合を過去推薦項集合とし、第二推薦ニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得される集合を新出現推薦項集合とし、且つ、それぞれ、過去推薦項集合における各推薦項と、新出現推薦項集合における各推薦項との活躍推薦項集合に対しての共起ワード周波数特徴の間の第一類似度を計算する。
【０１０３】
サンプルデータとしての第一類似度を得るために、期間が隣接する２つの推薦ニューラルネットワークの推薦項ワードリスト（即ち、推薦品物リスト）をデータサンプリングユニットとしても良い。なお、第一類似度の計算に用いる推薦項ワードリストが推薦ニューラルネットワークと無関係であり、予め確定されるものであり、一例として、ユーザの品物の閲覧記録に基づいて推薦項ワードリストを予め確定しても良い。
【０１０４】
好ましくは、第一類似度計算ステップS712では、第一推薦ニューラルネットワーク及び第二推薦ニューラルネットワークについて、所定長さのワード窓に従って、それぞれ、過去推薦項集合、活躍推薦項集合、及び新出現推薦項集合の共起ワード周波数行列を構成し、そして、共起ワード周波数行列から、それぞれ、過去推薦項集合における各推薦項及び新出現推薦項集合における各推薦項の活躍推薦項集合に対しての共起ワード周波数特徴を抽出する。そのうち、共起ワード周波数指とは、異なる集合において共同出現するワードの周波数を指し、共起ワード周波数行列とは、共起ワード周波数を記録する行列を指す。なお、当業者は、経験に基づいて前記所定長さを確定しても良く、例えば、ユーザの品物の閲覧記録に基づいて前記所定長さを確定することができる。
【０１０５】
第二類似度計算ステップS714では、汎化損失計算ステップS702、勾配計算ステップS704、学習ステップS706、第一更新ステップS708、及び第二更新ステップS710の処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより、過去推薦項集合における各推薦項と、新出現推薦項集合における各推薦項との間の第二類似度を計算し、そのうち、第二メタ学習ネットワークは、第二類似度に対して学習を行うニューラルネットワークである。
【０１０６】
前述のように、更新後の第一メタ学習ネットワークは、効率がより高い推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測し、より良い重みパラメータの更新値を計算することができるから、第二更新ステップS710で更新された後の少なくとも１つの第一メタ学習ネットワークに基づいて、再び推薦ニューラルネットワークの重みパラメータを反復して更新することで、推薦ニューラルネットワークを学習するスピードを加速することができる。上述のプロセスを繰り返し、即ち、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを、第二所定条件が満足されるまで交替更新する（前述のように、複数の推薦ニューラルネットワークの重みパラメータを反復して更新し、前記第一所定条件が満足されるときに、前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを更新することができる）。一例として、第二所定条件は、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータの交替更新が所定回数に達することであっても良い。
【０１０７】
好ましくは、第二類似度計算ステップS714では、第二所定条件が満足されるとき、前記各２つの推薦ニューラルネットワークのうちの第一推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴と第二推薦ニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、そして、学習された変換を用いて第一推薦ニューラルネットワークの過去推薦項集合における推薦項のワード嵌入特徴を第二推薦ニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、第二類似度計算ステップS714では、前記マッピング後の推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、第二類似度を計算する。
【０１０８】
上述のように、第一類似度計算に使用する推薦項ワードリストが推薦ニューラルネットワークと無関係であり、予め確定されるものである。これに対して、第二類似度計算に使用するワード嵌入特徴が推薦ニューラルネットワークと関係があり、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを交替更新して第二所定条件が満足されるときに生成される推薦ニューラルネットワークのワード嵌入特徴である。
【０１０９】
好ましくは、第二類似度計算ステップS714では、マッピング後の推薦項のワード嵌入特徴の正規化値及び第二推薦ニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴の正規化値に基づいて、第二類似度を計算する。なお、マッピング後の推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴に対して正規化処理を行うことで正規化値を得ることは、マッピング後の推薦項のワード嵌入特徴及び第二推薦ニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴の値の変化が大き過ぎることを防止するためである。
【０１１０】
第一類似度及び第二類似度の詳細な説明については、装置の実施例中の第一類似度計算ユニット112、第二類似度計算ユニット114、図5、及び図6についての説明を参照することができ、ここでは、重複記載が省略される。
【０１１１】
類似度損失計算ステップS716では、各２つの推薦ニューラルネットワークについて第一類似度計算と第二類似度との間の類似度損失を計算し、そして、類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを得る。
【０１１２】
なお、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを交替更新し、第二所定条件が満足されるまで、複数の推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを固定し、類似度損失計算ステップS716により、前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを更新する。
【０１１３】
上述のように、メタ情報としての推薦ニューラルネットワークの勾配情報を学習する第一メタ学習方法は、推薦ニューラルネットワークの嵌入層以外の層の重みパラメータの最適化経路の予測を学習することができる。しかし、推薦ニューラルネットワークにおける嵌入層について言えば、該第一メタ学習ネットワークのパフォーマンスが良くない。類似度損失計算ステップS716により、各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを訓練することができ、これにより、嵌入層を有する推薦ニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができる。各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより正確且つ迅速に提供することができる。
【０１１４】
第三更新ステップS718では、更新後の複数の推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークに基づいて、汎化損失計算ステップS702、勾配計算ステップS704、学習ステップS706、第一更新ステップS708、第二更新ステップS710、第二類似度計算ステップS714、及び類似度損失計算ステップS716の処理を、第一反復終了条件が満足されるまで反復して実行する。なお、上述の混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び第二メタ学習ネットワークを含む。
【０１１５】
前述のように、類似度損失計算ステップS716により各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを更新することで、嵌入層を有する推薦ニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができる。よって、更新後の複数の推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークに基づいて、再び複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを交替更新し、また、第二所定条件が満足されるときに、複数の推薦ニューラルネットワークの重みパラメータ及び前記少なくとも１つの第一メタ学習ネットワークの重みパラメータを固定し、類似度損失計算ステップS716により各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを更新することができる。上述のプロセスを、第一反復終了条件が満足されるまで反復して実行する。
【０１１６】
一例として、第一反復終了条件は、所定の反復回数に達すること、汎化損失が収斂することが、汎化損失の降下がとても小さいこと、及び汎化損失が上昇することのうちの少なくとも１つであっても良い。
【０１１７】
上述の説明から分かるように、上述の推薦ニューラルネットワーク及び混合メタ学習ネットワークの訓練方法が非同期方法であり、推薦ニューラルネットワークの重みパラメータの更新周波数が最も高く、第一メタ学習ネットワークの重みパラメータの更新周波数が２番目に高く、第二メタ学習ネットワークの重みパラメータの更新周波数が最も低い。
【０１１８】
第一反復終了条件が満足されるときに、混合メタ学習ネットワーク訓練装置100のネットワーク全体に対しての訓練を終了する。第一反復終了条件が満足されるときに得られた混合メタ学習ネットワークは、推薦ニューラルネットワークの学習更新規則を正確且つ迅速に推定することができ、これにより、新しいニューラルネットワークの迅速な学習を指導することができる。
【０１１９】
本発明の実施例における混合メタ学習ネットワーク訓練方法700では、汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を第一メタ学習ネットワークの入力サンプルとすることで、第一メタ学習ネットワークに、より多くの入力サンプルを提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができ、第一メタ学習ネットワークは、推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測し、現在のより良い推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの更新値を計算することで、新しいタスクニューラルネットワークの訓練スピードを加速することができ、類似度損失計算ステップS716は、各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを訓練することで、嵌入層を有する推薦ニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができ、各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより正確且つ迅速に提供することができる。
【０１２０】
本発明は、さらに、上述の混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700の訓練により得られた混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置を提供する。図8は、訓練済みの混合メタ学習ネットワークを用いて、ニューラルネットワークに対して訓練を行う装置800の構成ブロック図である。図8に示すように、本発明の実施例における訓練済みの混合メタ学習ネットワークを用いて、ニューラルネットワークに対して訓練を行う装置800は、損失取得ユニット802、ニューラルネットワーク勾配計算ユニット804、勾配学習ユニット806、第一パラメータ更新ユニット808、第一類似度計算ユニット810、第二類似度計算ユニット812、類似度損失計算ユニット814、及び第二パラメータ更新ユニット816を含む。
【０１２１】
一例として、訓練待ちのニューラルネットワークがユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、訓練待ちのニューラルネットワークは、入力が離散値（例えば、閲覧の品物の索引番号）である嵌入層を含む。
【０１２２】
損失取得ユニット802は、訓練データを用いて、訓練待ちのニューラルネットワークの損失を取得する。
【０１２３】
一例として、この分野における通常の損失計算関数、例えば、softmaxなどを用いて、訓練待ちのニューラルネットワークの損失を得る。
【０１２４】
ニューラルネットワーク勾配計算ユニット804は、損失の、訓練待ちのニューラルネットワークの重みパラメータに対しての勾配を計算する。
【０１２５】
具体的には、損失の訓練待ちのニューラルネットワークの重みパラメータに関する偏導を求めた結果を勾配とする。
【０１２６】
訓練待ちのニューラルネットワーク学習プロセスが本質的に、訓練待ちのニューラルネットワークの重みパラメータを連続して更新することで損失をできるだけ小さくするプロセスである。上述の勾配は、訓練待ちのニューラルネットワークの重みパラメータの更新の方向を制御するために用いられても良く、また、上述の勾配は、さらに、訓練待ちのニューラルネットワークの重みパラメータの更新の幅を制御することもできる。
【０１２７】
好ましくは、ニューラルネットワーク勾配計算ユニット804は、損失の、訓練待ちのニューラルネットワークの各ネットワーク層の重みパラメータに対しての勾配を計算する。
【０１２８】
一例として、訓練待ちのニューラルネットワークは、複数のネットワーク層を含んでも良く（一例として、訓練待ちのニューラルネットワークが畳み込みニューラルネットワークである場合、畳み込みニューラルネットワークは、複数の畳み込み層、複数の全結合層などを含んでも良い）。訓練待ちのニューラルネットワークの重みパラメータの学習とは、訓練待ちのニューラルネットワークにおける各ネットワーク層の重みパラメータを学習することである。よって、ニューラルネットワーク勾配計算ユニット804は、損失の、訓練待ちのニューラルネットワークにおける各ネットワーク層の重みパラメータに対しての勾配を計算する必要がある。
【０１２９】
勾配学習ユニット806は、勾配を、それぞれ、第一反復終了条件が満足されるときに取得される訓練済みの前記少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力することで、訓練待ちのニューラルネットワークの重みパラメータの更新値を得る。
【０１３０】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、本発明の実施例における第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。訓練待ちのニューラルネットワークの各ネットワーク層の勾配をそれぞれ、第一メタ学習ネットワークに入力することで、第一メタ学習ネットワークは、該層の重みパラメータの更新値を出力する。好ましくは、勾配学習ユニット806は、訓練待ちのニューラルネットワークにおける各ネットワーク層の勾配をそれぞれ、前記少なくとも１つの第一メタ学習ネットワークのうちの、該層の類型に対応する１つのメタ学習ネットワークに入力することで、該層の重みパラメータの更新値を得る。
【０１３１】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、メタ学習ネットワークの数がニューラルネットワークにおける層の類型の数と同じである。一例として、訓練待ちのニューラルネットワークが畳み込みニューラルネットワークであり、且つ該畳み込みニューラルネットワークが複数の畳み込み層及び複数の全結合層を含む場合、１つの第一メタ学習ネットワークを採用して畳み込みニューラルネットワークにおける前記複数の畳み込み層の勾配情報を学習し、また、前記１つの第一メタ学習ネットワークとは異なる他の第一メタ学習ネットワークを用いて畳み込みニューラルネットワークにおける前記複数の全結合層の勾配情報を学習する。
【０１３２】
好ましくは、第一メタ学習ネットワークは、訓練待ちのニューラルネットワークの各ネットワーク層の重みパラメータの前回の更新の状態に基づいて、該層の重みパラメータの更新値を出力する。
【０１３３】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、第一メタ学習ネットワークは、訓練待ちのニューラルネットワークの重みパラメータの勾配及び該層の重みパラメータの前回の更新により生成された状態ベクトルに基づいて、該層の重みパラメータの更新値及び該層の重みパラメータの今回の更新により生成された状態ベクトルを出力する。
【０１３４】
第一パラメータ更新ユニット808は、更新値に基づいて、訓練待ちのニューラルネットワークの重みパラメータを更新する。
【０１３５】
好ましくは、第一パラメータ更新ユニット808は、更新値に基づいて、訓練待ちのニューラルネットワークにおける各ネットワーク層の重みパラメータを更新する。
【０１３６】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、第一メタ学習ネットワークは、ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測し得るが、ニューラルネットワークにおける嵌入層について、第一メタ学習ネットワークのパフォーマンスが良くない。本発明の実施例における混合メタ学習ネットワーク訓練装置100では、第二メタ学習ネットワークを用いて訓練待ちのニューラルネットワークの嵌入層を訓練する。以下、第一類似度計算ユニット810、第二類似度計算ユニット812、及び類似度損失計算ユニット814に基づいて嵌入層に対しての訓練を行う。
【０１３７】
第一類似度計算ユニット810は、訓練待ちのニューラルネットワーク及び訓練待ちのニューラルネットワークに対応する推薦タスクの直前の推薦タスクのための直前推薦ニューラルネットワークについて、直前推薦ニューラルネットワークの推薦項ワードリスト及び訓練待ちのニューラルネットワークの推薦項ワードリストの共通部分を活躍推薦項集合とし、直前推薦ニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得される集合を過去推薦項集合とし、訓練待ちのニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得される集合を新出現推薦項集合とし、且つ、それぞれ、過去推薦項集合における各推薦項と、新出現推薦項集合における各推薦項との、活躍推薦項集合に対しての共起ワード周波数特徴の間の第一類似度を計算する。
【０１３８】
なお、第一類似度計算に使用する推薦項ワードリストがニューラルネットワークと無関係であり、予め確定されるものであり、一例として、ユーザの品物の閲覧記録に基づいて推薦項ワードリストを予め確定しても良い。
【０１３９】
好ましくは、第一類似度計算ユニット810は、上述の直前推薦ニューラルネットワーク及び訓練待ちのニューラルネットワークについて、所定長さのワード窓に従って、それぞれ、過去推薦項集合、活躍推薦項集合、及び新出現推薦項集合の共起ワード周波数行列を構成し、そして、共起ワード周波数行列から、それぞれ、過去推薦項集合における各推薦項と、新出現推薦項集合における各推薦項との、活躍推薦項集合に対しての共起ワード周波数特徴を抽出する。そのうち、共起ワード周波数とは、異なる集合において共同出現するワードの周波数を指し、共起ワード周波数行列とは、共起ワード周波数を記録する行列を指す。なお、当業者は、経験に基づいて前記所定長さを確定し手も良く、例えば、ユーザの品物の閲覧記録に基づいて前記所定長さを確定しても良い。
【０１４０】
第二類似度計算ユニット812は、損失取得ユニット802、ニューラルネットワーク勾配計算ユニット804、勾配学習ユニット806、及び第一パラメータ更新ユニット808の処理を反復して実行し、第三所定条件が満足されるときに、前記第三所定条件が満足されるときの、直前推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴及び訓練待ちのニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、前記第一反復終了条件が満足されるときに取得された訓練済みの第二メタ学習ネットワークにより、過去推薦項集合における各推薦項と新出現推薦項集合における各推薦項との間の第二類似度を計算する。
【０１４１】
具体的には、前記少なくとも１つの第一メタ学習ネットワークにより訓練待ちのニューラルネットワークの重みパラメータを反復して更新し、第三所定条件が満足されるときに、第二類似度を計算する。
【０１４２】
好ましくは、第二類似度計算ユニット812は、第三所定条件が満足されるときの、直前推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴と、訓練待ちのニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、そして、学習された変換を用いて直前推薦ニューラルネットワークの過去推薦項集合における推薦項のワード嵌入特徴を訓練待ちのニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、第二類似度計算ユニット814は、前記マッピング後の推薦項のワード嵌入特徴及び訓練待ちのニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、第二類似度を計算する。
【０１４３】
上述のように、第一類似度計算に使用する推薦項ワードリストがニューラルネットワークと関係がなく、予め確定されるものである。第二類似度計算に使用するワード嵌入特徴がニューラルネットワークと関係があり、訓練待ちのニューラルネットワークの重みパラメータを反復して更新し、第三所定条件が満足されるときに生成されるニューラルネットワークのワード嵌入特徴である。
【０１４４】
第一類似度の計算及び第二類似度の詳細な説明については、メタ学習ネットワークの訓練装置100の実施例中の図6についての説明を参照することができ、ここでは、重複記載が省略される。
【０１４５】
第一類似度及び第二類似度を得た後に、第一類似度と第二類似度との間の類似度損失により訓練待ちのニューラルネットワークの嵌入層を訓練することで、訓練待ちのニューラルネットワークの重みパラメータを更新する。
【０１４６】
類似度損失計算ユニット814は、第一類似度計算と第二類似度との間の類似度損失を計算し、そして、類似度損失がより小さい方向に向けて訓練待ちのニューラルネットワークの嵌入層の重みパラメータを訓練することで、更新後の訓練待ちのニューラルネットワークの嵌入層を取得する。
【０１４７】
類似度損失計算ユニット814により、訓練待ちのニューラルネットワークの嵌入層を訓練することができ、これにより、嵌入層を有するニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができる。訓練待ちのニューラルネットワークがユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより正確且つ迅速に提供することができる。
【０１４８】
第二パラメータ更新ユニット816は、更新後の訓練待ちのニューラルネットワークの嵌入層に基づいて、損失取得ユニット802、ニューラルネットワーク勾配計算ユニット804、勾配学習ユニット806、第一パラメータ更新ユニット808、第二類似度計算ユニット812、及び類似度損失計算ユニット814の処理を、第二反復終了条件が満足されるまで反復して実行する。
【０１４９】
更新後の訓練待ちのニューラルネットワークの嵌入層に基づいて、再び訓練待ちのニューラルネットワークにおける嵌入層以外の層の重みパラメータを反復して更新し、また、第三所定条件が満足されるときに、類似度損失計算ユニット814により、訓練待ちのニューラルネットワークの嵌入層を更新することができる。上述のプロセスを、第二反復終了条件が満足されるまで反復して実行する。
【０１５０】
一例として、第二反復終了条件は、所定の反復回数に達すること、損失が収斂すること、損失の降下がとても小さいこと、及び損失が上昇することのうちの少なくとも１つである。
【０１５１】
第二反復終了条件が満足されるときに、訓練済みの混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置800の、訓練待ちのニューラルネットワークに対しての訓練を終了する。
【０１５２】
本発明の実施例における混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700について説明されたように、本発明の実施例における混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700は、第一メタ学習ネットワークに、より多くの入力サンプルを提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができ、第一メタ学習ネットワークは、推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測し、現在のより良い推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの更新値を計算することで、新しいタスクニューラルネットワークの訓練スピードを加速することができ、ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを訓練することで、嵌入層を有するニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができ、各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより正確且つ迅速に提供することができる。よって、上述の訓練済みの混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置800は、嵌入層を有するニューラルネットワークの、効率がより高い重みパラメータの最適化経路を迅速且つ正確に予測することができる。
【０１５３】
以下、混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700の訓練により得られた混合メタ学習ネットワークニューラルを用いてネットワークに対して訓練を行う装置800の実施例に対応して、本発明は、さらに、混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700の訓練により得られた混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う方法の実施例を提供する。
【０１５４】
図9は、訓練済みの混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う方法900の例示的なフローチャートである。
【０１５５】
図9に示すように、本発明の実施例における訓練済みの混合メタ学習ネットワークを用いて、ニューラルネットワークを訓練する方法900は、損失取得ステップS902、ニューラルネットワーク勾配計算ステップS904、勾配学習ステップS906、第一パラメータ更新ステップS908、第一類似度計算ステップS910、第二類似度計算ステップS912、類似度損失計算ステップS914、及び第二パラメータ更新ステップS916を含む。
【０１５６】
一例として、訓練待ちのニューラルネットワークがユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、訓練待ちのニューラルネットワークは、入力が離散値（例えば、閲覧の品物の索引番号）である嵌入層を有する。
【０１５７】
損失取得ステップS902では、訓練データを用いて、訓練待ちのニューラルネットワークの損失を取得する。
【０１５８】
一例として、この分野における通常の損失計算関数、例えば、softmaxなどを用いて、訓練待ちのニューラルネットワークの損失を得る。
【０１５９】
ニューラルネットワーク勾配計算ステップS904では、損失の、訓練待ちのニューラルネットワークの重みパラメータに対する勾配を計算する。
【０１６０】
具体的には、損失の訓練待ちのニューラルネットワークの重みパラメータに関する偏導を求めた結果を勾配とする。
【０１６１】
訓練待ちのニューラルネットワーク学習プロセスが本質的に、訓練待ちのニューラルネットワークの重みパラメータを連続して更新することで損失をできるだけ小さくするプロセスである。上述の勾配は、訓練待ちのニューラルネットワークの重みパラメータの更新の方向を制御するために用いられても良く、また、上述の勾配は、さらに、訓練待ちのニューラルネットワークの重みパラメータの更新の幅を制御することもできる。
【０１６２】
好ましくは、ニューラルネットワーク勾配計算ステップS904では、損失の、訓練待ちのニューラルネットワークの各ネットワーク層の重みパラメータに対する勾配を計算する。
【０１６３】
一例として、訓練待ちのニューラルネットワークは、複数のネットワーク層を含んでも良い（一例として、訓練待ちのニューラルネットワークが畳み込みニューラルネットワークの場合、畳み込みニューラルネットワークは、複数の畳み込み層、複数の全結合層などを含んでも良い）。訓練待ちのニューラルネットワークの重みパラメータの学習とは、訓練待ちのニューラルネットワークにおける各ネットワーク層の重みパラメータを学習することである。よって、ニューラルネットワーク勾配計算ステップS904では、損失の、訓練待ちのニューラルネットワークにおける各ネットワーク層の重みパラメータに対しての勾配を計算する必要がある。
【０１６４】
勾配学習ステップS906では、勾配を、それぞれ、第一反復終了条件が満足されるときに取得された訓練済みの前記少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力することで、訓練待ちのニューラルネットワークの重みパラメータの更新値を取得する。
【０１６５】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、本発明の実施例における第一メタ学習ネットワークは、勾配に対して学習を行うニューラルネットワークである。訓練待ちのニューラルネットワークの各ネットワーク層の勾配をそれぞれ、第一メタ学習ネットワークに入力することで、第一メタ学習ネットワークは、該層の重みパラメータの更新値を出力する。好ましくは、勾配学習ステップS906では、訓練待ちのニューラルネットワークにおける各ネットワーク層の勾配をそれぞれ、前記少なくとも１つの第一メタ学習ネットワークのうちの、該層の類型に対応する１つのメタ学習ネットワークに入力することで、該層の重みパラメータの更新値を取得する。
【０１６６】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、メタ学習ネットワークの数がニューラルネットワーク中の層の類型の数と同じである。一例として、訓練待ちのニューラルネットワークが畳み込みニューラルネットワークであり且つ該畳み込みニューラルネットワークが複数の畳み込み層和複数の全結合層を含む場合、１つの第一メタ学習ネットワークを用いて畳み込みニューラルネットワークにおける前記複数の畳み込み層の勾配情報を学習し、また、前記１つの第一メタ学習ネットワークとは異なる他の第一メタ学習ネットワークを用いて畳み込みニューラルネットワーク中の前記複数の全結合層の勾配情報を学習する。
【０１６７】
好ましくは、第一メタ学習ネットワークは、訓練待ちのニューラルネットワークの各ネットワーク層の重みパラメータの前回の更新の状態に基づいて、該層の重みパラメータの更新値を出力する。
【０１６８】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、第一メタ学習ネットワークは、訓練待ちのニューラルネットワークの重みパラメータの勾配及び該層の重みパラメータの前回の更新により生成された状態ベクトルに基づいて、該層の重みパラメータの更新値及び該層の重みパラメータの今回の更新により生成された状態ベクトルを出力する。
【０１６９】
第一パラメータ更新ステップS908では、更新値に基づいて、訓練待ちのニューラルネットワークの重みパラメータを更新する。
【０１７０】
好ましくは、第一パラメータ更新ステップS908では、更新値に基づいて、訓練待ちのニューラルネットワークにおける各ネットワーク層の重みパラメータを更新する。
【０１７１】
本発明の実施例における混合メタ学習ネットワーク訓練装置100についての説明を参照し、第一メタ学習ネットワークは、ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測することができるが、ニューラルネットワークにおける嵌入層について、第一メタ学習ネットワークのパフォーマンスが良くない。本発明の実施例における混合メタ学習ネットワーク訓練装置100では、第二メタ学習ネットワークを用いて訓練待ちのニューラルネットワークの嵌入層を訓練する。以下、第一類似度計算ステップS910、第二類似度計算ステップS912、及び類似度損失計算ステップS914をもとに嵌入層に対しての訓練を説明する。
【０１７２】
第一類似度計算ステップS910では、訓練待ちのニューラルネットワーク及び訓練待ちのニューラルネットワークに対応する推薦タスクの直前の推薦タスクのために直前推薦ニューラルネットワークについて、直前推薦ニューラルネットワークの推薦項ワードリスト及び訓練待ちのニューラルネットワークの推薦項ワードリストの共通部分を活躍推薦項集合とし、直前推薦ニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得される集合を過去推薦項集合とし、訓練待ちのニューラルネットワークの推薦項ワードリストから活躍推薦項集合を除いた後に取得される集合を新出現推薦項集合とし、且つ、それぞれ、過去推薦項集合における各推薦項及び新出現推薦項集合における各推薦項の、活躍推薦項集合の対しての共起ワード周波数特徴間の第一類似度を計算する。
【０１７３】
第一類似度計算に使用する推薦項ワードリストがニューラルネットワークと無関係であり、予め確定されるものであり、一例として、ユーザの品物の閲覧記録に基づいて、推薦項ワードリストを予め確定しても良い。
【０１７４】
好ましくは、第一類似度計算ステップS910では、上述の直前推薦ニューラルネットワーク及び訓練待ちのニューラルネットワークについて、所定長さのワード窓に従って、それぞれ、過去推薦項集合、活躍推薦項集合、及び新出現推薦項集合の共起ワード周波数行列を構成し、そして、共起ワード周波数行列から、それぞれ、過去推薦項集合における各推薦項及び新出現推薦項集合における各推薦項の活躍推薦項集合に対しての共起ワード周波数特徴を抽出する。そのうち、共起ワード周波数指とは、異なる集合において共同出現するワードの周波数を指し、共起ワード周波数行列とは、共起ワード周波数を記録する行列を指す。なお、当業者は、経験に基づいて前記所定長さを確定しても良く、例えば、ユーザの品物の閲覧記録に基づいて前記所定長さを確定しても良い。
【０１７５】
第二類似度計算ステップS912では、損失取得ステップS902、ニューラルネットワーク勾配計算ステップS904、勾配学習ステップS906、及び第一パラメータ更新ステップS908の処理を反復して実行し、第三所定条件が満足されるときに、前記第三所定条件が満足されるときの、直前推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴及び訓練待ちのニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、前記第一反復終了条件が満足されるときに取得された訓練済みの第二メタ学習ネットワークにより、過去推薦項集合における各推薦項と新出現推薦項集合における各推薦項との間の第二類似度を計算する。
【０１７６】
具体的には、前記少なくとも１つの第一メタ学習ネットワークを用いて訓練待ちのニューラルネットワークの重みパラメータを反復して更新し、第三所定条件が満足されるときに、第二類似度を計算する。
【０１７７】
好ましくは、第二類似度計算ステップS912では、第三所定条件が満足されるときの、直前推薦ニューラルネットワークの活躍推薦項集合における推薦項のワード嵌入特徴と訓練待ちのニューラルネットワークの活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、そして、学習された変換を用いて、直前推薦ニューラルネットワークの過去推薦項集合における推薦項のワード嵌入特徴を訓練待ちのニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、第二類似度計算ステップS914では、前記マッピング後の推薦項のワード嵌入特徴及び訓練待ちのニューラルネットワークの新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、第二類似度を計算する。
【０１７８】
上述のように、第一類似度計算に使用する推薦項ワードリストがニューラルネットワークと無関係であり、予め確定されるものである。第二類似度計算に使用するワード嵌入特徴がニューラルネットワークと関係があり、訓練待ちのニューラルネットワークの重みパラメータを反復して更新し、第三所定条件が満足されるときに生成されるニューラルネットワークのワード嵌入特徴である。
【０１７９】
第一類似度の計算及び第二類似度の詳細な説明については、メタ学習ネットワークの訓練装置100実施例における図6についての説明を参照することができ、ここでは、重複記載が省略される。
【０１８０】
第一類似度及び第二類似度を得た後に、第一類似度と第二類似度との間の類似度損失を用いて訓練待ちのニューラルネットワークの嵌入層を訓練することで、訓練待ちのニューラルネットワークの重みパラメータを更新する。
【０１８１】
類似度損失計算ステップS914では、第一類似度と第二類似度との間の類似度損失を計算し、そして、類似度損失がより小さい方向に向けて訓練待ちのニューラルネットワークの嵌入層の重みパラメータを訓練することで、更新後の訓練待ちのニューラルネットワークの嵌入層を取得する。
【０１８２】
類似度損失計算ステップS914により、訓練待ちのニューラルネットワークの嵌入層を訓練することで、嵌入層を有するニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができる。訓練待ちのニューラルネットワークがユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより迅速且つ正確に提供することができる。
【０１８３】
第二パラメータ更新ステップS916では、更新後の訓練待ちのニューラルネットワークの嵌入層に基づいて、損失取得ステップS902、ニューラルネットワーク勾配計算ステップS904、勾配学習ステップS906、第一パラメータ更新ステップS908、第二類似度計算ステップS912、及び類似度損失計算ステップS914の処理を、第二反復終了条件が満足されるまで反復して実行する。
【０１８４】
更新後の訓練待ちのニューラルネットワークの嵌入層に基づいて、再び訓練待ちのニューラルネットワークにおける嵌入層以外の層の重みパラメータを反復して更新し、そして、第三所定条件が満足されるときに、類似度損失計算ステップS914により訓練待ちのニューラルネットワークの嵌入層を更新することができる。上述のプロセスを、第二反復終了条件が満足されるまで反複して実行する。
【０１８５】
一例として、第二反復終了条件は、所定の反復回数に達すること、損失が収斂すること、損失降下がとても小さいこと、及び損失が上昇することのうちの少なくとも１つである。
【０１８６】
第二反復終了条件が満足されるときに、訓練済みの混合メタ学習ネットワークを用いて、ニューラルネットワークに対して訓練を行う方法900における訓練待ちのニューラルネットワークに対しての訓練を終了する。
【０１８７】
本発明の実施例における混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700について説明されたように、本発明の実施例における混合メタ学習ネットワーク訓練装置100又は混合メタ学習ネットワーク訓練方法700は、第一メタ学習ネットワークに、より多くの入力サンプルを提供することができ、これにより、推薦ニューラルネットワークのサンプルが少ない問題を有効に解決することができ、第一メタ学習ネットワークは、推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの最適化経路を予測し、現在のより良い推薦ニューラルネットワークにおける嵌入層以外の層の重みパラメータの更新値を計算することで、新しいタスクニューラルネットワークの訓練スピードを加速することができ、ニューラルネットワークの嵌入層及び第二メタ学習ネットワークを訓練することで、嵌入層を有するニューラルネットワークのために、効率がより高い重みパラメータの最適化経路を予測することができ、各推薦ニューラルネットワークがそれぞれ、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである場合、ユーザに、閲覧しようとする品物をより迅速且つ正確に提供することができる。よって、上述の訓練済みの混合メタ学習ネットワークを用いてニューラルネットワークを訓練する方法900は、嵌入層を有するニューラルネットワークの、効率がより高い重みパラメータの最適化経路をより迅速且つ正確に予測することができる。
【０１８８】
また、上述の一連の処理などは、ソフトウェア及び／又はファームウェアにより実現されても良い。ソフトウェア及び／又はファームウェアにより実現される場合、記憶媒体又はネットワークから、専用ハードウェア構造を有するコンピュータ、例えば、図10に示す汎用マシン1000（例えば、コンピュータ）に、該ソフトウェアを構成するプログラムをインストールし、該コンピュータは、各種のプログラムがインストールされているときに、各種の機能などを実行することができる。
【０１８９】
図10は、本発明の実施例における方法や装置を実現し得る汎用マシン1000の構成ブロック図である。汎用マシン100は、例えば、コンピュータシステムであっても良い。なお、汎用マシン1000は、例示に過ぎず、本発明による方法及び装置の応用範囲又は機能について限定しない。また、汎用マシン1000は、上述の方法及び装置における任意のモジュールやアセンブリなど又はその組み合わせに依存しない。
【０１９０】
図10では、中央処理装置（CPU）1001は、ROM  1002に記憶されているプログラム又は記憶部1008からRAM  1003にロッドされているプログラムに基づいて各種の処理を行う。RAM  1003では、ニーズに応じて、CPU  1001が各種の処理を行うときに必要なデータなどを記憶することもできる。CPU  1001、ROM  1002及びRAM  1003は、バズ1004を経由して互いに接続される。入力／出力インターフェース1005もバス1004に接続される。
【０１９１】
また、入力／出力インターフェース1005には、さらに、次のような部品が接続され、即ち、キーボードなどを含む入力部1006、液晶表示器（LCD）などのような表示器及びスピーカーなどを含む出力部807、ハードディスクなどを含む記憶部1008、ネットワークインターフェースカード、例えば、LANカード、モデムなどを含む通信部1009である。通信部1009は、例えば、インターネット、LANなどのネットワークを経由して通信処理を行う。
【０１９２】
ドライブ1010は、ニーズに応じて、入力／出力インターフェース1005に接続されても良い。取り外し可能な媒体1011、例えば、半導体メモリなどは、必要に応じて、ドライブ1010にセットされることにより、その中から読み取られたコンピュータプログラムを記憶部1008にインストールすることができる。
【０１９３】
また、本発明は、さらに、マシン可読指令コードを含むプログラムプロダクトを提供する。このような指令コードは、マシンにより読み取られて実行されるときに、上述の本発明の実施形態における方法を実行することができる。それ相応に、このようなプログラムプロダクトをキャリー（carry）する、例えば、磁気ディスク（フロッピーディスク（登録商標）を含む）、光ディスク（CD-ROM及びDVDを含む）、光磁気ディスク（MD（登録商標）を含む）、及び半導体記憶器などの各種記憶媒体も、本発明に含まれる。
【０１９４】
上述の記憶媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、半導体記憶器などを含んでも良いが、これらに限定されない。
【０１９５】
また、上述の方法における各操作（処理）は、各種のマシン可読記憶媒体に記憶されているコンピュータ実行可能なプログラムの方式で実現することもできる。
【０１９６】
また、以上の実施例などに関し、さらに以下のように付記として開示する。
【０１９７】
（付記1）
混合メタ学習ネットワーク訓練装置であって、
訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、前記複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算する汎化損失計算ユニットであって、前記異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、前記複数の推薦ニューラルネットワークの構造は互い異なる汎化損失計算ユニット；
前記汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する勾配計算ユニット；
前記勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得する学習ユニットであって、前記第一メタ学習ネットワークは勾配に対して学習を行うニューラルネットワークである学習ユニット；
前記更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する第一更新ユニット；
前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、及び前記第一更新ユニットの処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの前記汎化損失に基づいて、前記複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する第二更新ユニット；
前記複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、前記第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、前記第一推薦ニューラルネットワークの推薦項ワードリストと、前記第二推薦ニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記第一推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記第二推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ユニット；
前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、前記第一更新ユニット、及び前記第二更新ユニットの処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ユニットであって、前記第二メタ学習ネットワークは前記第二類似度に対して学習を行うニューラルネットワークである第二類似度計算ユニット；
前記各２つの推薦ニューラルネットワークについて前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び前記第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークを取得する類似度損失計算ユニット；及び
更新後の前記複数の推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークに基づいて、前記汎化損失計算ユニット、前記勾配計算ユニット、前記学習ユニット、前記第一更新ユニット、前記第二更新ユニット、前記第二類似度計算ユニット、及び前記類似度損失計算ユニットの処理を、第一反復終了条件が満足されるまで反復して実行する第三更新ユニットを含み、
前記混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び前記第二メタ学習ネットワークを含む。
【０１９８】
（付記2）
付記1に記載の装置であって、
前記複数の推薦ニューラルネットワークのうちの各々は、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである、装置。
【０１９９】
（付記3）
付記1に記載の装置であって、
前記第二類似度計算ユニットは、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴と、前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、学習された変換を用いて、前記第一推薦ニューラルネットワークの前記過去推薦項集合における推薦項のワード嵌入特徴を前記第二推薦ニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、前記第二類似度計算ユニットは、前記マッピング後の推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、前記第二類似度を計算する、装置。
【０２００】
（付記4）
付記3に記載の装置であって、
前記第二類似度計算ユニットは、前記マッピング後の推薦項のワード嵌入特徴の正規化値及び前記第二推薦ニューラルネットワークの前記新出現推薦項集合における推薦項のワード嵌入特徴の正規化値に基づいて、前記第二類似度を計算する、装置。
【０２０１】
（付記5）
付記1に記載の装置であって、
前記第一類似度計算ユニットは、前記第一推薦ニューラルネットワーク及び前記第二推薦ニューラルネットワークについて、所定長さのワード窓に従って、共起ワード周波数行列を構成し、前記共起ワード周波数行列から、それぞれ、前記共起ワード周波数特徴を抽出する、装置。
【０２０２】
（付記6）
付記1に記載の装置であって、
前記汎化損失計算ユニットは、さらに、前記複数の推薦ニューラルネットワークの損失の平均化を行い、平均後の損失を前記汎化損失とする、装置。
【０２０３】
（付記7）
付記1に記載の装置であって、
前記勾配計算ユニットは、前記汎化損失の、各推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対しての勾配を計算する、装置。
【０２０４】
（付記8）
付記7に記載の装置であって、
前記学習ユニットは、各推薦ニューラルネットワークのネットワーク層の重みパラメータの前回の更新の状態、該層の重みに基づいて、パラメータの更新値を出力する、装置。
【０２０５】
（付記9）
付記1に記載の装置であって、
前記第一更新ユニットは、前記更新値に基づいて、各推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータを更新する、装置。
【０２０６】
（付記10）
付記1に記載の装置であって、
前記少なくとも１つの第一メタ学習ネットワークの数が、前記複数の推薦ニューラルネットワークにおけるネットワーク層の類型の数と同じであり、
各推薦ニューラルネットワークの各ネットワーク層の勾配が、該層の類型に対応する１つの第一メタ学習ネットワークに入力される、装置。
【０２０７】
（付記11）
混合メタ学習ネットワーク訓練方法であって、
訓練データを用いて、それぞれ、時間順の異なる推薦タスクのための複数の推薦ニューラルネットワークのうちの各推薦ニューラルネットワークの損失を取得し、各推薦ニューラルネットワークの損失に基づいて、前記複数の推薦ニューラルネットワークの総損失を反映する汎化損失を計算する汎化損失計算ステップであって、前記異なる推薦タスクは類似性を有し、各推薦ニューラルネットワークは入力が関連付け無しの離散値である嵌入層を有し、前記複数の推薦ニューラルネットワークの構造は互い異なる汎化損失計算ステップ；
前記汎化損失の、各推薦ニューラルネットワークの重みパラメータに対する勾配を計算する勾配計算ステップ；
前記勾配を、それぞれ、少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力し、それぞれ、各推薦ニューラルネットワークの重みパラメータの更新値を取得する学習ステップであって、前記第一メタ学習ネットワークは勾配に対して学習を行うニューラルネットワークである学習ステップ；
前記更新値に基づいて、各推薦ニューラルネットワークの重みパラメータを更新する第一更新ステップ；
前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、及び前記第一更新ステップの処理を反復して実行し、第一所定条件が満足されるときに、前記第一所定条件が満足されるときの前記汎化損失に基づいて、前記複数の推薦ニューラルネットワークの損失がより小さい方向に向けて前記少なくとも１つの第一メタ学習ネットワークを訓練することで、更新後の前記少なくとも１つの第一メタ学習ネットワークを取得する第二更新ステップ；
前記複数の推薦ニューラルネットワークのうちの、第一推薦ニューラルネットワークと、前記第一推薦ニューラルネットワークに対応する推薦タスクの直後の推薦タスクのための第二推薦ニューラルネットワークとを含む各２つの推薦ニューラルネットワークについて、前記第一推薦ニューラルネットワークの推薦項ワードリストと、前記第二推薦ニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記第一推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記第二推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ステップ；
前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、前記第一更新ステップ、及び前記第二更新ステップの処理を反復して実行し、第二所定条件が満足されるときに、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ステップであって、前記第二メタ学習ネットワークは前記第二類似度に対して学習を行うニューラルネットワークである第二類似度計算ステップ；
前記各２つの推薦ニューラルネットワークについて前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層の重みパラメータ及び前記第二メタ学習ネットワークの重みパラメータを訓練することで、更新後の前記各２つの推薦ニューラルネットワークのうちの第二推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークを取得する類似度損失計算ステップ；及び
更新後の前記複数の推薦ニューラルネットワークの嵌入層及び前記第二メタ学習ネットワークに基づいて、前記汎化損失計算ステップ、前記勾配計算ステップ、前記学習ステップ、前記第一更新ステップ、前記第二更新ステップ、前記第二類似度計算ステップ、及び前記類似度損失計算ステップの処理を、第一反復終了条件が満足されるまで反復して実行する第三更新ステップを含み、
前記混合メタ学習ネットワークは、前記少なくとも１つの第一メタ学習ネットワーク及び前記第二メタ学習ネットワークを含む、方法。
【０２０８】
（付記12）
付記11に記載の方法であって、
前記複数の推薦ニューラルネットワークのうちの各々は、ユーザにウェブサイトにおける品物リストを推薦するための推薦ニューラルネットワークである、方法。
【０２０９】
（付記13）
付記11に記載の方法であって、
前記第二類似度計算ステップでは、前記第二所定条件が満足されるときの、前記各２つの推薦ニューラルネットワークのうちの、前記第一推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴と、前記第二推薦ニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴との間の変換を学習し、学習された変換を用いて、前記第一推薦ニューラルネットワークの前記過去推薦項集合における推薦項のワード嵌入特徴を前記第二推薦ニューラルネットワークのベクトル空間にマッピングすることで、マッピング後の推薦項のワード嵌入特徴を取得し、前記第二類似度計算ユニットは、前記マッピング後の推薦項のワード嵌入特徴及び前記第二推薦ニューラルネットワークの前記新出現推薦項集合における推薦項のワード嵌入特徴に基づいて、前記第二類似度を計算する、方法。
【０２１０】
（付記14）
付記13に記載の方法であって、
前記第二類似度計算ステップでは、前記マッピング後の推薦項のワード嵌入特徴の正規化値及び前記第二推薦ニューラルネットワークの前記新出現推薦項集合における推薦項のワード嵌入特徴の正規化値に基づいて、前記第二類似度を計算する、方法。
【０２１１】
（付記15）
付記11に記載の方法であって、
前記第一類似度計算ステップでは、前記第一推薦ニューラルネットワーク及び前記第二推薦ニューラルネットワークについて、所定長さのワード窓に従って共起ワード周波数行列を構成し、前記共起ワード周波数行列からそれぞれ前記共起ワード周波数特徴を抽出する、方法。
【０２１２】
（付記16）
付記11に記載の方法であって、
前記汎化損失計算ステップでは、前記複数の推薦ニューラルネットワークの損失の平均化を行い、平均後の損失を前記汎化損失とする、方法。
【０２１３】
（付記17）
付記11に記載の方法であって、
前記勾配計算ステップでは、前記汎化損失の、各推薦ニューラルネットワークにおける各ネットワーク層の重みパラメータに対する勾配を計算する、方法。
【０２１４】
（付記18）
付記17に記載の方法であって、
前記学習ステップでは、各推薦ニューラルネットワークのネットワーク層の重みパラメータの前回の更新の状態に基づいて、該層の重みパラメータの更新値を出力する、方法。
【０２１５】
（付記19）
付記11に記載の方法であって、
前記第一更新ステップでは、前記更新値に基づいて、各推薦ニューラルネットワーク中の各ネットワーク層の重みパラメータを更新する、方法。
【０２１６】
（付記20）
付記1〜10のうちの任意の１項に記載の混合メタ学習ネットワーク訓練装置の訓練により得られた混合メタ学習ネットワークを用いてニューラルネットワークに対して訓練を行う装置であって、
訓練データを用いて、訓練待ちのニューラルネットワークの損失を取得する損失取得ユニット；
前記損失の、前記訓練待ちのニューラルネットワークの重みパラメータに対する勾配を計算するニューラルネットワーク勾配計算ユニット；
前記勾配を、それぞれ、前記第一反復終了条件が満足されるときに取得された訓練済みの前記少なくとも１つの第一メタ学習ネットワークのうちの１つの第一メタ学習ネットワークに入力することで、前記訓練待ちのニューラルネットワークの重みパラメータの更新値を取得する勾配学習ユニット；
前記更新値に基づいて、前記訓練待ちのニューラルネットワークの重みパラメータを更新する第一パラメータ更新ユニット；
前記訓練待ちのニューラルネットワーク及び前記訓練待ちのニューラルネットワークに対応する推薦タスクの直前の推薦タスクのための直前推薦ニューラルネットワークについて、前記直前推薦ニューラルネットワークの推薦項ワードリストと、前記訓練待ちのニューラルネットワークの推薦項ワードリストとの共通部分を活躍推薦項集合とし、前記直前推薦ニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を過去推薦項集合とし、前記訓練待ちのニューラルネットワークの推薦項ワードリストから前記活躍推薦項集合を除いた後に取得された集合を新出現推薦項集合とし、且つ、それぞれ、前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との、前記活躍推薦項集合に対する共起ワード周波数特徴の間の第一類似度を計算する第一類似度計算ユニット；
前記損失取得ユニット、前記ニューラルネットワーク勾配計算ユニット、前記勾配学習ユニット、及び前記第一パラメータ更新ユニットの処理を反復して実行し、第三所定条件が満足されるときに、前記第三所定条件が満足されるときの、前記直前推薦ニューラルネットワークの前記活躍推薦項集合における推薦項のワード嵌入特徴及び前記訓練待ちのニューラルネットワークの前記活躍推薦項集合における対応推薦項のワード嵌入特徴に基づいて、前記第一反復終了条件が満足されるときに取得された訓練済みの前記第二メタ学習ネットワークにより前記過去推薦項集合における各推薦項と、前記新出現推薦項集合における各推薦項との間の第二類似度を計算する第二類似度計算ユニット；
前記第一類似度と前記第二類似度との間の類似度損失を計算し、且つ前記類似度損失がより小さい方向に向けて前記訓練待ちのニューラルネットワークの嵌入層の重みパラメータを訓練することで、更新後の訓練待ちのニューラルネットワークの嵌入層を取得する類似度損失計算ユニット；及び
更新後の前記訓練待ちのニューラルネットワークの嵌入層に基づいて、前記損失取得ユニット、前記ニューラルネットワーク勾配計算ユニット、前記勾配学習ユニット、前記第一パラメータ更新ユニット、前記第二類似度計算ユニット、及び前記類似度損失計算ユニットの処理を、第二反復終了条件が満足されるまで反復して実行する第二パラメータ更新ユニットを含む、装置。
【０２１７】
以上、本発明の好ましい実施形態を説明したが、本発明はこの実施形態に限定されず、本発明の趣旨を離脱しない限り、本発明に対するあらゆる変更は、本発明の技術的範囲に属する。
【図１】
2020144852.tif 000003
【図２Ａ】
2020144852.tif 000004
【図２Ｂ】
2020144852.tif 000005
【図３】
2020144852.tif 000006
【図４】
2020144852.tif 000007
【図５】
2020144852.tif 000008
【図６】
2020144852.tif 000009
【図７】
2020144852.tif 000010
【図８】
2020144852.tif 000011
【図９】
2020144852.tif 000012
【図１０】
2020144852.tif 000013