強双対性とは、数理最適化において元の主問題の最適値と、それに対応する双対問題の最適値が完全に一致する性質のことです。機械学習では、サポートベクターマシンなどの凸最適化問題を効率的に解くための理論的基盤として非常に重要であり、複雑な制約付き最適化問題をより扱いやすい形で解くことを可能にします。
強双対性とは
強双対性(きょうそうついせい)とは、制約付き最適化問題において、元の最適化問題である「主問題」の最小値と、その変数や制約を変換して得られる「双対問題」の最大値が、誤差なく完全に一致する状態や性質を指します。
詳しく解説
数理最適化において、主問題と双対問題の間には常に「主問題の最小値 ≧ 双対問題の最大値」という関係(弱双対性)が成り立ちます。この両者の差を「双対ギャップ」と呼びますが、強双対性が成立するとき、双対ギャップは完全にゼロになります。機械学習モデルの学習、特にサポートベクターマシンの最適化アルゴリズムや、正則化項を伴う損失関数の最小化などでは、この性質が理論的な裏付けとして不可欠です。強双対性が成り立つための十分条件として、問題が凸最適化であり、かつ制約条件が一定の基準(スレーターの条件など)を満たしていることが一般に知られています。これにより、元々の複雑な制約付き問題を、より解きやすい双対問題へと変換して解くことが可能になります。
具体例・使われ方
代表的な利用例は、機械学習における「サポートベクターマシン」の訓練プロセスです。境界線(マージン)を最大化する主問題は高次元空間で直接解くのが困難ですが、強双対性を利用して双対問題に書き換えることで、データ点同士の内積を用いたカーネル法を適用できるようになり、非線形な境界を効率的に学習することが可能になります。また、制約付きの最適化問題を解くための「ラグランジュ未定乗数法」において、元の問題を最大化・最小化の鞍点問題に落とし込む際にも、この性質が直接的に利用されています。
似た用語との違い
混同されやすい概念に「弱双対性」があります。弱双対性は、主問題が凸問題であるかどうかにかかわらず、常に「主問題の最小値 ≧ 双対問題の最大値」が成り立つという一般的な性質です。一方、強双対性はこれが「イコール(主問題の最小値 = 双対問題の最大値)」で結ばれる特別な状態を指します。弱双対性のみが成り立つ非凸最適化などでは双対ギャップがゼロにならないため、双対問題を解いても主問題の厳密な最適解を得ることはできません。
注意点
すべての最適化問題で強双対性が成り立つわけではない点に注意が必要です。目的関数や制約条件が非凸(凸最適化ではない)であるディープラーニングなどのニューラルネットワークの学習においては、一般に強双対性は成り立たず、双対ギャップが存在します。そのため、ニューラルネットワークのパラメーター最適化には双対問題からのアプローチではなく、勾配降下法などの数値的な最適化手法が直接用いられます。強双対性を前提としたアルゴリズムを非凸問題にそのまま適用することはできません。