方言を話すおしゃべり猫型ロボット『ミーア』をリリースしました(こちらをクリック)

【線形代数基礎】行列演算・行基本変形・掃き出し法・階数・行列式・固有値・固有ベクトル・対角化

linear-algebra
この記事は約9分で読めます。

線形代数とは何か

ベクトル空間と線形写像の性質を研究する数学の一分野。主に行列、ベクトル、線形方程式系を扱い、科学や工学、経済学などさまざまな分野で広く応用されている。

線形(Linear)

「線形」とは、ある種の直線性を持つ性質を意味する。具体的には、関数や写像が以下の条件を満たす場合に線形と呼ばれる。

  • 加法に対して閉じている:f(x+y)=f(x)+f(y)
  • スカラー倍に対して閉じている:f(cx)=cf(x)

これらの性質を満たす関数や写像を線形と呼び、これを用いたモデルや方程式は線形方程式と呼ばれる。

一次関数は線形関数。一次関数の高次元バージョンが、行列による関数、線形関数。

二次関数や三角関数は非線形関数

代数(Algebra)

「代数」とは、数や量の一般化された操作を扱う数学の一分野。基本的な代数の操作には、加法、減法、乗法、除法がある。代数は数だけでなく、文字や記号を用いて数式を表現し、さまざまな法則を使って計算や操作を行う。代数の目的は、数式を操作することで解を求めたり、式の構造を理解したりすること。

線形代数では、これらの代数の概念をベクトルや行列に適用し、ベクトル空間内での操作や関係を調べる。行列を用いた計算や、ベクトル空間の基底、次元、直交性などの概念が重要な役割を果たす。

ベクトル(Vector)

  • いくつかの数の組みで、大きさと方向を持つ量を表す

行列(Matrix)

  • 数字を行と列に並べたもの。ベクトルも行列の一部。
  • 行列の積はベクトルXを別のベクトルy=Axに変換する。行列によって、拡大縮小、反転、回転、剪断が表現できる。

線形代数の応用分野

コンピュータ科学と機械学習

  • データの表現や操作、アルゴリズムの設計において行列やベクトルが広く使用される。
  • 機械学習のモデル(例えば、ニューラルネットワーク)は、重み行列を用いて入力データを処理する。

物理学

  • 力や運動、電場や磁場などの物理量をベクトルや行列を用いて表現する。
  • 量子力学では、状態ベクトルや行列演算が重要な役割を果たす。

経済学

  • 経済モデルや最適化問題の解法において、行列やベクトルを使用する。
  • 例えば、入力出力分析では産業間の取引を行列表現する。

グラフィックスと画像処理

  • 3Dグラフィックスのレンダリングや画像のフィルタリングにおいて、行列変換が使用される
  • アフィン変換や射影変換などの幾何変換を行列で表現する。

システム工学

  • 制御理論において、状態ベクトルや伝達行列を用いてシステムの動作を記述する。
  • ロボティクスにおいても、ロボットの位置や姿勢をベクトルと行列で表現する。

統計学

  • 多変量解析では、データを行列として扱い、主成分分析や因子分析などの手法を適用する。
  • 回帰分析においても、行列演算を用いてモデルのパラメータを推定する。

連続的な問題である微分方程式を、極限まで拡大することで離散化して、数字で直線として扱うようにすることで、線形代数で解けるように単純化する

微分方程式の離散化

  • 微分方程式は連続的な関数の変化を表現するが、これを有限差分法(関数の連続的な変化を、有限な差分で近似)や有限要素法(領域を小さな要素に分割し、それぞれの要素内で関数を近似する)などを用いることで、離散化することで数値的に解くことができるようになる。離散化した微分方程式は、しばしば連立一次方程式の形になるので、これを行列形式で表現し、線形代数を用いて解くことが可能になる。

行列演算の性質

  • 結合法則・交換法則・分配法則は普通の数と同じ。
  • 積は可換ではない(非可換):AB≠BA →普通の数と異なり、「左からかける」「右からかける」を区別する必要がある

行基本変形

文字通り、行列の行に対して行う基本的な操作のこと。これらの操作を用いることで、行列を簡単な形に変換することができ、連立一次方程式の解法や行列の階数を求める際に役立ちつ。行基本変形には次の3種類がある

  • 行の交換:2つの行を入れ替える。Ri↔Rj
  • 行の定数倍:ある行を0でない定数で掛ける。Ri→kRi
  • 行の加減:ある行に別の行の定数倍を加える。Ri→Ri + kRj

列基本変形も行基本変形と同様に定義できるが、連立方程式の解法や行列のランク計算・逆行列の計算に不便という観点で、行基本変形が用いられることが多い。

掃き出し法(ガウスの消去法)

行基本変形を用いて行列を階段行列(上三角行列)に変換する手法。この方法は、連立一次方程式の解法や行列の階数、逆行列を求めるために用いられる。

係数行列:連立一次方程式の係数だけを取り出して行列として表現したもの

定数項ベクトル:連立一次方程式の右辺にある定数項を集めて作られるベクトル。各方程式の右辺に相当する

拡大係数行列は、係数行列に定数項ベクトルを追加して拡張した行列。これにより、連立一次方程式全体を1つの行列で表現することができる

連立方程式の解が一意に定まるか,不定の解が求まるか,解がないか(不能)は,拡大係数行列のランクと係数行列のランクに依存する。

階数(rank)と一意・不定・不能の関係

行列の階数は、行列の本質的な次元を示し、独立な方程式の数を表す。行列を行基本変形して階段行列にしたときの非ゼロ行の数。

n次元連立方程式の場合

