JP7166738B2 - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP7166738B2
JP7166738B2 JP2019188545A JP2019188545A JP7166738B2 JP 7166738 B2 JP7166738 B2 JP 7166738B2 JP 2019188545 A JP2019188545 A JP 2019188545A JP 2019188545 A JP2019188545 A JP 2019188545A JP 7166738 B2 JP7166738 B2 JP 7166738B2
Authority
JP
Japan
Prior art keywords
function
vector data
class
identification
conversion function
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019188545A
Other languages
English (en)
Other versions
JP2021064174A (ja
Inventor
慧 米川
コウ 牛
茂莉 黒川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
KDDI Corp
Original Assignee
KDDI Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by KDDI Corp filed Critical KDDI Corp
Priority to JP2019188545A priority Critical patent/JP7166738B2/ja
Publication of JP2021064174A publication Critical patent/JP2021064174A/ja
Application granted granted Critical
Publication of JP7166738B2 publication Critical patent/JP7166738B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Apparatus For Radiation Diagnosis (AREA)
  • Image Analysis (AREA)

Description

本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
近年、ニューラルネットワークを始めとする機械学習の技術が急速に発展してきている。ニューラルネットワークのような教師あり機械学習では、学習に用いる学習データから入出力関係を学習することから、出力を得ようとするときに学習モデルに入力するデータは学習時と同種のデータである必要がある。すなわち、入力データがベクトルデータならば、次元数が同一であり、各次元の平均値や分散といった統計的性質等が学習時から大きく乖離しないことが必要である。しかしながら、学習データの入手が困難な場合、学習時とは異種なデータを入力として出力を得たいことがある。
学習データとは異種なデータを入力として学習モデルから出力を得ることを可能とするために、例えば非特許文献1には、あるベクトル空間(ソースドメイン)に存在するデータを別のベクトル空間(ターゲットドメイン)に変換する手法が提案されている。
具体的には、非特許文献1に開示されている技術では、行列の特異値分解を用いることにより、ソースドメインのベクトル空間からターゲットドメインのベクトル空間への線形変換を得て、これを用いてソースドメインのベクトルデータをターゲットドメインのベクトル空間に変換している。これにより、ソースドメインの学習データの入力の次元数や統計的性質を、事前にターゲットドメインの入力データに合わせておくことができるため、学習データとは異種なデータを入力として学習モデルから出力を得ることができる。
Liu Yang, Li-Ping Jing, and Jian Yu. 2015. Heterogeneous transductive transfer learning algorithm. Ruan Jian Xue Bao/Journal Softw. 26, 11 (2015), 2762-2780.
上記の技術を用いることにより、たしかに、異なるドメインのデータに学習モデルを適用することができる。しかしながら、非特許文献1において学習される線形変換は、同一のクラスに属するソースドメインのベクトルデータとターゲットドメインのベクトルデータを、ターゲットドメインのベクトル空間中の近傍領域に変換する保証はないため、モデル適用時に精度が低下する恐れがある。
本発明はこれらの点に鑑みてなされたものであり、異なるドメインのデータで構築した学習モデルを他のドメインのデータに適用する場合の学習モデルの精度を向上させるための技術を提供することを目的とする。
本発明の第1の態様は、情報処理装置である。この装置は、クラス識別用ベクトル空間のベクトルデータを入力とし、当該ベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数を格納するクラス識別関数格納部と、第1ベクトルデータを前記クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数を格納する第1変換関数格納部と、前記第1ベクトルデータとは異なる次元数のベクトルデータであって、前記第1ベクトルデータに紐づけられている第2ベクトルデータを、前記識別用ベクトルデータに変換する第2変換関数を格納する第2変換関数格納部と、前記第1変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第1ベクトルデータのクラスラベルの推定値である第1推定値を取得する第1クラス識別部と、前記第2変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第2ベクトルデータのクラスラベルの推定値である第2推定値を取得する第2クラス識別部と、前記第1推定値と前記第2推定値を含む評価関数の評価値に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新する更新部と、を備える。
前記更新部は、前記評価関数の評価値に基づいて、前記クラス識別関数をさらに更新してもよい。
前記評価関数は、互いに紐づけられた前記第1ベクトルデータと前記第2ベクトルデータとのそれぞれから得られた前記第1推定値と前記第2推定値との差が小さい場合は、大きい場合よりも小さな評価値を出力するように構成されていてもよい。
前記更新部は、前記評価関数の評価値が小さくなるように前記クラス識別関数、前記第1変換関数、及び前記第2変換関数のうち少なくとも1つを更新してもよい。
前記更新部は、前記第1ベクトルデータを前記第1変換関数で変換して得られた識別用ベクトルデータと、前記第2ベクトルデータを前記第2変換関数で変換して得られた識別用ベクトルデータとを用いて算出される類似度指標に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新してもよい。
前記第2変換関数格納部は、前記更新部により更新された更新済み第2変換関数をさらに格納してもよく、前記情報処理装置は、更新済み第2変換関数とクラス識別関数との合成関数に前記第2ベクトルデータを入力することで識別処理を実行する識別部をさらに備えてもよい。
本発明の第2の態様は、情報処理方法である。この方法において、プロセッサが、クラス識別用ベクトル空間のベクトルデータを入力とし、当該ベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数をクラス識別関数格納部から読み出して取得するステップと、第1ベクトルデータを前記クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数を第1変換関数格納部から読み出して取得するステップと、前記第1ベクトルデータとは異なる次元数のベクトルデータであって、前記第1ベクトルデータに紐づけられている第2ベクトルデータを、前記識別用ベクトルデータに変換する第2変換関数を第2変換関数格納部から読み出して取得するステップと、前記第1変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第1ベクトルデータのクラスラベルの推定値である第1推定値を取得するステップと、前記第2変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第2ベクトルデータのクラスラベルの推定値である第2推定値を取得するステップと、前記第1推定値と前記第2推定値を含む評価関数の評価値に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新するステップと、を実行する。
本発明の第3の態様は、プログラムである。このプログラムは、コンピュータに、クラス識別用ベクトル空間のベクトルデータを入力とし、当該ベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数をクラス識別関数格納部から読み出して取得する機能と、第1ベクトルデータを前記クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数を第1変換関数格納部から読み出して取得する機能と、前記第1ベクトルデータとは異なる次元数のベクトルデータであって、前記第1ベクトルデータに紐づけられている第2ベクトルデータを、前記識別用ベクトルデータに変換する第2変換関数を第2変換関数格納部から読み出して取得するステップと、前記第1変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第1ベクトルデータのクラスラベルの推定値である第1推定値を取得する機能と、前記第2変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第2ベクトルデータのクラスラベルの推定値である第2推定値を取得する機能と、前記第1推定値と前記第2推定値を含む評価関数の評価値に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新する機能と、を実現させる。
このプログラムを提供するため、あるいはプログラムの一部をアップデートするために、このプログラムを記録したコンピュータ読み取り可能な記録媒体が提供されてもよく、また、このプログラムが通信回線で伝送されてもよい。
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、コンピュータプログラム、データ構造、記録媒体などの間で変換したものもまた、本発明の態様として有効である。
本発明によれば、異なるドメインのデータで構築した学習モデルを他のドメインのデータに適用する場合の学習モデルの精度を向上させることができる。
実施の形態の概要を説明するための図である。 実施の形態に係る情報処理装置の機能構成を模式的に示す図である。 未知のターゲットドメインのデータにクラス識別関数を適用する場合の様子を模式的に示す図である。 実施の形態に係る情報処理装置が実行する情報処理の流れを説明するためのフローチャートである。 各関数の繰り返し更新処理を説明するためのフローチャートである。
<実施の形態の概要>
図1(a)-(b)は、実施の形態の概要を説明するための図である。説明の便宜のため、以下本明細書において、ソースドメインのデータは胸部X線のデジタル画像に由来するデータであり、ターゲットドメインのデータは胸部X線のデジタル画像を医師が読影しその結果が記載されたカルテの文章であるものとする。また、ソースドメインに対応するベクトル空間を「第1ベクトル空間」、ターゲットドメインに対応するベクトル空間を「第2ベクトル空間」と記載する。
ソースドメインのデータである各デジタル画像は、それぞれ第1ベクトル空間中の1点に射影することができる。この射影の手法は任意であり種々の手法が存在するが、例えば、デジタル画像の各画素を並べたベクトルを考えたとき、ベクトルデータの各要素を座標値と見なすことにより、ベクトルデータは、ベクトルデータのサイズ(すなわち、デジタル画像の画素数)と同次元の多次元空間における1点に射影することができる。
例えば、デジタル画像の画素数が3であり、各画素の値がそれぞれa、b、及びcであるとする。この場合、デジタル画像は、3次元空間中の1点(a,b,c)に射影することができる。この他、デジタル画像から1又は複数の特徴量を求めることにより、各特徴量を軸とする多次元空間中にデジタル画像を射影することができる。別の例としては、後述するように、デジタル画像に対して畳み込みニューラルネットワーク(Convolutional Neural Network, CNN)を適用することで、デジタル画像をベクトルデータに変換してもよい。
同様に、ターゲットドメインのデータである各文章も、それぞれ第2ベクトル空間中の1点に射影することができる。この射影の手法も任意であり種々の手法が存在するが、例えば、既知のWord2vecの手法を用いることにより、文章をベクトルデータに変換することができる。変換されたベクトルデータの各要素を座標値と見なすことにより、ベクトルデータは、ベクトルデータのサイズと同次元の多次元空間における1点に射影することができる。
ソースドメインのデジタル画像はそれぞれ、悪性の腫瘍が撮像されているか否かを示すクラスラベルが付与されている。具体的には、悪性の腫瘍が撮像されているデジタル画像は「腫瘍ありクラス」を示すクラスラベルとして「1」が付与され、悪性の腫瘍が撮像されていないデジタル画像は「腫瘍なしクラス」を示すクラスラベルとして「0」が付与されている。
上述したように、ターゲットドメインのデータである文章は、ソースドメインのデータであるデジタル画像を医師が読影して作成したカルテの文章である。したがって、ソースドメインのデータであるデジタル画像と、ターゲットドメインのデータである文章とは紐づけられている。しかしながら、ターゲットドメインのデータには腫瘍の有無を示すラベルは付与されていない。
実施の形態に係る情報処理装置は、例えばニューラルネットワーク等の既知の機械学習手法を用いることにより、ソースドメインのデジタル画像を入力とし、入力したデジタル画像に付与されているクラスラベルを出力する学習モデルを生成する。
具体的には、図1(a)に示すように、情報処理装置は、第1変換関数fを用いてデジタル画像をクラス識別用ベクトル空間に射影し、クラス識別用ベクトル空間のデータを入力したときに入力データのクラスラベルを出力するクラス識別関数hを生成する。
図1(a)において、白抜きの丸はクラス識別用ベクトル空間においてクラスラベルが1のデータを表し、黒丸はクラスラベルが0のデータを表している。クラス識別関数hは、図1(a)において破線上で0を出力し、破線より図中上側の領域で正の値、下側の領域で負の値を出力する関数である。すなわち、クラス識別関数hの出力値の正負がクラスラベルに対応する。なお、説明の便宜のため図1(a)においてクラスの境界の形(すなわち、クラス識別関数hの形)は直線で表しているが、複雑な曲線であってもよい。一般には、クラス識別用ベクトル空間は多次元空間であるため、クラスの境界は複雑な超曲面となり得る。
クラス識別関数hは、クラス識別用ベクトル空間で定義される関数である。したがって、ターゲットドメインのデータをクラス識別用ベクトル空間のデータに変換できれば、クラス識別関数hを形式的には適用することができる。例えば、ソースドメインのデータである文章をWord2vecでベクトルデータに変換し、変換したベクトルデータを第2変換関数gを用いてクラス識別用ベクトル空間のベクトルデータに変換できれば、クラス識別関数hを適用することができる。
しかしながら、クラス識別関数hは、デジタル画像に由来するクラス識別用ベクトル空間のデータを判別対象として学習されているため、クラス識別用ベクトル空間のデータであったとしても文章に由来するデータでは判別できない恐れがある。図1(a)に示す例では、白抜きの四角はクラス識別用ベクトル空間において真のクラスラベルが1の文章に由来するデータを表し、黒の四角は真のクラスラベルが0のデータを表している。図1(a)に示すように、クラス識別関数hの上側にも黒の四角が存在し、下側にも白抜きの四角が存在する。これは、Word2vec及び第2変換関数gを用いて文章をクラス識別用ベクトル空間中のデータに変換しても、クラス識別関数hは正しいクラスラベルを出力できないことを示している。
そこで、実施の形態に係る情報処理装置は、後述する「合意原理(Consensus principle)」を用いることにより、各変換関数とクラス識別関数hとを最適化する。図1(b)は、合意原理を用いた最適化後の第1変換関数f’、第2変換関数g’、及びクラス識別関数h’を示す模式図である。図1(b)に示すように、第1変換関数f’は、画像データに由来するベクトルを第1変換関数fとは異なる点に射影する。同様に、第2変換関数g’は、文章に由来するベクトルを第2変換関数gとは異なる点に射影する。また、クラス識別関数h’は、第1変換関数f’又は第2変換関数g’によってクラス識別用ベクトル空間に射影されたデータに基づいて、クラスラベルを判別するように学習されている。
これにより、図1(b)に示すように、クラス識別関数h’は、画像データに由来するクラス識別用ベクトル空間中の点と文章に由来するクラス識別用ベクトル空間中の点との両方の点について、正しいクラスラベルを識別できるようになる。
ここで、クラスラベルが付与されたソースドメインのデータは学習時点で入手可能だが、クラスラベルが付与されたターゲットドメインのデータは学習時点では入手cだと仮定する。ソースドメインに由来するデータは得られるがターゲットドメインに由来するデータが得られないことは、図1(a)-(b)において白抜きの丸及び黒丸の予測値はクラスラベルに基づいて修正可能だが、白抜きの四角及び黒の四角の予測値はクラスラベルに基づく修正が不能であることを意味する。この場合、実施の形態に係る情報処理装置は、定性的には、クラスラベルのあるソースドメインのデータを用いてクラス識別関数h’の性能を上げつつ、かつ、クラスラベルのないターゲットドメインのデータも判別できるように、第1変換関数f’、第2変換関数g’及びクラス識別関数h’を最適化することになる。
情報処理装置は、最適化後の第2変換関数g’及びクラス識別関数h’を記憶する。情報処理装置は、クラスラベルが付されていない文書についても、第2変換関数g’で変換した後にクラス識別関数h’を用いてクラスラベルを出力することにより、最適化前の各関数を用いる場合と比較して、クラスラベルの推定精度が向上していることが期待できる。
このように、実施の形態に係る情報処理装置によれば、異なるドメインのデータで構築した学習モデルを他のドメインのデータに適用する場合の学習モデルの精度を向上させることができる。
<実施の形態に係る情報処理装置1の機能構成>
図2は、実施の形態に係る情報処理装置1の機能構成を模式的に示す図である。情報処理装置1は、記憶部2と制御部3とを備える。図2において、矢印は主なデータの流れを示しており、図2に示していないデータの流れがあってもよい。図2において、各機能ブロックはハードウェア(装置)単位の構成ではなく、機能単位の構成を示している。そのため、図2に示す機能ブロックは単一の装置内に実装されてもよく、あるいは複数の装置内に分かれて実装されてもよい。機能ブロック間のデータの授受は、データバス、ネットワーク、可搬記憶媒体等、任意の手段を介して行われてもよい。
記憶部2は、情報処理装置1を実現するコンピュータのBIOS(Basic Input Output System)等を格納するROM(Read Only Memory)や情報処理装置1の作業領域となるRAM(Random Access Memory)、OS(Operating System)やアプリケーションプログラム、当該アプリケーションプログラムの実行時に参照される各変換関数やクラス識別関数等の種々の情報を格納するHDD(Hard Disk Drive)やSSD(Solid State Drive)等の大容量記憶装置である。
制御部3は、情報処理装置1のCPU(Central Processing Unit)やGPU(Graphics Processing Unit)等のプロセッサであり、記憶部2に記憶されたプログラムを実行することによって第1クラス識別部30、第2クラス識別部31、更新部32、及び識別部33として機能する。
なお、図2は、情報処理装置1が単一の装置で構成されている場合の例を示している。しかしながら、情報処理装置1は、例えばクラウドコンピューティングシステムのように複数のプロセッサやメモリ等の計算リソースによって実現されてもよい。この場合、制御部3を構成する各部は、複数の異なるプロセッサの中の少なくともいずれかのプロセッサがプログラムを実行することによって実現される。
図2に示すように、記憶部2は、クラス識別関数格納部20、第1変換関数格納部21、及び第2変換関数格納部22を含んでいる。クラス識別関数格納部20は、クラス識別用ベクトル空間のベクトルデータを入力とし、そのベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数hを格納している。
第1変換関数格納部21は、第1ベクトルデータを、クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数fを格納している。第2変換関数格納部22は、第1ベクトルデータとは異なる次元数のベクトルデータであって、第1ベクトルデータに紐づけられている第2ベクトルデータを、識別用ベクトルデータに変換する第2変換関数gを格納している。ここで、第1ベクトルデータは上述したソースドメインのデータに対応し、第2ベクトルデータは上述したターゲットドメインのデータに対応する。
第1変換関数fは、例えば、畳み込みニューラルネットワークで構成してよく、第2変換関数gは埋め込み層(embedding layer)を介した長期短期記憶(Long Short-Term Memory, LSTM)で構成してよく、一般には、多層パーセプトロンで構成してもよい。特に入出力次元が整合しているユニット数を有すれば3層の多層パーセプトロンで構成してもよいがこの限りではない。
ここで、第1変換関数f及び第2変換関数gは、ともに入力されたベクトルデータを復元できるような性質を持つ関数であってもよい。具体的には、第1変換関数fは、第1ベクトルデータ群を入力として複数の識別用ベクトルデータを出力したとき、その識別用ベクトルデータを入力として、第1ベクトルデータ群の一部又は全部を近似する第3変換関数が存在するような関数である。同様に、第2変換関数gは、第2ベクトルデータ群を入力として複数の識別用ベクトルデータを出力したとき、その識別用ベクトルデータを入力として、第2ベクトルデータ群の一部又は全部を近似する第4換関数が存在するような関数である。
あるいは、第1ベクトルデータ及び第2ベクトルデータが、例えば音声データのように時間によって変化する時系列データである場合、第1変換関数f及び第2変換関数gは、入力されたベクトルデータの将来を予測するような関数であってもよい。
第1変換関数f及び第2変換関数gは、例えば既知の自己教師あり学習(self-supervised learning)又は教師なし学習(unsupervised learning)の手法を用いることで実現できる。これにより、情報処理装置1は、自己教師あり学習は改変された入力データから元の入力データを推定したり、入力データから将来又は過去の値を推定したりするよう学習タスクを実現できる。
例えば、画像データについては画像を複数(例えば、9つ)のブロックに分割して順番を入れ替えた入力から元の画像を推定するJigsaw++を用いてもよい。文章データについては、例えば、文章中の特定の単語を入力とし前後の単語を推定するWord2vecを用いてもよい。一般には、教師なし学習の行列因子分解を用いて入力データを近似する線形写像を得るHeMapを用いてもよい。
記憶部2は、複数の第1ベクトルデータから構成される第1ベクトルデータ群と、複数の第2ベクトルデータから構成される第2ベクトルデータ群とも記憶している。第1クラス識別部30は、第1変換関数fを第1変換関数格納部21から読み出して取得する。また、第1クラス識別部30は、第1ベクトルデータ群を記憶部2から読み出して取得する。
第1クラス識別部30は、第1ベクトルデータ群を構成する第1ベクトルデータを第1変換関数fに入力することにより、識別用ベクトルデータに変換する。第1クラス識別部30は、変換した識別用ベクトルデータをクラス識別関数hに入力することで、第1ベクトルデータのクラスラベルの推定値である第1推定値を取得する。
第2クラス識別部31は、第2ベクトルデータ群を構成する第2ベクトルデータを第2変換関数gに入力することにより、識別用ベクトルデータに変換する。第2クラス識別部31は、変換した識別用ベクトルデータをクラス識別関数hに入力することで、第2ベクトルデータのクラスラベルの推定値である第2推定値を取得する。
なお、識別用ベクトルデータの次元と、第1ベクトルデータの次元又は第2ベクトルデータの次元は必ずしも異なっていなくてもよい。例えば、識別用ベクトルデータの次元と、第1ベクトルデータの次元又は第2ベクトルデータの次元とが同一であること、すなわち第1変換関数f又は第2変換関数gが恒等変換であってもよい。
更新部32は、第1推定値と第2推定値を含む評価関数Eの評価値を用いて、合意原理に基づいて第1変換関数fと第2変換関数gとのうち少なくとも1つを更新する。具体的には、記憶部2は、各変換関数を更新する際に更新部32が参照する評価関数Eを格納している。評価関数Eの一例は、以下の式(1)で示される。
Figure 0007166738000001
ここで、xは第1ベクトルデータ(ソースドメインのデータ)を表し、xは第2ベクトルデータ(ターゲットドメインのデータ)を表す。
評価関数Eは、合意原理を実現するための式である。式(1)に示すように、評価関数Eは、互いに紐づけられた第1ベクトルデータと第2ベクトルデータとのそれぞれから得られた第1推定値と第2推定値との差が小さい場合は、大きい場合よりも小さな評価値を出力するように構成されている。更新部32は、評価関数Eの評価値が小さくなるように第1変換関数fと第2変換関数gとのうち少なくとも1つを更新する。
合意原理は、識別モデルの2つの異なる出力を近づけることにより、識別モデルの誤り率が低減することを示した原理である。まず、更新部32中の評価値算出部320は、第1変換関数fとクラス識別関数hとの合成関数である第1合成関数h・fの出力である第1推定値を算出する。また、評価値算出部320は、第2変換関数gとクラス識別関数hとの合成関数である第2合成関数h・gの出力である第2推定値を算出する。最後に、評価値算出部320は、第1推定値と第2推定値との誤差を算出する。第1推定値と第2推定値との誤差は、例えば第1推定値と第2推定値のユークリッド距離を用いればよい。
関数更新部321は、第1推定値と第2推定値との誤差が小さくなるように、第1変換関数fと第2変換関数gとのうち少なくとも1つを更新する。関数更新部321は、最適化手法としてミニバッチ確率的勾配法を用いてもよい。関数更新部321が確率的勾配法を実施する際には、関数パラメータのそれぞれについて目的関数の微分を計算して更新式を求めてもよいが、自動微分機能を備えた数値計算フレームワークを用いてもよい。最適化の更新処理の終了条件は、既定の回数に達することとしてもよく、また、学習データを構築用と検証用とに分けて構築用で更新処理をし、検証用で目的関数の値を算出し、検証用の目的関数の値が既定の回数だけ連続で改善(より小さくなること)しなかった場合としてもよく、さらに、これら両方のいずれかに該当することとしてもよい。関数パラメータの初期値には標準正規分布にしたがう乱数を用いてもよい。
式(1)に示す評価関数Eに、潜在空間の損失の項と忘却防止の正則化項とを加えてもよい。そのような評価関数Eの一例を以下の式(2)に示す。
Figure 0007166738000002
式(2)において、第2項が潜在空間の損失の項であり、第3項が忘却防止の正則化項である。第2項は、異なるベクトルデータの特徴表現が互いに似通うようにする目的の項であり、第1ベクトルデータ由来の識別用ベクトルデータと、第2ベクトルデータ由来の識別用ベクトルデータとの類似度指標(例えば、ドメイン識別器を別途用意した敵対的損失や、識別用ベクトル空間の各次元の相関係数等)に基づく項である。第2項を用いることで、更新部32は、第1ベクトルデータを第1変換関数fで変換して得られた第1識別用ベクトルデータと、第2ベクトルデータを第2変換関数gで変換して得られた第2識別用ベクトルデータとを用いて算出される類似度指標に基づいて、第1識別用ベクトルデータと第2識別用ベクトルデータとが類似するように、第1変換関数fと第2変換関数gとのうち少なくとも1つを更新することになる。
式(2)における第3項は、関数パラメータの忘却を防ぐ目的の項であり、第1変換関数f及び第2変換関数gそれぞれの当初の値からの乖離をユークリッド距離で測った項である。第3項は、第1変換関数fと第2変換関数gとの更新を抑制する方向にはたらく。第3項を用いることで、更新部32は、第1変換関数fと第2変換関数gとを変化させすぎることを抑制できる。
ここで、第1変換関数fと第2変換関数gとの少なくともいずれか一方を更新すると、識別用ベクトル空間において第1ベクトルデータ又は第2ベクトルデータが射影される点が変更される可能性がある。そこで、更新部32は、評価関数Eの評価値に基づいて、クラス識別関数hを更新してもよい。具体的には、更新部32は、評価関数Eの評価値が小さくなるように、クラス識別関数hを更新する。これにより、更新部32は、更新後の第1変換関数fと第2変換関数gに最適化されたクラス識別関数hを生成することができる。
第2変換関数格納部22は、更新部32により更新された更新済み第2変換関数gをさらに格納する。同様に、クラス識別関数格納部20は、更新部32により更新された更新済みクラス識別関数hをさらに格納する。
図3は、未知のターゲットドメインのデータにクラス識別関数hを適用する場合の様子を模式的に示す図である。識別部33は、更新済み第2変換関数gとクラス識別関数hとの合成関数に、クラスラベルの推定精度が付与されていない未知の第2ベクトルデータ群を入力することで、ターゲットドメインのデータの識別処理を実行する。
図3において、白抜きの三角形は、更新済み第2変換関数g’を用いてクラス識別用ベクトル空間に射影された未知のターゲットドメインのデータ(すなわち、識別用ベクトルデータ)を示している。識別部33は、これらの識別用ベクトルデータをクラス識別関数h’に入力することにより、未知のターゲットドメインのデータが属するクラスを示すクラスラベルを推定することができる。なお、更新済み第2変換関数g’を用いてクラス識別用ベクトル空間に射影された識別用ベクトルデータをクラス識別関数hに入力することが、更新済み第2変換関数g’とクラス識別関数h’との合成関数に第2ベクトルデータを入力することに相当する。
このように、情報処理装置1は、ソースドメインのデータで構築した学習モデルであるクラス識別関数hをターゲットドメインのデータに適用することができる。
<情報処理装置1が実行する情報処理方法の処理フロー>
図4は、実施の形態に係る情報処理装置1が実行する情報処理の流れを説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置1が起動したときに開始する。
第1クラス識別部30は、第1ベクトルデータ群を記憶部2から読み出して取得する(S2)。第1クラス識別部30は、第1変換関数fを第1変換関数格納部21から読み出して取得する(S4)。第1クラス識別部30は、第1変換関数fを用いて第1ベクトルデータ群を構成する各ベクトルデータを識別用ベクトルデータに変換する(S6)。第1クラス識別部30は、変換した識別用ベクトルデータをクラス識別関数hに入力することにより、各識別用ベクトルデータが属するクラスを示すクラスラベルの推定値である第1推定値を取得する(S8)。
第2クラス識別部31は、第2ベクトルデータ群を記憶部2から読み出して取得する(S10)。第2クラス識別部31は、第2変換関数gを第2変換関数格納部22から読み出して取得する(S12)。第2クラス識別部31は、第2変換関数gを用いて第2ベクトルデータ群を構成する各ベクトルデータを識別用ベクトルデータに変換する(S14)。第2クラス識別部31は、変換した識別用ベクトルデータをクラス識別関数hに入力することにより、各識別用ベクトルデータが属するクラスを示すクラスラベルの推定値である第2推定値を取得する(S16)。
更新部32は、変換関数の更新時に参照するための評価関数Eを記憶部2から読み出して取得する(S18)。更新部32は、第1推定値と第2推定値を含む評価関数Eの評価値に基づいて、第1変換関数fと第2変換関数gとのうち少なくとも1つを更新する(S20)。更新部32が変換関数を更新すると、本フローチャートにおける処理は終了する。
[更新処理の繰り返し]
上記の処理は、クラス識別関数hを用いて第1変換関数fと第2変換関数gとの少なくとも一方を更新し、かつ、クラス識別関数hを更新する処理である。ここで、クラス識別関数hを更新した場合、更新後のクラス識別関数であるクラス識別関数hを用いて、再び第1変換関数fと第2変換関数gとの少なくとも一方を更新することもできる。以下では、クラス識別関数h、第1変換関数f、及び第2変換関数gを全て更新することを前提として説明する。
図5は、各関数の繰り返し更新処理を説明するためのフローチャートである。本フローチャートにおける処理は、例えば情報処理装置1が起動したときに開始する。
更新部32は、繰り返し処理に用いるループ変数iの値を1で初期化するとともに、更新処理の上限回数を定める更新上限回数N(Nは1以上の整数)を設定する(S30)。以下、本フローチャートにおいて、i回目の更新時に処理する第1変換関数f、第2変換関数g、及びクラス識別関数hを、それぞれ第1変換関数f、第2変換関数g、及びクラス識別関数hと記載する。
第1クラス識別部30及び第2クラス識別部31は、それぞれ第1変換関数f及び第2変換関数gを記憶部2から読み出して取得する(S32)。また、第1クラス識別部30及び第2クラス識別部31は、それぞれクラス識別関数hを記憶部2から読み出して取得する(S34)。
関数更新部321は、評価値算出部320が出力した評価値に基づいて、第1変換関数f及び第2変換関数gをそれぞれ第1変換関数fi+1及び第2変換関数gi+1に更新する(S36)。関数更新部321は、更新後の第1変換関数fi+1及び第2変換関数gi+1に基づいてクラス識別関数hをクラス識別関数hi+1に更新する(S38)。
関数更新部321は、第1変換関数fi+1及び第2変換関数gi+1を記憶部2に保存する(S40)。また、関数更新部321は、クラス識別関数hi+1を記憶部2に保存する(S42)。
ループ変数iの値が更新上限回数N未満の場合(S44のYes)、更新部32はループ変数iの値をi+1に更新し(S46)、ステップS32の処理に戻って更新処理を継続する。ループ変数iの値が更新上限回数Nに到達すると(S44のNo)、本フローチャートにおける処理は終了する。
更新処理終了後、第1変換関数f、第2変換関数g、及びクラス識別関数hはそれぞれN-1回更新されて第1変換関数f、第2変換関数g、及びクラス識別関数hとなる。これにより、情報処理装置1は、第1変換関数f、第2変換関数g、及びクラス識別関数hの精度をより向上させることができる。
<実施の形態に係る情報処理装置1が奏する効果>
以上説明したように、実施の形態に係る情報処理装置1によれば、異なるドメインのデータで構築した学習モデルを他のドメインのデータに適用する場合の学習モデルの精度を向上することができる。
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されず、その要旨の範囲内で種々の変形及び変更が可能である。例えば、装置の全部又は一部は、任意の単位で機能的又は物理的に分散・統合して構成することができる。また、複数の実施の形態の任意の組み合わせによって生じる新たな実施の形態も、本発明の実施の形態に含まれる。組み合わせによって生じる新たな実施の形態の効果は、もとの実施の形態の効果をあわせ持つ。
<変形例>
上記では、ソースドメインのデータがデジタル画像、ターゲットドメインのデータが文章である場合について主に説明したが、各データはこれに限られない。例えば、ソースドメインのデータが文章であり、ターゲットドメインのデータがデジタル画像であってもよい。また、ソースドメインのデータがユーザの購買履歴を示すデータであり、ターゲットドメインが、ユーザのウェブの一覧履歴を示すデータであってもよい。
1・・・情報処理装置
2・・・記憶部
20・・・クラス識別関数格納部
21・・・第1変換関数格納部
22・・・第2変換関数格納部
3・・・制御部
30・・・第1クラス識別部
31・・・第2クラス識別部
32・・・更新部
320・・・評価値算出部
321・・・関数更新部
33・・・識別部

Claims (8)

  1. クラス識別用ベクトル空間のベクトルデータを入力とし、当該ベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数を格納するクラス識別関数格納部と、
    第1ベクトルデータを前記クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数を格納する第1変換関数格納部と、
    前記第1ベクトルデータとは異なる次元数のベクトルデータであって、前記第1ベクトルデータに紐づけられている第2ベクトルデータを、前記識別用ベクトルデータに変換する第2変換関数を格納する第2変換関数格納部と、
    前記第1変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第1ベクトルデータのクラスラベルの推定値である第1推定値を取得する第1クラス識別部と、
    前記第2変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第2ベクトルデータのクラスラベルの推定値である第2推定値を取得する第2クラス識別部と、
    前記第1推定値と前記第2推定値を含む評価関数の評価値に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新する更新部と、
    を備える情報処理装置。
  2. 前記更新部は、前記評価関数の評価値に基づいて、前記クラス識別関数をさらに更新する、
    請求項1に記載の情報処理装置。
  3. 前記評価関数は、互いに紐づけられた前記第1ベクトルデータと前記第2ベクトルデータとのそれぞれから得られた前記第1推定値と前記第2推定値との差が小さい場合は、大きい場合よりも小さな評価値を出力するように構成されている、
    請求項1又は2に記載の情報処理装置。
  4. 前記更新部は、前記評価関数の評価値が小さくなるように前記クラス識別関数、前記第1変換関数、及び前記第2変換関数のうち少なくとも1つを更新する、
    請求項3に記載の情報処理装置。
  5. 前記更新部は、前記第1ベクトルデータを前記第1変換関数で変換して得られた識別用ベクトルデータと、前記第2ベクトルデータを前記第2変換関数で変換して得られた識別用ベクトルデータとを用いて算出される類似度指標に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新する、
    請求項3又は4に記載の情報処理装置。
  6. 前記第2変換関数格納部は、前記更新部により更新された更新済み第2変換関数をさらに格納し、
    更新済み第2変換関数とクラス識別関数との合成関数に前記第2ベクトルデータを入力することで識別処理を実行する識別部をさらに備える、
    請求項1から5のいずれか1項に記載の情報処理装置。
  7. プロセッサが、
    クラス識別用ベクトル空間のベクトルデータを入力とし、当該ベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数をクラス識別関数格納部から読み出して取得するステップと、
    第1ベクトルデータを前記クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数を第1変換関数格納部から読み出して取得するステップと、
    前記第1ベクトルデータとは異なる次元数のベクトルデータであって、前記第1ベクトルデータに紐づけられている第2ベクトルデータを、前記識別用ベクトルデータに変換する第2変換関数を第2変換関数格納部から読み出して取得するステップと、
    前記第1変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第1ベクトルデータのクラスラベルの推定値である第1推定値を取得するステップと、
    前記第2変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第2ベクトルデータのクラスラベルの推定値である第2推定値を取得するステップと、
    前記第1推定値と前記第2推定値を含む評価関数の評価値に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新するステップと、
    を実行する情報処理方法。
  8. コンピュータに、
    クラス識別用ベクトル空間のベクトルデータを入力とし、当該ベクトルデータが属するクラスを示すクラスラベルを出力するクラス識別関数をクラス識別関数格納部から読み出して取得する機能と、
    第1ベクトルデータを前記クラス識別用ベクトル空間のベクトルデータである識別用ベクトルデータに変換する第1変換関数を第1変換関数格納部から読み出して取得する機能と、
    前記第1ベクトルデータとは異なる次元数のベクトルデータであって、前記第1ベクトルデータに紐づけられている第2ベクトルデータを、前記識別用ベクトルデータに変換する第2変換関数を第2変換関数格納部から読み出して取得するステップと、
    前記第1変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第1ベクトルデータのクラスラベルの推定値である第1推定値を取得する機能と、
    前記第2変換関数によって変換された前記識別用ベクトルデータを前記クラス識別関数に入力することで、前記第2ベクトルデータのクラスラベルの推定値である第2推定値を取得する機能と、
    前記第1推定値と前記第2推定値を含む評価関数の評価値に基づいて、前記第1変換関数と前記第2変換関数とのうち少なくとも1つを更新する機能と、
    を実現させるプログラム。
JP2019188545A 2019-10-15 2019-10-15 情報処理装置、情報処理方法、及びプログラム Active JP7166738B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2019188545A JP7166738B2 (ja) 2019-10-15 2019-10-15 情報処理装置、情報処理方法、及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019188545A JP7166738B2 (ja) 2019-10-15 2019-10-15 情報処理装置、情報処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2021064174A JP2021064174A (ja) 2021-04-22
JP7166738B2 true JP7166738B2 (ja) 2022-11-08

Family

ID=75487977

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019188545A Active JP7166738B2 (ja) 2019-10-15 2019-10-15 情報処理装置、情報処理方法、及びプログラム

Country Status (1)

Country Link
JP (1) JP7166738B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023074248A1 (ja) * 2021-11-01 2023-05-04 国立研究開発法人産業技術総合研究所 情報処理装置、脳情報通信装置、情報処理方法および情報処理プログラム

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019125313A (ja) 2018-01-19 2019-07-25 ヤフー株式会社 学習装置、学習方法および学習プログラム
WO2019146057A1 (ja) 2018-01-26 2019-08-01 株式会社ソニー・インタラクティブエンタテインメント 学習装置、実写画像分類装置の生成システム、実写画像分類装置の生成装置、学習方法及びプログラム
JP2019523504A (ja) 2016-07-28 2019-08-22 グーグル エルエルシー ドメイン分離ニューラルネットワーク

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2019523504A (ja) 2016-07-28 2019-08-22 グーグル エルエルシー ドメイン分離ニューラルネットワーク
JP2019125313A (ja) 2018-01-19 2019-07-25 ヤフー株式会社 学習装置、学習方法および学習プログラム
WO2019146057A1 (ja) 2018-01-26 2019-08-01 株式会社ソニー・インタラクティブエンタテインメント 学習装置、実写画像分類装置の生成システム、実写画像分類装置の生成装置、学習方法及びプログラム

Also Published As

Publication number Publication date
JP2021064174A (ja) 2021-04-22

Similar Documents

Publication Publication Date Title
Deng et al. A Survey of Non‐Rigid 3D Registration
WO2020042975A1 (zh) 人脸姿态估计/三维人脸重构方法、装置及电子设备
US11620521B2 (en) Smoothing regularization for a generative neural network
Varsavsky et al. Test-time unsupervised domain adaptation
WO2021254499A1 (zh) 编辑模型生成、人脸图像编辑方法、装置、设备及介质
Rohlfing et al. Multi-classifier framework for atlas-based image segmentation
JP2022502751A (ja) 顔キーポイント検出方法、装置、コンピュータ機器及びコンピュータプログラム
JP2021535482A (ja) 深層学習ベースのコレジストレーション
WO2023051140A1 (zh) 用于图像特征表示生成的方法、设备、装置和介质
US20210383241A1 (en) Training neural networks with limited data using invertible augmentation operators
CN111091010A (zh) 相似度确定、网络训练、查找方法及装置和存储介质
CN113822792A (zh) 图像配准方法、装置、设备及存储介质
CN114255381B (zh) 图像识别模型的训练方法、图像识别方法、装置及介质
JP7166738B2 (ja) 情報処理装置、情報処理方法、及びプログラム
Ma et al. Nonlinear statistical shape modeling for ankle bone segmentation using a novel kernelized robust PCA
Gantenbein et al. Revphiseg: A memory-efficient neural network for uncertainty quantification in medical image segmentation
CN110717402B (zh) 一种基于层级优化度量学习的行人再识别方法
CN113111687A (zh) 数据处理方法、系统及电子设备
Saygili Predicting medical image registration error with block-matching using three orthogonal planes approach
Aoshima et al. Deep Curvilinear Editing: Commutative and Nonlinear Image Manipulation for Pretrained Deep Generative Model
US11605001B2 (en) Weight demodulation for a generative neural network
KR102334666B1 (ko) 얼굴 이미지 생성 방법
CN115578308A (zh) 图像分割方法及装置
Wilms et al. A kernelized multi-level localization method for flexible shape modeling with few training data
Hansen et al. Discrete unsupervised 3D registration methods for the learn2reg challenge

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20211117

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220930

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221025

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221025

R150 Certificate of patent or registration of utility model

Ref document number: 7166738

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150