いろは3013586 views
高校倫理1440914 views
高校化学2925825 views
小学社会310647 views
Computer368461 views
教育149564 views
高校日本史190639 views
雑学1473717 views
LaTeX962713 views
高校物理160543 views
Help
Tools
NewsSpreadsheetCalendarBookkeepingMarkdown TablesLanguage Model NewsLinux CommandsSlidesTier ListPen ToolIllustrationCrayonWatercolorPixel ArtASCII ArtPerspectiveEndless StairsGraphMind MapER DiagramFamily TreeMemeCurved TextImage EditorMosaicRetro FilterPencil SketchSwirl EffectLine ArtOCR/HighlighterMakeup EditorFaviconVideo TrimmerScrolling VideoVideo TitleColor PickerColor ExtractorBonfireFireworksCherry BlossomWater RippleWater SplashBreaking GlassGlass TextureFabric TextureWood GrainMarble TextureBrick Wall TextureMetal TextureWashi Paper TextureCardboard TextureCSS ButtonIcon MakerBar ChartGrouped Bar ChartStacked Bar ChartPie ChartLine ChartArea ChartStacked Area ChartScatter Plot3D Bar Chart3D Pie ChartBar Chart RaceBubble ChartPopulation PyramidPictogramEarningsCandlestick ChartInvestment RiskMortgage SimulatorCalculatorMatrix CalculatorFunction GraphPolynomial ExpansionVenn DiagramField VisualizerRubik's Cube Group TheoryTraveling SalesmanVoronoi and DelaunayFractalUniversity Entrance Exam MathColumn ArithmeticDraw Math FiguresArithmetic AnimationArithmetic Word ProblemsCounting with Tree DiagramsCube NetsRolling DiceCross SectionsMotion PathMechanicsWavesUniversity Entrance Exam Physics解析力学Quantum MechanicsStatistical MechanicsRelativityCelestial MechanicsAstrophysicsCosmologyElectromagnetic WavesCapacitorsLight and LensesThermodynamicsHow Semiconductors WorkMolecular StructuresAtomic OrbitalsElectrochemical CellsChemical EquilibriumCrystal LatticesBuffer pHOrganic Reaction MapPeriodic TableComplex IonsDNA Double HelixCell DivisionMembrane ChannelsNerve ImpulseMuscle ContractionHormones and HomeostasisRock ClassificationWeatherConstellationsSolar and Lunar Eclipses3D ModelingFloor PlanSeismic StructuresIntersection TurnMaglevCooking AnimationOrigamiLive Viewer CountGeoJSON MapRailway MapPopulation MapCrime MapLand Price MapSchool MapShrine and Castle MapHouse of Representatives MapWord MapSolitaireReversiHakoiri MusumeChessHamburgerRippleSlide Puzzle MakerNeon PinballNovel MakerJapanese Typing PracticePiano Score EditorMusic TheoryShogi StrategyPiano Rhythm Game

English

正定値行列と半正定値行列|定義・固有値による判定・平方根

対称行列に「正の数」にあたるものを考えたい。実数の正負は の符号で決まるが、行列では二次形式 の符号がその役をする。

これが常に成り立つ行列を正定値という。正の数と同じように、逆数が取れて平方根も取れる、扱いやすい行列の一群である。

正定値の定義

実対称行列 が正定値であるとは、零でないどのベクトル に対しても が成り立つことをいう。

複素数の範囲では、エルミート行列に対して と書く。 は共役転置で、エルミート行列なら は必ず実数になるので、大小を比べられる。

が動く範囲は空間全体である。1 本でも となるベクトルが見つかれば、その行列は正定値ではない。

半正定値・負定値・不定

等号を許した が常に成り立つとき、 を半正定値という。零でない で値が 0 になることを認める点だけが違う。

不等号の向きを変えれば負定値と半負定値になる。 が正定値なら は負定値である、と読み替えてもよい。

正の値も負の値も取るときは不定という。この 4 つの型で、対称行列は残らず分類される。

例:正定値になる行列

