バックナンバーはこちら。
https://www.simulationroom999.com/blog/compare-matlabpythonscilabjulia2-backnumber/
はじめに
前回まで、1次関数最小二乗法をやってきたが、実は別の数式の導出も可能。
そこらへんの話を始める。
登場人物
博識フクロウのフクさん
![指差しフクロウ](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
1次関数最小二乗法の別の算出方法
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/考え中フクロウ.png)
前回までで、さんざん1次関数最小二乗法をやったわけだが・・・。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」20アップ.png)
またなんか変なことを言い出しそうだな・・・。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
変なことじゃない。
別の数式をもって1次関数最小二乗法を実現するのがあるんで、
それの説明をしようかと思って。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」11アップ.png)
いやいやいやいや!
十分変なこと言い出してるよ!!!
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
簡単に言うと、
「平均値、分散、共分散を利用した式」
だな。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
平均値、分散、共分散って確率とか分布とかで使うやつ?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/まるフクロウ.png)
そうそう。
平均値、分散、共分散で1次関数最小二乗法が実現できるのか?
![太郎くん](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/技術者01アップ.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/技術者02アップ.png)
まぁ未だに何言ってるかわからんけど、
雰囲気だけはわかってきた。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
まずは雰囲気でとらえることは大事だな。
その後に細かいところを徐々に詰めていけばOKだ。
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」20アップ.png)
(「細かいところを徐々に詰めていけば」が大変なんだけどな・・・)
今後の流れ
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」13アップ.png)
で、どういう手順でやっていくの?
どうぜ一撃で終わる話じゃないんでしょ?
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
そうだね。
以下の手順で説明しようと思う。
- 1次関数最小二乗法の途中過程の連立方程式の確認
- 上記方程式を見た際の平均値、分散、共分散の関連性の雰囲気
- 総和、平均値、分散、共分散の定義及び変形式の確認
- 上記を元に1次関数最小二乗法の連立方程式を解き直す
- 導出した数式で、係数算出のプログラムを書いてみる
![太郎くん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/「技術者a」20アップ.png)
結構ごちゃごちゃしてるなぁ。
最後は恒例のプログラムの確認だから、挙動見て最終確認できるってのはありがたいけど。
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/お休みフクロウ.png)
一つ一つは結構シンプルな話なはずだ。
次回から各個撃破していこう。
まとめ
![フクさん](https://www.simulationroom999.com/blog/wp-content/uploads/2020/05/指差しフクロウ.png)
まとめだよ。
- 1次関数最小二乗法の別の算出方法がある。
- 平均、分散、共分散を利用したもの。
- 上記の内容を一個ずつ説明していく予定。
バックナンバーはこちら。
コメント