【文献】
岡本昌也,外1名,距離情報を手がかりとした画像認識における転移学習手法 の改良,SSII2014 第20回画像センシングシンポジウム 講演論文集,日本,画像センシング技術研究会,2014年 6月11日,108−1〜108−5頁
(58)【調査した分野】(Int.Cl.,DB名)
第1コンテンツが入力されると当該第1コンテンツが有する特徴を出力する第1部分と、当該第1コンテンツとは種別が異なる第2コンテンツが入力されると当該第2コンテンツが有する特徴を出力する第2部分と、前記第1部分の出力と前記第2部分の出力とに基づいて、前記第2コンテンツと同じ種別のコンテンツを出力するための特徴を出力する第3部分とを有し、前記第1コンテンツが前記第1部分に入力され、前記第2コンテンツが前記第2部分に入力された際に、当該第2コンテンツと同じ内容のコンテンツを出力するように、バックプロパゲーションによる深層学習を行うことで、当該第1コンテンツと当該第2コンテンツとの組が有する所定の関係性の深層学習が行われた学習済みニューラルネットワークの前記第1部分と、
前記第2コンテンツと類似する種別の第3コンテンツが入力されると当該第3コンテンツが有する特徴を出力する第4部分と、
前記第1部分の出力と前記第4部分の出力とに基づいて、前記第3コンテンツと同じ種別のコンテンツを出力するための特徴を出力する第5部分と
を有するニューラルネットワークであって、
前記第1コンテンツが前記第1部分に入力され、前記第3コンテンツが前記第4部分に入力された際に、当該第3コンテンツと同じ内容のコンテンツを出力するようにバックプロパゲーションによる深層学習を行うことで、当該第1コンテンツと当該第3コンテンツとの組が有する前記所定の関係性の深層学習が行われ、
前記第1コンテンツと同じ種別の入力コンテンツのみが前記第1部分に入力された際に、前記第3コンテンツと同じ種別のコンテンツであって、当該入力コンテンツと前記所定の関係性を有する出力コンテンツを出力するニューラルネットワークとしてコンピュータを機能させる
ためのモデル。
前記モデルは、非言語に関する第1コンテンツと言語に関する第2コンテンツとの組が有する前記所定の関係性を深層学習した学習済みニューラルネットワークの前記第1部分を有し、
前記第1コンテンツと、前記第2コンテンツとは異なる言語に関する第3コンテンツとの組が有する前記所定の関係性の深層学習が行われたニューラルネットワークとしてコンピュータを機能させる
ことを特徴とする請求項1に記載のモデル。
前記モデルは、静止画像または動画像に関する第1コンテンツと、文章に関する第2コンテンツとの組が有する前記所定の関係性を深層学習した学習済みニューラルネットワークの前記第1部分を有し、前記第1コンテンツと、当該第1コンテンツの説明を含む文章であって、前記第2コンテンツとは異なる言語の文章を含む第3コンテンツとの組が有する前記所定の関係性の深層学習が行われたニューラルネットワークとしてコンピュータを機能させる
ことを特徴とする請求項2に記載のモデル。
前記モデルは、前記第1コンテンツと、所定の言語による当該第1コンテンツのキャプションである第2コンテンツとの組が有する前記所定の関係性を深層学習した学習済みニューラルネットワークの前記第1部分を有し、前記第1コンテンツと、前記所定の言語とは異なる言語による当該第1コンテンツのキャプションである第3コンテンツとの組が有する前記所定の関係性の深層学習が行われたニューラルネットワークとしてコンピュータを機能させる
ことを特徴とする請求項3に記載のモデル。
【発明を実施するための形態】
【0009】
以下に、本願に係る学習装置、学習方法
、学習プログラム
およびモデルを実施するための形態(以下、「実施形態」と記載する。)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る学習装置、学習方法
、学習プログラム
およびモデルが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略される。
【0010】
〔1−1.情報提供装置の一例〕
まず、
図1を用いて、学習処理の一例である情報提供装置が実行する学習処理の一例について説明する。
図1は、実施形態に係る情報提供装置が実行する学習処理の一例を示す図である。
図1では、情報提供装置10は、インターネット等の所定のネットワークNを介して、所定のクライアントが使用するデータサーバ50および端末装置100と通信可能である。
【0011】
情報提供装置10は、後述する学習処理を実行する情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。また、データサーバ50は、情報提供装置10が後述する学習処理を実行する際に用いる学習データを管理する情報処理装置であり、例えば、サーバ装置やクラウドシステム等により実現される。
【0012】
端末装置100は、スマートフォンやタブレット等のスマートデバイスであり、3G(3rd Generation)やLTE(Long Term Evolution)等の無線通信網を介して任意のサーバ装置と通信を行うことができる携帯端末装置である。なお、端末装置100は、スマートデバイスのみならず、デスクトップPC(Personal Computer)やノートPC等の情報処理装置であってもよい。
【0013】
〔1−2.学習データについて〕
ここで、データサーバ50が管理する学習データについて説明する。データサーバ50が管理する学習データは、種別が異なる複数のデータの組であり、例えば、画像や動画像等を含む第1コンテンツと、英語や日本語等の任意の言語で記述された文章を含む第2コンテンツとを組み合わせたデータである。より具体的な例を説明すると、学習データは、任意の撮像対象が撮影された画像と、画像がどのような画像であるか、画像中にどのような撮像対象が撮影されているか、どのような状態を撮影した画像であるか等といった画像の内容を説明する文章、すなわち、画像のキャプションとを対応付けたデータである。
【0014】
このような画像とキャプションとを対応付けた学習データは、任意の機械学習に用いるため、ボランティア等といった任意の利用者によって作成および登録がなされている。また、このような学習データには、ある画像に対して、様々な観点から作成された複数のキャプションが対応付けられている場合があり、日本語、英語、中国語等、様々な言語で記載されたキャプションが対応付けられている場合もある。
【0015】
なお、以下の説明では、学習データとして画像と様々な言語で記載されたキャプションとを用いる例について記載するが、実施形態は、これに限定されるものではない。例えば、学習データは、音楽や映画等のコンテンツと、対応付けられたコンテンツに対する利用者のレビューとを対応付けられたデータであってもよく、画像や動画像等のコンテンツと、対応付けられたコンテンツにマッチする音楽とを対応付けたデータであってもよい。すなわち、後述する学習処理は、第1のコンテンツと、第1のコンテンツとは異なる種別の第2コンテンツとを対応付けた学習データを用いるのであれば、任意のコンテンツを含む学習データを採用することが出来る。
【0016】
〔1−3.学習処理の一例〕
ここで、情報提供装置10は、データサーバ50が管理する学習データを用いて、学習データに含まれる画像とキャプションとの関連性を深層学習させたモデルを生成する学習処理を実行する。すなわち、情報提供装置10は、ニューラルネットワーク等、複数のノードを含む層を複数積み重ねたモデルをあらかじめ生成し、生成したモデルに学習モデルに含まれるコンテンツ同士が有する関係性(例えば、共起性等)を学習させる。このような深層学習を行ったモデルは、例えば、画像を入力した際に、入力された画像を説明するキャプションを出力したり、キャプションを入力した際に、キャプションが示す画像と類似する画像を検索または生成して出力したりすることが出来る。
【0017】
ここで、深層学習においては、学習データが多ければ多い程、モデルによる学習結果の精度が向上する。しかしながら、学習データに含まれるコンテンツの種別によっては、学習データを十分に確保できない場合がある。例えば、画像と英語のキャプション(以下、「英文キャプション」と記載する。)とを対応付けた学習データについては、モデルによる学習結果の精度を十分に確保できる数が存在する。しかしながら、画像と日本語のキャプション(以下、「日文キャプション」と記載する。)とを対応付けた学習データの数は、画像と英文キャプションとを対応付けた学習データよりも少ない。このため、情報提供装置10は、画像と日文キャプションとの関係性を精度よく学習させることが出来ない場合がある。
【0018】
そこで、情報提供装置10は、以下の学習処理を実行する。まず、情報提供装置10は、第1コンテンツと第1コンテンツとは種別が異なる第2コンテンツとの組、すなわち、学習データが有する関係性を深層学習した第1モデルの一部を用いて、新たな第2モデルを生成する。そして、情報提供装置10は、生成した第2モデルに、第1コンテンツと、第2コンテンツとは異なる種別の第3コンテンツとの組が有する関係性を深層学習させる。
【0019】
〔1−4.学習処理の具体例〕
以下、
図1を用いて、情報提供装置10が実行する学習処理の一例を説明する。まず。、情報提供装置10は、データサーバ50から、学習データを収集する(ステップS1)。より具体的には、情報提供装置10は、画像と英文キャプションとを対応付けた学習データ(以下、「第1学習データ」と記載する。)、および、画像と日文キャプションとを対応付けた学習データ(以下、「第2学習データ」と記載する。)を取得する。続いて、情報提供装置10は、第1学習データを用いて、画像と英文キャプションとの関係性を第1モデルに深層学習させる(ステップS2)。以下、情報提供装置10が第1モデルの深層学習を行う処理の一例を説明する。
【0020】
〔1−4−1.学習モデルの一例〕
まず、情報提供装置10が生成する第1モデルM10および第2モデルM20の構成について説明する。例えば、情報提供装置10は、
図1に示すような構成を有する第1モデルM10を生成する。具体的には、情報提供装置10は、画像学習モデルL11、画像特徴入力層L12、言語入力層L13、特徴学習モデルL14、および言語出力層L15(以下、「各層L11〜L15」と記載する場合がある。)を有する第1モデルM10を生成する。
【0021】
画像学習モデルL11は、画像D11が入力されると、画像D11に撮像された物体が何であるかや、撮像された物体の数、画像D11の色彩や雰囲気等といった画像D11の特徴を抽出するモデルであり、例えば、DNN(Deep Neural Network)により実現される。より具体的な例を示すと、画像学習モデルL11は、VGGNet(Visual Geometry Group Network)と呼ばれる画像分類のための畳み込みネットワークを用いたものである。このような画像学習モデルL11は、画像が入力されると、入力された画像をVGGNetに入力し、VGGNetが有する出力層ではなく、所定の中間層の出力を画像特徴入力層L12に出力する。すなわち、画像学習モデルL11は、画像D11に含まれる撮像対象の認識結果ではなく、画像D11の特徴を示す出力を画像特徴入力層L12に出力する。
【0022】
画像特徴入力層L12は、画像学習モデルL11の出力を特徴学習モデルL14に入力するための変換を行う。例えば、画像特徴入力層L12は、画像学習モデルL11の出力から、画像学習モデルL11がどのような特徴を抽出したかを示す信号を特徴学習モデルL14に出力する。なお、画像特徴入力層L12は、例えば、画像学習モデルL11と特徴学習モデルL14とを接続する単一の層であってもよく、複数の層であってもよい。
【0023】
言語入力層L13は、英文キャプションD12に含まれる言語を特徴学習モデルL14に入力するための変換を行う。例えば、言語入力層L13は、英文キャプションD12の入力を受付けると、入力された英文キャプションD12にどのような単語がどのような順番で含まれているかを示す信号に変換し、変換後の信号を特徴学習モデルL14に出力する。例えば、言語入力層L13は、英文キャプションD12に含まれる単語を示す信号を、各単語が英文キャプションD12に含まれる順番で特徴学習モデルL14に出力する。すなわち、言語入力層L13は、英文キャプションD12の入力を受付けると、受付けた英文キャプションD12の内容を特徴学習モデルL14に出力する。
【0024】
特徴学習モデルL14は、画像D11と英文キャプションD12との関係性、すなわち、第1学習データD10に含まれるコンテンツの組の関係性を学習するモデルであり、例えばLSTM(Long Short-Term Memory)等といったリカレントニューラルネットワークにより実現される。例えば、特徴学習モデルL14は、画像特徴入力層L12が出力した信号、すなわち、画像D11の特徴を示す信号の入力を受付ける。続いて、特徴学習モデルL14は、言語入力層L13が出力した信号の入力を順番に受け付ける。すなわち、特徴学習モデルL14は、英文キャプションD12に含まれる各単語を示す信号の入力を、各単語が英文キャプションD12に出現する順序で受付ける。そして、特徴学習モデルL14は、入力された画像D11と英文キャプションD12との内容に応じた信号を言語出力層L15に出力する。より具体的には、特徴学習モデルL14は、出力される文章に含まれる単語を示す信号を、各単語が出力される文章に含まれる順序で出力する。
【0025】
言語出力層L15は、特徴学習モデルL14が出力した信号に基づいて、所定の文章を出力するモデルであり、例えば、DNNにより実現される。例えば、言語出力層L15は、特徴学習モデルL14が順に出力した信号から、出力される文章を生成して出力する。
【0026】
〔1−4−2.第1モデルの学習例〕
ここで、このような構成を有する第1モデルM10は、例えば、画像D11と英文キャプションD12との入力を受付けると、第1コンテンツである画像D11から抽出した特徴と、第2コンテンツである英文キャプションD12の内容とに基づいて、英文キャプションD13を出力する。そこで、情報提供装置10は、英文キャプションD13の内容が、英文キャプションD12の内容と近づくように、第1モデルM10の全体を最適化する学習処理を実行する。この結果、情報提供装置10は、第1モデルM10に対し、第1学習データD10が有する関係性を深層学習させることが出来る。
【0027】
例えば、情報提供装置10は、バックプロパゲーション等といった深層学習に用いられる最適化の技術を用いて、第1モデルM10に含まれるノード間の接続係数を、出力側のノードから入力側のノードへと順に修正することで、第1モデルM10全体の最適化を行う。なお、第1モデルM10の最適化は、バックプロパゲーションに限定されるものではない。例えば、情報提供装置10は、特徴学習モデルL14がSVM(Support Vector Machine)により実現される場合には、異なる最適化の手法を用いて、第1モデルM10全体の最適化を行えばよい。
【0028】
〔1−4−3.第2モデルの生成例〕
ここで、第1学習データD10が有する関係性を学習するように第1モデルM10全体の最適化が行われた場合には、画像学習モデルL11や画像特徴入力層L12は、第1モデルM10が画像D11と英文キャプションD12との関係性を精度よく学習できるように、画像D11から特徴を抽出しようとすると考えられる。例えば、画像学習モデルL11や画像特徴入力層L12には、画像D11に含まれる撮像対象と英文キャプションD12に含まれる単語との対応関係の特徴を特徴学習モデルL14が精度よく学習できるようなバイアスが形成されるものと考えられる。
【0029】
より具体的には、
図1に示す構造の第1モデルM10においては、画像学習モデルL11は画像特徴入力層L12に接続され、画像特徴入力層L12は、特徴学習モデルL14に接続される。このような構成を有する第1モデルM10の全体を最適化した場合、画像特徴入力層L12および画像学習モデルL11には、特徴学習モデルL14によって深層学習された内容、すなわち、画像D11の被写体と、英文キャプションD12に含まれる単語の意味との関係性がある程度反映されると考えられる。
【0030】
一方、英語と日本語とでは、文章の意味が同じであっても、文法(すなわち、単語の出現順序)が異なる。このため、情報提供装置10は、言語入力層L13、特徴学習モデルL14、言語出力層L15をそのまま使用しても、画像と日文キャプションとの関係を上手く抽出できるとは限らない。
【0031】
そこで、情報提供装置10は、第1モデルM10の一部を用いて、第2モデルM20を生成し、第2学習データD20に含まれる画像D11と日文キャプションD22との関係性を学習させる。より具体的には、情報提供装置10は、第1モデルM10のうち、画像学習モデルL11と画像特徴入力層L12とを含む画像学習部分を抽出し、抽出した画像学習部分を含む新たな第2モデルM20を生成する(ステップS3)。
【0032】
すなわち、第1モデルM10は、第1コンテンツである画像D11の特徴を抽出する画像学習部分と、第2コンテンツである英文キャプションD12の入力を受付ける言語入力層L13と、画像学習部分および言語入力層L13の出力に基づいて、英文キャプションD12と同じ内容の英文キャプションD13を出力する特徴学習モデルL14および言語出力層L15を有する。そして、情報提供装置10は、第1モデルM10のうち、少なくとも画像学習部分を用いて、新たな第2モデルM20を生成する。
【0033】
より具体的には、情報提供装置10は、第1モデルM10の画像学習部分に、新たな言語入力層L23、新たな特徴学習モデルL24、および新たな言語出力層L25を付加することで、第1モデルM10と同様の構成を有する第2モデルM20を生成する。すなわち、情報提供装置10は、第1モデルM10の一部に対して、新たな部分の追加又は削除を行った第2モデルM20を生成する。
【0034】
そして、情報提供装置10は、画像と日文キャプションとの関係性を第2モデルM20に深層学習させる(ステップS4)。例えば、情報提供装置10は、第2学習データD20が有する画像D11と日文キャプションD22とを第2モデルM20に入力し、第2モデルM20が出力する日文キャプションD23が日文キャプションD22と同じになるように、第2モデルM20の全体を最適化する。
【0035】
ここで、第2モデルM20の生成に用いた第1モデルM10の画像学習部分には、特徴学習モデルL14の学習内容、すなわち、画像D11の被写体と英文キャプションD12に含まれる単語の意味との関係性がある程度反映されている。このため、このような画像学習部分を含む第2モデルM20を用いて、第2学習データD20が有する画像D11と日文キャプションD22との関係性を学習した場合、第2モデルM20は、画像D11に含まれる被写体と日文キャプションD22に含まれる単語の意味との対応をより早く(精度よく)学習すると考えられる。このため、情報提供装置10は、第2学習データD20を十分な数だけ確保できない場合であっても、第2モデルM20に画像D11と日文キャプションD22との関係性を精度よく学習させることが出来る。
【0036】
〔1−5.提供処理の一例〕
ここで、情報提供装置10が学習した第2モデルM20は、画像D11と日文キャプションD22との共起性を学習しているため、例えば、他の画像のみが入力された際に、入力された画像と共起する日文キャプション、すなわち、入力された画像を示す日文キャプションを自動生成することが出来る。そこで、情報提供装置10は、第2モデルM20を用いて、日文キャプションを自動生成して提供するサービスを実現してもよい。
【0037】
例えば、情報提供装置10は、利用者U01が使用する端末装置100から処理対象となる画像を受付ける(ステップS5)。このような場合、情報提供装置10は、端末装置100から受付けた画像を第2モデルM20に入力し、第2モデルが出力した日文キャプション、すなわち、端末装置100から受付けた画像を示す日文キャプションD23を端末装置100へと出力する(ステップS6)。この結果、情報提供装置10は、利用者U01から受け取った画像に対して日文キャプションD23を自動的に生成して出力するサービスを提供することが出来る。
【0038】
〔1−6.第1モデルの生成について〕
上述した例では、情報提供装置10は、データサーバ50から収集した第1学習データD10の一部を用いて、第2モデルM20を生成した。しかしながら、実施形態は、これに限定されるものではない。例えば、情報提供装置10は、第1学習データD10に含まれる画像D11と英文キャプションD12との関係性を学習済みの第1モデルM10を任意のサーバから取得し、取得した第1モデルM10の一部を用いて、第2モデルM20を生成してもよい。
【0039】
また、情報提供装置10は、第1モデルM10のうち、画像学習モデルL11のみを用いて第2モデルM20を生成してもよい。また、情報提供装置10は、画像特徴入力層L12が複数の層を有する場合、全ての層を用いて第2モデルM20を生成してもよく、例えば、画像学習モデルL11からの出力を受付ける入力層から所定の数の層、または、特徴学習モデルL24へ信号を出力する出力層から所定の数の層を用いて、第2モデルM20を生成してもよい。
【0040】
また、第1モデルM10および第2モデルM20(以下、「各モデル」と記載する場合がある。)が有する構造は、
図1に示す構造に限定されるものではない。すなわち、情報提供装置10は、第1学習データD10の関係性や、第2学習データD20の関係性を深層学習することが出来るのであれば、任意の構造を有するモデルの生成を行ってもよい。例えば、情報提供装置10は、第1モデルM10として、全体として1つのDNNを生成し、第1学習データD10の関係性を学習する。そして、情報提供装置10は、第1モデルM10のうち、画像D11の入力を受付けるノードを基準とした所定の範囲のノードを画像学習部分として抽出し、抽出した画像学習部分を含む第2モデルM20を新たに生成してもよい。
【0041】
〔1−7.学習データについて〕
ここで、上述した説明では、情報提供装置10は、画像と英文または日文のキャプション(文章)との関係性を各モデルに深層学習させた。しかしながら、実施形態は、これに限定されるものではない。すなわち、情報提供装置10は、任意の種別のコンテンツを含む学習データについて上述した学習処理を実行して良い。より具体的には、情報提供装置10は、任意の種別と第1コンテンツと、第1コンテンツとは異なる第2コンテンツとの組である第1学習データD10の関係性を第1モデルM10に深層学習させ、第1モデルM10の一部から第2モデルM20を生成し、第1コンテンツと第2コンテンツとは種別が異なる(例えば、言語が異なる)第3コンテンツとの組である第2学習データD20の関係性を第2モデルM20に学習させるのであれば、任意の種別のコンテンツを適用可能である。
【0042】
例えば、情報提供装置10は、非言語に関する第1コンテンツと言語に関する第2コンテンツとの組が有する関係性を第1モデルM10に深層学習させ、第1モデルM10の一部を用いて、新たな第2モデルM20を生成し、第1コンテンツと、第2コンテンツとは異なる言語に関する第3コンテンツとの組が有する関係性を第2モデルM20に深層学習させてもよい。また、このような第2コンテンツや第3コンテンツは、第1コンテンツが画像や動画像である場合は、第1コンテンツの説明を含む文章、すなわち、キャプションであってもよい。
【0043】
〔2.情報提供装置の構成〕
以下、上記した学習処理を実現する情報提供装置10が有する機能構成の一例について説明する。
図2は、実施形態に係る情報提供装置の構成例を示す図である。
図2に示すように、情報提供装置10は、通信部20、記憶部30、および制御部40を有する。
【0044】
通信部20は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部20は、ネットワークNと有線または無線で接続され、端末装置100やデータサーバ50との間で情報の送受信を行う。
【0045】
記憶部30は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。また、記憶部30は、第1学習データデータベース31、第2学習データデータベース32、第1モデルデータベース33、および第2モデルデータベース34を記憶する。
【0046】
第1学習データデータベース31には、第1学習データD10が登録される。例えば、
図3は、実施形態に係る第1学習データデータベースに登録される情報の一例を示す図である。
図3に示すように、第1学習データデータベース31には、「画像」および「英文キャプション」といった項目を有する情報、すなわち、第1学習データD10が登録される。なお、
図3に示す例では、第1学習データD10として「画像#1」や「英文#1」といった概念的な値を記載したが、実際には、各種の画像データや、英語で記載された文章等が登録されることとなる。
【0047】
例えば、
図3に示す例では、画像「画像#1」に英文キャプション「英文#1」と英文キャプション「英文#2」とが対応付けられている。このような情報は、画像「画像#1」のデータとともに、英語による画像「画像#1」のキャプションである、英文キャプション「英文#1」と英文キャプション「英文#2」とが対応付けて登録されている旨を示す。
【0048】
第2学習データデータベース32には、第2学習データD20が登録される。例えば、
図4は、実施形態に係る第2学習データデータベースに登録される情報の一例を示す図である。
図4に示すように、第2学習データデータベース32には、「画像」および「日文キャプション」といった項目を有する情報、すなわち、第2学習データD20が登録される。なお、
図4に示す例では、第2学習データD20として「画像#1」や「日文#1」といった概念的な値を記載したが、実際には、各種の画像データや、日本語で記載された文章等が登録されることとなる。
【0049】
例えば、
図4に示す例では、画像「画像#1」に日文キャプション「日文#1」と日文キャプション「日文#2」とが対応付けられている。このような情報は、画像「画像#1」のデータとともに、日本語による画像「画像#1」のキャプションである、日文キャプション「日文#1」と日文キャプション「日文#2」とが対応付けて登録されている旨を示す。
【0050】
図2に戻り、説明を続ける。第1モデルデータベース33には、第1学習データD10の関係性を深層学習させた第1モデルM10のデータが登録される。例えば、第1モデルデータベース33には、第1モデルM10の各層L11〜L15に配置されたノードを示す情報や、ノード間の接続係数を示す情報が登録される。
【0051】
第2モデルデータベース34には、第2学習データD20の関係性を深層学習させた第2モデルM20のデータが登録される。例えば、第2モデルデータベース34には、第2モデルM20に含まれる画像学習モデルL11、画像特徴入力層L12、言語入力層L23、特徴学習モデルL24、および言語出力層L25に配置されたノードを示す情報や、ノード間の接続係数を示す情報が登録される。
【0052】
制御部40は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等のプロセッサによって、情報提供装置10内部の記憶装置に記憶されている各種プログラムがRAM等を作業領域として実行されることにより実現される。また、制御部40は、コントローラ(controller)であり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現されてもよい。
【0053】
図2に示すように、制御部40は、収集部41、第1モデル学習部42、第2モデル生成部43、第2モデル学習部44、および情報提供部45を有する。収集部41は、学習データD10、D20の収集を行う。例えば、収集部41は、データサーバ50から、第1学習データD10を収集し、収集した第1学習データD10を第1学習データデータベース31に登録する。また、収集部41は、データサーバ50から、第2学習データD20を収集し、収集した第2学習データD20を第2学習データデータベース32に登録する。
【0054】
第1モデル学習部42は、第1学習データデータベース31に登録された第1学習データD10を用いて、第1モデルM10の深層学習を実行する。より具体的には、第1モデル学習部42は、
図1に示した構造を有する第1モデルM10を生成し、生成した第1モデルM10に第1学習データD10を入力する。そして、第1モデル学習部42は、第1モデルM10が出力する英文キャプションD13と、入力された第1学習データD10に含まれる英文キャプションD12とが同じ内容になるように、第1モデルM10の全体を最適化する。なお、第1モデル学習部42は、第1学習データデータベース31に含まれる複数の第1学習データD10について、上述した最適化を実行し、全体の最適化がなされた第1モデルM10を第1モデルデータベース33に登録する。なお、第1モデル学習部42が第1モデルM10の最適化に用いる処理については、深層学習に関する任意の手法が採用可能であるものとする。
【0055】
第2モデル生成部43は、第1コンテンツと第1コンテンツとは種別が異なる第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。具体的には、第2モデル生成部43は、第1モデルM10として、画像等の非言語に関する第1コンテンツと、言語に関する第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。より詳細には、第2モデル生成部43は、静止画像や動画像に関する第1コンテンツと、第1コンテンツの説明を含む文章、すなわち、英文キャプションに関する第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。
【0056】
例えば、第2モデル生成部43は、第1モデルM10のうち、入力された画像等の第1コンテンツの特徴を抽出する画像学習モデルL11や、画像学習モデルL11の出力を特徴学習モデルL14に入力する画像特徴入力層L12を含む第2モデルM20を生成する。ここで、第2モデル生成部43は、少なくとも、画像学習モデルL11を含む第2モデルM20を新たに生成すればよい。また、例えば、第2モデル生成部43は、第1モデルM10のうち、画像学習モデルL11や画像特徴入力層L12の部分以外の部分を削除し、新たな言語入力層L23、新たな特徴学習モデルL24、新たな言語出力層L25を追加した第2モデルM20を生成してもよい。そして、第2モデル生成部43は、生成した第2モデルを第2モデルデータベース34に登録する。
【0057】
第2モデル学習部44は、第2モデルM20に、第1コンテンツと、第2コンテンツとは異なる種別の第3コンテンツとの組が有する関係性を深層学習させる。例えば、第2モデル学習部44は、第2モデルデータベース34から第2モデルを読み出す。そして、第2モデル学習部44は、第2学習データデータベース32に登録された第2学習データD20を用いて、第2モデルの深層学習を行う。具体的には、第2モデル学習部44は、第2モデルM20に、画像等の第1コンテンツと、第2コンテンツとは異なる言語に関するコンテンツであって、対応付けられた画像等の第1コンテンツを説明するコンテンツ、すなわち、第1コンテンツのキャプションである第3コンテンツとの組が有する関係性を深層学習させる。例えば、第2モデル学習部44は、第1学習データD10に含まれる英文キャプションD12とは異なる言語に関する日文キャプションD22と、画像D11との関係性を第2モデルM20に学習させる。
【0058】
また、第2モデル学習部44は、第2学習データD20を第2モデルM20に入力した際に、第2モデルM20が出力する文章、すなわち、日文キャプションD23が、第2学習データD20に含まれる日文キャプションD22と同じになるように、第2モデルM20の全体を最適化する。例えば、第2モデル学習部44は、画像D11を画像学習モデルL11に入力し、日文キャプションD22を言語入力層L23に入力するとともに、言語出力層L25が出力した日文キャプションD23が日文キャプションD22と同じになるように、バックプロパゲーション等の最適化を行う。そして、第2モデル学習部44は、深層学習を行った第2モデルM20を第2モデルデータベース34に登録する。
【0059】
情報提供部45は、第2モデル学習部44によって深層学習が行われた第2モデルM20を用いて、各種の情報提供処理を実行する。例えば、情報提供部45は、端末装置100から画像を受付けると、受付けた画像を第2モデルM20に入力し、第2モデルM20が出力した日文キャプションD23を、受付けた画像に対する日本語のキャプションとして、端末装置100に送信する。
【0060】
〔3.各モデルの学習について〕
次に、
図5、
図6を用いて、情報提供装置10が第1モデルM10および第2モデルM20の深層学習を行う処理の具体例について説明する。まず、
図5を用いて、第1モデルM10の深層学習を行う処理の具体例について説明する。
図5は、実施形態に係る情報提供装置が第1モデルの深層学習を行う処理の一例を説明する図である。
【0061】
例えば、
図5に示す例では、画像D11には、2本の木と1頭の象とが撮像されている。また、
図5に示す例では、英文キャプションD12には、画像D11の説明として、「an elephant is・・・」といった英語の文章が含まれている。このような画像D11および英文キャプションD12を含む第1学習データD10の関係性を学習する場合、情報提供装置10は、
図5に示す深層学習を実行する。まず情報提供装置10は、画像D11を画像学習モデルL11であるVGGNetに入力する。このような場合、VGGNetは、画像D11の特徴を抽出し、抽出した特徴を示す信号を画像特徴入力層L12であるWimに出力する。
【0062】
なお、VGGNetは、画像D11に含まれる撮像対象を示す信号を出力するモデルであるが、情報提供装置10は、VGGNetの中間層の出力をWimへと出力することで、画像D11の特徴を示す信号をWimへと出力することが出来る。このような場合、Wimは、VGGNetから入力された信号を変換し、特徴学習モデルL14であるLSTMに入力する。より具体的には、Wimは、画像D11から抽出された特徴がどのような特徴であるかを示す信号をLSTMへと出力する。
【0063】
一方、情報提供装置10は、英文キャプションD12に含まれる英語の各単語を、言語入力層L13であるWeへと入力する。このような場合、Weは、入力された単語を示す信号を、英文キャプションD12中に各単語が出現する順に、LSTMへと入力する。この結果、LSTMは、画像D11の特徴を学習した後に、英文キャプションD12に含まれる単語を各単語が出現する順に学習することとなる。
【0064】
このような場合、LSTMは、学習内容に応じた複数の出力信号を言語出力層L15であるWdへと出力することとなる。ここで、LSTMから出力される出力信号の内容は、入力された画像D11の内容、英文キャプションD12に含まれる単語、および単語が出現する順序によって変化する。そして、Wdは、LSTMから順に出力された出力信号を順に単語へと変換することで、出力文章である英文キャプションD13を出力する。例えば、Wdは、「an」、「elepfhant」、「is」といった英単語を順に出力する。
【0065】
ここで、情報提供装置10は、出力文章である英文キャプションD13に含まれる単語と、各単語の出現順序が、英文キャプションD12に含まれる単語と、各単語の出現順序とが同じになるように、Wd、LSTM、Wim、We、およびVGGNetをバックプロパゲーションにより最適化する。この結果、VGGNetおよびWimには、LSTMが学習した画像D11と英文キャプションD12との関係性の特徴がある程度反映されることとなる。例えば、
図5に示す例では、画像D11に撮像された「象」と、単語「elephant」の意味との対応関係がある程度反映されることとなる。
【0066】
続いて、情報提供装置10は、
図6に示すように、第2モデルM20の深層学習を行う。
図6は、実施形態に係る情報提供装置が第2モデルの深層学習を行う処理の一例を説明する図である。なお、
図6に示す例では、日文キャプションD22には、画像D11の説明として、「一頭の象・・・」といった日本語の文章が含まれているものとする。
【0067】
例えば、情報提供装置10は、画像学習モデルL11を画像学習モデルL21とし、画像特徴入力層L12を画像特徴入力層L22として有し、第1モデルM10と同様の構成を有する第2モデルM20を生成する。そして、情報提供装置10は、画像D11をVGGNetに入力するとともに、日文キャプションD22に含まれる各単語を順にWeへと入力する。このような場合、LSTMは、画像D11と日文キャプションD22との関係性を学習し学習結果をWdへと出力する。そして、Wdは、LSTMの学習結果を日本語の単語に変換して順に出力する。この結果、第2モデルM20は、出力文章として、日文キャプションD23を出力する。
【0068】
ここで、情報提供装置10は、出力文章である日文キャプションD23に含まれる単語と、各単語の出現順序が、日文キャプションD22に含まれる単語と、各単語の出現順序とが同じになるように、Wd、LSTM、Wim、We、およびVGGNetをバックプロパゲーションにより最適化する。しかしながら、
図6に示すVGGNetとWimには、画像D11に撮像された「象」と、単語「elephant」の意味との対応関係がある程度反映されることとなる。ここで、単語「elephant」の意味は、単語「象」の意味と同一であると予測される。このため、多くの第2学習データD20を要せずとも、第2モデルM20は、画像D11に撮像された「象」と、単語「象」との対応を学習することが出来ると考えられる。
【0069】
また、このように、第1モデルM10の一部を用いて第2モデルM20を生成した場合、第1学習データD10には十分な数が含まれているが、第2学習データD20にはあまり含まれていない関係性を学習することが出来る。例えば、
図7は、実施形態に係る情報提供装置による学習処理の結果の一例を示す図である。
【0070】
図7に示す例には、画像D11に、「An elephant is・・・」等といった英文キャプションD12や、「Two Trees are・・・」等といった英文キャプションD13が対応付けられた第1学習データD10が存在するものとする。また、
図7に示す例では、画像D11に、「一頭の象が・・・」等といった日文キャプションD23が対応付けられた第2学習データD20が存在するものとする。
【0071】
このような第1学習データD10を用いて、第1モデルM10を学習した場合、第1モデルM10に含まれる画像学習部分には画像D11に含まれる象と単語「elephant」の意味との対応のみならず、画像D11に含まれる複数の木と単語「Trees」の意味との対応がある程度反映されることとなる。このため、第1モデルM10の画像学習部分を有する第2モデルM20では、2本の木が撮像された写真である画像D11に対して英文の「Two Trees」が示す概念がマッピングされているので、「2本の木」という日本語の文章をマッピングしやすくなる。このため、第2モデルM20は、例えば、「2本の木が・・・」等というように、画像D11に撮像された木に着目した日文キャプションD24が十分に存在しない場合であっても、画像D11と日文キャプションD24との関係性を精度よく学習することができる。また、例えば、英文キャプションD13のように、木に着目した英文キャプションが十分に存在する場合には、木に着目した日文キャプションD24が存在しない場合であっても、画像D11が入力された際に木に着目した日文キャプションを出力する第2モデルM20を生成することが出来る可能性がある。
【0072】
〔4.変形例〕
上記では、情報提供装置10による学習処理の一例について説明した。しかしながら、実施形態は、これに限定されるものではない。以下、情報提供装置10が実行する学習処理のバリエーションについて説明する。
【0073】
〔4−1.モデルに学習させるコンテンツの種別について〕
上述した例では、情報提供装置10は、画像D11と言語である英文キャプションD12との関係性を深層学習した第1モデルM10の一部を用いて、第2モデルM20を生成し、英文キャプションD12とは異なる言語の日文キャプションD22と画像D11との関係性を深層学習させた。しかしながら、実施形態は、これに限定されるものではない。
【0074】
例えば、情報提供装置10は、動画像と英文キャプションとの関係性を第1モデルM10に深層学習させ、動画像と日文キャプションとの関係性を第2モデルM20に学習させてもよい。また、情報提供装置10は、画像や動画像と、中国語、フランス語、ドイツ語といった任意の言語のキャプションとの関係性を第2モデルM20に学習させてもよい。また、情報提供装置10は、キャプション以外にも、小説やコラム等といった任意の文章と、画像や動画像との間の関係性を第1モデルM10や第2モデルM20に深層学習させてもよい。
【0075】
また、例えば、情報提供装置10は、音楽コンテンツと、その音楽コンテンツを評価する文章との間の関係性を、第1モデルM10と第2モデルM20に深層学習させてもよい。このような学習処理を実行した場合、情報提供装置10は、例えば、音楽コンテンツの配信サービスにおいて英語等のレビューが多いが、日本語のレビューが少ない場合等においても、音楽コンテンツからレビューを精度よく生成する第2モデルM20を学習することができる。
【0076】
また、英語のニュースから要約を作成するサービスが存在するが、日本語のニュースから要約を作成するサービスについては、精度があまりよくない場合がある。そこで、情報提供装置10は、画像D11と英語のニュースとを入力した際に、第1モデルM10が英語のニュースの要約を出力するように深層学習させ、第1モデルM10の一部を用いて、画像D11と日本語のニュースとを入力した際に、第2モデルM20が日本語のニュースの要約を出力するように深層学習させてもよい。このような処理を実行した場合、情報提供装置10は、学習データの数が少ない場合であっても、精度よく日本語のニュースの要約を生成する第2モデルM20の学習を行うことができる。
【0077】
すなわち、情報提供装置10は、第1コンテンツと第2コンテンツとの関連性を第1モデルM10に深層学習させ、第1モデルM10の一部を用いた第2モデルM20に対し、第2コンテンツとは異なる種別のコンテンツであって、第1コンテンツとの関係性が第2コンテンツと類似する第3コンテンツと第1コンテンツとの関係性を深層学習させるのであれば、任意の種別のコンテンツが適用可能である。
【0078】
〔4−2.第1モデルのうち使用する部分について〕
上述した学習処理では、情報提供装置10は、第1モデルM10のうち、画像学習部分を用いて第2モデルM20を生成した。すなわち、情報提供装置10は、第1モデルM10のうち、画像学習部分以外の部分を削除し、新たな部分を付加した第2モデルM20を生成した。しかしながら、実施形態は、これに限定されるものではない。例えば、情報提供装置10は、第1モデルM10の一部を削除し、代替となる新たな部分を付加することで、第2モデルM20を生成してもよい。また、情報提供装置10は、第1モデルM10の一部を取り出し、取り出した部分に新たな部分を付加することで、第2モデルM20を生成してもよい。すなわち、情報提供装置10は、第1モデルM10の一部を抽出し、抽出した部分を用いて、第2モデルM20を生成するのであれば、第1モデルM10から一部分を抽出してもよく、第1モデルM10のうち必要のない部分を削除してもよい。このような第1モデルM10の部分的な削除や抽出は、データの取り扱いにおける便宜上の処理であり、同様の効果を得ることが出来るのであれば、任意の処理が適用可能である。
【0079】
例えば、
図8は、実施形態に係る情報提供装置が実行する学習処理のバリエーションを説明するための図である。例えば、情報提供装置10は、上述した学習処理と同様に、各層L11〜L15を有する第1モデルM10を生成する。そして、情報提供装置10は、
図8中の点太線で示すように、第1モデルM10のうち画像学習部分以外の部分、すなわち、言語入力層L13、特徴学習モデルL14、および言語出力層L15を含む言語学習部分を用いて、新たな第2モデルM20を生成してもよい。
【0080】
このような処理の結果得られる第2モデルM20には、第1モデルM10によって学習された関係性がある程度反映されることとなる。このため、情報提供装置10は、第2学習データD20と第1学習データD10とが類似する場合には、第2学習データD20の数が少ない場合にも、第2学習データD20の関係性を精度よく学習する第2モデルM20を深層学習することができる。
【0081】
また、例えば、第1学習データD10に含まれる文章の言語と、第2学習データD20に含まれる文章の言語とが類似する言語である場合(例えば、イタリア語とラテン語等)には、情報提供装置10は、第1モデルM10のうち、画像学習部分に加えて、特徴学習モデルL14を用いて、第2モデルM20を生成してもよい。また、情報提供装置10は、特徴学習モデルL14の一部を用いて、第2モデルM20を生成してもよい。このような処理を実行することで、情報提供装置10は、第2学習データD20の関係性を精度よく第2モデルM20に深層学習させることが出来る。
【0082】
また、情報提供装置10は、例えば、画像学習部分に代えてニュースから要約を生成するモデルを有する第1モデルM10の深層学習を行い、第1モデルM10のうち、ニュースから要約を生成するモデルを画像学習部分に変更した第2モデルM20を生成することで、入力された画像からニュースの記事を生成する第2モデルM20を生成してもよい。すなわち、情報提供装置10は、第1モデルM10の一部を用いて、第2モデルM20を生成するのであれば、第2モデルM20のうち第1モデルM10に含まれていなかった部分の構成を、第1モデルM10のうち第2モデルM20に使用しなかった部分の構成とは異なる構成にしてもよい。
【0083】
〔4−3.学習内容について〕
なお、情報提供装置10は、第1モデルM10と第2モデルM20とがどのような出力を行うように最適化を行うかについては、任意の設定を採用して良い。例えば、情報提供装置10は、第2モデルM20が入力された画像に対して質問に応答するような深層学習を行ってもよい。また、情報提供装置10は、第2モデルM20が、入力されたテキストに対して音声で応答を行うような深層学習を行ってもよい。また、情報提供装置10は、味覚センサ等で取得した食品の味を示す値が入力された際に、その食品の味を表現する文章を出力するような深層学習を行ってもよい。
【0084】
〔4−4.装置構成〕
なお、情報提供装置10は、任意の数の端末装置100と通信可能に接続されていてもよく、任意の数のデータサーバ50と通信可能に接続されていてもよい。また、情報提供装置10は、端末装置100と情報のやり取りを行うフロントエンドサーバと、学習処理を実行するバックエンドサーバとにより実現されてもよい。このような場合、フロントエンドサーバには、
図2に示す第2モデルデータベース34および情報提供部45が含まれ、バックエンドサーバには、
図2に示す第1学習データデータベース31、第2学習データデータベース32、第1モデルデータベース33、収集部41、第1モデル学習部42、第2モデル生成部43、第2モデル学習部44が含まれることとなる。
【0085】
〔4−5.その他〕
また、上記実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
【0086】
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、
図2に示した第2モデル生成部43と第2モデル学習部44とは、統合されてもよい。
【0087】
また、上記してきた各実施形態は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【0088】
〔5.情報提供装置の処理フロー〕
次に、
図9を用いて、情報提供装置10が実行する学習処理の手順の一例について説明する。
図9は、実施形態に係る情報提供装置が実行する学習処理の流れの一例を示すフローチャートである。例えば、情報提供装置10は、第1コンテンツと第2コンテンツとの組を含む第1学習データD10を収集する(ステップS101)。続いて、情報提供装置10は、第1コンテンツと第3コンテンツとの組を含む第2学習データD20を収集する(ステップS102)。また、情報提供装置10は、第1学習データD10を用いて、第1モデルM10の深層学習を行い(ステップS103)、第1モデルM10の一部を用いて、第2モデルM20を生成する(ステップS104)。そして、情報提供装置10は、第2学習データD20を用いて、第2モデルM20の深層学習を行い(ステップS105)、処理を終了する。
【0089】
〔6.プログラム〕
また、上述してきた実施形態に係る端末装置100は、例えば
図10に示すような構成のコンピュータ1000によって実現される。
図10は、ハードウェア構成の一例を示す図である。コンピュータ1000は、出力装置1010、入力装置1020と接続され、演算装置1030、一次記憶装置1040、二次記憶装置1050、出力IF(Interface)1060、入力IF1070、ネットワークIF1080がバス1090により接続された形態を有する。
【0090】
演算装置1030は、一次記憶装置1040や二次記憶装置1050に格納されたプログラムや入力装置1020から読み出したプログラム等に基づいて動作し、各種の処理を実行する。一次記憶装置1040は、RAM等、演算装置1030が各種の演算に用いるデータを一次的に記憶するメモリ装置である。また、二次記憶装置1050は、演算装置1030が各種の演算に用いるデータや、各種のデータベースが登録される記憶装置であり、ROM(Read Only Memory)、HDD、フラッシュメモリ等により実現される。
【0091】
出力IF1060は、モニタやプリンタといった各種の情報を出力する出力装置1010に対し、出力対象となる情報を送信するためのインタフェースであり、例えば、USB(Universal Serial Bus)やDVI(Digital Visual Interface)、HDMI(登録商標)(High Definition Multimedia Interface)といった規格のコネクタにより実現される。また、入力IF1070は、マウス、キーボード、およびスキャナ等といった各種の入力装置1020から情報を受信するためのインタフェースであり、例えば、USB等により実現される。
【0092】
なお、入力装置1020は、例えば、CD(Compact Disc)、DVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等から情報を読み出す装置であってもよい。また、入力装置1020は、USBメモリ等の外付け記憶媒体であってもよい。
【0093】
ネットワークIF1080は、ネットワークNを介して他の機器からデータを受信して演算装置1030へ送り、また、ネットワークNを介して演算装置1030が生成したデータを他の機器へ送信する。
【0094】
演算装置1030は、出力IF1060や入力IF1070を介して、出力装置1010や入力装置1020の制御を行う。例えば、演算装置1030は、入力装置1020や二次記憶装置1050からプログラムを一次記憶装置1040上にロードし、ロードしたプログラムを実行する。
【0095】
例えば、コンピュータ1000が端末装置100として機能する場合、コンピュータ1000の演算装置1030は、一次記憶装置1040上にロードされたプログラムを実行することにより、制御部40の機能を実現する。
【0096】
〔7.効果〕
上述したように、情報提供装置10は、第1コンテンツと、第1コンテンツとは種別が異なる第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。そして、情報提供装置10は、第2モデルM20に、第1コンテンツと、第2コンテンツとは異なる種別の第3コンテンツとの組が有する関係性を深層学習させる。このため、情報提供装置10は、第2コンテンツと第3コンテンツとの組、すなわち、第2学習データD20の数が少ない場合にも、第2コンテンツと第3コンテンツとの関係性の学習精度の悪化を防ぐことができる。
【0097】
また、情報提供装置10は、第1モデルM10として、非言語に関する第1コンテンツと、言語に関する第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。そして、情報提供装置10は、第2モデルM20に、第1コンテンツと、第2コンテンツとは異なる言語に関する第3コンテンツとの組が有する関係性を深層学習させる。
【0098】
より具体的には、情報提供装置10は、第1モデルM10として、静止画像または動画像に関する第1コンテンツと、文章に関する第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。そして、情報提供装置10は、第2モデルM20に、第1コンテンツと、第1コンテンツの説明を含む文章であって、第2コンテンツとは異なる言語の文章を含む第3コンテンツとの組が有する関係性を深層学習させる。
【0099】
例えば、情報提供装置10は、第1モデルM10として、第1コンテンツと、所定の言語による第1コンテンツのキャプションである第2コンテンツとの組が有する関係性を深層学習した第1モデルM10の一部を用いて、新たな第2モデルM20を生成する。そして、情報提供装置10は、第2モデルM20に、第1コンテンツと、所定の言語とは異なる言語による第1コンテンツのキャプションである第3コンテンツとの組が有する関係性を深層学習させる。
【0100】
上述した処理の結果、情報提供装置10は、例えば、画像D11と英文キャプションD12との関係性を学習した第1モデルM10の一部を用いて、第2モデルM20を生成し、画像D11と日文キャプションD22との関係性を深層学習させる。この結果、情報提供装置10は、例えば、画像D11と日文キャプションD22との組が少ない場合であっても、第2モデルM20の学習精度の悪化を防ぐことができる。
【0101】
また、情報提供装置10は、第1モデルM10として、第1コンテンツと第2コンテンツとが入力された際に、第2コンテンツと同じ内容のコンテンツを出力するように全体が最適化された学習器の一部を用いて、第2コンテンツを生成する。このため、情報提供装置10は、第1モデルM10が学習した関係性をある程度反映させた第2モデルM20を生成することが出来るので、学習データが少ない場合にも、第2モデルM20の学習精度の悪化を防ぐことができる。
【0102】
また、情報提供装置10は、第1モデルM10の一部に対して、新たな部分の追加又は削除を行った第2モデルM20を生成する。例えば、情報提供装置10は、一部を削除した第1モデルM10に新たな部分を追加した第2モデルM20を生成する。また、例えば、情報提供装置10は、第1モデルM10の一部を削除し、残った部分に新たな部分を追加した第2モデルM10を生成する。例えば、情報提供装置10は、第1モデルM10として、入力された第1コンテンツの特徴を抽出する第1部分(例えば、画像学習モデルL11)と、第2コンテンツの入力を受付ける第2部分(例えば、言語入力層L13)と、第1部分の出力と第2部分の出力とに基づいて、第2コンテンツと同じ内容のコンテンツを出力する第3部分(例えば、特徴学習モデルL14および言語出力層L15)とを有する第1モデルM10のうち、少なくとも第1部分を用いて、新たな第2モデルM20を生成する。このため、情報提供装置10は、第1モデルM10が学習した関係性をある程度反映させた第2モデルM20を生成することが出来るので、学習データが少ない場合にも、第2モデルM20の学習精度の悪化を防ぐことができる。
【0103】
また、情報提供装置10は、第1モデルM10のうち、第1部分と、第1部分の出力を第2部分に入力する1つまたは複数の層(例えば、画像特徴入力層L12)とを用いて、新たな第2モデルM20を生成する。このため、情報提供装置10は、第1モデルM10が学習した関係性をある程度反映させた第2モデルM20を生成することが出来るので、学習データが少ない場合にも、第2モデルM20の学習精度の悪化を防ぐことができる。
【0104】
また、情報提供装置10は、第1コンテンツと第3コンテンツとの組を入力した際に、第3コンテンツと同じ内容のコンテンツを出力するように、第2モデルM20を深層学習させる。このため、情報提供装置10は、第2モデルM20に第1コンテンツと第3コンテンツとが有する関係性を精度よく深層学習させることが出来る。
【0105】
また、情報提供装置10は、第1モデルM10のうち、第2部分および第3部分を用いて、新たな第2モデルM20を生成し、第1コンテンツとは異なる種別の第4コンテンツと、第2コンテンツとの組が有する関係性を第2モデルM20に学習させる。このため、情報提供装置10は、第2コンテンツと第4コンテンツの組が少ない場合にも、第2コンテンツと第4コンテンツとが有する関係性を第2モデルM20に精度よく深層学習させることが出来る。
【0106】
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
【0107】
また、上記してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、配信部は、配信手段や配信回路に読み替えることができる。