二次形式は である。中央の項が負になっても、両側の平方の項が上回るので全体は正のままになる。

トレースが 7、行列式が 8 なので、固有値は で 2 つとも正である。

例:半正定値になる行列

二次形式は 、つまり である。負にはならないが、 の方向では 0 になる。

固有値は 0 と 2 で、0 が混ざっている。この行列は正則ではなく、逆行列を持たない。

例:不定になる行列

二次形式は である。第 1 象限では正、第 2 象限では負になるので、符号が定まらない。

固有値は 1 と で、正と負が同居している。不定であることは、この符号の混在として現れる。

対称性を前提にする理由

正定値性は対称行列に対して定義する。対称でない行列に を当てても、非対称な部分は打ち消し合って見えなくなるからである。

どんな正方行列も、対称な部分と交代的な部分に分けられる。交代的な部分 を満たすので、二次形式には寄与しない。

したがって、非対称な行列を持ち出しても、判定しているのは対称な部分だけになる。はじめから対称な行列に限って話を進めるのが筋である。

固有値がすべて正であることと同じ

対称行列が正定値であることと、固有値がすべて正であることは同じ意味になる。判定の場面では、こちらを使うことが多い。

半正定値なら固有値は 0 以上、負定値ならすべて負、不定なら正と負が混ざる。二次形式の型と固有値の符号が、そのまま対応している。

証明:直交行列で座標を取り替える

対称行列は直交行列 で対角化できる。 が固有値を並べた対角行列になる、という事実を使う。

と座標を取り替えると、二次形式は平方の重み付き和になる。

は正則なので、 が空間全体を動けば も空間全体を動く。固有値がすべて正なら、右辺は で必ず正になる。

逆に となる固有値があれば、 を第 成分だけ 1 のベクトルに取ればよい。そのとき値は 以下となり、正定値ではなくなる。

例:固有値で判定する

トレースが 10、行列式が 9 なので、固有多項式は である。固有値は 9 と 1 で、どちらも正になる。

したがってこの行列は正定値である。成分に 4 という大きめの値があっても、対角の 5 が上回っていれば符号は崩れない。

対角成分・行列式・トレースは正になる

正定値なら対角成分はすべて正である。 を第 成分だけ 1 のベクトルに取れば、 がそのまま になるからである。

行列式は固有値の積、トレースは固有値の和なので、どちらも正になる。とくに行列式が 0 でないので、正定値行列は必ず正則である。

対角成分との間には上からの評価もある。行列式は対角成分の積を超えない、というアダマールの不等式が成り立つ。

例:対角成分が正でも正定値とは限らない

対角成分はどちらも正だが、行列式は で負である。行列式が負なら固有値の積が負なので、符号の違う固有値が混ざっている。

実際に固有値は 4 と で、この行列は不定である。対角成分だけを見て判断できないことが分かる。

平方完成で符号を読む

二次形式を平方の和に直せば、符号は係数を見るだけで決まる。1 変数の を平方完成するのと手順は同じである。

先ほどの で試す。 について平方完成すると、残りは だけの項になる。

係数の 4 と 2 がどちらも正なので、この二次形式は正定値である。平方完成の途中に現れる係数は、コレスキー分解や首座小行列式とも結びついている。

例:平方完成して確かめる

半正定値の例を平方完成してみる。 は次の形になる。

2 つ目の係数が 0 なので、 の方向では値が 0 になる。負の係数が出ないので、半正定値だと読める。

係数のどれかが負なら不定である。平方完成は、型を決めるいちばん素朴な方法だといえる。

グラム行列として書ける

正定値行列は、正則な行列 を使って の形に書ける。逆に、この形の行列は必ず正定値である。

長さの 2 乗なので 0 以上になる。 が正則なら のとき なので、値は正になる。

が正則でなければ半正定値になる。ベクトルの内積を並べたグラム行列がいつも半正定値なのは、この計算のためである。

例:B から作った行列で確かめる

は正則である。 を計算すると次の行列になる。

対角成分が正で行列式が 1 なので、固有値は 2 つとも正である。 から作った時点で、正定値になることは保証されていた。

