(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024139555
(43)【公開日】2024-10-09
(54)【発明の名称】学習装置、および分類装置
(51)【国際特許分類】
G06N 20/00 20190101AFI20241002BHJP
G06N 3/09 20230101ALI20241002BHJP
【FI】
G06N20/00 130
G06N3/09
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2023050549
(22)【出願日】2023-03-27
(71)【出願人】
【識別番号】000006633
【氏名又は名称】京セラ株式会社
(71)【出願人】
【識別番号】503359821
【氏名又は名称】国立研究開発法人理化学研究所
(74)【代理人】
【識別番号】110000338
【氏名又は名称】弁理士法人 HARAKENZO WORLD PATENT & TRADEMARK
(72)【発明者】
【氏名】村本 陽介
(72)【発明者】
【氏名】喜多野 広貴
(72)【発明者】
【氏名】杉山 将
(57)【要約】
【課題】学習データの正信頼度に偏りがある場合でも適切に学習を行う。
【解決手段】学習装置(10)は、正例を示す複数の正データ(51)と正データ(51)それぞれの信頼度である正信頼度を示す正信頼度データ(52)とを含む学習データ(50)を入力とし、AUCを最大化するように正例と負例とを分類する境界を学習する第1学習部(11)を備える。
【選択図】
図1
【特許請求の範囲】
【請求項1】
分類対象データを正例または負例に分類する学習済分類モデルを生成する学習装置であって、
前記正例を示す複数の正データと前記正データそれぞれの信頼度である正信頼度とを含む学習データを入力とし、AUCを最大化するように前記正例と前記負例とを分類する境界を学習する第1学習部を備える、学習装置。
【請求項2】
前記第1学習部は、前記学習データに含まれる複数の正データのうちの任意の2つの正データの組合せの損失の和が最小となるように学習することにより前記AUCを最大化する、請求項1に記載の学習装置。
【請求項3】
前記第1学習部は、xを前記学習データに含まれる正データ、nを前記学習データの正データ数、rを前記正データに対応する前記正信頼度、gを分類モデル、lを損失関数としたとき、以下の式(1)
【数1】
で算出される値を最小化するように学習を行う、請求項2に記載の学習装置。
【請求項4】
前記学習データを入力としたときの分類結果に基づく誤差を最小化するように前記境界を学習する第2学習部と、
前記第1学習部と前記第2学習部との切り替えを行う切替部と、を備える請求項1に記載の学習装置。
【請求項5】
前記切替部は、評価指標に基づいて前記切り替えを行うものであり、
前記評価指標は、前記第1学習部と前記第2学習部との何れを用いるかを判定するための精度検証用データであって、正例を示す複数の正データと負例を示す複数の負データとを含む精度検証用データと前記学習済分類モデルとを用いて算出される請求項4に記載の学習装置。
【請求項6】
請求項1~5の何れか1項に記載の学習装置によって学習された学習済分類モデルを用いて、前記分類対象データの分類を行う分類装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、データを分類する分類モデルを学習させる学習装置等に関する。
【背景技術】
【0002】
近年、機械学習により学習した学習済モデルを用いて、データを分類することが多く行われている。また、機械学習においても様々な学習方法が提案されている。例えば、特許文献1には、正例および正例の信頼度を用いるとともに、当該信頼度を補正する補正パラメータを更新して、正例と負例との分類境界を学習する分類装置が開示されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
特許文献1に記載の技術では、正例および正例の信頼度である正信頼度を学習データとし、分類誤差が最小になるように学習する。このため、学習データの正信頼度に偏りがある場合、適切に学習できない可能性がある。
【課題を解決するための手段】
【0005】
前記の課題を解決するために、本開示の一態様に係る学習装置は、分類対象データを正例または負例に分類する学習済分類モデルを生成する学習装置であって、前記正例を示す複数の正データと前記正データそれぞれの信頼度である正信頼度とを含む学習データを入力とし、AUCを最大化するように前記正例と前記負例とを分類する境界を学習する第1学習部を備える。
【発明の効果】
【0006】
本開示の一態様によれば、AUCが最大化されるように、正例と負例とを分類する境界を学習するので、正信頼度に偏りがある場合でも、学習を適切に行うことができる。
【図面の簡単な説明】
【0007】
【
図1】本開示の実施形態に係る学習装置の要部構成を示す機能ブロック図である。
【
図2】学習装置が学習に用いる学習用データの例を示す図である。
【
図3】学習装置における学習処理の流れを示すフローチャートである。
【
図4】分類装置の要部構成を示す機能ブロック図である。
【
図6】前記学習装置の別の実施形態を示す機能ブロック図である。
【発明を実施するための形態】
【0008】
まず、
図1を参照して、本実施形態に係る学習装置10について説明する。
図1は、学習装置10の要部構成を示す機能ブロック図である。学習装置10は、分類対象データ60を正と負とに分ける二値分類を行うための分類モデル100を学習させるものである。具体的には、学習装置10は、正データ51と正データ51それぞれの信頼度を示す正信頼度データ52とを学習データ50として、分類モデル100を学習させるものである。
【0009】
二値分類を行う分類モデル100の学習方法としては、他にも、PN学習(Positive-Negative Learning)およびPU学習(Positive-Unlabeled Learning)と呼ばれる学習方法がある。PN学習とは、正例を示す複数の正データと負例である複数の負データとを含むデータを学習データとする学習方法である。また、PU学習とは、正例を示す複数の正データと、正例であるか、または負例であるかが未知の複数の未知データとを含む学習データとする学習方法である。
【0010】
しかし、PN学習、PU学習では、負データが必要となる。負データの収集は、一般的に多大なコストがかかり、容易ではない。
【0011】
例えば、実世界では、正のデータしか入手できず、負のデータを取得できないことが多くある。一例として、購買予測では、顧客が過去に自社商品を購入した事例(正のデータ)は入手容易であるが、自社商品以外の他社商品を購入した事例(負のデータ)を取得することは困難である。
【0012】
本開示に係る、正データ51および正信頼度データ52を用いた学習は、このような正のデータしか得られない場合であっても、当該正のデータの信頼度を用いることにより、二値分類を行う分類モデル100を学習させることができるものである。
【0013】
図1に示すように、学習装置10は、第1学習部11を備える。第1学習部11は、学習データ50を用いて、学習前分類モデル101を学習させるものである。
【0014】
学習前分類モデル101は、学習前または学習中の分類モデル100である。分類モデル100は、入力されたデータにスコア(出力値)を割り当て出力するものである。第1学習部11は、正例および負例の分類境界を学習前分類モデル101に学習させて、例えば、ユーザにより入力される入力閾値よりも大きいスコアのデータを正例、入力閾値よりも小さいスコアのデータを負例に分類する学習済分類モデル102を生成する。また、以下では、学習済(trained)の分類モデル100を学習済分類モデル102とも記載する。学習前であるか学習済であるかを限定しない場合は、単に分類モデル100と記載する。
【0015】
学習データ50は、正例を示す複数の正データ51と、正データ51それぞれの信頼度である正信頼度データ52とを含む。
図2に、学習データ50の例を示す。ここでは、センサによって検知したデータの例を示す。
図2は、所定時間分のセンサ値の推移を示すデータである。ここでは、センサ値のデータが正常であり、かつ正常であることを示すラベルが付与されている正データ51と、当該正データ51の信頼度を示す正信頼度データ52とが示されている。
【0016】
正信頼度データ52とは、正データ51のデータ(点)毎の信頼度(正信頼度)を表すデータである。信頼度は、0~1の数値で示されてよい。信頼度は人によって与えられてよく、例えば、機器の動作中に取得されたデータに、(1)当該機器に詳しい有識者が主観で付与した値、(2)当該機器で生産した生産物の品質を5段階で評価した値、(3)当該機器の動作中の音や細かい動きを元に有識者の主観で評価した値等を信頼度として付与するものであってよい。
【0017】
第1学習部11は、学習前分類モデル101に学習データ50を入力して得られる分類結果に基づくAUC(Area Under Curve)を最大化するように、学習前分類モデル101に学習させて、学習済分類モデル102を生成する。より詳細には、第1学習部11は、学習前分類モデル101に学習データ50を入力して得られる、正信頼度が紐づいた正例に対する出力スコアに基づくAUCを最大化するように、学習前分類モデル101に学習させる。
【0018】
具体的には、第1学習部11は、以下の式(1)で示すAUC損失式に基づき、学習前分類モデル101に学習させる。すなわち、式(1)で算出される値を最小化するように、学習前分類モデル101に学習させる。
【0019】
【0020】
ここで、xは正データ、nは正データ数、gは分類モデル、rは信頼度、lは損失関数である。すなわち、式(1)では、正データの2点のデータを1セットとし、正データの全組合せの損失を算出している。換言すれば、式(1)は、複数の正データのうちの任意の2つの正データの組合せの損失の和を算出している。この複数の正データのうちの任意の2つの正データの組合せの損失の和が最小となるように学習することにより、AUCを最大化することと同等の学習を行うことができる。そして、上記のように正データの全組合せの損失を算出することにより、信頼度に偏りがある場合でも、全正データについて、均等に重みを考慮することができ、適切に学習を行うことができる。
【0021】
以下、上述した式(1)について説明する。
【0022】
まず、AUCとは、モデルの評価指標の一つであり、ROC曲線の下部分の面積を表わす。ROC曲線とは、正例と負例とに振り分けるベース閾値を変更した場合の再現率と偽陽性率との関係を、縦軸を再現率、横軸を偽陽性率としてプロットしたものである。再現率とは、全ての正例のうち、正しく正例に分類できた割合である。偽陽性率とは、全ての負例のうち、誤って正例に分類した割合である。
【0023】
まず、一般的に、負データに対する期待損失は、正データに対する期待損失と信頼度とを用いて以下の式(2)で表される。
【0024】
【0025】
ここで、xはデータ、πNはデータ中の負クラス事前確率(データ中の負データの割合)、πPはデータ中の正クラス事前確率(データ中の正データの割合)、ENは負データ確率分布に対する期待値、EPは正データ確率分布に対する期待値、rは信頼度である。
【0026】
式(2)の両辺をπNで割ると、以下の式(3)となる。
【0027】
【0028】
一方、PN学習においてAUCを最大化する期待損失は以下の式(4)で表される。
【0029】
【0030】
ここで、xPは正データ、xNは負データ、gは分類モデル、lは損失関数である。
【0031】
式(3)と式(4)とから、正データおよび信頼度からAUCを最大化する期待損失を求める式は以下の式(5)のように書くことができる。
【0032】
【0033】
ここで、πP/πNは定数となるので、式(5)から除去している。
【0034】
式(5)を経験損失の式に書き換えると、上述した式(1)となる。よって、式(1)は、正データおよび信頼度を用いてAUCを最大化する学習を行う損失式ということができる。
【0035】
〔学習装置10における学習処理の流れ〕
次に、
図3を参照して、学習装置10における学習処理の流れについて説明する。
図3は、学習処理の流れを示すフローチャートである。
【0036】
図3に示すように、学習装置10の第1学習部11は、まず、1回分の学習データ50(正データ51および正信頼度データ52)を抽出する(S101)。次に、抽出した学習データ50と式(1)とを用いて損失を算出する(S102)。そして、第1学習部11は、算出した損失に基づいて学習前分類モデル101のパラメータを更新する(S103)。そして、所定の学習精度が達成できていれば(S104でYES)、学習処理を終了し、所定の学習精度が達成できていなければ(S104でNO)、ステップS101に戻り学習を続ける。
【0037】
〔分類装置〕
次に、
図4を参照して、分類装置20について説明する。
図4は、分類装置20の要部構成を示す機能ブロック図である。分類装置20は、学習装置10により学習された分類モデル100である学習済分類モデル102を用いて、分類対象データ60の分類を行い、その結果を出力するものである。
【0038】
分類装置20は、正データ51および正信頼度データ52を含む学習データ50を用いて学習された分類モデル100を用いて、データの二値分類を行うものであれば、どのような分類を行うものであってもよい。例えば、画像データが特定の動物(例:猫)であるか否か、電子メールがフィッシングメールであるか否か、検知データが正常か否か等を分類するものであってよい。
【0039】
〔分類システム〕
次に、
図5を参照して、分類システム1について説明する。
図5は、分類システム1の構成を示す図である。分類システム1は、
図1に示す学習装置10と
図4に示す分類装置20を含み、さらに、分類装置20による分類結果を評価し、評価結果を分類装置20にフィードバックする評価装置30を含む。
【0040】
上述したように、学習装置10は、正データ51および正信頼度データ52を含む学習データ50を用いて、分類モデル100に学習させる。分類装置20は、学習装置10により学習された分類モデル100を用いて、分類対象データ60の分類を行う。分類結果は、評価装置30に出力される。
【0041】
評価装置30は、評価者に分類結果を提示する。そして、評価者による評価結果に基づいて、分類モデル100に用いるハイパーパラメータの調整を行う。ハイパーパラメータの調整そのものが評価者によって行われてもよい。ハイパーパラメータとは、機械学習アルゴリズムの挙動を設定するパラメータである。
【0042】
〔別の実施形態〕
次に、
図6を参照して、学習装置10の別の実施形態である学習装置10Aについて説明する。
図6は、学習装置10の別の実施形態を示す機能ブロック図である。
【0043】
本実施形態に係る学習装置10Aは、上述した第1学習部11に加え、第2学習部12および切替部13を備える。
【0044】
第2学習部12は、学習データを入力として、該学習データを正例と負例とに分類するとともに、分類結果に基づく誤差を最小化するように正例および負例とに振り分けるベース閾値を学習前分類モデル101に学習させるものである。
【0045】
切替部13は、学習用データに応じて、学習前分類モデル101を第1学習部11と第2学習部12との何れに学習させるかの切り替えを行う。
【0046】
切替部13は、正例を示す複数の正データ71と負例を示す複数の負データ72とを含む精度検証用データ70と学習前分類モデル101とを用いて算出された評価指標に基づいて、第1学習部11と第2学習部12との切り替えを行う。
【0047】
〔ソフトウェアによる実現例〕
学習装置10、10A、および分類装置20の機能は、当該装置としてコンピュータを機能させるためのプログラムであって、当該装置の制御ブロック(第1学習部11、第2学習部12、切替部13)としてコンピュータを機能させるためのプログラムにより実現することができる。
【0048】
この場合、上記装置は、上記プログラムを実行するためのハードウェアとして、少なくとも1つの制御装置(例えばプロセッサ)と少なくとも1つの記憶装置(例えばメモリ)を有するコンピュータを備えている。この制御装置と記憶装置により上記プログラムを実行することにより、上記各実施形態で説明した各機能が実現される。
【0049】
上記プログラムは、一時的ではなく、コンピュータ読み取り可能な、1または複数の記録媒体に記録されていてもよい。この記録媒体は、上記装置が備えていてもよいし、備えていなくてもよい。後者の場合、上記プログラムは、有線または無線の任意の伝送媒体を介して上記装置に供給されてもよい。
【0050】
また、上記各制御ブロックの機能の一部または全部は、論理回路により実現することも可能である。例えば、上記各制御ブロックとして機能する論理回路が形成された集積回路も本開示の範疇に含まれる。この他にも、例えば量子コンピュータにより上記各制御ブロックの機能を実現することも可能である。
【0051】
また、上記実施形態で説明した各処理は、AI(Artificial Intelligence:人工知能)に実行させてもよい。この場合、AIは上記制御装置で動作するものであってもよいし、他の装置(例えばエッジコンピュータまたはクラウドサーバ等)で動作するものであってもよい。
【0052】
〔まとめ〕
本開示の態様1に係る学習装置は、分類対象データを正例または負例に分類する学習済分類モデルを生成する学習装置であって、前記正例を示す複数の正データと前記正データそれぞれの信頼度である正信頼度とを含む学習データを入力とし、AUCを最大化するように前記正例と前記負例とを分類する境界を学習する第1学習部を備える。
【0053】
前記の構成によれば、学習データが、正例を示す正データおよび正データそれぞれの信頼度である正信頼度を含む学習データの場合でも、AUCが最大化されるように、正例と負例とを分類する境界を学習する。よって、正信頼度に偏りがある場合でも、学習を適切に行うことができる。
【0054】
本開示の態様2に係る学習装置は、前記態様1において、前記第1学習部は、前記学習データに含まれる複数の正データのうちの任意の2つの正データの組合せの損失の和が最小となるように学習することにより前記AUCを最大化する。
【0055】
前記の構成によれば、正データの任意の2個のデータの組合せの損失の和が最小となるように学習する。これにより、AUCを最大化することと同等の学習を行うことができる。
【0056】
本開示の態様3に係る学習装置は、前記態様1または2において、前記第1学習部は、xを前記学習データに含まれる正データ、nを前記学習データの正データ数、rを前記正データに対応する前記正信頼度、gを分類モデル、lを損失関数としたとき、以下の式(1)
【0057】
【0058】
で算出される値を最小化するように学習を行う。
【0059】
前記の式(1)で算出される値を最小化するように学習することにより、AUCを最大化することができる。
【0060】
本開示の態様4に係る学習装置は、前記態様1~3の何れかにおいて、前記学習データを入力としたときの分類結果に基づく誤差を最小化するように前記境界を学習する第2学習部と、前記第1学習部と前記第2学習部との切り替えを行う切替部と、を備える。
【0061】
前記の構成によれば、AUCを最大化する学習と誤差を最小化する学習とを切り替えて、学習を行うことができる。
【0062】
本開示の態様5に係る学習装置は、前記態様1~4の何れかにおいて、前記切替部は、評価指標に基づいて前記切り替えを行うものであり、前記評価指標は、前記第1学習部と前記第2学習部との何れを用いるかを判定するための精度検証用データであって、正例を示す複数の正データと負例を示す複数の負データとを含む精度検証用データと前記学習済分類モデルとを用いて算出される。
【0063】
前記の構成によれば、学習データを用いて学習を行うにあたり、第1学習部によるAUCを最大化する学習を行うか、または第2学習部による誤差を最小化する学習を行うかを自動的に切り替えることができる。
【0064】
本開示の態様6に係る分類装置は、前記学習装置によって学習された学習済分類モデルを用いて、前記分類対象データの分類を行う。
【0065】
前記の構成によれば、上述した学習装置によって学習された学習済モデルを用いた分類装置を実現できる。
【0066】
以上、本開示に係る発明について、諸図面および実施例に基づいて説明してきた。しかし、本開示に係る発明は上述した各実施形態に限定されるものではない。すなわち、本開示に係る発明は本開示で示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本開示に係る発明の技術的範囲に含まれる。つまり、当業者であれば本開示に基づき種々の変形または修正を行うことが容易であることに注意されたい。また、これらの変形または修正は本開示の範囲に含まれることに留意されたい。
【符号の説明】
【0067】
1 分類システム
10 学習装置
11 第1学習部
12 第2学習部
13 切替部
20 分類装置
50 学習データ
51 正データ
52 正信頼度データ
60 分類対象データ
70 精度検証用データ
71 正データ
72 負データ
100 分類モデル
101 学習前分類モデル
102 学習済分類モデル