(57)【要約】【課題】学習モデルの出所を特定できるようにする。【解決手段】モデル取得部１１０は、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得する。透かしパターン取得部１１１は、学習モデルに埋め込むための透かしパターンを取得する。画像取得部１１２は、学習モデルに透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する。重畳用パターン取得部１１３は、透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが透かしパターンとなる複数のパターンを取得する。学習用データ生成部１１４は、透かし用画像データセットに含まれる画像データと複数のパターンとの組み合わせを再学習用学習データとして生成する。【選択図】図４
2020003879.tif 000002
【特許請求の範囲】
【請求項１】
入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するモデル取得部と、
前記学習モデルに埋め込むための透かしパターンを取得する透かしパターン取得部と、
前記学習モデルに前記透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する画像取得部と、
前記透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが前記透かしパターンとなる複数のパターンを取得する重畳用パターン取得部と、
前記透かし用画像データセットに含まれる画像データと前記複数のパターンとの組み合わせを前記再学習用学習データとして生成する学習用データ生成部と、
を備える情報処理装置。
【請求項２】
前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得するモデル適用部をさらに備え、
前記重畳用パターン取得部は、前記モデル適用部が取得した複数の識別ラベルの重ね合わせが前記透かしパターンとなるように、前記複数の識別ラベルのうちの少なくとも一部の識別ラベルを修正した識別ラベルを前記パターンとして取得し、
前記学習用データ生成部は、各識別ラベルと当該識別ラベルに対応する前記画像データとの組み合わせを前記再学習用学習データとして生成する、
請求項１に記載の情報処理装置。
【請求項３】
前記再学習用学習データを用いて前記学習モデルを再学習する学習実行部をさらに備える、
請求項１又は２に記載の情報処理装置。
【請求項４】
前記識別ラベルは、前記複数の識別対象と同数の要素から構成されるベクトルであり、
前記透かしパターンは、前記識別ラベルの要素と同数の画素から構成される画像であり、
前記学習用データ生成部は、
前記複数の識別ラベルそれぞれの要素を所定の手順にしたがって２次元データに変換する変換部と、
前記変換部が変換した複数の２次元データのそれぞれと前記透かしパターンとに基づいて、前記２次元データそれぞれを修正する修正部と、を備え、
前記変換部は、修正された前記２次元データを前記識別ラベルの形式に変換する、
請求項１から３のいずれか一項に記載の情報処理装置。
【請求項５】
前記学習用データ生成部は、
前記変換部が変換した２次元データと前記透かしパターンとの差異が所定の除外条件を満たす場合、当該２次元データに対応する画像データを前記透かし用画像データセットから除外する画像選択部をさらに備える、
請求項４に記載の情報処理装置。
【請求項６】
前記透かしパターン取得部は、前記学習モデルに埋め込むための２以上の異なる透かしパターンを取得し、
前記画像取得部は、前記異なる透かしパターンそれぞれに対応する複数の前記透かし用画像データセットを取得し、
前記学習用データ生成部は、前記異なる透かしパターンそれぞれに対応する前記再学習用学習データを生成する、
請求項１から５のいずれか一項に記載の情報処理装置。
【請求項７】
プロセッサが、
入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するステップと、
前記学習モデルに埋め込むための透かしパターンを取得するステップと、
前記学習モデルに前記透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得するステップと、
前記透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが前記透かしパターンとなる複数のパターンを取得するステップと、
前記透かし用画像データセットに含まれる画像データと前記複数のパターンとの組み合わせを前記再学習用学習データとして生成するステップと、
を実行する情報処理方法。
【請求項８】
コンピュータに、
入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得する機能と、
前記学習モデルに埋め込むための透かしパターンを取得する機能と、
前記学習モデルに前記透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する機能と、
前記透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが前記透かしパターンとなる複数のパターンを取得する機能と、
前記透かし用画像データセットに含まれる画像データと前記複数のパターンとの組み合わせを前記再学習用学習データとして生成する機能と、
を実現させるプログラム。
【請求項９】
透かし検出の対象とする学習モデルであって、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するモデル取得部と、
学習モデルに埋め込まれた透かしを検出するための透かし用画像データセットを取得する画像取得部と、
前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得するモデル適用部と、
前記複数の識別ラベルを重ね合わせて生成されるパターンを出力するパターン出力部と、
を備える透かし検出装置。
【請求項１０】
検証対象となる透かしパターンを取得する透かしパターン取得部と、
前記パターン出力部が出力したパターンと前記透かしパターンとを比較可能な態様で提示するパターン提示部と、
を備える請求項９に記載の透かし検出装置。
【請求項１１】
プロセッサが、
透かし検出の対象とする学習モデルであって、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するステップと、
学習モデルに埋め込まれた透かしを検出するための透かし用画像データセットを取得するステップと、
前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得するステップと、
前記複数の識別ラベルを重ね合わせて生成されるパターンを出力するステップと、
を実行する透かし検出方法。
【請求項１２】
コンピュータに、
透かし検出の対象とする学習モデルであって、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得する機能と、
学習モデルに埋め込まれた透かしを検出するための透かし用画像データセットを取得する機能と、
前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得する機能と、
前記複数の識別ラベルを重ね合わせて生成されるパターンを出力する機能と、
を実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は情報処理装置、情報処理方法、透かし検出装置、透かし検出方法、及びプログラムに関し、特に学習モデルに透かしを埋め込む技術及び学習モデルに埋め込んだ透かしを検出する技術に関する。
【背景技術】
【０００２】
近年、ＣＰＵ（Central Processing Unit）及びＧＰＵ（Graphics Processing Unit）の高速化、メモリの大容量化、及び機械学習技術が急速に進んできている。このため、数十万から百万といったオーダーの学習データを用いる機械学習が可能となり、精度の高い識別技術や分類技術が確立されつつある（非特許文献１参照）。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】Yangqing Jia, Evan Shelhamer, Jeff Donahue, Sergey Karayev, Jonathan Long, Ross Girshick, Sergio Guadarrama, and Trevor Darrell. Caffe: Convolutional architecture for fast feature embedding. In Proceedings of the 22nd ACM international conference on Multimedia (pp. 675-678). ACM.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
大量の学習データに基づく機械学習を実行するためには大量の計算コストがかかる。また、大量の学習データを用意すること、及び用意した学習データを機械学習に用いるために加工する前処理にも膨大な労力を要する。一方で、機械学習によって生成された学習モデルはデジタルデータであり、その複製は容易である。さらに、一般に学習モデル生成に用いられた学習データを、学習モデル自体から推測することは難しい。
【０００５】
このため、学習モデルを生成した者は、その学習モデルが第三者によって不正に利用されたとしても、不正を立証することが難しい。収集した学習データと、学習データに基づいて生成された学習モデルとはそれぞれ労力をかけて取得した価値あるものであり、不正利用から学習モデルを守ることが望まれている。
【０００６】
本発明はこれらの点に鑑みてなされたものであり、学習モデルの出所を特定できるようにする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の第１の態様は、情報処理装置である。この装置は、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するモデル取得部と、前記学習モデルに埋め込むための透かしパターンを取得する透かしパターン取得部と、前記学習モデルに前記透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する画像取得部と、前記透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが前記透かしパターンとなる複数のパターンを取得する重畳用パターン取得部と、前記透かし用画像データセットに含まれる画像データと前記複数のパターンとの組み合わせを前記再学習用学習データとして生成する学習用データ生成部と、を備える。
【０００８】
前記情報処理装置は、前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得するモデル適用部をさらに備えてもよく、前記重畳用パターン取得部は、前記モデル適用部が取得した複数の識別ラベルの重ね合わせが前記透かしパターンとなるように、前記複数の識別ラベルのうちの少なくとも一部の識別ラベルを修正した識別ラベルを前記パターンとして取得してもよく、前記学習用データ生成部は、各識別ラベルと当該識別ラベルに対応する前記画像データとの組み合わせを前記再学習用学習データとして生成してもよい。
【０００９】
前記情報処理装置は、前記再学習用学習データを用いて前記学習モデルを再学習する学習実行部をさらに備えてもよい。
【００１０】
前記識別ラベルは、前記複数の識別対象と同数の要素から構成されるベクトルであってもよく、前記透かしパターンは、前記識別ラベルの要素と同数の画素から構成される画像であってもよく、前記学習用データ生成部は、前記複数の識別ラベルそれぞれの要素を所定の手順にしたがって２次元データに変換する変換部と、前記変換部が変換した複数の２次元データのそれぞれと前記透かしパターンとに基づいて、前記２次元データそれぞれを修正する修正部と、を備えてもよく、前記変換部は、修正された前記２次元データを前記識別ラベルの形式に変換してもよい。
【００１１】
前記学習用データ生成部は、前記変換部が変換した２次元データと前記透かしパターンとの差異が所定の除外条件を満たす場合、当該２次元データに対応する画像データを前記透かし用画像データセットから除外する画像選択部をさらに備えてもよい。
【００１２】
前記透かしパターン取得部は、前記学習モデルに埋め込むための２以上の異なる透かしパターンを取得してもよく、前記画像取得部は、前記異なる透かしパターンそれぞれに対応する複数の前記透かし用画像データセットを取得してもよく、前記学習用データ生成部は、前記異なる透かしパターンそれぞれに対応する前記再学習用学習データを生成してもよい。
【００１３】
本発明の第２の態様は、情報処理方法である。この方法において、プロセッサが、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するステップと、前記学習モデルに埋め込むための透かしパターンを取得するステップと、前記学習モデルに前記透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得するステップと、前記透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが前記透かしパターンとなる複数のパターンを取得するステップと、前記透かし用画像データセットに含まれる画像データと前記複数のパターンとの組み合わせを前記再学習用学習データとして生成するステップと、を実行する。
【００１４】
本発明の第３の態様は、プログラムである。このプログラムは、コンピュータに、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得する機能と、前記学習モデルに埋め込むための透かしパターンを取得する機能と、前記学習モデルに前記透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する機能と、前記透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが前記透かしパターンとなる複数のパターンを取得する機能と、前記透かし用画像データセットに含まれる画像データと前記複数のパターンとの組み合わせを前記再学習用学習データとして生成する機能と、を実現させる。
【００１５】
本発明の第４の態様は、透かし検出装置である。この装置は、透かし検出の対象とする学習モデルであって、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するモデル取得部と、学習モデルに埋め込まれた透かしを検出するための透かし用画像データセットを取得する画像取得部と、前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得するモデル適用部と、前記複数の識別ラベルを重ね合わせて生成されるパターンを出力するパターン出力部と、を備える。
【００１６】
前記透かし検出装置は、検証対象となる透かしパターンを取得する透かしパターン取得部と、前記パターン出力部が出力したパターンと前記透かしパターンとを比較可能な態様で提示するパターン提示部と、を備えてもよい。
【００１７】
本発明の第５の態様は、透かし検出方法である。この方法において、プロセッサが、透かし検出の対象とする学習モデルであって、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得するステップと、学習モデルに埋め込まれた透かしを検出するための透かし用画像データセットを取得するステップと、前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得するステップと、前記複数の識別ラベルを重ね合わせて生成されるパターンを出力するステップと、を実行する。
【００１８】
本発明の第６の態様は、プログラムである。このプログラムは、コンピュータに、透かし検出の対象とする学習モデルであって、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルを出力するように機械学習された学習モデルを取得する機能と、学習モデルに埋め込まれた透かしを検出するための透かし用画像データセットを取得する機能と、前記透かし用画像データセットに含まれる画像データそれぞれを入力とする前記学習モデルの出力である複数の識別ラベルを取得する機能と、前記複数の識別ラベルを重ね合わせて生成されるパターンを出力する機能と、を実現させる。
【００１９】
上記のプログラムを提供するため、あるいはプログラムの一部をアップデートするために、このプログラムを記録したコンピュータ読み取り可能な記録媒体が提供されてもよく、また、このプログラムが通信回線で伝送されてもよい。
【００２０】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００２１】
本発明によれば、学習モデルの出所を特定できるようにする技術を提供することができる。
【図面の簡単な説明】
【００２２】
【図１】画像判別用の学習モデルを説明するための模式図である。
【図２】学習モデルのファインチューニングを説明するための模式図である。
【図３】複数の識別ラベルを重ね合わせることで透かし画像が形成される様子を模式的に示す図である。
【図４】実施の形態に係る情報処理装置の機能構成を模式的に示す図である。
【図５】実施の形態に係る学習用データ生成部による識別ラベルの修正の一例を説明するための図である。
【図６】実施の形態に係る学習用データ生成部の内部構成を模式的に示す図である。
【図７】実施の形態に係る透かし検出装置の機能構成を模式的に示す図である。
【図８】実施の形態に係るパターン出力部が出力するパターンの一例を示す図である。
【図９】実施の形態に係るパターン提示部２１５が提示する比較画面の一例を模式的に示す図である。
【図１０】実施の形態に係る情報処理装置が実行する処理の流れを説明するためのフローチャートである。
【発明を実施するための形態】
【００２３】
＜実施の形態の概要＞
以下、図１、図２、及び図３を参照して、実施の形態の概要を述べる。
【００２４】
図１（ａ）−（ｂ）は、画像判別用の学習モデルを説明するための模式図である。実施の形態に係る情報処理装置は、例えばニューラルネットワークやＳＶＭ（Support Vector Machine）等の既知の機械学習技術を用いて作成された画像判別用の学習モデルに、透かしデータを埋め込むための装置である。また、実施の形態に係る透かし検出装置は、情報処理装置が透かしを埋め込んだ学習モデルから、埋め込まれた透かしを検出するための装置である。
【００２５】
図１（ａ）−（ｂ）において、学習モデルＭは複数の動物を識別対象とするモデルである。図１（ａ）−（ｂ）に示す例では、学習モデルＭは、猫、猿、犬、象、羊、キリン等を含む１００種類の動物を識別することができる。学習モデルＭに画像データを入力すると、学習モデルＭは、入力データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルＬを出力する。限定はしないが、学習モデルＭが出力する識別ラベルＬは、識別対象である１００種類の動物それぞれに対応する１００種類の値を並べたデータであり、典型的には１００個の要素を持つベクトルデータである。識別ラベルＬの各要素は０以上１以下の値を取り、学習モデルＭに入力された画像データが１００種類の動物それぞれである蓋然性を示している。
【００２６】
例えば、学習モデルＭに猫画像Ｉｃを入力したときに学習モデルＭが出力する識別ラベルＬｃは、「猫」に対応する要素が大きな値となり、その他の要素は小さな値となる。図１（ａ）−（ｂ）では、識別ラベルの要素の値が大きいほど黒く、小さいほど白くなるように図示している。このため、図１（ａ）に示す識別ラベルＬｃでは、「猫」に対応する要素は黒くそれ以外の要素は白くなっている。同様に、学習モデルＭに猿画像Ｉｍを入力した時に学習モデルＭが出力する識別ラベルＬｍは、「猿」に対応する要素は黒くそれ以外の要素は白くなっている。
【００２７】
一般に、学習モデルＭが識別対象としていない被写体が写っている画像データを学習モデルＭに入力した場合、学習モデルＭが出力する識別ラベルＬの各要素は、予測することが難しいランダムな値となる。図１（ｂ）では、学習モデルＭが識別対象としていない風景画像Ｉｌを学習モデルＭに入力すると、学習モデルＭは、各要素がランダムな値である識別ラベルＬｌを出力したことを示している。同様に、学習モデルＭが識別対象としていない雪だるま画像Ｉｓを学習モデルＭに入力しても、学習モデルＭは、各要素がランダムな値である識別ラベルＬｓを出力する。ここで、図１（ｂ）に示すように、学習モデルＭに入力する画像データが異なると、出力される識別ラベルＬのパターンも異なる。
【００２８】
実施の形態に係る情報処理装置は、まず、学習モデルに埋め込むための透かし画像と、透かし画像を埋め込む対象とする学習モデルとを取得する。次に、情報処理装置は、学習モデルＭが識別対象としていない被写体が写っている画像データセットを用意する。最後に、情報処理装置は、画像データセットを構成する複数の画像データそれぞれを学習モデルＭに入力したときに出力される複数の識別ラベルＬを重ね合わせることで透かし画像となるように、学習モデルＭを再学習（ファインチューニング；Fine-tuning）する。
【００２９】
図２は、学習モデルＭのファインチューニングを説明するための模式図である。図１（ｂ）に示す風景画像Ｉｌと雪だるま画像Ｉｓとはともに、透かし埋め込み及び透かし検出用として情報処理装置が取得した画像データセットＩｗの一部である。
【００３０】
実施の形態に係る情報処理装置は、画像データセットＩｗと同数のランダム画像であって、各ランダム画像を重ね合わせると透かし画像Ｗとなるランダム画像群を用意する。情報処理装置は、各ランダム画像の要素から構成されるベクトルを生成して教師用識別ラベルＬｔとする。情報処理装置は、教師用識別ラベルＬｔと画像データセットＩｗを構成する画像データとを対応づけた再学習用学習データを生成する。
【００３１】
情報処理装置は、学習モデルＭに画像データを入力すると、その画像データに対応づけられた識別ラベルを出力するように、学習モデルＭをファインチューニングする。例えば、学習モデルＭがニューラルネットワークを用いて生成されている場合、画像データセットＩｗを構成する画像データを学習モデルＭに入力したときの出力と、その画像データに対応づけた教師用識別ラベルＬｔとの誤差を取得する。情報処理装置は、取得した誤差に基づいて誤差逆伝播法により、学習モデルＭのパラメータを更新する。
【００３２】
なお、情報処理装置は、再学習前の学習モデルＭに画像データを入力したときに出力される識別ラベルと類似した識別ラベルを、その画像データと対応づけて再学習用学習データを生成してもよい。これにより、画像データセットＩｗを構成する画像データを学習モデルＭに入力したときの出力と、その画像データに対応づけた教師用識別ラベルＬｔとの誤差が小さくなるため、再学習の収束を早めることが期待できる。
【００３３】
図３は、複数の識別ラベルＬを重ね合わせることで透かし画像Ｗが形成される様子を模式的に示す図である。実施の形態に係る透かし検出装置は、画像データセットＩｗを構成する各画像データを再学習された学習モデルＭに入力し、出力される複数の識別ラベルＬｏを取得する。識別ラベルＬｏは１００行１列のベクトルであるが、透かし検出装置は、図３に示すように、各識別ラベルＬｏの要素を並べ替えて１０行１０列の画像データを生成する。透かし検出装置は、識別ラベルＬｏの要素を並べ替えて生成した画像を重ね合わせることにより、透かし画像Ｗを取得する。図３は、透かし画像がアルファベットの「ａｕ」という文字が描かれた画像である場合の例を示している。
【００３４】
情報処理装置は、学習モデルＭのファインチューニングに用いた画像データセットＩｗと透かし画像Ｗとを、情報処理装置も含めて外部から改竄できない安全な保管場所に保管する。透かし検出装置は、透かし検出の対象となる学習モデルＭを取得した場合、保管場所から画像データセットＩｗを取得して透かし検出の対象となる学習モデルＭに入力する。透かし検出装置は、学習モデルＭが出力した識別ラベルＬｏを重ね合わせて生成した画像と、保管場所から取得した透かし画像Ｗとを比較する。比較の結果、画像が一致すれば、透かし検出装置は、透かし検出の対象となる学習モデルＭは、情報処理装置１が透かし画像を埋め込んだ学習モデルＭであると判定する。
【００３５】
このように、実施の形態に係る情報処理装置は、学習モデルＭに透かし画像Ｗを埋め込むことができる。また、実施の形態に係る透かし検出装置は、透かし画像Ｗが埋め込まれた学習モデルＭから透かし画像Ｗを取り出すことができる。このように、実施の形態に係る情報処理装置及び透かし検出装置は、学習モデルＭの出所を特定できるようにすることができる。
【００３６】
＜実施の形態に係る情報処理装置１の機能構成＞
図４は、実施の形態に係る情報処理装置１の機能構成を模式的に示す図である。情報処理装置１は、記憶部１０と制御部１１とを備える。図４において、矢印は主なデータの流れを示しており、図４に示していないデータの流れがあってもよい。図４において、各機能ブロックはハードウェア（装置）単位の構成ではなく、機能単位の構成を示している。そのため、図４に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に別れて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。
【００３７】
記憶部１０は、情報処理装置１を実現するコンピュータのＢＩＯＳ（Basic Input Output System）等を格納するＲＯＭ（Read Only Memory）や情報処理装置１の作業領域となるＲＡＭ（Random Access Memory）、ＯＳ（Operating System）やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するＨＤＤ（Hard Disk Drive）やＳＳＤ（Solid State Drive）等の大容量記憶装置である。
【００３８】
制御部１１は、情報処理装置１のＣＰＵやＧＰＵ等のプロセッサであり、記憶部１０に記憶されたプログラムを実行することによって、モデル取得部１１０、透かしパターン取得部１１１、画像取得部１１２、重畳用パターン取得部１１３、学習用データ生成部１１４、モデル適用部１１５、及び学習実行部１１６として機能する。
【００３９】
なお、図４は、情報処理装置１が単一の装置で構成されている場合の例を示している。しかしながら、情報処理装置１は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部１１を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。
【００４０】
モデル取得部１１０は、学習モデルＭを取得する。モデル取得部１１０が取得する学習モデルＭは、画像が入力されると識別ラベルＬを出力するように機械学習された学習モデルＭである。ここで、学習モデルＭが出力する識別ラベルＬは、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルである。
【００４１】
透かしパターン取得部１１１は、学習モデルＭに埋め込むための透かしパターンを取得する。透かしパターン取得部１１１が取得する透かしパターンは、例えば上述した透かし画像Ｗである。しかしながら、透かしパターン取得部１１１が取得する透かしパターンは画像データに限らず、例えば１次元のベクトルであってもよい。
【００４２】
画像取得部１１２は、学習モデルＭに透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する。画像取得部１１２が取得する透かし用画像データセットの具体例は、上述した画像データセットＩｗである。
【００４３】
重畳用パターン取得部１１３は、透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが透かしパターンとなる複数のパターンを取得する。重畳用パターン取得部１１３が取得する複数のパターンの詳細は後述する。
【００４４】
学習用データ生成部１１４は、透かし用画像データセットに含まれる画像データと複数のパターンとの組み合わせを再学習用学習データとして生成する。これにより、情報処理装置１は、透かしパターンを埋め込む対象とする学習モデルＭに透かしパターンを埋め込むためのファインチューニングで用いる再学習用学習データを生成することができる。このため、情報処理装置１は、学習モデルＭの出所を特定できるようにすることができる。
【００４５】
ここで、モデル適用部１１５は、透かし用画像データセットに含まれる画像データそれぞれを入力とする学習モデルＭの出力である複数の識別ラベルＬを取得する。重畳用パターン取得部１１３は、モデル適用部１１５が取得した複数の識別ラベルの重ね合わせが透かしパターンとなるように、複数の識別ラベルＬのうちの少なくとも一部の識別ラベルを修正した識別ラベルを上述のパターンとして取得する。学習用データ生成部１１４は、各識別ラベルとその識別ラベルに対応する画像データとの組み合わせを再学習用学習データとして生成する。
【００４６】
図５（ａ）−（ｂ）は、実施の形態に係る学習用データ生成部１１４による識別ラベルの修正の一例を説明するための図である。また、図６は、実施の形態に係る学習用データ生成部１１４の内部構成を模式的に示す図である。
【００４７】
上述したように、学習モデルＭが出力する識別ラベルＬは、学習モデルＭが識別可能な複数の識別対象と同数の要素から構成されるベクトルである。透かしパターンが透かし画像Ｗである場合、透かし画像Ｗは識別ラベルＬの要素と同数の画素から構成される画像である。
【００４８】
識別ラベルを修正するため、学習用データ生成部１１４は、変換部１１４０と修正部１１４１とを備えている。変換部１１４０は、複数の識別ラベルそれぞれの要素を所定の手順にしたがって透かしパターンである透かし画像Ｗの画素配列と同じ配列の２次元データに変換する。図５（ａ）−（ｂ）において、符号Ｌが付された画像は、変換部１１４０が識別ラベルＬから変換した画像である。図５（ａ）−（ｂ）に示すように、透かし用画像データセットに含まれる画像データは学習モデルＭの識別対象ではないため、画像に変換された識別ラベルＬは、ノイズ画像のような画像となっている。
【００４９】
修正部１１４１は、変換部１１４０が変換した複数の２次元データのそれぞれと透かしパターンである透かし画像Ｗとに基づいて、各２次元データを修正する。具体的には、図５（ａ）−（ｂ）において、白抜きの丸で示す記号はアダマール積を表す。変換部１１４０は、透かし画像Ｗと画像化した識別ラベルＬとのアダマール積を、上述のパターン（すなわち、再学習に用いる教師用識別ラベルＬｔ）とする。これにより、モデル適用部１１５は、各識別ラベルＬの特徴を残しつつ、かつ透かし画像Ｗの特徴を含めた教師用識別ラベルＬｔを取得することができる。
【００５０】
なお、透かし画像Ｗの背景（図３の例では「ａｕ」という文字以外の領域）の画素値を０とした場合、教師用識別ラベルＬｔの背景に対応する領域も０となる。透かし画像Ｗの背景の画素値を０に近い実数とすると、教師用識別ラベルＬｔの背景に対応する領域も０以外の値を持つことになる。図３は、透かし画像Ｗの背景の画素値が０以外の値である場合の例を示している。
【００５１】
図４の説明に戻る。学習実行部１１６は、学習用データ生成部１１４が生成した再学習用学習データを用いて学習モデルＭをファインチューニングによって再学習する。これにより、学習実行部１１６は、学習モデルＭに透かし画像Ｗを埋め込むことができる。
【００５２】
ここで、学習実行部１１６は、学習モデルＭの再学習時における学習率（学習モデルＭのモデルパラメータの更新幅）を、学習モデルＭの生成時における学習率より小さくしてもよい。これにより、学習実行部１１６は、再学習用学習データによって学習モデルＭが過学習されることを抑制できる。
【００５３】
また、学習実行部１１６は、学習モデルＭの再学習時に、学習用データ生成部１１４が生成した再学習用学習データに加えて、学習モデルＭの生成時に用いた学習データを加えたデータを用いて、学習モデルＭを再学習してもよい。このとき、学習実行部１１６は、再学習用学習データによって学習モデルＭが過学習されることを抑制するために、学習用データ生成部１１４が生成した再学習用学習データに加える画像データの数が、学習用データ生成部１１４が生成した再学習用学習データに含まれる画像データよりも多くなるようにしてもよい。学習用データ生成部１１４が生成した再学習用学習データの数と、加算する学習用データの数との比率は、過学習の抑制と再学習にかかるコスト等を勘案して実験により定めればよいが、例えば１対１０である。これにより、学習実行部１１６は、再学習用学習データによって学習モデルＭが過学習されることを抑制できる。
【００５４】
図２を参照して説明したように、学習実行部１１６は、再学習用学習データを入力とした場合に学習モデルＭが出力する識別ラベルＬと、教師用識別ラベルＬｔとの誤差に基づいて、誤差逆伝播法に基づいて学習モデルＭのパラメータを更新する。このため、識別ラベルＬと教師用識別ラベルＬｔとの誤差が小さい方が再学習の収束が早く、かつ再学習後の学習モデルＭが学習前に持っていた識別性能を維持しやすいと考えられる。
【００５５】
そのため、学習用データ生成部１１４は、画像選択部１１４２も備えている。画像選択部１１４２は、変換部１１４０が変換した２次元データと透かしパターンである透かし画像Ｗとの差異が所定の除外条件を満たす場合、その２次元データに対応する画像データを透かし用画像データセットから除外する。
【００５６】
ここで「所定の除外条件」とは、画像選択部１１４２が再学習用画像データを構成する画像データを選択する際に参照する「画像選択条件」である。所定の除外条件の具体的な内容は、学習の収束性や透かし画像Ｗの特徴等を考慮して定めればよい。一例としては、２次元データと透かし画像Ｗとの差分画像の強度（例えば差分画像の画素値の絶対値の和や、差分画像の画素値の二乗和）が、透かし画像Ｗの強度の半分以上となることを、所定の除外条件としてもよい。
【００５７】
これにより、学習用データ生成部１１４は、学習実行部１１６による学習モデルＭのファインチューニングの収束性を向上することができ、再学習にかかるコストを低減することができる。
【００５８】
以上、学習モデルＭに埋め込む透かしパターンが１つであることを前提として説明したが、透かしパターンは複数であってもよい。この場合、透かしパターン取得部１１１は、学習モデルＭに埋め込むための２以上の異なる透かしパターンを取得することになる。画像取得部１１２は、異なる透かしパターンそれぞれに対応する複数の透かし用画像データセットを取得する。これにより、学習用データ生成部１１４は、異なる透かしパターンそれぞれに対応する再学習用学習データを生成することができる。モデル適用部１１５は、学習用データ生成部１１４が生成した再学習用学習データを用いて学習モデルＭをファインチューニングすることにより、学習モデルＭに複数種類の透かしパターンを埋め込むことができる。
【００５９】
以上、情報処理装置１が学習モデルＭに透かしパターンを埋め込む工程について説明した。続いて、透かしパターンが埋め込まれた学習モデルＭから透かしパターンを検出する工程について説明する。
【００６０】
＜実施の形態に係る透かし検出装置２の機能構成＞
図７は、実施の形態に係る透かし検出装置２の機能構成を模式的に示す図である。透かし検出装置２は、記憶部２０と制御部２１とを備える。図７において、矢印は主なデータの流れを示しており、図７に示していないデータの流れがあってもよい。図７において、各機能ブロックはハードウェア（装置）単位の構成ではなく、機能単位の構成を示している。そのため、図７に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に別れて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。
【００６１】
記憶部２０は、透かし検出装置２を実現するコンピュータのＢＩＯＳ等を格納するＲＯＭや透かし検出装置２の作業領域となるＲＡＭ、ＯＳやアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される種々の情報を格納するＨＤＤやＳＳＤ等の大容量記憶装置である。
【００６２】
制御部２１は、透かし検出装置２のＣＰＵやＧＰＵ等のプロセッサであり、記憶部２０に記憶されたプログラムを実行することによって、モデル取得部２１０、画像取得部２１１、モデル適用部２１２、パターン出力部２１３、透かしパターン取得部２１４、及びパターン提示部２１５として機能する。
【００６３】
なお、図７は、透かし検出装置２が単一の装置で構成されている場合の例を示している。しかしながら、透かし検出装置２は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部１１を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。また、透かし検出装置２の機能の少なくとも一部又は全部を、情報処理装置１が備えていてもよい。
【００６４】
モデル取得部２１０は、透かし検出の対象とする学習モデルＭを取得する。学習モデルＭは、入力された画像データが複数の識別対象それぞれの画像データである蓋然性を示す複数の指標値から構成される識別ラベルＬを出力するように機械学習された学習モデルである。
【００６５】
画像取得部２１１は、学習モデルＭに埋め込まれた透かしを検出するための透かし用画像データセットを取得する。具体的には、画像取得部２１１が取得する透かし用画像データセットは、モデル適用部１１５が学習モデルＭをファインチューニングする際に使用した再学習用学習データを構成する透かし用画像データセットと同一である。
【００６６】
モデル適用部２１２は、透かし用画像データセットに含まれる画像データそれぞれを入力とする学習モデルＭの出力である複数の識別ラベルＬを取得する。パターン出力部２１３は、複数の識別ラベルＬを重ね合わせて生成されるパターンを出力する。
【００６７】
図８（ａ）−（ｅ）は、実施の形態に係るパターン出力部２１３が出力するパターンの一例を示す図である。具体的には、図８（ａ）は、６０個の異なる識別ラベルＬを重ね合わせてできるパターンを示す図であり、図８（ｂ）は、２４０個の異なる識別ラベルＬを重ね合わせてできるパターンを示す図である。同様に、図８（ｃ）は、約２０００個の異なる識別ラベルＬを重ね合わせてできるパターンを示す図であり、図８（ｄ）は、３０００個の異なる識別ラベルＬを重ね合わせてできるパターンを示す図である。なお、図８（ｅ）は、透かし画像Ｗの元画像である。図８（ｄ）に示すパターンに２値化処理を施すと、図８（ｅ）に示す画像と一致する。
【００６８】
図８（ａ）−（ｄ）に示すように、パターン出力部２１３が重ね合わせる識別ラベルＬの数が少ないときは、識別ラベルＬを重ね合わせても透かし画像Ｗを再現することができない。これにより、万が一透かし用画像データセットに含まれる画像データの一部が第三者に漏洩したとしても、漏洩した画像データの数が少なければ、第三者は透かし画像Ｗを特定することが困難である。このため、実施の形態に係る情報処理装置１は、第三者が推定することが困難な態様で学習モデルＭに透かしパターンを埋め込むことができる。
【００６９】
図７の説明に戻る。透かしパターン取得部２１４は、検証対象となる透かしパターンを取得する。上述したように、透かしパターンである透かし画像Ｗは、透かし用画像データセットとともに外部から改竄できない安全な保管場所に保管されている。透かしパターン取得部２１４は、この保管場所から透かし画像Ｗを読み出して取得する。
【００７０】
パターン提示部２１５は、パターン出力部２１３が出力したパターンと透かしパターン取得部２１４が取得した透かしパターンとを比較可能な態様で提示する。
図９は、実施の形態に係るパターン提示部２１５が提示する比較画面の一例を模式的に示す図である。図９は、学習モデルＭに「透かしＡ」と「透かしＢ」との２種類の透かしパターンが埋め込まれている場合の例を示している。図９において、「透かしＡ」はアルファベットの「ａｕ」という文字が描かれた画像であり、「透かしＢ」は人の顔が描かれた画像である。
【００７１】
図９に示すように、パターン提示部２１５は、情報処理装置１が学習モデルＭに埋め込んだ透かしパターンである透かし画像Ｗと、透かし検出装置２が透かし検出の対象とする学習モデルＭから検出した画像とを並べて表示部Ｄに表示する。これにより、透かし検出装置２のユーザは、透かし検出の対象とする学習モデルＭから検出した画像が透かし画像Ｗと一致するか否かを一見して確認することができる。
【００７２】
また、パターン提示部２１５は、透かし検出の対象とする学習モデルＭから検出した画像と透かし画像Ｗとが一致するか否かを演算によって判定し、その結果を表示部Ｄに提示するようにしてもよい。具体的には、パターン提示部２１５は透かし検出の対象とする学習モデルＭから検出した画像と透かし画像Ｗとの差分画像の強度が所定の条件（例えば、透かし画像Ｗの強度の１０％以下となること）を満たす場合、両者が一致すると判定すればよい。パターン提示部２１５が算出した判定結果を表示部Ｄに表示させることにより、透かし検出装置２のユーザは、透かし検出の対象とする学習モデルＭから検出した画像と透かし画像Ｗとが一致するか否かの判断の一助とすることができる。
【００７３】
＜情報処理装置１が実行する学習方法の処理フロー＞
図１０は、実施の形態に係る情報処理装置１が実行する処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置１が起動したときに開始する。
【００７４】
モデル取得部１１０は、透かしパターンの埋め込み対象とする学習モデルＭを取得する（Ｓ２）。透かしパターン取得部１１１は、学習モデルＭに埋め込むための透かしパターンを取得する（Ｓ４）。画像取得部１１２は、学習モデルＭに透かしパターンを埋め込むための再学習に用いる再学習用学習データを構成する透かし用画像データセットを取得する（Ｓ６）。
【００７５】
重畳用パターン取得部１１３は、透かし用画像データセットに含まれる画像データと同数のパターンであって、各パターンの重ね合わせが透かしパターンを再現するように構成された複数のパターンを取得する（Ｓ８）。学習用データ生成部１１４は、透かし用画像データセットに含まれる画像データと複数のパターンとの組み合わせを再学習用学習データとして生成する（Ｓ１０）。
【００７６】
学習実行部１１６は、再学習用学習データを用いてファインチューニングにより学習モデルＭを再学習する（Ｓ１２）。これにより、学習実行部１１６は、学習モデルＭに透かしパターンを埋め込むことができる。学習実行部１１６が再学習を実行すると、本フローチャートにおける処理は終了する。
【００７７】
＜実施の形態に係る情報処理装置１が奏する効果＞
以上説明したように、実施の形態に係る情報処理装置１によれば、学習モデルＭの出所を特定できるようにすることができる。
【００７８】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の分散・統合の具体的な実施の形態は、以上の実施の形態に限られず、その全部又は一部について、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果を合わせ持つ。
【００７９】
＜第１の変形例＞
上記では、情報処理装置１が学習モデルＭに透かしパターンを埋め込む場合について説明した。ここで、透かしパターンは一つの独立した図柄でなくてもよく、例えば、一つの画像を２以上の部分画像に分割し、各部分画像をそれぞれ透かしパターンとしてもよい。このとき、情報処理装置１は、少なくとも１つの部分画像を学習モデルＭに埋め込まずに保管用画像として保管する。この場合、透かし検出装置２は、学習モデルＭから各透かしパターンを検出した上でそれらを組み合わせ、かつ保管用画像と組み合わせることで初めて完全な画像を得る。各部分画像は、いわば電子的な「割符」として機能する。これにより、万が一第三者に透かしパターンの一部が漏洩したとしても、第三者はその透かしパターンから全体画像を構成することは困難であるため、安全性をより向上することができる。
【００８０】
＜第２の変形例＞
上記では、学習用データ生成部１１４が、複数の識別ラベルＬそれぞれの要素を所定の手順にしたがって透かしパターンの画素配列と同じ配列の２次元データに変換し、変換した複数の２次元データのそれぞれと透かしパターンとに基づいて、２次元データそれぞれを修正する場合について説明した。これに替えて、学習用データ生成部１１４は、透かしパターンの画素配列を所定の手順に従って識別ラベルＬと同じ配列の１次元データに変換し、変換した複数の１次元データのそれぞれと透かしパターンとに基づいて、識別ラベルＬを修正してもよい。
【００８１】
＜第３の変形例＞
上記では、変換部１１４０が、透かし画像Ｗと画像化した識別ラベルＬとのアダマール積を、再学習に用いる教師用識別ラベルＬｔとする場合について説明した。しかしながら、教師用識別ラベルＬｔの取得方法は上記に限られない。例えば、変換部１１４０は、透かし画像Ｗと画像化した識別ラベルＬとのアダマール積の結果、画素値を大きい順に所定の数だけ選択し、残りは０又は０に近い実数（例えば、選択した画素値の中の最小値の１０％）としてもよい。さらに、変換部１１４０は、選択した画素の値を１とし、それ以外の画素の値は０又は０に近い実数として教師用識別ラベルＬｔを２値化してもよい。
【符号の説明】
【００８２】
１・・・情報処理装置
１０・・・記憶部
１１・・・制御部
１１０・・・モデル取得部
１１１・・・透かしパターン取得部
１１２・・・画像取得部
１１３・・・重畳用パターン取得部
１１４・・・学習用データ生成部
１１４０・・・変換部
１１４１・・・修正部
１１４２・・・画像選択部
１１５・・・モデル適用部
１１６・・・学習実行部
２・・・透かし検出装置
２０・・・記憶部
２１・・・制御部
２１０・・・モデル取得部
２１１・・・画像取得部
２１２・・・モデル適用部
２１３・・・パターン出力部
２１４・・・透かしパターン取得部
２１５・・・パターン提示部
Ｄ・・・表示部
【図１】
2020003879.tif 000003
【図２】
2020003879.tif 000004
【図３】
2020003879.tif 000005
【図４】
2020003879.tif 000006
【図５】
2020003879.tif 000007
【図６】
2020003879.tif 000008
【図７】
2020003879.tif 000009
【図８】
2020003879.tif 000010
【図９】
2020003879.tif 000011
【図１０】
2020003879.tif 000012