【論文紹介】nnPU learning: Positive-Unlabeled Learning with Non-Negative Risk Estimator
はじめに
Positive-Unlabeled Learning with Non-Negative Risk Estimator について過去論文を読みつつまとめたものになります。 勘違いしている点などあればご指摘いただけると幸いです。
従来研究における流れ
※ 記法が以前の論文と今回の論文で異なるので、この記事では今回の論文の記法に揃えます。
: 決定関数
: を予測値、をground truthとする損失関数
: 期待損失
Positive Negative Classification
通常のpositive negative分類の期待損失は、false negative, false positiveであるriskを最小化するものとして以下の経験損失から推定可能です
ここで、
また、であり、全てのsampleからpositiveが発生する確率となります。positiveが全て観測される場合は で推定可能です。
Positive Unlabeled Classification
positive unlabeledな分類は、positiveの一部のみが観測されるという状況を問題とします。 そのため、サンプルの構成は
- positive: 全positiveのうち観測された一部のpositive
- unlabeled: 観測されなかったpositive + 全negative
の2種類となります。
ここで、negativeが観測できないため、期待損失を推定するには上記を置き換えてあげる必要があります。
また、も不明となりますが、これに関しては別途推定する必要があります。ここではは事前にわかっているものとします。
従来手法1: Non-Convex PU learning
このことから、positive unlabeledな問題設定において期待損失を推定するため、一つ目の論文であるAnalysis of Learning from Positive and Unlabeled Dataでは、以下の経験損失が提案されています。
ここで、
こちらは、となる損失関数、つまりnon-convexな損失関数のみbiasなく適用可能になります。
しかし、それに伴い問題点として
- convexな損失関数を適用した際に、biasが発生し誤った決定境界の決定に繋がる
- 経験損失がnon-convexとなるため計算量が多く局所解に陥る可能性がある
があります。
従来手法2: Convex PU learning
それらの問題点に対して、positive unlabeledな問題設定においてconvexな損失関数を使用して期待損失$R_{pn}(g)$を推定する方法を提案した論文がConvex Formulation for Learning from Positive and Unlabeled Dataで、以下の経験損失によって推定することが提案されています。
ここで、
こちらに関しては
- 損失関数がconvexである
の両方を満たす場合のみ、convexになります。
制約を満たさないconvexな損失関数としてはhinge lossなどが挙げられますが、こちらの論文ではhinge lossに関しては代替案としてdouble hinge lossを提案しています。
また、今回取り上げる論文ではこれらをbiasが発生しないという意味で、unbiased PU learning (uPU) と呼んでいます。この記事でもその呼び方を使用します。
uPUとPNの比較
Theoretical Comparisons of Positive-Unlabeled Learning against Positive-Negative Learningにおいて、unbiased PUとPNの比較が行われています。
まず、uPUにおいては、以下の変形を用いています。
ここで、をnegative dataから推定する際の収束率は、
をpositive, unlabeled dataから推定する際の収束率は となります。
このことから、
である時にuPUはPNよりも良いパフォーマンスとなります。
しかし、これは常に成り立つ訳ではなく、
- となる
- 損失関数がLipschitz continuousである
- ありうる関数の集合のRandemacher complexityがサンプルサイズの増加に伴いで減少する
という制約満たした場合のみ成り立ちます。
unbiased PUにおける課題
ここで、上記最後の制約により、データ量に対してモデルの複雑性が高い場合にuPUはPNよりも悪いパフォーマンスとなります。
こちらは のデータを用いて、784-100-1のRelu層を持つMLPを学習させたものとなります。 uPUのtrainにおいて、あるepochから経験損失が負の値になり、それに伴いtestの経験損失も悪化しています。過学習しているのがわかります。
提案手法: non-negative PU learning (nnPU)
ここで、どんなに対しても期待損失はである一方、上記検証ではは減少し続け負の値になっています。
これは、期待損失に関しては常に
となる一方で、経験損失に関しては
が必ずしも成り立たないことが原因となっています。
non-negative risk estimastor for PU learning
このことから、
が常に成り立つような経験損失がこの論文では提案されています。
ここで、経験損失 を最小化する
をEmpirical Risk Minimizerとして、
を見つけ出す過程を本論文ではnon-negative PU learning (nnPU)と呼んでいます。
使用する損失関数
前述のように、もし関数が線形である場合は
- convexな損失関数である
- (以下図における(5))
の両方を満たす損失関数を使用した場合は凸最適化になります。
一方で、関数が非線形である場合はこれら損失関数を使用しても凸最適化にはなりません。
そのような場合は勾配が常にnon-zeroとなり既存のgradient methodを適用できるsigmoid lossを使用することをこちらの論文では提案しています。
最適化アルゴリズム
uPUと違いnnPUは経験損失においてmaxをとるため、そのままでは並列化できません。そのため、最適化においては以下のアルゴリズムが提案されています。
ここで、ハイパーパラメータは
としたときの許容量で、の範囲で許容します。そのため、が0に近いほど許容量は小さくなります。
もう一つのハイパーパラメータは
となった時にstep-sizeをどれだけ減衰させるかを指します。の値が0に近いほどより強く過学習を防ぐことになります。
最後に
著者によるChainerでの実装が以下で公開されています。
参考文献
C. Elkan and K. Noto. Learning classifiers from only positive and unlabeled data. In KDD, 2008.
M. C. du Plessis, G. Niu, and M. Sugiyama. Analysis of learning from positive and unlabeled data. In NIPS, 2014.
M. C. du Plessis, G. Niu, and M. Sugiyama. Convex formulation for learning from positive and unlabeled data. In ICML, 2015.
G. Niu, M. C. du Plessis, T. Sakai, Y. Ma, and M. Sugiyama. Theoretical comparisons of positiveunlabeled learning against positive-negative learning. In NIPS, 2016.
Ryuichi Kiryo, Gang Niu, Marthinus Christoffel du Plessis, and Masashi Sugiyama. Positive-Unlabeled Learning with Non-Negative Risk Estimator. Advances in neural information processing systems. 2017.