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

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

▶ 富士通株式会社の特許一覧

<>
  • 特開-プログラム,方法,及び情報処理装置 図1
  • 特開-プログラム,方法,及び情報処理装置 図2
  • 特開-プログラム,方法,及び情報処理装置 図3
  • 特開-プログラム,方法,及び情報処理装置 図4
  • 特開-プログラム,方法,及び情報処理装置 図5
  • 特開-プログラム,方法,及び情報処理装置 図6
  • 特開-プログラム,方法,及び情報処理装置 図7
  • 特開-プログラム,方法,及び情報処理装置 図8
  • 特開-プログラム,方法,及び情報処理装置 図9
  • 特開-プログラム,方法,及び情報処理装置 図10
  • 特開-プログラム,方法,及び情報処理装置 図11
  • 特開-プログラム,方法,及び情報処理装置 図12
  • 特開-プログラム,方法,及び情報処理装置 図13
  • 特開-プログラム,方法,及び情報処理装置 図14
  • 特開-プログラム,方法,及び情報処理装置 図15
  • 特開-プログラム,方法,及び情報処理装置 図16
  • 特開-プログラム,方法,及び情報処理装置 図17
  • 特開-プログラム,方法,及び情報処理装置 図18
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024057460
(43)【公開日】2024-04-24
(54)【発明の名称】プログラム,方法,及び情報処理装置
(51)【国際特許分類】
   G06N 20/00 20190101AFI20240417BHJP
