(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-01-08
(45)【発行日】2025-01-17
(54)【発明の名称】訓練装置、訓練方法、及びプログラム
(51)【国際特許分類】
G06N 3/096 20230101AFI20250109BHJP
G06N 20/00 20190101ALI20250109BHJP
【FI】
G06N3/096
G06N20/00
(21)【出願番号】P 2023541364
(86)(22)【出願日】2021-12-03
(86)【国際出願番号】 JP2021044388
(87)【国際公開番号】W WO2022153710
(87)【国際公開日】2022-07-21
【審査請求日】2023-07-06
(31)【優先権主張番号】P 2021003115
(32)【優先日】2021-01-12
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】000004237
【氏名又は名称】日本電気株式会社
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】戴 岑容
(72)【発明者】
【氏名】戸田 真人
【審査官】北川 純次
(56)【参考文献】
【文献】国際公開第2020/235033(WO,A1)
【文献】国際公開第2020/094026(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06N 3/02 - 3/10
G06N 20/00
(57)【特許請求の範囲】
【請求項1】
ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出する1または複数の特徴抽出手段と、
ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測する1または複数のクラス予測手段と、
ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、
ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算する1または複数のフィルタリング手段と、
ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、
ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失を参照して、前記1または複数の特徴抽出手段および前記1または複数のクラス予測手段のうちの少なくとも1つを更新するための更新手段と、
を備える訓練装置。
【請求項2】
前記1または複数のフィルタリング手段は、
前記ソースドメインクラス予測値およびソースドメインクラスラベルデータを参照して、前記ソースドメイン特徴値から1または複数の値をフィルタ除去し、
前記ターゲットドメインクラス予測値およびターゲットドメインクラスラベルデータを参照して、前記ターゲットドメイン特徴値から1又は複数の値をフィルタ除去する、請求項1に記載の訓練装置。
【請求項3】
前記1または複数のフィルタリング手段は、前記ソースドメイン分類損失および前記ターゲットドメイン分類損失をさらに参照する、請求項1または2に記載の訓練装置。
【請求項4】
前記更新手段は
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値から、クラスグループを出力するグループ化手段を備え、
前記クラスグループの各々は同じクラスラベルを共有する特徴値を含む、請求項1から3の何れか1項に記載の訓練装置。
【請求項5】
前記更新手段は、前記クラスグループを参照して前記グループ損失を算出するグループ損失算出手段をさらに備える、請求項4に記載の訓練装置。
【請求項6】
1または複数の特徴抽出手段によって、ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、
1または複数のクラス予測手段によって、ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することと、
ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、
ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算することと、
ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、
ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失を参照して、前記1または複数の特徴抽出手段および前記1または複数のクラス予測手段のうちの少なくとも1つを更新することと、
を含む訓練方法。
【請求項7】
請求項1に記載の訓練装置としてコンピュータを機能させるためのプログラムであって、前記コンピュータを、前記特徴抽出手段、前記クラス予測手段、前記フィルタリング手段、および前記更新手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、訓練装置、訓練方法、及びプログラムに関する。
【背景技術】
【0002】
ニューラルネットワークなどの機械学習技法はそれらのパラメータをトレーニングするために、大量のラベル付きデータを必要とすることが多い。一方、少量のラベル付きデータしか利用できないことがしばしば生じる。
【0003】
そのような場合に適用可能であり得る、いわゆるドメイン適合技術(domain adaptation techniques)が提案されている(例えば非特許文献1を参照)。ドメイン適応技術は、ターゲットデータセット(ターゲットドメインデータセットと呼ばれることが多い)に加えて、大量の代替的な代表的データセット(ソースドメインデータセットと呼ばれることが多い)を利用する。
【先行技術文献】
【非特許文献】
【0004】
【文献】Xiang Xu etal.、“d-SNE: Domain Adaptation using Stochastic Neighborhood Embedding”、Proceedings of IEEE conference on computer vision and pattern recognition. 2019
【発明の概要】
【発明が解決しようとする課題】
【0005】
非特許文献1で開示されたドメイン適応技術は、外れ値の影響で訓練プロセスが不安定になり、効率的に訓練プロセスを行うことができないという問題がある。
【0006】
本発明は上記課題に鑑みてなされたものであり、その目的の一例は、少量のターゲットドメインラベル付きデータしか利用できない状況であっても、効率的で安定した訓練プロセスを提供することにある。
【課題を解決するための手段】
【0007】
上記の目的を達成するために、訓練装置は、ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出する1または複数の特徴抽出手段と、ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測する1または複数のクラス予測手段と、ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算する1または複数のフィルタリング手段と、ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失を参照して、1または複数の特徴抽出手段および1または複数のクラス予測手段のうちの少なくとも1つを更新するための更新手段と、を備える。
【0008】
上記の目的を達成するために、分類装置は、ターゲットドメインデータからターゲットドメイン特徴値を抽出する特徴抽出手段と、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測するクラス予測手段と、を備え、前記特徴抽出手段および前記クラス予測手段のうちの少なくとも1つは、ソースドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたソースドメイン特徴値と、ターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたターゲットドメイン特徴値とを参照して訓練されている。
【0009】
上記の目的を達成するために、訓練方法は、1または複数の特徴抽出手段によって、ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、1または複数のクラス予測手段によって、ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することと、ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算することと、ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失を参照して、1または複数の特徴抽出手段および1または複数のクラス予測手段のうちの少なくとも1つを更新することと、を含む。
【0010】
上記の目的を達成するために、分類方法は、特徴抽出手段により、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、クラス予測手段により、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することとを含み、特徴抽出手段およびクラス予測手段のうちの少なくとも1つは、ソースドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたソースドメイン特徴値と、ターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたターゲットドメイン特徴値とを参照して訓練されている。
【0011】
上記目的を達成するために、コンピュータを訓練装置として機能させるためのプログラムであって、コンピュータを特徴抽出手段、クラス予測手段、フィルタリング手段、更新手段として機能させるためのプログラム。
【0012】
上記目的を達成するために、分類装置としてコンピュータを機能させるためのプログラムであって、特徴抽出手段及びクラス予測手段としてコンピュータを機能させるためのプログラム。
【発明の効果】
【0013】
本発明の例示的な態様によれば、少量のターゲットドメインラベル付きデータしか利用できない状況であっても、効率的で安定した訓練プロセスを提供することができる。
【図面の簡単な説明】
【0014】
【
図1】
図1は、第1の例示的実施形態に係る訓練装置の構成を示すブロック図である。
【
図2】
図2は、第1の例示的実施形態に係る訓練方法の流れを示すフロー図である。
【
図3】
図3は、第1の例示的実施形態に係る分類装置の構成を示すブロック図である。
【
図4】
図4は、第1の例示的実施形態に係る分類方法の流れを示すフロー図である。
【
図5】
図5は、第2の例示的実施形態に係る訓練装置の構成を示す図である。
【
図6】
図6は、第2の例示的実施形態における入力データの例を示す図である。
【
図7】
図7は、第2の例示的実施形態におけるグループ損失を模式的に示す図である。
【
図8】
図8は、第2の例示的実施形態に係る訓練方法の流れを示すフロー図である。
【
図9】
図9は、第2の例示的実施形態に係る分類装置の構成を示すブロック図である。
【
図10】
図10は、第3の例示的実施形態に係る訓練装置の構成を示すブロック図である。
【
図11】
図11は、第4の例示的実施形態に係る訓練装置の構成を示す図である。
【
図12】
図12は、第4の例示的実施形態におけるドメイン不変性を模式的に示す図である。
【
図13】
図13は、第4の例示的実施形態に係る訓練方法の流れを示すフロー図である。
【
図14】
図14は、第5の例示的実施形態に係る訓練装置の構成を示すブロック図である。
【
図15】
図15は、各例示的実施形態に係るのハードウェア構成を示す構成図である。
【発明を実施するための形態】
【0015】
<第1の例示的実施形態>
以下、本発明に係る第1の例示的実施形態について図面を用いて説明する。第1の例示的実施形態は、後続の例示的実施形態の基礎となる実施形態である。
【0016】
(第1の例示的実施形態の概観)
本例示的実施形態に係る訓練装置(学習装置と呼ぶこともある)は、訓練装置に入力されたデータから特徴量を抽出する特徴抽出部を訓練する(学習する、学習させるとも言う)。また、訓練装置は、特徴値(特徴量とも呼ぶ)に基づいて分類を行うクラス予測部を訓練する。
【0017】
本発明の第1の例示的実施形態に係る分類装置は、学習された特徴抽出部と学習されたクラス予測部を備える。
【0018】
第1の例示的実施形態では、ソースドメインに属するデータと、ターゲットドメインに属するデータとが用いられる。ここで、「ドメイン」とは、単にデータセットを概念的に区別するためのものであり、第1の例示的実施形態を限定するものではない。
【0019】
第1の例示的実施形態では、ソースドメインに属するデータのデータサイズの方がターゲットドメインに属するデータのデータサイズよりも大きい。さらに、ソースドメインに属するデータは、ターゲットドメインに属するデータと比較して、より多くのラベル付きデータを含む。ここで、「ラベル付きデータ」という用語は、「グラウンドトゥルース」とラベル付けされたデータを指す。ラベル付きデータは教師付き学習のために、または半教師付き学習のために訓練装置によって使用することができる。
【0020】
本発明の第1の例示的実施形態に係る分類装置は、ターゲットドメインに属するデータに対して分類を行うことを目的とする。第1の例示的実施形態に係る訓練装置はターゲットドメインに属するデータに対する分類の精度を向上させるために、ターゲットドメインに属するデータだけでなく、ソースドメインに属するデータを用いて訓練プロセスを行う。
【0021】
以上のような処理を行う分類装置では、ソースドメインから得られた知識を、ターゲットドメインでのトレーニングにも用いることになる。したがって、第1の例示的実施形態に係る分類装置は、いわゆるドメイン適応を行う分類装置として表現することができる。
【0022】
訓練装置及び分類装置に入力されるデータの種類は、第1の例示的実施形態を限定しない。ただし、ソースドメインに属するデータと、ターゲットドメインに属するデータとは、同じカテゴリに属することが好ましい。
【0023】
一例として、訓練装置および分類装置に入力される、ソースドメインに属するデータおよびターゲットドメインに属するデータは、映像データ、各種センサで得られたセンシングデータ、数値化された言語データ、または他の種類のデータであってもよい。
【0024】
(訓練装置の構成)
次に、第1の例示的実施形態に係る訓練装置10の構成について、
図1を用いて説明する。
図1は、訓練装置10の構成を示すブロック図である。
図1に示すように、訓練装置10は、特徴抽出部11と、クラス予測部12と、フィルタ部(フィルタリング部とも呼ぶ)13と、更新部14とを備える。第1の例示的実施形態において、特徴抽出部11、クラス予測部12、及びフィルタ部13の個数は1個でもよいし、2個以上でもよい。
【0025】
特徴抽出部11は、特許請求の範囲に記載の特徴抽出手段の一例である。クラス予測部12は、特許請求の範囲に記載のクラス予測手段の一例である。フィルタ部13は、特許請求の範囲に記載のフィルタリング手段の一例である。更新部14は、特許請求の範囲に記載の更新手段の一例である。
【0026】
特徴抽出部11には、ソースドメインデータとターゲットドメインデータとが入力される。ここで、ソースドメインデータはソースドメインに属するデータであり、ターゲットドメインデータは、ターゲットドメインに属するデータである。
【0027】
特徴抽出部11は、ソースドメインデータからソースドメイン特徴値(ソースドメイン特徴量とも呼ぶ)を抽出する。また、特徴抽出部11は、ターゲットドメインデータからターゲットドメイン特徴値(ターゲットドメイン特徴量とも呼ぶ)を抽出する。
【0028】
ここで、特徴抽出部11の数が1である場合、特徴抽出部11がドメインラベルに基づいて、ソースドメインデータとターゲットドメインデータとを判別できるように、ソースドメインデータとターゲットドメインデータとを判別するための当該ドメインラベルを特徴抽出部11に入力する構成とすることが好ましい。
【0029】
なお、特徴抽出部11の具体的な構成は、第1の例示的実施形態を限定するものではない。一例として、特徴抽出部11はCNN(convolutional neural network)であってもよいし、RNN(recurrent neural network)であってもよいし、他のニューラルネットワークや特徴抽出器であってもよい。また、特徴抽出部11は、学習によらない技術であってもよい。一例として、特徴抽出部11はSIFT(Scale-Invariant Feature Transform)、すなわち、画像中の各特徴値をキーポイント(x,y座標)とし、画像ごとの特徴値をキーポイントの集合とする非学習型の特徴抽出手法として実現できる。また、特徴抽出部11は、手動で選択/設計された(ルールベースの)特徴抽出方法として実現することができる。
【0030】
クラス予測部12は特徴抽出部11により抽出されたソースドメイン特徴値からソースドメインクラス予測値を予測し、当該ソースドメインクラス予測値を出力する。また、クラス予測部12は特徴抽出部11により抽出されたターゲットドメイン特徴値からターゲットドメインクラス予測値を予測し、当該ターゲットドメインクラス予測値を出力する。
【0031】
なお、クラス予測部12の具体的な構成は、第1の例示的実施形態を限定するものではない。一例として、クラス予測部12は(i)ソースドメイン特徴値をある閾値と比較することによりソースドメインクラス予測値を出力し、(ii)ターゲットドメイン特徴値を別の閾値と比較することによりターゲットドメインクラス予測値を出力するように構成することができる。
【0032】
フィルタ部13は、ソースドメインクラス予測値を参照して、ソースドメイン特徴値から1つまたは複数の値をフィルタリング(フィルタ除去)することによって、フィルタリングされたソースドメイン特徴値を計算する。また、フィルタ部13はターゲットドメインクラス予測値を参照して、ターゲットドメイン特徴値から1つ以上の値をフィルタリング(フィルタ除去)することにより、フィルタリングされたターゲットドメイン特徴値を算出する。
【0033】
なお、フィルタ部13が採用するフィルタ条件は第1の例示的実施形態を限定するものではないが、以下の構成を採用することができる。
【0034】
フィルタ部13は、ソースドメインクラスラベルデータを受信してもよい。ここで、ソースドメインクラスラベルデータは、特徴抽出部11が受信したソースドメインデータに対応付けられたグラウンドトゥルースラベルを示す。次いで、フィルタ部13は、ソースドメインクラス予測値およびソースドメインクラスラベルデータを参照して、ソースドメイン特徴値から1つまたは複数の値をフィルタリングしてもよい。より具体的には、フィルタ部13は、ソースドメイン特徴量から、ソースドメインクラスラベルデータと一致しない1つ以上の値をフィルタ除去してもよい。
【0035】
また、フィルタ部13は、ターゲットドメインクラスラベルデータを受信してもよい。ここで、ターゲットドメインクラスラベルデータは、特徴抽出部11が受信したターゲットドメインデータに対応付けられたグラウンドトゥルースラベルを示す。そして、フィルタ部13は、ターゲットドメインクラス予測値及びターゲットドメインクラスラベルデータを参照して、ターゲットドメイン特徴値から1つ以上の値をフィルタリングしてもよい。より具体的には、フィルタ部13は、ターゲットドメイン特徴値から、ターゲットドメインクラスラベルデータと一致しない1つ以上の値をフィルタ除去してもよい。
【0036】
更新部14は、ソースドメイン分類損失(ソースドメイン分類ロスとも呼ぶ)、ターゲットドメイン分類損失(ターゲットドメイン分類ロスとも呼ぶ)、及びグループ損失(グルーピング損失、グルーピングロスとも呼ぶ)を参照して、特徴抽出部11及びクラス予測部12の少なくとも一方を更新する。一例として、更新部14は、ソースドメイン分類損失、ターゲットドメイン分類損失およびグループ損失を参照してパラメータを更新し、更新されたパラメータを特徴抽出部11およびクラス予測部12に提供する。
【0037】
ソースドメイン分類損失は、ソースドメインクラス予測値を参照して計算され得る。一例として、ソースドメイン分類損失は、ソースドメインクラス予測値およびソースドメインクラスラベルデータを参照して計算されてもよい。
【0038】
ターゲットドメイン分類損失は、ターゲットドメインクラス予測値を参照して計算され得る。一例として、ターゲットドメイン分類損失は、ターゲットドメインクラス予測値およびターゲットドメインクラスラベルデータを参照して、計算されてもよい。
【0039】
グループ損失は、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算され得る。
【0040】
グループ損失を計算するための計算アルゴリズムは第1の例示的実施形態を限定するものではないが、以下の構成例を採用することができる。
【0041】
グループ損失は、同じクラス内のフィルタリングされた特徴値を参照して決定されたクラス内距離(intra class metrics)と、異なるクラス内のフィルタリングされた特徴値を参照して決定されたクラス間距離(inter class metrics)とに基づいて計算され得る。
【0042】
(有利な効果)
第1の例示的実施形態によれば、上述したように、更新部14は、ソースドメイン分類損失及びターゲットドメイン分類損失に加えて、グループ損失も参照して、特徴抽出部11及びクラス予測部12の少なくとも一方を更新する。したがって、第1の例示的実施形態によれば、ターゲットドメインラベル付きデータが少量であっても、特徴抽出部11及びクラス予測部12を適切に訓練することができる。
【0043】
また、第1の例示的実施形態によれば、上述したように、フィルタ部13はフィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を算出し、更新部14は、ソースドメイン分類損失及びターゲットドメイン分類損失に加えて、グループ損失も参照して、特徴抽出部11およびクラス予測部12の少なくとも一方を更新する。ここで、上述したように、グループ損失は、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して取得される。
【0044】
したがって、第1の例示的実施形態によれば、ソースドメイン特徴値およびターゲットドメイン特徴値に含まれ得る外れ値をフィルタ部13でフィルタ除去することができ、特徴抽出部11の学習処理を不安定化させることがない。
【0045】
したがって、第1の例示的実施形態に係る訓練装置10は、ターゲットドメインのラベル付きデータが少量であっても、効率的で安定した訓練プロセスを提供することができる。
【0046】
(訓練装置による訓練方法)
次に、第1の例示的実施形態に係る訓練装置10の訓練方法について、
図2を用いて説明する。
図2は、訓練装置10による訓練方法S1の流れを示すフロー図である。
図2に示すように、訓練装置10は、特徴抽出ステップS11、クラス予測ステップS12、フィルタステップS13、及び更新ステップS14を実行する。
【0047】
(特徴抽出ステップS11)
特徴抽出ステップS11において、特徴抽出部11はソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出する。
【0048】
(クラス予測ステップS12)
クラス予測ステップS12において、クラス予測部12はソース領域特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測する。
【0049】
(フィルタステップS13)
フィルタステップS13において、フィルタ部13は、
ソースドメインクラス予測値を参照してソースドメイン特徴値から1つ以上の値をフィルタリング(フィルタ除去)し、
ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1つ以上の値をフィルタリング(フィルタ除去)することによって、
フィルタリングされたソースドメイン特徴値及びフィルタリングされたターゲットドメイン特徴値を出力する。
【0050】
(更新ステップS14)
更新ステップS14において、更新部は、
ソースドメインクラス予測値を参照して算出されたソースドメイン分類損失、
ターゲットドメインクラス予測値を参照して算出されたターゲットドメイン分類損失、及び、
フィルタリングされたソースドメイン特徴値及びフィルタリングされたターゲットドメイン特徴値を参照して算出されたグループ損失
を参照して、特徴抽出部11及びクラス予測部12の少なくとも一方を更新する。
【0051】
(有利な効果)
以上説明した訓練装置10による訓練方法S1は、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供する。
【0052】
(分類装置の構成)
以下、第1の例示的実施形態に係る分類装置20の構成について、
図3を用いて実施例する。
図3は、分類装置20の構成を示すブロック図である。
図3に示すように、分類装置20は、特徴抽出部11と、クラス予測部12とを備える。
【0053】
特徴抽出部11には、ターゲットドメインデータが入力される。特徴抽出部11は、ターゲットドメインデータからターゲットドメイン特徴値を抽出する。訓練装置10について説明したように、特徴抽出部11及びクラス予測部12の少なくとも一方は、
ソースドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタリングされたソースドメイン特徴値と、
ターゲットドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタリングされたターゲットドメイン特徴値とを参照して訓練されている。
【0054】
クラス予測部12は、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測する。
【0055】
分類装置20によれば、特徴抽出部11及びクラス予測部12の少なくとも一方は、(i)ソースドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタリングされたソースドメイン特徴値と、(ii)ターゲットドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタリングされたターゲットドメイン特徴値とを参照して訓練されている。
【0056】
したがって、第1の実施例の実施の形態に係る分類装置20は、ターゲットドメインラベル付きデータが少量であっても、好適な分類処理を提供する。
【0057】
(分類装置による分類方法)
次に、第1の例示的実施形態に係る分類装置20の分類方法について、
図4を用いて説明する。
図4は、分類装置20が行う分類方法S2を示すフロー図である。
図4に示すように、分類装置20は、特徴抽出ステップS11と、クラス予測ステップS12とを実行する。
【0058】
(特徴抽出ステップS11)
特徴抽出ステップS11において、特徴抽出部11は、ターゲットドメインデータからターゲットドメイン特徴値を抽出する。訓練装置10について説明したように、特徴抽出部11及びクラス予測部12の少なくとも一方は、
ソースドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタリングされたソースドメイン特徴値と、
ターゲットドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタリングされたターゲットドメイン特徴値とを参照して訓練されている。
【0059】
(クラス予測ステップS12)
クラス予測ステップS12において、クラス予測部12は、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測する。
【0060】
第1の例示的実施形態に係る分類装置20による分類方法は、ターゲットドメインラベル付きデータが少量であっても、好適な分類処理を提供する。
【0061】
<第2の例示的実施形態>
以下、第2の例示的実施形態について図面を用いて説明する。なお、第1の例示的実施形態で説明した要素と同一の機能を有する要素には同一の符号を付し、その説明は適宜省略する。また、第2の例示的実施形態の概要は、第1の例示的実施形態の概要と同じであるため、ここでは説明しない。
【0062】
(訓練装置の構成)
次に、例示的実施形態に係る訓練装置10aの構成について、
図5を用いて説明する。
図5は、訓練装置10aの構成を示すブロック図である。
図5に示すように、訓練装置10aは、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、第2のクラス予測部12b、第1のフィルタ部13a、第2のフィルタ部13b、及び更新部14aを備える。
【0063】
第1の特徴抽出部11a及び第2の特徴抽出部11bは、特許請求の範囲に記載の特徴抽出手段の一例である。第1のクラス予測部12a及び第2のクラス予測部12bは、請求項に記載のクラス予測手段の一例である。第1のフィルタ部13a及び第2のフィルタ部13bは、特許請求の範囲に記載のフィルタリング手段の一例である。更新部14aは、特許請求の範囲に記載の更新手段の一例である。
【0064】
第1の特徴抽出部11aと第2の特徴抽出部11bとは、単一の部分(section)として構成することができる。第1のクラス予測部12aと第2のクラス予測部12bとは、単一の部分として構成することができる。第1のフィルタ部13aと第2のフィルタ部13bとは、単一の部分として構成することができる。
【0065】
また、更新部14aは
図5に示すように、グルーピング部141と、グループ損失計算部142と、第1の分類損失計算部143aと、第2の分類損失計算部143bと、マージ損失計算部144と、モデル更新部145とを備える。
【0066】
第1の分類損失計算部143a、第2の分類損失計算部143bは、1つの部分(section)として構成することができる。
【0067】
(第1の特徴抽出部)
第1の特徴抽出部11aには、ソースドメインに属する入力データI
Sが入力される。入力データI
Sの具体例は第2の例示的実施形態を限定しないが、入力データI
Sは1つまたは複数の入力画像であり得る。より具体的には一例として、入力データI
Sは複数の領域を有する画像であってもよい。別の例として、入力画像データI
Sは、
図6の左側に示されているような一群の画像(batch of images)であってもよい。
図6の左側の例ではインプットデータI
Sが10枚の画像の群(batch)を含み、その各々は数字または複数の数字を表している。
【0068】
第1の特徴抽出部11aは、ソースドメインデータISから特徴値(特徴量とも呼ぶ)XSを抽出する。第1の特徴抽出部11aにより抽出された特徴値XSは、第1のクラス予測部12a及び第1のフィルタ部13aに供給される。
【0069】
なお、第1の特徴抽出部11aの具体的な構成は、第2の例示的実施形態を限定するものではない。一例として、第1の特徴抽出部11aは畳み込みニューラルネットワーク(CNN)であってもよいし、リカレントニューラルネットワーク(RNN)であってもよいし、他のニューラルネットワークまたは特徴抽出器のいずれであってもよい。また、第1の特徴抽出部11aは、学習によらない技術であってもよい。一例として、第1の特徴抽出部11aは、SIFT(Scale-Invariant Feature Transform)、すなわち、画像中の各特徴値をキーポイント(x,y座標)とし、画像ごとの特徴値をキーポイントの集合とする非学習型の特徴抽出手法として実現することができる。また、第1の特徴抽出部11aは、手動で選択/設計された(ルールベースの)特徴抽出方法として実現することができる。
【0070】
なお、特徴値XSの構造は第2の例示的実施形態を限定するものではないが、特徴値XSはベクトルの形式で表現されてもよい。より具体的には一例として、XSは以下のようなベクトルとして表現されてもよい。
【0071】
【数1】
ここで、X
Sは、入力画像群I
Sの各画像に対応する10個の要素を有する。特徴値はベクトルとして表現され得るので、特徴値は特徴ベクトルとも呼ばれ得る。
【0072】
なお、第1の特徴抽出部11aは、各画像から、複数の実数からなる1個の特徴値を抽出してもよい。したがって、特徴値を特徴ベクトルと呼ぶこともできる。
【0073】
(第2の特徴抽出部)
同様に、第2の特徴抽出部11bには、ターゲットドメインに属する入力データI
Tが入力される。入力データI
Tの具体例は第2の例示的実施形態を限定しないが、入力データI
Tは1つまたは複数の入力画像であり得る。より具体的には一例として、入力データI
Tは複数の領域を有する画像であってもよい。別の例として、入力画像データI
Tは、
図6の右側に示されているような一群の画像であってもよい。
図6の右側の例において、入力データI
Tは10個の画像を含み、それぞれが数字または複数の数字を表している。
【0074】
第2の特徴抽出部11bは、ターゲットドメインデータITから特徴値XTを抽出する。第2の特徴抽出部11bにより抽出された特徴値XTは、第2のクラス予測部12b及び第2のフィルタ部13bに供給される。
【0075】
なお、第2の特徴抽出部11bの具体的な構成は、第2の例示的実施形態を限定するものではない。例えば、第2の特徴抽出部11bはCNN(convolutional neural network)であってもよいし、RNN(recurrent neural network)であってもよいし、他のニューラルネットワークや特徴抽出器であってもよい。また、第2の特徴抽出部11bは、非学習型の技術であってもよい。一例として、第2の特徴抽出部11bは、SIFT(Scale-Invariant Feature Transform)、すなわち、画像中の各特徴量をキーポイント(x,y座標)とし、画像ごとの特徴量をキーポイントの集合とする非学習型の特徴抽出手法として実現することができる。また、第2の特徴抽出部11bは、手動で選択/設計された(ルールベースの)特徴抽出方法として実現することができる。
【0076】
なお、特徴値XTの構造は第2の例示的実施形態を限定するものではないが、特徴値XTはベクトルの形式で表現されてもよい。より具体的には一例として、XTは以下のようなベクトルとして表現されてもよい。
【0077】
【数2】
ここで、X
Tは、入力画像群I
Tの各画像に対応する10個の要素を有する。なお、第2の特徴抽出部11bは、各画像から、複数の実数からなる1つの特徴値を抽出してもよい。
【0078】
(第1のクラス予測部)
第1のクラス予測部12aは第1の特徴抽出部11aにより抽出されたソースドメイン特徴量XSから、ソースドメインクラス予測値PSを予測する。
【0079】
第1のクラス予測部12aにより出力されたソースドメインクラス予測値PSは、第1のフィルタ部13a及び第1の分類損失計算部143aに供給される。
【0080】
なお、第1のクラス予測部12aの具体的な構成は、第2の例示的実施形態を限定するものではない。一例として、ソースドメイン特徴ベクトルXSのそれぞれの要素を所定の閾値と比較することにより、ソースドメインクラス予測値PSの対応する要素を決定する構成を採用することができる。
【0081】
具体例として、(Eq.1)に示すようなソースドメイン特徴ベクトルXSから、第1のクラス予測部12aは、ソースドメインクラス予測値PSを次のようにして出力してもよい。
【0082】
【数3】
ここで、P
Sは、特徴ベクトルX
Sの各要素に対応する10個の構成要素を有する。予測値はベクトルとして表現され得るので、予測値は予測ベクトルと呼ばれ得る。
【0083】
(第2のクラス予測部)
第2のクラス予測部12bは第2の特徴抽出部11bにより抽出されたターゲットドメイン特徴値XTから、ターゲットドメインクラス予測値PTを予測する。
【0084】
第2のクラス予測部12bにより出力されたターゲットドメインクラス予測値PTは、第2のフィルタ部13b及び第2の分類損失計算部143bに供給される。
【0085】
なお、第2のクラス予測部12bの具体的な構成は、第2の例示的実施形態を限定するものではない。一例として、ターゲットドメイン特徴ベクトルXTの各要素を所定の閾値と比較することにより、ターゲットドメインクラス予測値PTの対応する要素を決定する構成を採用することができる。
【0086】
具体例として、(Eq.1)に示すようなターゲットドメイン特徴ベクトルXSから、第2のクラス予測部12bは、ターゲットドメインクラス予測値PTを次のようにして出力してもよい。
【0087】
【数4】
ここで、P
Tは、特徴ベクトルX
Tの各要素に対応する10個の要素を有する。
【0088】
(第1のフィルタ部)
第1のフィルタ部13aは、ソースドメインクラス予測値PSを参照して、ソースドメイン特徴値XSから1つ以上の値をフィルタ除去することにより、フィルタリングされたソースドメイン特徴値X’Sを算出する。
【0089】
第1のフィルタ部13aで演算された、フィルタリングされたソースドメイン特徴値X’Sは、グルーピング部141に供給される。
【0090】
なお、第1のフィルタ部13aが採用するフィルタ条件は第2の例示的実施形態を限定するものではないが、以下の構成を採用することができる。
【0091】
第1のフィルタ部13aは、ソースドメインクラスラベルデータY
Sを受信してもよい。ここで、ソースドメインクラスラベルデータY
Sは、ソースドメイン入力データI
Sに関連付けられ、ソースドメイン入力データI
Sのグラウンドトゥルースラベルを示す。具体的には、入力データI
Sが
図6の左側に示されるような画像データであるとき、ソースドメインクラスラベルデータY
Sは、以下のように表現されてもよい。
【0092】
【数5】
ここで、Y
Sは、入力画像群I
Sの各画像に対応する10個の要素を有する。クラスラベルデータはベクトルとして表現することができるので、クラスラベルデータはクラスラベルベクトルと呼ぶことができる。
【0093】
そして、第1のフィルタ部13aは、(i)ソースドメインクラス予測ベクトルPSの各要素と、(ii)ソースドメインクラスラベルベクトルYSの各要素とを用いて、ソースドメイン特徴ベクトルXSから1つ以上の要素をフィルタ除去してもよい。より具体的には、第1のフィルタ部13aは、ソースドメイン特徴ベクトルXSから、ソースドメインクラスラベルベクトルYSの対応する要素と一致しない1つまたは複数の要素をフィルタ除去することができる。
【0094】
具体例として、(Eq.3)でPSが与えられ、(Eq.5)でYSが与えられた場合、PSの構成要素がYSの対応する要素と一致するため、第1のフィルタ部13aは、特徴ベクトルの要素をフィルタ除去しなくてもよい。したがって、この具体例では、第1のフィルタ部13aによって算出されるフィルタリングされたソースドメイン特徴ベクトルX’Sが以下のように表されてもよい。
【0095】
【数6】
(第2のフィルタ部)
第2のフィルタ部13bは、ターゲットドメインクラス予測値P
Tを参照して、ターゲットドメイン特徴値X
Tから1つ以上の値をフィルタ除去することにより、フィルタリングされたターゲットドメイン特徴値X’
Tを算出する。
【0096】
第2のフィルタ部13bで演算された、フィルタリングされたターゲットドメイン特徴値X’Tは、グルーピング部141に供給される。
【0097】
なお、第2のフィルタ部13bが採用するフィルタ条件は第2の例示的実施形態を限定するものではないが、以下の構成を採用することができる。
【0098】
第2のフィルタ部13bは、ターゲットドメインクラスラベルデータY
Tを受信してもよい。ここで、ターゲットドメインクラスラベルデータY
Tはターゲットドメイン入力データI
Tに対応付けられており、ターゲットドメイン入力データI
Tのグランドトゥルースラベルを示す。具体的な一例として、入力データI
Tが
図6の左側に示されるような画像データであるとき、ターゲットドメインクラスラベルデータY
Tは、次のように表現されてもよい。
【0099】
【数7】
ここで、Y
Tは、入力画像群I
Tの各画像に対応する10個の要素を有する。
【0100】
そして、第2のフィルタ部13bは、(i)ターゲットドメインクラス予測ベクトルPTの各要素と、(ii)ターゲットドメインクラスラベルベクトルYTの各要素とを参照して、ターゲットドメイン特徴ベクトルXTから1つ以上の構成要素をフィルタ除去してもよい。より具体的には、第2のフィルタ部13bは、ターゲットドメイン特徴ベクトルXTから、ターゲットドメインクラスラベルベクトルYTの対応する要素と一致しない1つ以上の要素をフィルタ除去してもよい。
【0101】
具体例として、(Eq.4)でPTが与えられ、(Eq.7)でYTが与えられた場合、PTの第2成分はYTの第2成分と一致せず、PTの第7成分はYTの第7成分と一致しない。
【0102】
したがって、本具体例では、第2のフィルタ部13bは、ターゲットドメイン特徴ベクトルXTの第2要素及び第7要素をフィルタ除去してもよい。したがって、この具体例では、第2のフィルタ部13bによって算出されるフィルタリングされたターゲットドメイン特徴ベクトルX’Tが以下のように表されてもよい。
【0103】
【数8】
ここで、取り消し線は、X’
Tのフィルタ除去された成分を示す。
【0104】
(グルーピング部)
グルーピング部141はフィルタリングされたのソースドメイン特徴値X’Sと、フィルタリングされたのターゲットドメイン特徴値X’Tとから、クラスグループを生成する。ここで各クラスグループは同じクラスラベルを共有する特徴量を含んでいる。
【0105】
具体例として、(Eq.6)でX’Sが与えられ、(Eq.8)でX’Tが与えられた場合、グルーピング部141は、以下のクラスグループ(Gr0、Gr1、Gr2、Gr3、Gr4)を出力する。
【0106】
【数9】
ここで、Gr0は、特徴値が同じクラスラベル0を共有するクラスグループである。Gr1は、特徴値が同じクラスラベル1を共有するクラスグループである。同様に、Gr2、Gr3、Gr4はそれぞれ、特徴値が同じクラスラベル2、3、4を共有するクラスグループである。
【0107】
(グループ損失計算部)
グループ損失計算部142は、グルーピング部141が生成したクラスグループを参照して、グループ損失(Loss_grouping)を算出する。
【0108】
一例として、グループ損失計算部142は、(i)同一クラスの特徴量を参照して決定されたクラス内距離と、(ii)他クラスの特徴量を参照して決定されたクラス間距離とに基づいて、グループ損失を算出する。
【0109】
具体例として、グループ損失計算部142は、以下の数式を用いてグループ損失を算出する。
【0110】
【数10】
ここで、全てのソースドメイン特徴値と全てのターゲットドメイン特徴値との和集合における各特徴値xについて、その特徴値xの「特徴空間におけるクラス内距離の最大値(maximum of intra-class distance in the feature space)」を、特徴値xと同じクラスグループに由来する他の任意の特徴値との間の最大距離として算出し、「特徴空間におけるクラス間距離の最小値(minimum of inter-class distance in the feature space)」を、特徴値xとは異なるクラスグループに由来する他の任意の特徴値との間の最小距離として算出する。マージン(margin)は、特徴値の最小クラス間距離から特徴値の最大クラス内距離を差し引いた値の許容最小値を示す。以下、(特徴空間におけるクラス間距離の最大値-特徴空間におけるクラス間距離の最小値+マージン)によって特徴値ごとに算出される値を「個々のグループ損失(individual grouping loss)」と呼ぶ。全体的なグループ損失は、各ソースドメイン特徴値および各ターゲットドメイン特徴値に対する個々のグループ損失の平均として計算される。平均は最初に、すべてのソースドメイン特徴値およびすべてのターゲットドメイン特徴値についての個々のグループ損失の合計を計算し、次いで、その合計を、ソースドメイン特徴値の数とターゲットドメイン特徴値の数との和で除算することによって計算される。
【0111】
より具体的には、(Eq.10)によるグループ損失(Loss_grouping)の計算は次のように表すことができる。
【0112】
グループ損失計算部142はまず、特徴値xごとに、その特徴値xと同じクラスグループからの他の全ての特徴値のうち、特徴空間においてその特徴値xから最も遠い他の特徴値を求めてもよい。このタイプのペアは、クラス内ペアと呼ばれることがある。各特徴値のクラス内ペア間の距離は、(Eq.10)の「特徴空間におけるクラス内距離の最大値(maximum of intra-class distance in the feature space)」に相当する。
【0113】
そして、グループ損失計算部142は、特徴値xごとに、その特徴値xとは異なるクラス群からの他の全ての特徴値のうち、特徴空間においてその特徴値xに最も近い他の特徴値を求めてもよい。このタイプのペアは、クラス間ペアと呼ばれることがある。各特徴量のクラス間ペア間の距離は、(Eq.10)の「特徴空間におけるクラス間距離の最小値(minimum of inter-class distance in the feature space)」に相当する。
【0114】
そして、グループ損失計算部142は特徴量ごとに、(特徴空間におけるクラス間距離の最大値)から(特徴空間におけるクラス間距離の最小値)を減算してもよい。
【0115】
そして、グループ損失計算部142は、マージンを加算してもよい。マージンを追加することは、(特徴空間におけるクラス間距離の最小値)よりも小さい(特徴空間におけるクラス間距離の最大値)量を少なくとも一定値にすることを意味する(例えば、マージン=1の場合、各特徴値について、(特徴空間におけるクラス間距離の最大値)が(特徴空間におけるクラス間距離の最小値)よりも少なくとも1単位小さいことを望む)。
【0116】
以上の計算を特徴値毎に行った後、グループ損失計算部142は、XSとXTとの和集合に含まれる全ての特徴値の和を取り得る。
【0117】
そして、グループ損失計算部142は、加算結果を、全ての特徴量の数で除算してもよい。全ての特徴量の数は、(Eq.10)においてnと表される。具体的な実施例として、(Eq.9)のクラスグループがある場合、n=18とすることができる。
【0118】
(第1クラス分類損失計算部)
第1クラス分類損失計算部143aは、(i)ソースドメインクラス予測値PS、(ii)ソースドメインクラスラベルデータYSを参照して、ソースドメイン分類損失(Loss_classification_S)を算出する。
【0119】
一例として、第1クラス分類損失計算部143aは、PSとYSとの不一致度に応じて、ソースドメイン分類損失を算出する。
【0120】
具体例として、(Eq.3)によりPSが与えられ、(Eq.5)によりYSが与えられた場合、PSの全ての成分がYSの対応する成分とそれぞれ合致するため、第1クラス分類損失計算部143aは、以下のようにソースドメイン分類損失を算出する。
【0121】
【数11】
(第2クラス分類損失計算部)
第2クラス分類損失計算部143bは、(i)ターゲットドメインクラス予測値P
T、(ii)ターゲットドメインクラスラベルデータY
Tを参照して、ターゲットドメイン分類損失ロス(Loss_classification_T)を算出する。
【0122】
一例として、第2クラス分類損失計算部143bは、PTとYTとの不一致度に応じて、ターゲットドメイン分類損失を算出する。
【0123】
具体例として、(Eq.4)でPTが与えられ、(Eq.7)でYTが与えられた場合、PTの第2成分がYTの第2成分と一致せず、PTの第7成分がYTの第7成分と一致しないため、第2クラス分類損失計算部143bは、以下のようにターゲットドメイン分類損失ロスを計算する。
【0124】
【数12】
(マージ損失計算部)
マージ損失計算部144は、ソースドメイン分類損失(Loss_classification_S)、ターゲットドメイン分類損失(Loss_classification_T)及びグループ損失(Loss_grouping)を参照して、マージ損失(Loss_merge)を算出する。
【0125】
一例として、マージ損失計算部144は、以下のようにマージ損失を算出する。
【0126】
【数13】
ここで、係数α、β、γは、重み係数を表しているが、これは第2の例示的実施形態を限定するものではない。
【0127】
(モデル更新部145)
モデル更新部145は、マージ損失が収束したか否かを判定する。マージ損失が収束した場合、モデル更新部145は、収束したモデルパラメータを記憶媒体に出力する。モデル更新部145は、マージ損失値が収束していない場合、マージ損失計算部144が算出したマージ損失を参照して、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、及び第2のクラス予測部12bのモデルパラメータを更新する。
【0128】
例えば、モデル更新部145は、マージ損失が小さくなるようにモデルパラメータを更新する。なお、モデル更新部145が採用する更新方法は第2の例示的実施形態を限定するものではないが、モデル更新部145は逆伝播法(back propagation method)に従ってモデルパラメータを更新してもよい。
【0129】
モデル更新部145により更新されたモデルパラメータは、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、及び第2のクラス予測部12bに供給される。
【0130】
(有利な効果)
第2の例示的実施形態によれば、上述したように、モデル更新部145は、ソースドメイン分類損失及びターゲットドメイン分類損失に加えて、グループ損失を参照してモデルパラメータを更新する。したがって、第2の例示的実施形態によれば、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、第2の特徴抽出部11bおよび第2のクラス予測部12bを学習することができる。
【0131】
また、第2の例示的実施形態によれば、上述したように、第1のフィルタ部13a及び第2のフィルタ部13bは、フィルタリングされたソースドメイン特徴量及びフィルタリングされたターゲットドメイン特徴量を算出し、モデル更新部145は、ソースドメイン分類損失及びターゲットドメイン分類損失に加えて、グループ損失を参照してモデルパラメータを更新する。ここで、上述したように、グループ損失は、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して取得される。
【0132】
したがって、第2の例示的実施形態によれば、ソースドメイン特徴値およびターゲットドメイン特徴値に含まれ得る外れ値は、第1のフィルタ部13aおよび第2のフィルタ部13bによってフィルタ除去され、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部、及び第2のクラス予測部12bの学習処理を不安定にしない。
【0133】
以下、
図7を参照して上記の特徴について説明する。
図7の上半分は、第1のフィルタ部13a及び第2のフィルタ部13bによるフィルタ処理が行われないときのグループ損失を模式的に示す図である。
図7の上半分に示すように、第1のフィルタ部13a及び第2のフィルタ部13bでフィルタ処理を行わないと、誤って分類された外れ値の寄与により、グループ損失が不適切に大きくなる。そのため、このようなグループ損失を用いてモデルを更新する場合、損失が収束せず、トレーニングを適切に行うことができない。
【0134】
一方、
図7の下半分は、第1のフィルタ部13a及び第2のフィルタ部13bによってフィルタリングが行われたときのグループ損失を模式的に示す図である。
図7の下半分に示すように、第1のフィルタ部13aおよび第2のフィルタ部13bでフィルタ処理を行うと、誤って分類された外れ値がグループ損失に寄与しない。このように、グループ損失を用いてモデルを更新することで、損失値が収束し、トレーニングを適切に行うことができる。
【0135】
したがって、第2の例示的実施形態に係る訓練装置10aは、ターゲットドメインのラベル付きデータが少量であっても、効率的で安定した訓練プロセスを提供することができる。
【0136】
(訓練装置による訓練方法)
以下、第2の例示的実施形態に係る訓練装置10aの訓練方法について、
図8を用いて実施例する。
図8は、訓練装置10aによる訓練方法S1aの流れを示すフロー図である。
【0137】
(ステップS100)
ステップS100において、訓練装置10aは、初期モデルパラメータを受信する。初期モデルパラメータには、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、第2のクラス予測部12bの初期モデルパラメータが含まれる。このステップで受信された初期モデルパラメータは、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、及び第2のクラス予測部12bに供給される。
【0138】
(ステップS10a)
ステップS10aにおいて、訓練装置10aは、ソースドメインのデータを受信する。より具体的には、訓練装置10aは、ソースドメイン入力データISおよび入力データISに関連付けられたソースドメインクラスラベルデータYSを受信する。
【0139】
(ステップS10b)
ステップS10bにおいて、訓練装置10aは、ターゲットドメインのデータを受信する。より具体的には、訓練装置10aは、ターゲットドメイン入力データIT及び入力データITに関連付けられたターゲットドメインクラスラベルデータYTを受信する。
【0140】
(ステップS11a)
ステップS11aでは、第1の特徴抽出部11aがソースドメインデータISから特徴値XSを抽出する。なお、第1の特徴抽出部11aが行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0141】
(ステップS11b)
ステップS11bでは、第2の特徴抽出部11bがターゲットドメインデータITから特徴値XTを抽出する。なお、第2の特徴抽出部11bが行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0142】
(ステップS12a)
ステップS12aにおいて、第1のクラス予測部12aは、第1の特徴抽出部11aにより抽出されたソースドメイン特徴値XSからソースドメインクラス予測値PSを予測する。なお、第1のクラス予測部12aが行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0143】
(ステップS12b)
ステップS12bにおいて、第2のクラス予測部12bは、第2の特徴抽出部11bが抽出したターゲットドメイン特徴値XTから、ターゲットドメインクラス予測値PTを予測する。なお、第2のクラス予測部12bが行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0144】
(ステップS13a)
ステップS13aにおいて、第1のフィルタ部13aは、ソースドメインクラス予測値PSを参照して、ソースドメイン特徴値XSから1つ以上の値をフィルタ除去することにより、フィルタリングされたソースドメイン特徴値X’Sを算出する。なお、第1のフィルタ部13aによる具体的なプロセスについては、上述したので、ここでは繰り返し説明しない。
【0145】
(ステップS13b)
ステップS13bでは、第2のフィルタ部13bは、ターゲットドメインクラス予測値PTを参照して、ターゲットドメイン特徴値XTから1つ以上の値をフィルタ除去することにより、フィルタリングされたターゲットドメイン特徴値X’Tを算出する。なお、第2のフィルタ部13bによる具体的なプロセスについては、上述したので、ここでは繰り返し説明しない。
【0146】
(ステップS141)
ステップS141では、グルーピング部141がフィルタリングされたソースドメイン特徴値X’Sとフィルタリングされたターゲットドメイン特徴値X’Tとから、クラスグループを生成して出力する。ここで、各クラスグループは、同じクラスラベルを共有する特徴量を含む。なお、グルーピング部141が行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0147】
(ステップS142)
ステップS142において、グループ損失計算部142は、グルーピング部141が生成したクラスグループを参照して、グループ損失(Loss_grouping)を算出する。なお、グループ損失計算部142が行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0148】
(ステップS143a)
ステップS143aにおいて、第1クラス分類損失計算部143aは、ソースドメインクラス予測値PS及びソースドメインクラスラベルデータYSを用いて、ソースドメイン分類損失(Loss_classification_S)を算出する。なお、第1クラス分類損失計算部143aが行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0149】
(ステップS143b)
ステップS143bにおいて、第2クラス分類損失計算部143bは、ターゲットドメインクラス予測値PTとターゲットドメインクラスラベルデータYTとを用いて、ターゲットドメイン分類損失(Loss_classification_T)を算出する。なお、第2クラス分類損失計算部143bが行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0150】
(ステップS144)
ステップS144において、マージ損失計算部144は、ソースドメイン分類損失(Loss_classification_S)、ターゲットドメイン分類損失(Loss_classification_T)及びグループ損失(Loss_grouping)を参照して、マージ損失(Loss_merge)を算出する。なお、マージ損失計算部144が行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0151】
(ステップS145)
ステップS145において、モデル更新部145は、マージ損失が収束したか否かを判定する。マージ損失が収束している場合(ステップS145でYES)、ステップS147に進む。マージ損失が収束していない場合(ステップS145でNO)、ステップS146に進む。
【0152】
(ステップS146)
ステップS146において、モデル更新部145は、マージ損失計算部144が算出したマージ損失を参照して、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、及び第2のクラス予測部12bのモデルパラメータを更新する。
【0153】
(ステップS147)
ステップS147において、モデル更新部145は、マージ損失計算部144が算出したマージ損失を参照して、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、及び第2のクラス予測部12bのモデルパラメータを記憶媒体に記憶する。
【0154】
なお、訓練方法S1aにおけるステップの順序は、第2の例示的実施形態を限定するものではない。例えば、訓練方法S1aにおいて、ステップS143a及びステップS143bは、それぞれ、ステップS13a及びステップS13bよりも先に実行されてもよい。あるいは、ステップS143aおよびステップS143bがステップS141およびステップS142の少なくともいずれかの後に実行されてもよい。
【0155】
(有利な効果)
以上説明した訓練装置10aによる訓練方法S1aは、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供する。
【0156】
(分類装置の構成)
次に、第2の例示的実施形態に係る分類装置20aの構成について、
図9を用いて説明する。
図9は、分類装置20aの構成を示すブロック図である。
図9に示すように、分類装置20aは、特徴抽出部11bと、クラス予測部12bとを備える。ここで、特徴抽出部11bは、上述した第2の特徴抽出部11bと同様に構成され、クラス予測部12bは、上述した第2のクラス予測部12bと同様に構成される。
【0157】
分類装置20aによれば、特徴抽出部11b及びクラス予測部12bは、(i)ソースドメイン特徴値から1つ以上の値をフィルタリングして得られるフィルタ除去されたソースドメイン特徴値と、(ii)ターゲットドメイン特徴値から1つ以上の値をフィルタ除去して得られるフィルタリングされたターゲットドメイン特徴値とを参照して学習されている。
【0158】
したがって、第2の例示的実施形態に係る分類装置20aは、ターゲットドメインラベル付きデータが少量であっても、好適な分類処理を提供する。
【0159】
(第2の例示的実施形態における留意点)
(備考1:特徴抽出部について)
一構成例において、第1の特徴抽出部11aと第2の特徴抽出部11bとは、完全に独立していてもよい。すなわち、第1の特徴抽出部11aと第2の特徴抽出部11bとは、モデルパラメータも層(レイヤ)も共有しない。
【0160】
別の例示的な構成では、第1の特徴抽出部11aおよび第2の特徴抽出部11bがモデルパラメータのうちの1つまたはいくつかを共有してもよい。すなわち、第1の特徴抽出部11aと第2の特徴抽出部11bとは、1又は幾つかの層を共有していてもよい。
【0161】
一例として、第1の特徴抽出部11a及び第2の特徴抽出部11bは、辺、角等の低レベル特徴が抽出される最初の幾つかの層を共有してもよい。あるいは、第1の特徴抽出部11aと第2の特徴抽出部11bとは上位の特徴や意味論的な意味(semantic meaning)などの抽象的な特徴が抽出される最後の幾つかの層を共有してもよい。
【0162】
更に別の例示的な構成では、第1の特徴抽出部11aおよび第2の特徴抽出部11bがモデルパラメータのすべてを共有してもよい。すなわち、第1の特徴抽出部11aと第2の特徴抽出部11bとは、全ての層を共有していてもよい。
【0163】
(備考2:クラス予測部について)
一構成例において、第1のクラス予測部12aと第2のクラス予測部12bとは、完全に独立していてもよい。すなわち、第1のクラス予測部12aおよび第2のクラス予測部12bは、モデルパラメータおよび層を共用しない。
【0164】
別の例示的な構成では、第1のクラス予測部12aおよび第2のクラス予測部12bがモデルパラメータのうちの1つまたはいくつかを共有してもよい。すなわち、第1のクラス予測部12aおよび第2のクラス予測部12bは、1つまたはいくつかの層を共有してもよい。
【0165】
更に別の例示的な構成では、第1のクラス予測部12aおよび第2のクラス予測部12bがすべてのモデルパラメータを共有してもよい。すなわち、第1のクラス予測部12aおよび第2のクラス予測部12bは、全ての層を共有してもよい。
【0166】
(備考3:グループ損失について)
グループ損失の計算は、クラスグループ内の2つの特徴間の距離または類似性を計算するための任意の方法によって達成され得る。グループ損失は、L1ノルム、L2ノルム、コサイン類似性、または学習などを必要とする何らかの他の尺度であり得る。
【0167】
また、グループ損失計算部142はグループ損失を算出した後、グループ損失を[0,1)以内等のより安全な範囲に再スケーリングされるように、グループ損失を再スケーリングする等の何らかの後処理操作を行ってもよい。具体例として、グループ損失計算部142はグループ損失(Loss_grouping)を以下のように再スケーリングすることにより、後処理された(post-processed)グループ損失(Loss_grouping_pp)を算出してもよい。
【0168】
【数14】
この再スケーリングは、以下の問題点に鑑みて行われる。すなわち、高品質の特徴値の場合であっても、損失値が計算される距離は依然として非常に大きくなり得、これは大きな損失値をもたらす。安全な範囲内でグループ損失を再スケーリングするには、単純なクリッピング(Loss_grouping > 1 の場合は1 を返し、それ以外の場合はLoss_grouping を返す)、または重みλ (λloss_grouping)を使用した単純な線形再ウェイト付けなど、さまざまな方法がある。
【0169】
(備考4:マージ損失について)
マージ損失は、ソースドメイン分類損失(Loss_classification_S)、ターゲットドメイン分類損失(Loss_classification_T)、およびグループ損失(Loss_grouping)などのすべてのサブタスク損失の直接和であり得るか、またはサブタスク損失の加重和であり得る。
【0170】
和における重みは、訓練の進行に従って変化し得る(例えば、初期の訓練反復において、分類損失の重みを高くし、次いで、訓練反復の数が増加することにつれて、当該重みが減衰する)。重みは、学習を必要とする重みであってもよい。
【0171】
(備考5:フィルタリングルールについて)
特徴値をフィルタ除去するかどうかを決定するルールは変化し得る。第1の例として、当該ルールは、第1のクラス予測部12aまたは第2のクラス予測部12bによって与えられる予測の正確さに依存し得る。
【0172】
より具体的には、ラベルデータ(特徴の真のラベル)が[0,1,1,1]である一方で、同じバッチの特徴に対するクラス予測部によって与えられる予測が[0,1,0,1]である場合、第3の特徴のみが誤って予測されているので、当該第3の特徴のみがフィルタ部によってフィルタ除去され得る。
【0173】
第2の例として、当該ルールは、予測の信頼度に依存し得る。より具体的には、(i)特徴値の真のラベルが[0,1,1,1]であり、同じバッチの特徴値の予測信頼度が[0.7,0.3]、[0.45,0.55]、[0.6,0.4]、[0.2,0.8]であり、(ii)信頼度の閾値が0.6に設定される場合、モデルは第1の特徴について、閾値よりも大きい0.7の信頼性スコア(特徴がその真のクラス(すなわち、インデックス0)に属することの信頼性を示す)を有し、したがって、特徴値を安全に次のステージに渡すことができると判断する。第2の特徴について、モデルは特徴がその真のクラス(すなわち、インデックス1)に属すべきであると確信しているが、確信度は閾値(0.55<0.6)よりも低く、したがって、フィルタ部はこの特徴値を拒絶し得る。第3の特徴について、特徴値がその真のクラス(すなわち、インデックス1)に属するという信頼性は0.4のみであり、したがって、この特徴値も拒絶され得る。信頼度の閾値は、手動で選択されてもよく、または学習を必要とする閾値であってもよい。
【0174】
<第3の実施形態>
以下、本発明の第3の例示的実施形態について、図面を用いて詳しく説明する。なお、上記例示的実施形態で説明した要素と同一の機能を有する要素には同一の符号を付し、その説明は適宜省略する。さらに、第3の例示的実施形態の概要は、前述の実施例の実施形態の概要と同じであるので、ここでは説明しない。
【0175】
(訓練装置の構成)
次に、第3の例示的実施形態に係る訓練装置10bの構成について、
図10を用いて説明する。
図10は、訓練装置10bの構成を示すブロック図である。
図10に示すように、第3の例示的実施形態では、第1のフィルタ部13aにソースドメイン分類損失(Loss_classification_S)が入力され、第2のフィルタ部13bにターゲットドメイン分類損失(Loss_classification_T)が入力される点が第2の実施の形態と相違する。
【0176】
第3の例示的実施形態では、第1のフィルタ部13aがさらに、ソースドメイン分類損失を参照する。また、第2のフィルタ部13bは、ターゲットドメイン分類損失を参照する。
【0177】
一例として、第1のフィルタ部13aは、(i)ソースドメインクラス予測ベクトルPSの各要素、(ii)ソースドメインクラスラベルベクトルYSの各要素、および(iii)ソースドメイン分類損失を参照して、ソースドメイン特徴ベクトルXSから1つまたは複数の要素をフィルタ除去してもよい。
【0178】
同様に、第2のフィルタ部13bは、(i)ターゲットドメインクラス予測ベクトルPTの各要素、(ii)ターゲットドメインクラスラベルベクトルYTの各要素、(iii)ターゲットドメイン分類損失を参照して、ターゲットドメイン特徴ベクトルXTから1つ以上の要素をフィルタ除去してもよい。
【0179】
また、他の例として、ソースドメイン分類損失が閾値TH1よりも小さいときには、第1のフィルタ部13aは訓練プロセス中にオフに切り替えられてもよい。閾値TH1は、手動で選択することができる。
【0180】
同様に、ターゲットドメイン分類損失が閾値TH2よりも小さい場合、第2のフィルタ部13bは訓練プロセス中にオフに切り換えられてもよい。閾値TH2は、TH1と同じ値であってもよく、同じ値でなくてもよい。閾値TH2は、手動で選択することができる。
【0181】
いくつかのトレーニング期間(training epochs)の後、ある特徴が誤って分類されたとしても、そのような特徴は、他の特徴からあまり離れておらず、したがって、考慮される価値がある。誤って分類されたが価値のある特徴がグループ損失の計算において使用される段階を決定するために、上で説明したように、分類損失をガイダンスとして使用することが可能である。
【0182】
(有利な効果)
第3の例示的実施形態によれば、誤って分類されたが価値のある特徴を、訓練プロセスにおいて適切に利用することができる。
【0183】
(分類装置の構成)
第3の例示的実施形態に係る分類装置20bは、第2の例示的実施形態に係る分類装置20aと同様の構成を有する。ただし、上述したように、第1のフィルタ部13aは訓練プロセスにおいてソースドメイン分類損失をさらに参照し、第2のフィルタ部13bは、第3の例示的実施形態における訓練プロセスにおけるターゲットドメイン分類損失をさらに参照する。
【0184】
したがって、第3の例示的実施形態に係る分類装置20bは、好適な分類処理を提供する。
【0185】
<第4の実施形態>
以下、本発明の第4の例示的実施形態について、図面を用いて詳しく説明する。なお、上記例示的実施形態で説明した要素と同一の機能を有する要素には同一の符号を付し、その説明は適宜省略する。さらに、第4の例示的実施形態の概要は、前述の例示的実施形態の概要と同じであるので、ここでは説明しない。
【0186】
(訓練装置の構成)
以下、第4の例示的実施形態に係る訓練装置10cの構成について、
図11を用いて説明する。
図11は、訓練装置10cの構成を示すブロック図である。
図11に示すように、訓練装置10cは、第2の例示的実施形態に係る訓練装置10aに含まれる構成要素に加えて、ドメイン判別部15と、ドメイン損失計算部16とを備える。
【0187】
(ドメイン判別部)
ドメイン判別部15は、ターゲットドメインとソースドメインとを判別する判別処理を行う。すなわち、ドメイン判別部15は、特徴がソースドメインからのものであるか、ターゲットドメインからのものであるかを示すドメイン予測を行う。
【0188】
一例として、ドメイン判別部15は、以下の処理を行う。ドメイン判別部15は、第1の特徴抽出部11aにより抽出されたソースドメイン特徴値XSと、第2の特徴抽出部11bにより抽出されたターゲットドメイン特徴値XTとを受け取る。そして、ドメイン判別部15は当該特徴がどの領域に属するかに関する情報を参照せずに、ソースドメイン特徴値XSをターゲットドメイン特徴値XTから判別する判別処理を行う。そして、ドメイン判別部15は、判別処理の結果を出力する。
【0189】
具体例として、(Eq.1)により特徴値XSが与えられた場合、ドメイン判別部15は、特徴値XSの判別処理の結果DPSを次のように出力してもよい。
【0190】
【数15】
また、具体例として、(eq.2)により特徴値X
Tが与えられた場合、ドメイン判別部15は、特徴値X
Tの判別処理の結果DP
Tを次のようにして出力してもよい。
【0191】
【数16】
(ドメイン損失計算部)
ドメイン損失計算部16は、ドメイン判別部15による判別処理の結果を参照して、ドメイン判別損失を算出して出力する。ドメイン判別損失は、単にドメイン損失と呼ばれることもある。
【0192】
一例として、ドメイン損失計算部16は、(i)ソースドメインのグランドトゥルースドメインラベルを示すソースドメインラベルデータDSと、(ii)ターゲットドメインのグランドトゥルースドメインラベルを示すターゲットドメインラベルデータDTとを受け取る。具体的には、ソースドメインラベルデータDS及びターゲットドメインラベルデータDTは、以下のように表されてもよい。
【0193】
【数17】
【数18】
ドメイン損失計算部16は、(i)DP
SとD
Sとの不一致度、(ii)DP
TとD
Tとの不一致度に応じて、ドメイン損失を算出する。
【0194】
具体例として、(Eq,15)でDPSが与えられ、(Eq.17)でDSが与えられ、(Eq.16)でDPTが与えられ、(Eq.18)でDTが与えられた場合、DPSの2つの成分がDSの対応する成分と異なり、DPTの4つの成分がDTの対応する成分と異なるため、ドメイン損失計算部16は以下のようにドメイン消失(Loss_domain)を計算する。
【0195】
【数19】
(マージ損失計算部)
第4の例示的実施形態に係るマージ損失計算部144は、ソースドメイン分類損失(Loss_classification_S)、ターゲットドメイン分類損失(Loss_classification_T)、グループ損失(Loss_grouping)、及びドメイン損失(Loss_domain)を参照して、マージ損失(Loss_merge)を算出する。
【0196】
一例として、第4の例示的実施形態に係るマージ損失計算部144は、マージ損失を以下のように算出する。
【0197】
【数20】
ここで、係数α、β、γ、δは、重み係数を示している。これらの重み係数の具体的な値は第4の例示的実施形態を限定するものではない。ここで、ドメイン損失の前の符号はマイナスであることに留意されたい。これは、抽出された特徴がドメイン判別部による結果の正確性を低下させるように、モデル更新部145が、第1の特徴抽出部11a及び第2の特徴抽出部11bのモデルパラメータを更新することを意味する。すなわち、モデル更新部145は抽出された特徴がドメイン判別部15を混乱させるように、第1の特徴抽出部11a及び第2の特徴抽出部11bのモデルパラメータを更新する。
【0198】
また、モデル更新部145は、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a及び第2のクラス予測部12bに加えて、ドメイン判別部15のモデルパラメータを、マージ損失(Loss_merge)を参照して更新してもよい。
【0199】
また、モデル更新部145は、マージ損失(Loss_merge)を参照して、第1の特徴抽出部11a、第2の特徴抽出部11b、第1のクラス予測部12a、及び第2のクラス予測部12bを更新することに加えて、ドメイン損失(Loss_domain)を参照してドメイン判別部15を更新してもよい。
【0200】
(訓練装置による訓練)
訓練装置10cは訓練の観点から、以下の処理を行う。まず、訓練装置10cは、特徴がソースドメインからのものであるか、ターゲットドメインからのものであるかをドメイン判別部15が判別できるように、ドメイン判別部15を訓練する。第2に、訓練装置10cは、第1の特徴抽出部11a及び第2の特徴抽出部11bを、訓練されたドメイン判別部15が混乱し得る特徴を抽出するように訓練する。
【0201】
上記の処理を反復することによって、訓練装置10cは、十分に訓練されたドメイン判別部15が、特徴がソースドメインからのものであるか、またはターゲットドメインからのものであるかを判別することができない状況を達成することができる。これは、特徴が非常に良好なドメイン混同特性、すなわちドメイン不変特性を有することを意味する。
【0202】
図12は、第1の特徴抽出部11a及び第2の特徴抽出部11bが訓練装置10cによる学習によりドメイン不変性を実現するプロセスを模式的に示す図である。
図12に示すように、トレーニングの初期の特徴空間に別々に存在する特徴が、トレーニングの後期の特徴空間においては別々に存在しないようになる。このように、ドメイン不変性が、訓練装置10cによって実行される訓練によって達成される。
【0203】
(有利な効果)
以上説明したように、第4の例示的実施形態によれば、訓練装置10cは、抽出された特徴XS及びXTのドメイン不変性を実現することができる。これは、好ましいターゲットドメインの特性をもたらす。
【0204】
したがって、第4の例示的実施形態によれば、訓練装置10cは、少量のターゲットドメインラベルデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供する。
【0205】
(訓練装置による訓練方法)
以下、第4の例示的実施形態に係る訓練装置10cの訓練方法について、
図13を用いて説明する。
図13は、訓練装置10cによる訓練方法S1cの流れを示すフロー図である。
【0206】
図13に示すように、第4の例示的実施形態に係る訓練方法S1cは、第2の例示的実施形態に係る訓練方法S1aに含まれる各ステップに加えて、ステップS15及びステップS16を含む。以下では、第4の例示的実施形態に係る訓練方法S1cと、第2の例示的実施形態に係る訓練方法S1aとの相違点についてのみ説明する。
【0207】
(ステップS15)
ステップS15において、ドメイン判別部15は、ターゲットドメインをソースドメインから判別するドメイン判別処理を行う。ドメイン判別部15が行う具体的な処理については、上述したので、ここでは繰り返さない。
【0208】
(ステップS16)
ステップS16において、ドメイン損失計算部16は、ドメイン判別部15による判別処理の結果を参照して、ドメイン判別損失を算出して出力する。ドメイン損失計算部16が行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0209】
(ステップS144)
ステップS144において、第4の例示的実施形態に係るマージ損失計算部144は、(i)ソースドメイン分類損失(Loss_classification_S)、(ii)ターゲットドメイン分類損失(Loss_classification_T)、(iii)グループ損失(Loss_grouping)、(iv)ドメイン損失(Loss_domain)を参照して、マージ損失(Loss_merge)を算出する。なお、マージ損失計算部144が行う具体的な処理については、上述したので、ここでは繰り返し説明しない。
【0210】
なお、訓練方法S1cにおけるステップの順序は、第4の例示的実施形態を限定するものではない。例えば、訓練方法S1cにおいて、ステップS15及びステップS16は、少なくともステップS13a、ステップS13b、ステップS141及びステップS142のいずれかの前に実行されてもよい。
【0211】
(有利な効果)
第4の例示的実施形態によれば、訓練方法S1cは、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供する。
【0212】
(分類装置の構成)
以下、第4の例示的実施形態に係る分類装置の構成について説明する。第4の例示的実施形態に係る分類装置20cは、
図9に示す分類装置20aと同様の構成を有する。
【0213】
第4の例示的実施形態によれば、訓練装置10cは、抽出された特徴XSおよびXTのドメイン不変性を達成する。これは、好ましいターゲットドメインの特性をもたらす。
【0214】
したがって、第4の例示的実施形態に係る分類装置20cは、ターゲットドメインラベル付きデータが少量であっても、好適な分類処理を提供する。
【0215】
(第4の実施例実施形態における留意点)
ドメイン損失を計算するために、クラスラベルは必要ない。したがって、訓練装置10cはラベル付けされたターゲットドメインデータのみを使用する代わりに、(クラスラベルの意味で)ラベル付けされていないターゲットデータを使用することもできる。データがターゲットデータセットからのものである限り、訓練装置10cは、データのドメインラベルが「ターゲット」であることを知ることができる。
【0216】
(クラスラベルの意味で)ラベル付けされていないターゲットデータを含めることによって、上述のドメイン不変特徴をより一般化することができる。特徴は、ラベルデータのすべての部分に対してドメイン不変であるだけでなく、ラベル付けされていないターゲットデータのすべての部分に対してドメイン不変であってもよい。
【0217】
(クラスラベルの意味で)ラベル付けされていないターゲットデータを使用する上記の構成は、制限された量のクラスラベル付けされたターゲットデータが利用可能である状況において、ドメイン不変特性を適切に達成することができる。
【0218】
<第5の実施形態>
以下、本発明の第5の例示的実施形態について、図面を用いて詳しく説明する。なお、上記例示的実施形態で説明した要素と同一の機能を有する要素には同一の符号を付し、その説明は適宜省略する。さらに、第5の例示的実施形態の概要は、前述の実施例の実施形態の概要と同じであるので、ここでは説明しない。
【0219】
(訓練装置の構成)
次に、第5の例示的実施形態に係る訓練装置10dの構成について、
図14を用いて説明する。
図14は、訓練装置10dの構成を示すブロック図である。
図14に示すように、第5の例示的実施形態に係る訓練装置10dは、第1のフィルタ部13aにソースドメイン分類損失(Loss_classification_S)が入力され、第2のフィルタ部13bにターゲットドメイン分類損(Loss_classification_T)が入力される点で、第4の例示的実施形態に係る訓練装置10cと相違する。
【0220】
すなわち、第5の例示的実施形態に係る訓練装置10dは、第3の例示的実施形態で説明した構成と、第4の例示的実施形態で説明した構成との両方を備える。
【0221】
したがって、第5の例示的実施形態に係る訓練装置10dは、第3の例示的実施形態の構成による効果と、第4の例示的実施形態の構成による効果との両方を奏する。
【0222】
(分類装置の構成)
第5の例示的実施形態に係る分類装置20dは、
図9に示す分類装置20aと同様の構成を有する。第5の例示的実施形態に係る訓練装置10dは、第3の例示的実施形態で説明した構成と、第4の例示的実施形態で説明した構成との両方を備える。また、第5の例示的実施形態に係る分類装置20dは、訓練装置10dによって訓練された特徴抽出部11bと、クラス予測部12bとを備える。
【0223】
したがって、第5の例示的実施形態に係る分類装置20dは、第3の例示的実施形態に係る分類装置20bによる効果と、第4の例示的実施形態に係る分類装置20cによる効果との両方を奏する。
【0224】
<ソフトウェアで実現する構成例>
訓練装置10,10a,10b,10c,10d及び分類装置20,20a,20b,20c,20dの機能の一部又は全部はICチップ(integrated circuit)等のハードウェアで実現してもよいし、ソフトウェアで実現してもよい。
【0225】
後者の場合、訓練装置10,10a,10b,10c,10d及び分類装置20,20a,20b,20c,20dは、例えば、上述した機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータによって実現される。
図15は、このようなコンピュータ(以下、「コンピュータC」という)の一例を示す。コンピュータCは、少なくとも1つのプロセッサC1および少なくとも1つのメモリC2を含む。メモリC2は、コンピュータCを訓練装置10,10a,10b,10c,10d及び分類装置20,20a,20b,20c,20dのいずれかとして機能させるためのプログラムPを記憶する。コンピュータCでは、プロセッサC1がメモリC2からプログラムPを読み出して実行することにより、訓練装置10,10a,10b,10c,10d及び分類装置20,20a,20b,20c,20dの機能が実現される。
【0226】
プロセッサC1としては、例えば、CPU(central processing unit)、GPU(graphic processing unit)、DSP(digital signal processor)、MPU(micro processing unit)、FPU(floating point number processing unit)、PPU(physics processing unit。メモリC2は、一実施例として、フラッシュメモリ、ハードディスクドライブ(HDD)、SSD(solid state drive)、又はこれらの組合せとすることができる。
【0227】
なお、コンピュータCは、プログラムPの実行時にプログラムPがロードされ、各種のデータが一時的に記憶されるRAM(random access memory)をさらに備えていてもよい。また、コンピュータCは、他の装置との間でデータの送受信を行うための通信インタフェースをさらに備えることができる。また、コンピュータCは、キーボード、マウス、ディスプレイ、プリンタ等の入出力装置を接続するための入出力インタフェースをさらに備えることができる。
【0228】
プログラムPは、コンピュータCが読み取り可能な非一時的な有形の記憶媒体Mに格納することができる。記憶媒体Mは、一例として、テープ、ディスク、カード、半導体メモリ、プログラマブル論理回路などである。コンピュータCは、記憶媒体Mを介してプログラムPを取得することができる。プログラムPは、伝送媒体を介して伝送されてもよい。伝送媒体は、一例として、通信網、放送波等である。コンピュータCは、このような伝送媒体を介してもプログラムPを取得することができる。
【0229】
[補足備考1]
本発明は、前述の例示的実施形態に限定されず、特許請求の範囲内で当業者によって様々な方法で変更され得る。例えば、上記例示的実施形態に開示されている技術的手段を適宜組み合わせて得られる例示的実施形態についても、本発明の技術的範囲に含まれる。
【0230】
[補足備考2]
上述の例示的実施形態の全部または一部は、以下のように表現することもできる。ただし、本発明は以下の例示的態様に限定されない。
【0231】
[補足]
本発明の態様は、以下のように表すこともできる:
(態様1)
ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出する1または複数の特徴抽出手段と、
ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測する1または複数のクラス予測手段と、
ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、
ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去すること
によって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算する1または複数のフィルタリング手段と、
ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、
ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失
を参照して、前記1または複数の特徴抽出手段および前記1または複数のクラス予測手段のうちの少なくとも1つを更新するための更新手段と、
を備える訓練装置。
【0232】
上記構成によれば、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供することができる。
(態様2)
前記1または複数のフィルタリング手段は、
前記ソースドメインクラス予測値およびソースドメインクラスラベルデータを参照して、前記ソースドメイン特徴値から1または複数の値をフィルタ除去し、
前記ターゲットドメインクラス予測値およびターゲットドメインクラスラベルデータを参照して、前記ターゲットドメイン特徴値から1又は複数の値をフィルタ除去する、態様1に記載の訓練装置。
【0233】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0234】
(態様3)
前記1または複数のフィルタリング手段は、前記ソースドメイン分類損失および前記ターゲットドメイン分類損失をさらに参照する、態様1または2に記載の訓練装置。
【0235】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0236】
(態様4)
前記更新手段は
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値から、クラスグループを出力するグループ化手段を備え、
前記クラスグループの各々は同じクラスラベルを共有する特徴値を含む、態様1から3のいずれか1項に記載の訓練装置。
【0237】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0238】
(態様5)
前記更新手段は、前記クラスグループを参照して前記グループ損失を算出するグループ損失計算手段をさらに備える、態様4に記載の訓練装置。
【0239】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0240】
(態様6)
前記グループ損失計算手段は、
同一クラス内の特徴量を参照して決定されたクラス内距離と、
異なるクラス内の特徴量を参照して決定されたクラス間距離と
に基づいて、前記グループ損失を算出することを特徴とする態様5に記載の訓練装置。
【0241】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0242】
(態様7)
前記更新手段は、
前記ソースドメインクラス予測値およびソースドメインクラスラベルデータを参照して前記ソースドメイン分類損失を計算し、
前記ターゲットドメインクラス予測値およびターゲットドメインクラスラベルデータを参照して前記ターゲットドメイン分類損失を計算する
1または複数の分類損失計算手段をさらに備える、態様1から6のいずれか1項に記載の訓練装置。
【0243】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0244】
(態様8)
前記更新手段は、
(i)前記ソースドメイン分類損失、(ii)前記ターゲットドメイン分類損失、および(iii)前記グループ損失を参照して、マージ損失を計算するマージ損失計算手段をさらに備え、
前記更新手段は、
前記マージ損失を参照して、前記1または複数の特徴抽出手段および前記1または複数のクラス予測手段のうちの少なくとも1つを更新する、態様1から7のいずれか1項に記載の訓練装置。
【0245】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0246】
(態様9)
ソースドメインからターゲットドメインを判別するための判別処理を実行する1または複数のドメイン判別手段と、
判別処理の結果としてドメイン判別損失を出力する1または複数のドメイン損失計算手段と
を更に備え、
前記更新手段はドメイン判別損失をさらに参照し、
前記更新手段はドメイン判別手段をさらに更新する
態様1から8のいずれか1項に記載の訓練装置。
【0247】
上記構成によれば、より効率的で安定した訓練プロセスを提供することができる。
【0248】
(態様10)
ターゲットドメインデータからターゲットドメイン特徴値を抽出する特徴抽出手段と、
ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測するクラス予測手段と、
を備え、
前記特徴抽出手段および前記クラス予測手段のうちの少なくとも1つは、
ソースドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたソースドメイン特徴値と、
ターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたターゲットドメイン特徴値と
を参照して訓練されている
分類装置。
【0249】
上記構成によれば、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、好適な分類処理を提供することができる。
【0250】
(態様11)
1または複数の特徴抽出手段によって、ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、
1または複数のクラス予測手段によって、ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することと、
ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、
ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去する
ことによって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算することと、
ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、
ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失
を参照して、前記1または複数の特徴抽出手段および前記1または複数のクラス予測手段のうちの少なくとも1つを更新することと、
を含む訓練方法。
【0251】
上記方法によれば、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供することができる。
【0252】
(態様12)
特徴抽出手段により、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、
クラス予測手段により、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することと
を含み、
特徴抽出手段およびクラス予測手段のうちの少なくとも1つは、
ソースドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたソースドメイン特徴値と、
ターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたターゲットドメイン特徴値と
を参照して訓練されている
分類方法。
【0253】
上記方法によれば、少量のターゲットドメインラベル付きデータしか利用できない場合であっても、効率的で安定した訓練プロセスを提供することができる。
【0254】
(態様13)
態様1に記載の訓練装置としてコンピュータを機能させるためのプログラムであって、前記コンピュータを、前記特徴抽出手段、前記クラス予測手段、前記フィルタリング手段、および前記更新手段として機能させることを特徴とするプログラム。
【0255】
(態様14)
態様10に記載の分類装置としてコンピュータを機能させるためのプログラムであって、前記特徴抽出手段及び前記クラス予測手段としてコンピュータを機能させるためのプログラム。
【0256】
(態様15)
少なくとも1つのプロセッサを備えた訓練装置であって、
前記プロセッサは、
1または複数の特徴抽出手段によって、ソースドメインデータからソースドメイン特徴値を抽出し、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、
1または複数のクラス予測手段によって、ソースドメイン特徴値からソースドメインクラス予測値を予測し、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することと、
ソースドメインクラス予測値を参照してソースドメイン特徴値から1または複数の値をフィルタ除去し、
ターゲットドメインクラス予測値を参照してターゲットドメイン特徴値から1または複数の値をフィルタ除去する
ことによって、フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を計算することと、
ソースドメインクラス予測値を参照して計算されたソースドメイン分類損失、
ターゲットドメインクラス予測値を参照して計算されたターゲットドメイン分類損失、および、
フィルタリングされたソースドメイン特徴値およびフィルタリングされたターゲットドメイン特徴値を参照して計算されたグループ損失
を参照して、前記1または複数の特徴抽出手段および前記1または複数のクラス予測手段のうちの少なくとも1つを更新することと
を実行する訓練装置。
【0257】
なお、訓練装置は、メモリをさらに備えていてもよい。メモリには、プロセッサに処理を実行させるためのプログラムを格納することができる。代替的に、プログラムは、コンピュータ読み取り可能な非一時的有形記憶媒体に記憶され得る。
【0258】
(態様16)
少なくとも1つのプロセッサを備えた分類装置であって、
前記プロセッサは、
特徴抽出手段により、ターゲットドメインデータからターゲットドメイン特徴値を抽出することと、
クラス予測手段により、ターゲットドメイン特徴値からターゲットドメインクラス予測値を予測することと
を実行し、
特徴抽出手段およびクラス予測手段のうちの少なくとも1つは、
ソースドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたソースドメイン特徴値と、
ターゲットドメイン特徴値から1または複数の値をフィルタ除去することによって得られるフィルタリングされたターゲットドメイン特徴値と
を参照して訓練されている
分類装置。
【0259】
なお、分類装置は、メモリをさらに備えていてもよい。メモリには、プロセッサに処理を実行させるためのプログラムを格納することができる。代替的に、プログラムは、コンピュータ読み取り可能な非一時的有形記憶媒体に記憶され得る。
【符号の説明】
【0260】
10, 10a、10b、10c、10d 訓練装置
20, 20a、20b、20c、20d 分類装置
11, 11a、11b 特徴抽出部
12, 12a、12b クラス予測部
13, 13a、13b フィルタ部
14, 14a 更新部
141 グルーピング部
142 グループ損失計算部
143a、143b 分類損失計算部
144 マージ損失計算部
145 モデル更新部
15 ドメイン判別部
16 ドメイン損失計算部