一意解

  • rank(A) = rank[A|b] かつ n = rank(A)
  • 連立一次方程式の係数行列A と拡大係数行列[A∣b] のランクが一致しており、かつ、そのランクがnと一致している時

不定(解が定まらない)

  • rank(A) = rank[A|b] かつ n > rank(A)
  • 連立一次方程式の係数行列A と拡大係数行列[A∣b] のランクが一致しており、かつ、そのランクがnより小さい時

不能(解が存在しない)

  • rank(A) ≠ rank[A|b]
  • 連立一次方程式の係数行列A と拡大係数行列[A∣b] のランクが一致しない時

行列式

行列式とは、正方行列(行と列の本数が同じ行列)に対して、下記のように定義する数値。

行列Aの行列式は、det(A) または |A|と表記する。

何やらややこしいが、これを定義としたのであって覚える必要はない(私見。
上記式の右辺を理解するには、置換・互換・偶置換・奇置換の理解が必要になる。

置換と互換

置換:ある集合の要素を特定の順序で並び替える操作。
互換:置換の中でも,2つの要素を交換するだけのもの。iとjを交換する互換を(i,j)と書く。

奇置換と偶置換

置換が奇置換か偶置換かは、その置換を実行するために必要な互換の数によって決まる。

  • 偶置換:偶数回の互換で表せる置換。
  • 奇置換:奇数回の互換で表せる置換。

例えば、集合 {1,2,3} に対する置換 (1,3,2)は1回の互換 (2,3)で表せるので奇置換。一方、置換 (3,2,1) は2回の互換 (1,3)と(1,2)で表せるので偶置換。

置換の符号(Sign of a Permutation)は、その置換が奇置換か偶置換かを示す数値で、次のように定義される

  • 偶置換の場合、符号 sgn(σ)=+1
  • 奇置換の場合、符号 sgn(σ)=−1

上記定義から導き出される行列式の性質

  • 転置不変性:行列の行列式は、その転置行列の行列式と等しい。det(A) = det(At)
  • 交代性:行列の行や列を入れ替えると、行列式の値は-1倍される。
  • 多重線形性:ある行(列)の定数倍を他の行(列)に加えても、行列式の値は変化しない。行や列ごとに足し算を分解できる。
  • det(A)≠0 ⇔ Aの逆行列が存在する(Aは正則)。逆行列は正則行列を掛けると単位行列になる行列。「数aが逆数を持つこと⇔a≠0」を一般化したもの
  • 2次元や3次元の空間において、行列式は平行六面体や平行四辺形の体積(または面積)を表す
  • 線形変換のスケーリング:行列は線形変換を表す。行列式の値は、その変換が体積(または面積)をどの程度拡大または縮小するかを示す(符号付き)。detAが負の時は、鏡映が含まれている。

余因子展開:行列の行列式を計算する方法の一つであり、特定の要素に対応する余因子を用いる。

Mi,j は A の (ij)小行列式、つまり、A から第i行と第j列を除いて得られる (n − 1)次小正方行列の行列式。aチルダをAの (𝑖,𝑗)  (i,j) 余因子とよぶ。

{\displaystyle {\widetilde {a}}_{i,j}=(-1)^{i+j}M_{i,j}}
Screenshot

例えば、3×3の行列式の場合、余因子展開を用いることで、3つの2×2行列式の問題に落とし込むことができる。小さな行列式に分解するアイデアで、行列式のもつ多重線形性に基づいている。

行列式の定義は置換による定義で、性質としては多重線形性を持ち、実践としては余因子展開を用いるという流れ。

固有値・固有ベクトル

(定義)n次正方行列Aに対して,Ax=λx (x≠0)𝐴𝑥=𝜆𝑥 (𝑥≠0)を満たすスカラー𝜆をAの固有値,x∈Rnを𝜆に対応する固有ベクトルという.

通常ベクトルに対して、n次正方行列Aをかけるとベクトルの向きが変わるが、ある特定のベクトルの場合には、Aを作用させても向きが変わらない場合があり、そのような特別なベクトルを固有ベクトルと呼ぶ。また、その場合の長さの倍率を固有値という。

固有値と固有ベクトルの求め方

1)固有方程式の導出 固有値は次の固有方程式の解として求められる:det⁡(A−λE)=0

Eは単位行列。上記方程式を解くことで、固有値λを求める。

2)固有ベクトルの解 固有値 λが求まったら、それに対応する固有ベクトル x は次の線形方程式を解くことで求められる。(A−λE)x=0

行列の対角化

  • 与えられた正方行列Aに対して、適当な正則行列Pが存在して、P-1APを対角行列D(対角成分以外が全て0である行列)にすること。
  • Aの固有ベクトルがn個の線型独立な固有ベクトルを持っている時のみ、行列の対角化が可能で、得られる対角行列の対角成分はAの固有値。。

行列Aのn乗を求めたい場合、そのまま計算すると大変なので、まず行列の対角化を行い(対角化できる場合)、対角行列Dのn乗を用いることで簡単に求めることができる。

ジョルダン標準形(準対角化)

A に固有値の重複がある場合(重解)は対角化できない場合があり、その場合は、ジョルダン標準形を用いる。

対角化できない場合でも、Aのn乗を求める場合に、できるだけ簡単に求めたいというモチベーションから生まれた。

ジョルダンブロック(ジョルダン細胞)は、対角成分に同じ値λを並べ、一つ上の部分には1を並べた行列のこと。それ以外の成分は全て0。対角成分λと行列のサイズkを用いてJ(λ,k)と書く。任意の行列Aに対してジョルダン標準形は(ブロックの順番の任意性を除いて)一意に決まる。

タイトルとURLをコピーしました