【FI】
G06N20/00
【審査請求】未請求
【請求項の数】7
【出願形態】OL
(21)【出願番号】P 2022164222
(22)【出願日】2022-10-12
(71)【出願人】
【識別番号】000005223
【氏名又は名称】富士通株式会社
(74)【代理人】
【識別番号】110003649
【氏名又は名称】弁理士法人真田特許事務所
(74)【代理人】
【識別番号】100189201
【弁理士】
【氏名又は名称】横田 功
(72)【発明者】
【氏名】錦野 敬三郎
(57)【要約】
【課題】機械学習モデルの強化学習における報酬のバラつきを抑制する。
【解決手段】プログラムは、訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、処理をコンピュータに実行させる。
【選択図】図17
【特許請求の範囲】
【請求項1】
訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、
処理をコンピュータに実行させる、プログラム。
【請求項2】
前記強化学習を実行する処理は、
前記訓練データの確率分布の一部と、前記生成器が出力したデータの確率分布の一部とを、第1パラメータに応じた割合で混合して得られる第1の混合分布と、前記訓練データの確率分布の一部と、前記生成器が出力した確率分布の一部とを、第2パラメータに応じた割合で混合して得られる第2の混合分布との距離を前記報酬関数として利用する、処理を含む、
請求項1に記載のプログラム。
【請求項3】
前記強化学習を実行する処理は、
判別器が出力した報酬を前記第1パラメータと前記第2パラメータとに基づく順応の数理モデルに入力して得られる順応報酬を、前記生成器に入力する、処理を含む、
請求項2に記載のプログラム。
【請求項4】
前記強化学習の進捗に応じて、前記第1パラメータ及び前記第2パラメータの一方又は双方を変化させる、
処理を前記コンピュータに実行させる、請求項2又は請求項3に記載のプログラム。
【請求項5】
所定の指標に基づき、前記強化学習の段階ごとに前記第1パラメータ及び前記第2パラメータの一方又は双方を決定する、
処理を前記コンピュータに実行させる、請求項2又は請求項3に記載のプログラム。
【請求項6】
訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、
処理をコンピュータが実行する、方法。
【請求項7】
訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、
制御部を備える、情報処理装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム,方法,及び情報処理装置に関する。
【背景技術】
【0002】
ユーザからの問い合わせ業務の人件費を削減するために、ユーザの質問又は会話に対してAI(Artificial Intelligence)が自動回答を行なうタスクがある。当該タスクは、例えば、Transformer等のDNN(Deep Neural Network)を用いた言語モデルによる文章生成により実現される。
【0003】
言語モデルは、機械学習モデル(「DNNモデル」と称されてもよい)の一例であり、最尤推定モデルと称されてもよい。最尤推定モデルは、質問又は会話と回答とのペア(対話)を複数含む対話データセット、例えばFAQ(Frequently Asked Questions)等を用いた教師あり学習によって訓練される。
【0004】
最尤推定モデルによる生成される回答文(以下、「生成回答文」と表記する場合がある)は、人により回答文が生成される場合と比較して、最尤推定モデルにより生成される回答文の精度(換言すれば、適切性)及び多様性が低下する場合がある。
【0005】
生成回答文の精度及び多様性を向上させるための手法の1つとして、最尤推定モデルに敵対的模倣学習モデルを組み合わせたモデル(以下、「最尤推定&敵対的模倣学習モデル」と表記する場合がある)を用いる手法が知られている。
【0006】
敵対的模倣学習モデルとしては、例えば、GAN(Generative Adversarial Network)等の敵対的生成ネットワークを利用したTextGAIL(Text Generative Adversarial Imitation Learning)等の機械学習モデルが挙げられる。GANは、Generator及びDiscriminatorの2つのネットワークを備え、これらのネットワークを互いに競い合わせることで精度を高める。Generatorは生成器の一例であり、Discriminatorは判別器(「評価器」と称されてもよい)の一例である。
【0007】
最尤推定&敵対的模倣学習モデルは、敵対的模倣学習を実現するGANの構成を利用して、最尤推定モデルを強化学習によって再訓練する。例えば、生成器は、生成回答文に基づく回答文(以下、「生成文」と表記する場合がある)を出力する。判別器は、当該生成文を文章評価(判別)し、違和感(確信度:confidence)を報酬として生成器に出力する。
【先行技術文献】
【特許文献】
【0008】
【特許文献1】特開2021-182039号公報
【特許文献2】特表2019-526107号公報
【特許文献3】米国特許出願公開第2019/0115027号明細書
【特許文献4】米国特許出願公開第2019/0297033号明細書
【発明の概要】
【発明が解決しようとする課題】
【0009】
最尤推定&敵対的模倣学習モデルにおいて、判別器から出力される確信度を強化学習の報酬とする場合、報酬値のバラつきが大きくなり、安定した機械学習の実現が困難となる可能性がある。
【0010】
1つの側面では、本発明は、機械学習モデルの強化学習における報酬のバラつきを抑制することを目的の1つとする。
【課題を解決するための手段】
【0011】
1つの側面では、プログラムは、コンピュータに以下の処理を実行させてよい。前記処理は、訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行してよい。
【発明の効果】
【0012】
1つの側面では、本発明は、機械学習モデルの強化学習における報酬のバラつきを抑制することができる。
【図面の簡単な説明】
【0013】
図1】比較例に係る最尤推定モデルによる自動回答を説明するための図である。
図2】最尤推定モデルによる生成回答文の生成手法の一例を示す図である。
図3】最尤推定モデルによる生成回答文の一例を示す図である。
図4】最尤推定モデルによる生成回答文の一例を示す図である。
図5】最尤推定&強化学習モデルによる文章生成の一例を説明するための図である。
図6】最尤推定モデルの訓練フェーズ及び推論フェーズの一例を説明するための図である。
図7】最尤推定&強化学習モデルの訓練フェーズ及び推論フェーズの一例を説明するための図である。
図8】最尤推定&敵対的模倣学習モデルの一例を説明するための図である。
図9】最尤推定&敵対的模倣学習モデルの一例であるTextGAILの構成例を示すブロック図である。
図10】一実施形態に係るモデルの構成例を示すブロック図である。
図11】一実施形態に係るモデルの機能を実現するサーバのソフトウェア構成例を示すブロック図である。
図12】比較検証の一例を説明するための図である。
図13】比較検証における機械学習の設定例を説明するための図である。
図14】比較検証におけるデコードの設定例を説明するための図である。
図15】調整パラメータの設定手法の第1例に係る検証結果を説明するための図である。
図16】調整パラメータの設定手法の第2例に係る検証結果を説明するための図である。
図17】一実施形態に係るサーバの動作例を説明するフローチャートである。
図18】一実施形態に係るサーバの機能を実現するコンピュータのハードウェア構成例を示すブロック図である。
【発明を実施するための形態】
【0014】
以下、図面を参照して本発明の実施の形態を説明する。ただし、以下に説明する実施形態は、あくまでも例示であり、以下に明示しない種々の変形又は技術の適用を排除する意図はない。例えば、本実施形態を、その趣旨を逸脱しない範囲で種々変形して実施することができる。なお、以下の説明で用いる図面において、同一符号を付した部分は、特に断らない限り、同一若しくは同様の部分を表す。
【0015】
〔A〕比較例
図1は、比較例に係る最尤推定モデル(図1では「Model」と表記する)100による自動回答を説明するための図である。最尤推定モデル100(以下、単にモデル100と表記する場合がある)は、ユーザ110からの質問文(「参照文」と表記する場合がある)121に対して、生成回答文122を出力する。
【0016】
図2は、モデル100による生成回答文122の生成手法の一例を示す図である。図2に示すように、モデル100には、対応関係124に基づき参照文121内の単語をID(Identifier)に変換したID列125が入力される。対応関係124は、単語と一意のIDとが対応付けられた情報である。モデル100は、入力されたID列125に基づき、回答文としてのID列126を出力する。ID列126は、対応関係124に基づき生成回答文122に変換され、ユーザ110に出力される。なお、参照文121には、開始記号<BOS>,特殊記号<SEP>(図示省略)が含まれ、生成回答文122には、終端記号<EOS>が含まれる。
【0017】
図3及び図4は、最尤推定モデル100による生成回答文122A~122Cの一例を示す図である。
【0018】
生成回答文122は、ユーザ110にAI特有の違和感を与えることがある。例えば、図3に示すように、モデル100は、ユーザ111(ユーザA)からの参照文121Aに対して、人があまり生成しない「同じ内容の文章の繰り返し」の生成回答文122Aを出力する場合がある。
【0019】
このような生成回答文122Aは、サービスの品質の低下、又は、ユーザ111の満足度の低下を引き起こす可能性がある。これは、人により回答文を生成する場合と比較して、生成回答文122の精度(換言すれば、適切性)が低い場合があることを意味する。
【0020】
また、生成回答文122は、各ユーザケースに合わない場合があり、自動回答によってもユーザの質問が解消されない、又は、ユーザとの会話が成立しない場合がある。例えば、図4に示すように、モデル100は、ユーザ112(ユーザB)及び113(ユーザC)からの異なる内容の質問又は会話に対して、互いに似た内容の文章を生成した結果、ユーザ113に対しては適した自動回答にならない場合がある。
【0021】
このような生成回答文122B及び122Cは、ユーザを不快にさせる、又は、ユーザとの会話に対応できない可能性がある。これは、人により回答文を生成する場合と比較して、生成回答文122の多様性が低い場合があることを意味する。
【0022】
生成回答文122の精度及び多様性の向上を目的として、文章評価を行なうために、最尤推定モデル100に強化学習モデルを組み合わせたモデル(以下、「最尤推定&強化学習モデル」と表記する場合がある)200を用いることも考えられる。
【0023】
図5は、最尤推定&強化学習モデル200による文章生成の一例を説明するための図である。図5に例示するように、モデル200は、最尤推定モデル100の追加学習として強化学習を行なう生成部210及び評価部220を備える。生成部210は、最尤推定モデル100を含んでよく、参照文201及び報酬に基づき生成文202を生成する。評価部220は、当該生成文202を文章評価(判別)し、文章評価の結果を報酬として生成部210に出力する。
【0024】
強化学習の目的関数は、下記式(1)となる。また、強化学習における方策は、評価部220が報酬(文章評価)の最大値を目的とするものとなる。
【数1】
【0025】
モデル200は、生成文202に対する文章評価を報酬とすることで文章生成を強化学習させることができる。評価部220は、文章の類似度の計測により回答の適切性を評価するBLEU、及び、文章の多様性の評価により回答の多様性を評価するDistinctの一方又は双方の指標を用いて、文章を定量的に評価する。強化学習では、生成文202の文章評価の報酬値を最大化するように、生成部210及び評価部220の訓練が行なわれる。
【0026】
図6は、最尤推定モデル100の訓練フェーズ及び推論フェーズの一例を説明するための図であり、図7は、最尤推定&強化学習モデル200の訓練フェーズ及び推論フェーズの一例を説明するための図である。
【0027】
図6に示すように、最尤推定モデル100では、訓練フェーズでTeacher Forcing、推論フェーズでFree Runningが採用される。Teacher Forcingは、生成回答文122の単語の予測に前回の出力(生成回答文122)を再利用せず、参照文121を入力として単語を予測する手法である。Free Runningは、生成回答文122の単語の予測に前回の出力を再利用する手法であり、前回の生成回答文122を入力として単語を予測する手法である。
【0028】
最尤推定モデル100では、モデル100の実装後の推論が、訓練時とは異なるタスクとなる。このため、モデル100が想定外の文章を推論しないかどうかを検証することが重要である。また、モデル200から出力される文章全体の「自然さ」を向上させる学習機構が存在しないため、当該文章を人が読んだ場合に違和感を与える可能性がある。
【0029】
一方、図7に示すように、最尤推定&強化学習モデル200では、訓練フェーズ及び推論フェーズの双方においてFree Runningが採用される。例えば、モデル200は、参照文201及び前回の生成文202を入力として、生成文202の単語を予測する。
【0030】
このように、モデル200では、訓練及び推論でFree Runningを利用するため、推論時に、訓練とは想定外の文章を推論しないかどうかを検証するコストを削減可能となる。また、モデル200では、モデル100が訓練に利用できない文章評価を利用できるため、機械学習と文章評価との間のギャップを減らすことができる。
【0031】
しかし、最尤推定&強化学習モデル200では、文章の違和感に関する文章評価を人が定量的に設計することが困難である。
【0032】
そこで、文章評価の定量的な設計を自動化する手法として、最尤推定&敵対的模倣学習モデルを用いることが考えられる。
【0033】
図8は、最尤推定&敵対的模倣学習モデル300(以下、単にモデル300と表記する場合がある)の一例を説明するための図である。図8に例示するように、モデル300は、最尤推定モデル100の追加学習として敵対的模倣学習を行なう生成部310及び評価部320を備える。生成部310は、最尤推定モデル100を含んでよく、参照文及び報酬に基づき生成文を生成する。評価部320は、当該生成文を文章評価し、違和感(確信度:confidence)を報酬として、参照文とともに生成部310に出力する。
【0034】
図9は、最尤推定&敵対的模倣学習モデル300の一例であるTextGAIL350の構成例を示すブロック図である。図9に例示するように、TextGAIL350は、生成部310,評価部320及びリプレイバッファ360を備えてよい。
【0035】
リプレイバッファ360は、複数のサンプル352と、複数のサンプル353とを入力とする。サンプル352は、複数のコンテキストを含む訓練データ351に含まれる、人により生成されたデータ(例えば参照文)のサンプルである。サンプル353は、訓練データ351に基づき生成部310により生成されたデータ(例えば生成文)のサンプルである。
【0036】
リプレイバッファ360は、サンプル352及び353を蓄積し、最新のサンプル353と過去のサンプル352及び353とを評価部320に出力する。
【0037】
評価部320は、リプレイバッファ360から取得したサンプル352及び353に基づき生成部310により生成されたデータを評価し、報酬(確信度)を出力するとともに、D(評価部320、例えばDiscriminator)を更新する。
【0038】
生成部310は、報酬に基づき、PPO(Proximal Policy Optimization)等の強化学習アルゴリズムに応じてG(生成部310、例えばGenerator)を更新する。
【0039】
このような敵対的模倣学習により、モデル300は、各ユーザケースに合わせた自動回答において、生成文に、高品質を担保した多様性を持たせることができる。換言すれば、モデル300により、精度及び多様性の向上を実現できる。
【0040】
しかしながら、モデル300において、評価部320から出力される確信度を強化学習の報酬とする場合、報酬値のバラつきが大きくなり、安定した機械学習の実現が困難となる可能性がある。
【0041】
例えば、生成部310が或る行動(action)を行なった場合に評価部320による報酬値が高いにも関わらず、当該行動に類似した行動を行なった場合に報酬値が低いと、強化学習の一貫性が保たれず、高精度なモデル300が学習され難くなる。
【0042】
また、例えば、報酬が生成部310に殆ど与えられない状況において、生成部310により生成された稀な文章に高い報酬値が与えられた場合、当該文章が過大評価される結果、当該文章に類似した文章が多く生成され、安定したモデル300が学習され難くなる。このことは、例えば、敵対的攻撃に対して脆弱性を有することに繋がる。
【0043】
そこで、一実施形態では、機械学習モデルの強化学習における報酬のバラつきを抑制する手法を説明する。
【0044】
〔B〕一実施形態の構成例
図10は、一実施形態に係るモデル1の構成例を示すブロック図である。モデル1は、例えば、最尤推定&敵対的模倣学習モデルに対して、報酬の調節機構を設けた機械学習モデルと位置付けられてよい。一実施形態では、報酬の調節機構として順応のアプローチを導入するものとする。
【0045】
図10に示すように、モデル1は、例示的に、生成部2,評価部3及び順応モデル4を備えてよい。
【0046】
生成部2は、参照文及び報酬に基づき生成文を生成する生成器の一例である。生成部2は、最尤推定モデル100を含んでよい。生成文は、強化学習における行動(action)の一例である。参照文は、強化学習における状態(state)の一例である。
【0047】
評価部3は、参照文及び生成文に基づき当該生成文を文章評価し、評価結果として確信度(confidence)を出力する判別器の一例である。評価部3は、参照文を生成部2に出力するとともに、確信度を順応モデル4に出力する。確信度は、生成文の違和感に関する指標であり、強化学習における報酬(reward)の一例である。
【0048】
順応モデル4は、評価部3から入力される報酬を調節(調整)する調節機構(例えば機能ブロック)の一例である。一実施形態では、順応モデル4は、順応の数理モデルに基づいたモデルであってよい。順応とは、刺激に対して、次第に適応するプロセスである。なお、順応モデル4は、最適な報酬を出力するように訓練された機械学習モデルを含んでもよい。
【0049】
例えば、順応モデル4は、敵対的模倣学習の報酬の値(報酬値)を順応に基づき調節可能とした順応報酬を、生成部2に出力する。一例として、順応モデル4は、報酬値のバラつきを抑えるために、順応報酬の下界を調節してよい。順応報酬は、敵対的模倣学習の報酬値の下界を調節可能にしたものであってよい。
【0050】
ここで、報酬を調整する手法として、モデル300で実施されるように、KL(Kullback-Leibler)距離又はReverse KL距離を最小化するような報酬を生成することが考えられる。KL距離を最小化するような報酬により、モデル1の品質・評価を向上させることができる。また、Reverse KL距離を最小化するような報酬により、モデル1の多様性を向上させることができる。
【0051】
例えば、KL距離の最小化に対応した報酬に基づく、生成部2の訓練に用いられる損失関数は、下記式(2)に示される。また、Reverse KL距離の最小化に対応した報酬に基づく、生成部2の訓練に用いられる損失関数は、下記式(3)に示される。
【数2】
【0052】
上記式(2)及び(3)において、Eπは、[]内の報酬の期待値を算出する関数である。Dは、評価部3から入力される確信度を示し、Dは、モデル1が最適解であるときのDを示す。なお、最尤推定&敵対的模倣学習モデルの一例であるTextGAILでは、報酬はDであり、最尤推定&敵対的模倣学習モデルの一例であるAIRL(Adversarial Inverse Reinforcement Learning)では、報酬はlog(D/(1-D))である。
【0053】
また、ρπは、生成部2が生成するデータの確率分布(生成分布)を示し、ρは、モデル1の訓練に利用される訓練データセットが有する複数のデータ(訓練データ)の確率分布(データ分布)を示す。上記式(2)及び(3)により算出される期待値は、生成分布ρπと、データ分布ρとの間の距離(分布間距離)となる。
【0054】
しかし、上記式(2)及び(3)のいずれにおいても、報酬に下界が存在せず、報酬が負の無限大の値を取り得る。換言すれば、報酬値のバラつきが大きくなり、モデル1の機械学習が安定しない。
【0055】
そこで、一実施形態に係る順応モデル4は、例えば、順応報酬を調整するためのパラメータ(調整パラメータ)を利用してよい。調整パラメータは、その値が変化したとしても、モデル1の最適解が変化しない、又は、変化を抑制するように、順応報酬の算出ロジックに組み込まれてよい。これにより、順応モデル4は、調整パラメータを変化させることで、敵対的模倣学習の最適解が変化することを抑制しつつ、報酬値の下界を調節することができる。
【0056】
このように、一実施形態に係るモデル1は、報酬値がバラつくことで最尤推定&敵対的模倣学習モデル300では安定しない学習環境において、順応を模した順応モデル4により報酬値のバラつきを抑えることができ、強化学習を安定させることができる。
【0057】
例えば、順応モデル4は、下記式(4)に示す順応報酬を出力してよい。また、生成部2は、順応モデル4から入力される順応報酬に基づき、下記式(5)に示す損失関数を用いた機械学習を行なってよい。
【数3】
【0058】
上記式(4)及び(5)において、α及びβの各々は、調整パラメータ(「順応度パラメータ」又は単に「パラメータ」と称されてもよい)を示す。調整パラメータα及びβの各々は、例えば、0以上且つ1未満の実数であってよい。調整パラメータαは、第1パラメータの一例であり、調整パラメータβは、第2パラメータの一例である。
【0059】
例えば、順応モデル4は、評価部3から報酬D(確信度)を与えられると、調整パラメータα及びβに基づき、上記式(4)に従って順応報酬を算出してよい。順応報酬は、報酬Dの数だけ生成されてよい。
【0060】
上記式(5)に示す[]内は、報酬Dに基づき生成された順応報酬の全体的な分布になるため、順応報酬の分布の傾向、一例として歪度を導出することができる。モデル1は、このような歪度等を小さくするように調整パラメータα及びβを繰り返し最適化手法により算出することで、最終的に最適であると判定した調整パラメータα及びβを決定してよい。なお、後述するように、調整パラメータα及びβの決定手法は、歪度を小さくするような最適化手法に限定されるものではない。
【0061】
順応モデル4は、このようにして決定された調整パラメータα及びβに基づき、上記式(4)に従い報酬値の下界を調節した順応報酬を、生成部2に出力してよい。
【0062】
ところで、上記式(5)において、D=ρ/(ρπ+ρ),(1-D)=ρπ/(ρπ+ρ)とすると、上記式(5)は、下記式(6)のように変形できる。
【数4】
【0063】
上記式(6)から、調整パラメータαの値が大きい(1に近い)ほど、生成分布ρπが多く、データ分布ρが少ない分布となり、調整パラメータβの値が大きい(1に近い)ほど、データ分布ρが多く、生成分布ρπが少ない分布となることがわかる。
【0064】
また、上記式(6)において、[]内(順応報酬)の期待値を算出することで分布間距離を求めると、下記式(7)が得られる。下記式(7)の左辺における期待値の中の報酬を最大化すると、下記式(7)の右辺に示す距離は、最小になる。
【数5】
【0065】
ここで、上記式(6)及び(7)において、αρπ+(1-α)ρは、生成分布ρπの一部と、データ分布ρの一部とを、調整パラメータαに応じた割合で混合して得られる確率分布(混合分布:第1の混合分布)の一例である。また、βρπ+(1-β)ρは、生成分布ρπの一部と、データ分布ρの一部とを、調整パラメータβに応じた割合で混合して得られる確率分布(混合分布:第2の混合分布)の一例である。
【0066】
換言すれば、調整パラメータα及びβの各々は、混合分布における混合の割合を示すパラメータであって、生成分布ρπとデータ分布ρとの間の分布間距離に重みを付与する重みパラメータであるといえる。また、上記式(5)に示す損失関数は、第1及び第2の混合分布の間の距離を示す報酬関数であるといえる。
【0067】
このように、一実施形態では、データ分布ρ及び生成分布ρπの分布間距離に重みα及びβを導入する。モデル1は、データ分布ρと生成分布ρπとの混合分布を算出して、混合分布どうし(混合分布間)の分布間距離を最小化する。
【0068】
例えば、モデル300のように、損失関数を生成分布とデータ分布との間の分布間距離に基づくものとすると、報酬値が大きくなり、距離が大きな値を取る。これに対し、モデル1によれば、生成分布とデータ分布とを直接比較するのではなく、生成分布の一部とデータ分布の一部とを混ぜ合わせた混合分布のそれぞれの距離を求めることで、報酬が大きな(過度な)値を取らないように調整することができる。
【0069】
これにより、敵対的模倣学習の報酬は下界を持つようになり、最終的な分布間距離の最適解の変動を抑制しつつ、分布間距離自体を調節できるため、機械学習を安定化させることができる。
【0070】
さらに、生成分布ρπ及びデータ分布ρの間の分布間距離が小さくなると、訓練データセットに含まれる文章の分布のあり方が、生成部2により出力される文章の分布のあり方と同じになる。このことは、生成部2が、訓練データセットに含まれる文章と同じような文章を生成できるようになったことを意味する。
【0071】
例えば、上記式(7)において、調整パラメータαが1になると、調整パラメータαを含む項は、生成分布ρπ及びデータ分布ρのうちの生成分布ρπのみとなる。また、調整パラメータβが0になると、調整パラメータβを含む項は、生成分布ρπ及びデータ分布ρのうちのデータ分布ρのみとなる。
【0072】
従って、Dが最適解Dであって、且つ、調整パラメータα=1,β=0の場合、上記式(7)は、下記式(8)に示すように、生成分布ρπ及びデータ分布ρの距離と同じになり、上記式(2)に示すようなKL距離の最小化問題に帰着する。
【数6】
【0073】
なお、評価部3は、図8に示す評価部320と同様に、参照文及び生成文に基づき、生成文の確信度を出力するように訓練されてよい。例えば、評価部3は、下記式(9)に示す損失関数を用いた機械学習を行なってよい。
【数7】
【0074】
以上のように、一実施形態に係るモデル1は、訓練データの確率分布の一部と、生成部2が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、強化学習が実行される。
【0075】
例えば、上述したモデル300等のように、報酬を正規化及び標準化する手法では、報酬値が線形に抑えられるため、報酬値が非線形にバラついている場合は、バラつきの抑制が困難になることがある。この場合、大きな報酬値の影響が支配的になり、その他の報酬値が小さく圧縮されて訓練に反映され難くなる。これにより、機械学習におけるサンプルの間で学習の重みが変わるため、ロバストなモデル1が学習され難い。また、報酬のクリッピングや報酬の加工が行なわれると、モデル1の最適解が学習プロセスで変化するため、高評価なモデル1が学習され難い。
【0076】
これに対し、一実施形態に係るモデル1によれば、評価部3から生成部2に与えられる報酬の下界を調節可能となるため、報酬の影響のバラつきを抑えられ、モデル1の機械学習の安定化を図ることができる。これにより、例えば、敵対的攻撃等に対するロバスト性をモデル1に持たせることができる。
【0077】
また、一実施形態に係るモデル1によれば、順応報酬の調整パラメータα及びβの変化によってもモデル1の最適解が学習プロセスで変化しないため、機械学習の一貫性を担保でき、高評価なモデル1の機械学習を実現できる。
【0078】
従って、例えば、モデル1がユーザの質問又は会話に対して自動回答を行なうタスクに適用される場合、AI特有の違和感を与えない自動回答を実現でき、サービスの質及びユーザの満足度を向上させることができる。
【0079】
また、各ユーザケースに合った自動回答を実現でき、ユーザが不快に思うケース、又は、ユーザとの会話に対応できないケースを減少させることができる。これにより、人による回答の修正頻度を減少させることができ、人件費を大きく削減することが可能となる。
【0080】
〔C〕サーバのソフトウェア構成例
図11は、一実施形態に係るモデル1の機能を実現するサーバ10のソフトウェア構成例を示すブロック図である。サーバ10は、モデル1の訓練(及びモデル1を用いた推論)を実行する情報処理装置又はコンピュータの一例である。
【0081】
図11に示すように、サーバ10は、例示的に、メモリ部11,取得部12,訓練部13,報酬調整部14,及び出力部15を備えてよい。また、サーバ10は、推論部16を備えてもよい。取得部12,訓練部13,報酬調整部14,出力部15,及び推論部16は、制御部17の一例である。
【0082】
メモリ部11は、記憶領域の一例であり、サーバ10が利用する種々のデータを記憶する。メモリ部11は、例えば、サーバ10の後述するメモリ20b及び記憶部20c(図18参照)のうちの一方又は双方が有する記憶領域により実現されてもよい。
【0083】
図11に示すように、メモリ部11は、例示的に、機械学習モデル11a,複数の訓練データ11b,複数の生成データ11c,及び調整パラメータ11dを記憶可能であってよい。また、サーバ10が推論部16を備える場合、メモリ部11は、複数の入力データ11eを記憶可能であってもよい。
【0084】
以下、便宜上、メモリ部11が格納する情報をテーブル形式で表記するが、これに限定されるものではなく、メモリ部11が格納する情報のうちの少なくとも1つは、DB(Database)又は配列等の種々の形式であってもよい。
【0085】
機械学習モデル11aは、最尤推定&敵対的模倣学習モデルの一例であり、例えば、図10に示すモデル1であってよい。
【0086】
複数の訓練データ11bは、機械学習モデル11aの機械学習処理(訓練)に利用されるデータである。訓練データ11bは、図10に示す参照文の一例である。複数の訓練データ11bは、訓練データセットと称されてもよい。
【0087】
複数の生成データ11cは、機械学習モデル11aの訓練フェーズ又は推論フェーズにおいて機械学習モデル11aにより生成されるデータである。生成データ11cは、図10に示す生成文の一例である。
【0088】
調整パラメータ11dは、図10に示す順応モデル4が利用する調整パラメータα及びβの一例である。調整パラメータ11d(α及びβ)の値としては、報酬調整部14又は管理者により予め所定の値が設定されてもよいし、報酬調整部14又は管理者により更新されてもよい。
【0089】
入力データ11eは、機械学習モデル11aによる推論処理に利用されるデータである。例えば、モデル1がユーザの質問又は会話に対して自動回答を行なうタスクを実行する場合、入力データ11eは、ユーザからの質問又は会話等の文章であってよい。
【0090】
取得部12は、サーバ10で利用される種々の情報を取得する。例えば、取得部12は、データを提供する装置(図示省略)から機械学習モデル11a,訓練データ11b,調整パラメータ11d,及び入力データ11eのうちの少なくともいずれか1種類のデータを取得し、メモリ部11に格納してよい。
【0091】
訓練部13は、訓練フェーズにおいて、複数の訓練データ11bを利用した機械学習モデル11aの訓練(機械学習処理,強化学習処理)を行なう。
【0092】
例えば、訓練部13は、複数の訓練データ11bをモデル1の生成部2に入力して、報酬調整部14により調整された順応報酬に基づく損失関数(上記式(5)参照)を利用した生成部2の訓練を行なう。
【0093】
また、訓練部13は、複数の訓練データ11bと、生成部2から出力される複数の生成データ11cとをモデル1の評価部3に入力して、上記式(9)に示す損失関数を利用した評価部3の訓練を行なう。なお、訓練部13は、評価部3から出力される報酬を報酬調整部14に出力する。
【0094】
各損失関数を用いた生成部2及び評価部3の強化学習の手法としては、既知の種々の手法が用いられてよい。
【0095】
報酬調整部14は、評価部3から出力される報酬を、調整パラメータ11dに基づき順応報酬に変換(調整)し、生成部2に出力する。例えば、報酬調整部14は、図10に示す順応モデル4の一例である。
【0096】
なお、順応モデル4が機械学習モデルである場合、報酬調整部14は、調整パラメータ11dを最適化するように順応モデル4の訓練を実行してもよい。この場合、順応モデル4は、機械学習モデル11aとは別にメモリ部11に格納されてもよいし、機械学習モデル11aの一部として機械学習モデル11aに含まれてもよい。
【0097】
また、報酬調整部14は、機械学習モデル11aの訓練フェーズに先立って、又は、並行して、調整パラメータ11dの決定又は更新等の設定を行なってよい。
【0098】
出力部15は、出力データを出力する。出力データとしては、例えば、機械学習モデル11a,複数の生成データ11c,及び調整パラメータ11dのうちの少なくともいずれか1種類のデータが挙げられる。出力データに複数の生成データ11cが含まれる場合、出力データに含まれる生成データ11cとしては、訓練フェーズで生成部2が出力する生成文と、推論フェーズで生成部2が出力する生成文(推論結果)と、のうちの一方又は双方が挙げられる。
【0099】
出力部15は、出力データの「出力」において、例えば、出力データを図示しない他のコンピュータに送信(提供)してもよいし、出力データをメモリ部11に蓄積して、サーバ10又は他のコンピュータから取得可能に管理してもよい。或いは、出力部15は、出力データの「出力」において、出力データを示す情報をサーバ10又は管理者端末等の出力装置に画面出力してもよく、その他の種々の態様により出力データを出力してよい。管理者端末は、管理者が利用するコンピュータの一例である。
【0100】
推論部16は、推論フェーズにおいて、訓練部13により訓練された機械学習モデル11aを用いて、推論処理を行なう。例えば、推論部16は、機械学習モデル11aに推論処理の対象データである入力データ11eを入力し、機械学習モデル11aから出力された推論結果をメモリ部11に格納してよい。
【0101】
〔D〕調整パラメータの設定例
報酬調整部14は、種々の手法により、調整パラメータ11dを設定してよい。以下、2つの手法を例に挙げて説明する。
【0102】
なお、以下では、調整パラメータ11dの設定によりモデル1の性能が向上することを示す検証結果を併せて説明する。検証の手法としては、例えば、公開データセットによる比較検証が挙げられる。
【0103】
図12は、比較検証の一例を説明するための図であり、図13は、比較検証における機械学習の設定例を説明するための図であり、図14は、比較検証におけるデコードの設定例を説明するための図である。
【0104】
図12に例示するように、比較検証では、与えられた複数の単語(符号A1参照)から意味が通る文章を生成するタスクを対象とした。当該タスクでは、例えば、人が生成した文章(符号A2)のような文章を、いくつかの比較例に係るモデルとモデル1とに生成させ、生成されたそれぞれの文章(符号A3)の精度及び多様性が測定された。
【0105】
比較検証では、訓練データセットとして、公開データセットであるCommonGenが用いられた。訓練データ数は67389セットであり、検証データ数は4018セットである。
【0106】
比較検証では、訓練データを学習した生成部2及び評価部3の性能を検証データで測定した。性能は、生成文の精度を表す指標であるBLEUと、生成文の多様性を表す指標であるDistinctとの2つの指標を利用して、精度及び多様性がどの程度改善しているかを目的として測定された。なお、BLEUは、参照文と生成文との間のn-gramの一致割合を表す指標であり、Distinctは、全生成文のユニークなn-gramの割合を表す指標である。
【0107】
図13の符号Bに例示するように、比較検証では、Liner Schedulingによる機械学習のスケジューリングが行なわれた。学習率は、生成部2:2e-5,評価部3:1e-5/5e-6であり、エポック数は、Pretrain:10,Finetuning:1である。
【0108】
図14の符号C1及びC2に例示するように、比較検証では、デコードの設定として、単語の予測分布のうちの累計確率pからサンプリングを行なうTop-pサンプリングが採用された。Top-pサンプリングでは、例えば、上位0.94の累積確率のものからランダムに文章を選択するというデコードが行なわれる。
【0109】
〔D-1〕第1例
調整パラメータ11dの設定手法の第1例では、報酬調整部14は、強化学習の進捗に応じて調整パラメータα及びβの一方又は双方を変化させる。例えば、報酬調整部14は、学習ステップに伴い、調整パラメータα及びβを増加又は減少させる。調整パラメータα及びβの増加又は減少は、学習ステップ(ステップ数)に対して線形に行なわれてもよいし、非線形に行なわれてもよく、その他、線分どうし,曲線どうし,線分と曲線との組み合わせ等を表す種々の関数に従って行なわれてもよい。
【0110】
例えば、報酬調整部14は、0≦α<β≦1の範囲内で、報酬のバラつきが小さい場合に報酬の下界を広げる方向に調整パラメータα及びβを更新し、報酬のバラつきが大きい場合に報酬の下界を狭める方向に調整パラメータα及びβを更新してよい。これにより、学習プロセスの進行に伴って報酬の下界を広げることができる。
【0111】
ここで、調整パラメータα及びβは、下界(=a*log(b/a))に影響を与えるパラメータである。このため、調整パラメータαが増加すると下界が広がり(負の無限大に近付く)、減少すると下界が狭まる(ゼロに近付く)。また、調整パラメータβが増加すると下界が狭まり(ゼロに近付く)、減少すると下界が広がる(負の無限大に近付く)。従って、第1例では、報酬調整部14は、報酬の下界を広げる場合、調整パラメータαの増加及び調整パラメータβの減少のうちの一方又は双方を実行し、報酬の下界を狭める場合、調整パラメータαの減少及び調整パラメータβの増加のうちの一方又は双方を実行してよい。
【0112】
図15は、調整パラメータ11dの設定手法の第1例に係る検証結果を説明するための図である。図15に符号D1~D3で示すグラフは、比較例に係る検証結果であり、符号D4で示すグラフは、第1例に係る検証結果である。
【0113】
比較例は、最尤推定学習を行なうMLE(Maximum Likelihood Estimation)(符号D1参照),TextGAIL(符号D2参照),及びAIRL(符号D3参照)である。MLEは、図1に示すモデル100の一例である。TextGAIL及びAIRLは、最尤推定&敵対的模倣学習モデルであり、図8に示すモデル300の一例である。
【0114】
第1例に係る手法(符号D4参照)では、調整パラメータ11dの調整によって、順応度を線形減少させた。
【0115】
なお、図15に示す符号D1~D4のグラフは、温度パラメータをt=0.2/0.4/0.6/0.8/1.0と変化させながらデコードした結果をプロットしたものである。温度パラメータが低いほど、各モデルの検証結果は、精度優先(精度が高く多様性が低い状態)となり、温度パラメータが高いほど、各モデルの検証結果は、多様性優先(精度が低く多様性が高い状態)となる。
【0116】
図15に示すように、精度を表すBLEU(横軸)と、多様性を表すDistinct(縦軸)とはトレードオフの関係にある。従って、良好なモデルとしては、精度及び多様性の双方を改善されたモデルが期待される。
【0117】
符号D5で示すように、単純な教師有り学習を行なうMLE(符号D1)では、精度が低く、単調である。
【0118】
一方、符号D6で示すように、最尤推定モデルに敵対的模倣学習を適用したTextGAIL,AIRL,第1例によれば、精度及び多様性の双方が改善されている。特に、第1例は、調整パラメータ11dの調整により順応度を線形変化(例えば、調整パラメータαを線形減少,調整パラメータβを線形増加)させたことにより、TextGAIL及びAIRLと同程度の多様性を維持しつつ、TextGAIL及びAIRLよりも精度を向上させることができた。
【0119】
例えば、与えられた複数の単語(wall / stand / climb)から意味が通る文章を生成するタスクについて、正解文を以下として、比較例及び第1例では、以下のサンプルのような生成文が出力される。
正解文:The man climbed the ladder and stood on top of the wall.
MLE:A man stands on a wall with a camera perched on his hip.
TextGAIL:A man stands on a wall with a small torch and climbs down. He is climbing.
第1例:A man stands on a wall with a ladder for climbing on top of wall.
【0120】
上記のように、MLEでは、精度に関し、正解文に関係の無い単語(a camera perched)が出現している。TextGAILでは、多様性に関し、同じ単語(climb)が繰り返し生成されている。これに対し、第1例では、MLE及びTextGAILよりも、正解文と異なる(関係の無い)単語が出現したり、同じ単語が繰り返されたりすることを抑制できている。
【0121】
〔D-2〕第2例
調整パラメータ11dの設定手法の第2例では、報酬調整部14は、所定の指標に基づき、強化学習の段階ごとに適した調整パラメータα及びβの一方又は双方を決定する。例えば、報酬調整部14は、設計された指標に基づいて、各ステップに適した調整パラメータα及びβを決定する(与える)。指標としては、例えば、報酬の歪度等が挙げられる。
【0122】
例えば、報酬調整部14は、報酬の歪度等の指標を小さくするように設定された目的関数を用いて、当該指標が小さくなるように調整パラメータα及びβを最適化することで、報酬の順応度を調整してよい。これにより、指標に基づいた学習プロセスを実現できる。
【0123】
なお、調整パラメータα及びβの最適化には、例えば、TPE(Tree-structured Parzen Estimator) Sampler等の最適化手法が用いられてよい。
【0124】
図16は、調整パラメータ11dの設定手法の第2例に係る検証結果を説明するための図である。図16の紙面左側は、比較例としてAIRLを用いた場合の検証結果であり、紙面右側は、第2例に係る検証結果である。
【0125】
比較例は、モデル1における順応モデル4の調整パラメータ11dをa=0,β=1に固定することで、AIRLを擬似的に再現した。第2例は、報酬の歪度を指標とし、当該指標を小さくするように、最適化手法としてTPE Samplerを用いて順応度を調整した。
【0126】
図16の上段は、報酬の分布を示す。符号E1で示す線分は最大値であり、符号E2で示す線分は最小値である。符号E3及びE6で示す一点鎖線の枠は、上位16%の報酬であり、符号E4及びE7で示す二点鎖線の枠は、下位16%の報酬である。一点鎖線の枠と二点鎖線の枠との間の領域に分布する点群は、中央値の報酬である。
【0127】
図16の上段から、第2例に係る報酬は、符号E8で示す破線の枠内において、上位16%の報酬と中央値の報酬との間の空間が、比較例に係る報酬における符号E5で示す破線の枠内の空間よりも広くなった(空白の領域が大きくなった)ことがわかる。
【0128】
このように、第2例によれば、学習サンプルや報酬の偏りの軽減を達成でき、スパース又は偏った報酬により強化学習が不安定になることを抑制できるため、モデル1の機械学習の安定化を図ることができる。
【0129】
図16の中段は、報酬の歪度を示す。第2例では、符号E10で示す破線の枠内に含まれる点群が、比較例に係る符号E9で示す破線の枠内の点群よりも少ないことがわかる。これは、比較例において歪度が-0.4~-0.2の間に存在した点群が、第2例では-0.2~0.2の間に(0を中心として)存在するようになったことを意味する。すなわち、第2例により、報酬の歪度が小さくなったことを意味する。
【0130】
図16の下段は、第2例における調整パラメータα及びβの分布を示す。αで示す点群は、調整パラメータαであり、βで示す点群は、調整パラメータβである。図16の下段に示すように、調整パラメータ11dは、学習ステップの最初は調整が効いており、学習ステップの進行に応じて徐々に緩やかになることがわかる。従って、機械学習の一貫性が担保され、高評価なモデル1となるような機械学習を実現することができる。
【0131】
例えば、与えられた複数の単語(perform / consist / band / drummer / guitarist)から意味が通る文章を生成するタスクについて、正解文を以下として、比較例及び第2例では、以下のサンプルのような生成文が出力される。
正解文:The band consists of a drummer and a guitarist, the band performs in front of people.
MLE:A guitarist performs a band consisting of musicians.
TextGAIL:A band of musicians perform a band consisting of guitarist, and a band of people.
第2例:A guitarist performs in a band consisting of bassists and drummer.
【0132】
上記のように、MLEでは、精度に関し、尤もらしさを優先して違和感のある文章(musicians)が生成されている。TextGAILでは、多様性に関し、同じ単語(band)が繰り返し生成されている。これに対し、第2例では、MLE及びTextGAILよりも、正解文と同様に具体的な情報(of bassists and drummer)を提示できている。
【0133】
〔E〕動作例
次に、一実施形態に係るサーバ10の動作例を説明する。図17は、一実施形態に係るサーバ10の動作例を説明するフローチャートである。
【0134】
図17に例示するように、サーバ10の取得部12は、訓練フェーズにおいて、複数の訓練データ11bを取得し(ステップS1)、メモリ部11に格納する。
【0135】
報酬調整部14は、調整パラメータ11d(例えばα及びβ)を決定する(ステップS2)。調整パラメータ11dの決定手法としては、例えば、上述した第1例又は第2例において説明した手法が挙げられる。
【0136】
報酬調整部14は、決定した調整パラメータ11dを順応モデル4に適用する(ステップS3)。
【0137】
訓練部13は、順応モデル4を利用して、複数の訓練データ11bを用いた機械学習モデル11a(例えばモデル1)の強化学習を実行する(ステップS4)。強化学習において、訓練部13は、評価部3から出力される報酬を順応モデル4に入力し、順応モデル4から出力される順応報酬を生成部2に入力することで、調整パラメータ11dに応じた損失関数による生成部2の訓練を行なう。強化学習が終了すると、処理が終了する。
【0138】
〔F〕ハードウェア構成例
一実施形態に係るサーバ10は、仮想サーバ(VM;Virtual Machine)であってもよいし、物理サーバであってもよい。また、サーバ10の機能は、1台のコンピュータにより実現されてもよいし、2台以上のコンピュータにより実現されてもよい。さらに、サーバ10の機能のうちの少なくとも一部は、クラウド環境により提供されるHW(Hardware)リソース及びNW(Network)リソースを用いて実現されてもよい。
【0139】
図18は、一実施形態に係るサーバ10の機能を実現するコンピュータ20のハードウェア(HW)構成例を示すブロック図である。サーバ10の機能を実現するHWリソースとして、複数のコンピュータが用いられる場合は、各コンピュータが図18に例示するHW構成を備えてよい。
【0140】
図18に示すように、コンピュータ20は、HW構成として、例示的に、プロセッサ20a、グラフィック処理装置20b、メモリ20c、記憶部20d、IF(Interface)部20e、IO(Input / Output)部20f、及び読取部20gを備えてよい。
【0141】
プロセッサ20aは、種々の制御や演算を行なう演算処理装置の一例である。プロセッサ20aは、コンピュータ20内の各ブロックとバス20jで相互に通信可能に接続されてよい。なお、プロセッサ20aは、複数のプロセッサを含むマルチプロセッサであってもよいし、複数のプロセッサコアを有するマルチコアプロセッサであってもよく、或いは、マルチコアプロセッサを複数有する構成であってもよい。
【0142】
プロセッサ20aとしては、例えば、CPU、MPU、APU、DSP、ASIC、FPGA等の集積回路(IC;integrated circuit)が挙げられる。なお、プロセッサ20aとして、これらの集積回路の2以上の組み合わせが用いられてもよい。CPUはCentral Processing Unitの略称であり、MPUはMicro Processing Unitの略称である。APUはAccelerated Processing Unitの略称である。DSPはDigital Signal Processorの略称であり、ASICはApplication Specific ICの略称であり、FPGAはField-Programmable Gate Arrayの略称である。
【0143】
グラフィック処理装置20bは、IO部20fのうちのモニタ等の出力装置に対する画面表示制御を行なう。また、グラフィック処理装置20bは、機械学習モデル11aを利用した機械学習処理及び推論処理を実行するアクセラレータとしての構成を有してよい。グラフィック処理装置20bとしては、種々の演算処理装置、例えば、GPU(Graphics Processing Unit)、APU、DSP、ASIC又はFPGA等の集積回路(IC)が挙げられる。
【0144】
メモリ20cは、種々のデータやプログラム等の情報を格納するHWの一例である。メモリ20cとしては、例えばDRAM(Dynamic Random Access Memory)等の揮発性メモリ、及び、PM(Persistent Memory)等の不揮発性メモリ、の一方又は双方が挙げられる。
【0145】
記憶部20dは、種々のデータやプログラム等の情報を格納するHWの一例である。記憶部20dとしては、HDD(Hard Disk Drive)等の磁気ディスク装置、SSD(Solid State Drive)等の半導体ドライブ装置、不揮発性メモリ等の各種記憶装置が挙げられる。不揮発性メモリとしては、例えば、フラッシュメモリ、SCM(Storage Class Memory)、ROM(Read Only Memory)等が挙げられる。
【0146】
記憶部20dは、コンピュータ20の各種機能の全部若しくは一部を実現するプログラム20hを格納してよい。プログラム20hには、例えば、機械学習モデル11aの機械学習処理(訓練)を実行するための機械学習プログラム,機械学習モデル11aを利用した推論処理を実行するための推論プログラム等が含まれてもよい。
【0147】
例えば、サーバ10のプロセッサ20aは、記憶部20dに格納されたプログラム20hをメモリ20cに展開して実行することにより、サーバ10(例えば図11に示す制御部17)としての機能を実現できる。
【0148】
IF部20eは、サーバ10と他のコンピュータとの間の接続及び通信の制御等を行なう通信IFの一例である。例えば、IF部20eは、イーサネット(登録商標)等のLAN、或いは、FC(Fibre Channel)等の光通信等に準拠したアダプタを含んでよい。当該アダプタは、無線及び有線の一方又は双方の通信方式に対応してよい。
【0149】
例えば、サーバ10は、IF部20e及びネットワークを介して、他のコンピュータ,管理者端末等のそれぞれと相互に通信可能に接続されてよい。なお、プログラム20hは、当該通信IFを介して、ネットワークからコンピュータ20にダウンロードされ、記憶部20dに格納されてもよい。
【0150】
IO部20fは、入力装置、及び、出力装置、の一方又は双方を含んでよい。入力装置としては、例えば、キーボード、マウス、タッチパネル等が挙げられる。出力装置としては、例えば、モニタ、プロジェクタ、プリンタ等の表示装置が挙げられる。また、IO部20fは、入力装置及び出力装置が一体となったタッチパネル等を含んでもよい。出力装置は、グラフィック処理装置20bに接続されてよい。
【0151】
読取部20gは、記録媒体20iに記録されたデータやプログラムの情報を読み出すリーダの一例である。読取部20gは、記録媒体20iを接続可能又は挿入可能な接続端子又は装置を含んでよい。読取部20gとしては、例えば、USB(Universal Serial Bus)等に準拠したアダプタ、記録ディスクへのアクセスを行なうドライブ装置、SDカード等のフラッシュメモリへのアクセスを行なうカードリーダ等が挙げられる。なお、記録媒体20iにはプログラム20hが格納されてもよく、読取部20gが記録媒体20iからプログラム20hを読み出して記憶部20dに格納してもよい。
【0152】
記録媒体20iとしては、例示的に、磁気/光ディスクやフラッシュメモリ等の非一時的なコンピュータ読取可能な記録媒体が挙げられる。磁気/光ディスクとしては、例示的に、フレキシブルディスク、CD(Compact Disc)、DVD(Digital Versatile Disc)、ブルーレイディスク、HVD(Holographic Versatile Disc)等が挙げられる。フラッシュメモリとしては、例示的に、USBメモリやSDカード等の半導体メモリが挙げられる。
【0153】
上述したコンピュータ20のHW構成は例示である。従って、コンピュータ20内でのHWの増減(例えば任意のブロックの追加や削除)、分割、任意の組み合わせでの統合、又は、バスの追加若しくは削除等は適宜行なわれてもよい。
【0154】
〔G〕その他
上述した一実施形態に係る技術は、以下のように変形、変更して実施することができる。
【0155】
例えば、図11に示すサーバ10が備えるソフトウェア構成は、任意の組み合わせで併合してもよく、それぞれ分割してもよい。
【0156】
また、図11に示すサーバ10は、複数の装置がネットワークを介して互いに連携することにより、各処理機能を実現する構成(システム)であってもよい。一例として、メモリ部11はDBサーバ,取得部12及び出力部15はWebサーバ又はアプリケーションサーバ,訓練部13,報酬調整部14及び推論部16はアプリケーションサーバ等であってもよい。この場合、DBサーバ、アプリケーションサーバ及びwebサーバが、ネットワークを介して互いに連携することにより、サーバ10としての各処理機能を実現してもよい。
【0157】
〔H〕付記
以上の実施形態に関し、さらに以下の付記を開示する。
【0158】
(付記1)
訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、
処理をコンピュータに実行させる、プログラム。
【0159】
(付記2)
前記強化学習を実行する処理は、
前記訓練データの確率分布の一部と、前記生成器が出力したデータの確率分布の一部とを、第1パラメータに応じた割合で混合して得られる第1の混合分布と、前記訓練データの確率分布の一部と、前記生成器が出力した確率分布の一部とを、第2パラメータに応じた割合で混合して得られる第2の混合分布との距離を前記報酬関数として利用する、処理を含む、
付記1に記載のプログラム。
【0160】
(付記3)
前記強化学習を実行する処理は、
判別器が出力した報酬を前記第1パラメータと前記第2パラメータとに基づく順応の数理モデルに入力して得られる順応報酬を、前記生成器に入力する、処理を含む、
付記2に記載のプログラム。
【0161】
(付記4)
前記強化学習の進捗に応じて、前記第1パラメータ及び前記第2パラメータの一方又は双方を変化させる、
処理を前記コンピュータに実行させる、付記2又は付記3に記載のプログラム。
【0162】
(付記5)
所定の指標に基づき、前記強化学習の段階ごとに前記第1パラメータ及び前記第2パラメータの一方又は双方を決定する、
処理を前記コンピュータに実行させる、付記2又は付記3に記載のプログラム。
【0163】
(付記6)
訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、
処理をコンピュータが実行する、方法。
【0164】
(付記7)
前記強化学習を実行する処理は、
前記訓練データの確率分布の一部と、前記生成器が出力したデータの確率分布の一部とを、第1パラメータに応じた割合で混合して得られる第1の混合分布と、前記訓練データの確率分布の一部と、前記生成器が出力した確率分布の一部とを、第2パラメータに応じた割合で混合して得られる第2の混合分布との距離を前記報酬関数として利用する、処理を含む、
付記6に記載の方法。
【0165】
(付記8)
前記強化学習を実行する処理は、
判別器が出力した報酬を前記第1パラメータと前記第2パラメータとに基づく順応の数理モデルに入力して得られる順応報酬を、前記生成器に入力する、処理を含む、
付記7に記載の方法。
【0166】
(付記9)
前記強化学習の進捗に応じて、前記第1パラメータ及び前記第2パラメータの一方又は双方を変化させる、
処理を前記コンピュータが実行する、付記7又は付記8に記載の方法。
【0167】
(付記10)
所定の指標に基づき、前記強化学習の段階ごとに前記第1パラメータ及び前記第2パラメータの一方又は双方を決定する、
処理を前記コンピュータが実行する、付記7又は付記8に記載の方法。
【0168】
(付記11)
訓練データの確率分布の一部と、生成器が出力したデータの確率分布の一部とを混合して得られるそれぞれの確率分布間の距離を報酬関数として、機械学習モデルの強化学習を実行する、
制御部を備える、情報処理装置。
【0169】
(付記12)
前記制御部は、前記強化学習を実行する処理において、
前記訓練データの確率分布の一部と、前記生成器が出力したデータの確率分布の一部とを、第1パラメータに応じた割合で混合して得られる第1の混合分布と、前記訓練データの確率分布の一部と、前記生成器が出力した確率分布の一部とを、第2パラメータに応じた割合で混合して得られる第2の混合分布との距離を前記報酬関数として利用する、
付記11に記載の情報処理装置。
【0170】
(付記13)
前記制御部は、前記強化学習を実行する処理において、
判別器が出力した報酬を前記第1パラメータと前記第2パラメータとに基づく順応の数理モデルに入力して得られる順応報酬を、前記生成器に入力する、
付記12に記載の情報処理装置。
【0171】
(付記14)
前記制御部は、前記強化学習の進捗に応じて、前記第1パラメータ及び前記第2パラメータの一方又は双方を変化させる、
付記12又は付記13に記載の情報処理装置。
【0172】
(付記15)
前記制御部は、所定の指標に基づき、前記強化学習の段階ごとに前記第1パラメータ及び前記第2パラメータの一方又は双方を決定する、
付記12又は付記13に記載の情報処理装置。
【符号の説明】
【0173】
1 モデル
2 生成部
3 評価部
4 順応モデル
10 サーバ
11 メモリ部
11a 機械学習モデル
11b 訓練データ
11c 生成データ
11d 調整パラメータ
11e 入力データ
12 取得部
13 訓練部
14 報酬調整部
15 出力部
16 推論部
17 制御部
20 コンピュータ
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18