逆行列も和も正定値

正定値行列の逆行列は、また正定値である。固有値が に変わるだけで、正であることは崩れない。

正定値行列どうしの和も正定値になる。 が 2 つの正の数の和になるので、これも符号が変わらない。

正の数を掛けても保たれる。正定値行列の集まりは、和と正のスカラー倍について閉じた形をしている。

積は正定値とは限らない

正定値行列どうしの積は、そもそも対称になるとは限らない。

右辺は対称でないので、正定値かどうかを問う土俵に乗らない。正の数の積が正になる、という感覚をそのまま持ち込むと外す。

ただし固有値はすべて正のままである。積が対称になるのは 2 つの行列が可換なときで、そのときは正定値になる。

合同変換では符号が保たれる

正則な を取って と変換しても、正定値性は変わらない。 と置けば、 になるからである。

が正則なので、 が零でなければ も零ではない。したがって符号の型はそのまま引き継がれる。

この変換を合同変換という。相似変換とは別物で、保たれるのは固有値そのものではなく、正負の個数のほうである。

平方根がただ一つ取れる

正定値行列 には、 を満たす正定値行列 がただ一つ存在する。実数の正の平方根と同じ性質である。

作り方は固有値を経由する。直交行列で対角化し、対角成分を正の平方根に置き換えて、もとの基底に戻せばよい。

半正定値でも同じことができる。0 の固有値は 0 のままにしておけば、半正定値な平方根が得られる。

例:整数で書ける平方根

固有値は 9 と 1 だった。平方根を取れば 3 と 1 になり、同じ固有ベクトルで組み直すと次の行列が得られる。

実際に 2 乗すると となり、 に戻る。 の固有値は 3 と 1 で、こちらも正定値である。

内積を定める

正定値行列があると、新しい内積を作れる。 と定めればよい。

内積に必要な条件のうち、対称性は の対称性から、線形性は積の形から出る。残る正値性がちょうど正定値性にあたる。

が単位行列なら、ふつうの内積に戻る。正定値行列は、空間に別の長さと角度を入れる道具だと見ることもできる。

等高線は楕円になる

を満たす点の集まりを描くと、型ごとに形が変わる。正定値なら閉じた楕円、不定なら双曲線、半正定値なら平行な 2 直線になる。

HTML
CSS
JavaScript
<svg viewBox="0 0 460 190" width="100%" style="max-width:460px;display:block;margin:0 auto">
	<line x1="25" y1="110" x2="145" y2="110" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="85" y1="50" x2="85" y2="170" stroke="#c8c8c8" stroke-width="1"></line>
	<ellipse cx="85" cy="110" rx="48" ry="30" fill="#1b81e0" fill-opacity="0.08" stroke="#1b81e0" stroke-width="1.5"></ellipse>
	<text x="85" y="36" font-size="11" fill="#1f1f1f" text-anchor="middle">正定値</text>
	<line x1="170" y1="110" x2="290" y2="110" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="230" y1="50" x2="230" y2="170" stroke="#c8c8c8" stroke-width="1"></line>
	<path d="M 272 62 Q 240 110 272 158" fill="none" stroke="#1b81e0" stroke-width="1.5"></path>
	<path d="M 188 62 Q 220 110 188 158" fill="none" stroke="#1b81e0" stroke-width="1.5"></path>
	<text x="230" y="36" font-size="11" fill="#1f1f1f" text-anchor="middle">不定</text>
	<line x1="315" y1="110" x2="435" y2="110" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="375" y1="50" x2="375" y2="170" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="333" y1="70" x2="405" y2="70" stroke="#1b81e0" stroke-width="1.5"></line>
	<line x1="345" y1="150" x2="417" y2="150" stroke="#1b81e0" stroke-width="1.5"></line>
	<text x="375" y="36" font-size="11" fill="#1f1f1f" text-anchor="middle">半正定値</text>
	<text x="230" y="185" font-size="11" fill="#9a9a9a" text-anchor="middle">閉じた曲線になるのは正定値のときだけ</text>
