バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia2-backnumber/
はじめに
正規方程式を導出するまでの説明。
今回は二次形式の続き。
登場人物
博識フクロウのフクさん
![指差しフクロウ](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
イラストACにて公開の「kino_k」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=iKciwKA9&area=1
エンジニア歴8年の太郎くん
![技術者太郎](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
イラストACにて公開の「しのみ」さんのイラストを使用しています。
https://www.ac-illust.com/main/profile.php?id=uCKphAW2&area=1
ロードマップ【再掲】
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者02アップ.png)
まずはロードマップを再掲。
![正規方程式に至る道、二次形式、対称行列、二次形式の微分、グラム行列、二乗和誤差、正規方程式](https://www.simulationroom999.com/blog/wp-content/uploads/2023/03/02_正規方程式に至る道-1024x313.png)
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
今回は二次形式の話の続きで、行列表現と多項式表現の可逆性維持の話になる。
二次形式の行列表現と多項式表現
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
前回、二次形式を行列表現できたが、
これをもう少し具体的に書いてみる。
\(ax^2+bxy+cy^2\)の場合
\(
\begin{bmatrix}
x \\
y
\end{bmatrix}^T
\begin{bmatrix}
a && c/2 \\
c/2 && b
\end{bmatrix}
\begin{bmatrix}
x \\
y
\end{bmatrix}=
ax^2+by^2+cxy
\)
\(ax^2+by^2+cz^2+dxy+eyz+fxz\)の場合
\(
\begin{bmatrix}
x \\
y \\
z
\end{bmatrix}^T
\begin{bmatrix}
a && d/2 && f/2 \\
d/2 && b && e/2 \\
f/2 && e/2 && c
\end{bmatrix}
\begin{bmatrix}
x \\
y \\
z
\end{bmatrix}=
ax^2+by^2+cz^2+dxy+eyz+fxz
\)
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
対称行列にする意味ってあるの?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
多項式から行列にする場合、対称行列という制約を設けないと、相互変換できないってのはあるな。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者03アップ.png)
なるほど。
制約があるから可逆性が保証出来て、結果として表現が違うだけで同じものと言えるってわけか。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/まるフクロウ.png)
そうそう。
今後について
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
で、ここまでで二次形式の行列表現、多項式表現が等しいことを証明したわけだが、
これが本当に同じなのかを各ツール、各言語で確認するのを挟もうと思う。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/技術者01アップ.png)
そうだねー。
なんか、ここまででも結構ごちゃごちゃした感じがするもんねー。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/びっくりフクロウ.png)
そこで、一点問題がある!
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」09アップ.png)
ずっと問題だらけやー!
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/考え中フクロウ.png)
現状の行列表現のままだと、行列を利用した一括変換ができない。
まぁfor文使えば解決ではあるのだけど、
折角だから、ベクトル、行列であるが故の利点を享受しておきたい。
というわけで、この話を次回やってから、実際に各ツール、各言語で計算させてみる。
って流れになると思う。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」20アップ.png)
もう好きにしてくれ・・・。
まとめ
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
- 二次形式の行列表現と多項式表現の関係性を示した。
- 行列Aが対称行列になることを制約とすると行列表現と多項式表現に可逆性を付加することができる。
- これに伴い、等しいものとして扱うことが可能となる。
- 実際に行列表現と多項式表現が等しいかを各ツール、各言語で確認したいが、その前にベクトル、行列のまま演算する仕掛けを考える必要がある。
バックナンバーはこちら。
コメント