</svg>

楕円になるということは、 を満たす範囲が有界だということである。どの向きへ進んでも値が増えるので、遠くまで行けない。

楕円の軸と固有値

固有ベクトルの向きが楕円の軸になり、半軸の長さは固有値から決まる。固有値 の方向では、半軸が になる。

HTML
CSS
JavaScript
<svg viewBox="0 0 460 220" width="100%" style="max-width:460px;display:block;margin:0 auto">
	<line x1="110" y1="120" x2="350" y2="120" stroke="#c8c8c8" stroke-width="1"></line>
	<line x1="230" y1="30" x2="230" y2="200" stroke="#c8c8c8" stroke-width="1"></line>
	<ellipse cx="230" cy="120" rx="45" ry="70" fill="#1b81e0" fill-opacity="0.08" stroke="#1b81e0" stroke-width="1.5"></ellipse>
	<line x1="230" y1="120" x2="275" y2="120" stroke="#d0562a" stroke-width="2"></line>
	<line x1="230" y1="120" x2="230" y2="50" stroke="#d0562a" stroke-width="2"></line>
	<text x="288" y="116" font-size="11" fill="#d0562a">1/2</text>
	<text x="238" y="46" font-size="11" fill="#d0562a">1</text>
	<text x="230" y="22" font-size="11" fill="#9a9a9a" text-anchor="middle">固有値が大きい向きほど、楕円は短くなる</text>
	<text x="230" y="214" font-size="11" fill="#9a9a9a" text-anchor="middle">固有値 4 の向きで半軸 1/2、固有値 1 の向きで半軸 1</text>
</svg>

対角行列で確かめると分かりやすい。対角成分が 4 と 1 なら二次形式は で、 方向の半軸は 方向は 1 になる。

固有値が大きいほど、その向きでは値が速く増える。楕円が短くなるのはそのためである。

判定のしかたの比較

手計算では、首座小行列式を左上から順に調べる方法が速い。3 次までなら行列式を 3 回計算するだけで済み、シルベスターの判定法と呼ばれる。

大きな行列ではコレスキー分解を試すほうがよい。途中で負の数の平方根が要求されたら、その時点で正定値ではないと分かる。

固有値を求める方法は確実だが、手数はいちばん多い。半正定値かどうかまで見たいときは、首座小行列式では足りず、すべての主小行列式が要る。

他の話題とのつながり

最小二乗法では という形の行列が現れる。列が一次独立なら正定値になり、正規方程式がただ一つの解を持つ。

統計では分散共分散行列が半正定値になる。分散が負にならないことが、そのまま二次形式の符号として書かれている。

多変数関数の極値判定にも使う。ヘッセ行列が正定値なら極小、負定値なら極大で、不定なら鞍点である。

よくある誤り

対角成分が正なら正定値だと判断してしまう。 が反例で、対角は正でも不定である
行列式が正であることを条件にすると、負定値の 2 次の行列を取りこぼす。固有値が 2 つとも負でも積は正になる
成分がすべて正の行列と混同する。正定値行列の非対角成分は負でもよく、 は正定値である
対称でない行列に判定法をそのまま当てる。二次形式が見ているのは対称な部分だけである
正定値行列どうしの積も正定値だと考える。積は対称にすらならないことがある
半正定値と正定値を同じ扱いにする。0 の固有値があると逆行列が作れず、平方根の一意性も崩れる
首座小行列式が 0 以上なら半正定値、と読み替える。半正定値の判定には、すべての主小行列式を見る必要がある

参考文献

Definite matrix - Wikipedia
Sylvester's criterion - Wikipedia
Definitheit - Wikipedia(ドイツ語)
Matrice définie positive - Wikipédia(フランス語)
正定矩阵 - 维基百科(中国語)
正定値行列は、二次形式がいつも正になる対称行列です。定義と半正定値・負定値・不定との違い、固有値がすべて正であることとの同値性の証明、対角成分や行列式との関係、グラム行列としての表し方、平方根がただ一つ取れること、等高線が楕円になることまでを、計算例をつけて解説します。