MATLAB、Python、Scilab、Julia比較ページはこちら
https://www.simulationroom999.com/blog/comparison-of-matlab-python-scilab/
はじめに
の、
MATLAB,Python,Scilab,Julia比較 第2章 その1【概要偏】
を書き直したもの。
最小二乗法を始めとした回帰分析を始めるにあたって、
まずは代表的な利用シーンについて説明する。
回帰分析
以下みたいな感じで
プロットされた点に対して、
もっともらしい線を引くようなものを回帰分析と呼ぶ。
回帰(、英: regression)とは、統計学において、Y が連続値の時にデータに Y = f(X) というモデル(「定量的な関係の構造」)を当てはめること。別の言い方では、連続尺度の従属変数(目的変数)Y と独立変数(説明変数)X の間にモデルを当てはめること。X が1次元ならば単回帰、X が2次元以上ならば重回帰と言う。Y が離散の場合は分類と言う。
Wikipediaより(https://ja.wikipedia.org/wiki/%E5%9B%9E%E5%B8%B0%E5%88%86%E6%9E%90)
どういうふうに役立つのか?
この回帰分析ができるとなにがうれしいのだろうか?
代表的なものとしては、
サンプリングしたデータの特性が分かりやすくするものが多いだろう。
自動車業界だと、制御対象の内部パラメータの推定で使われることもある。
最小二乗法での推定例
例えば、モータがあったとして、
そのモデルを以下とする。
\(
I(t)=\displaystyle \frac{E(t)}{R}+b
\)
実際は逆起電力が入るからこんなシンプルにはならないが、
あくまで例としてシンプルな式にしている。
見てわかるだろうが、
電圧と電流の関係を表してる式になっている。
ここの抵抗値\(R\)とバイアス\(b\)は
本来は定数で、変化しない前提で計算されることが多い。
しかし、現実世界ではそういうわけにはいかない。
例えば、経年劣化で定数が変わって特性が変わってしまうことがあり得るから。
ここで、電圧に対して電流が計測できるとすると以下のようにプロットができる。
そこに先ほどのモデルと同じように1次関数として、
それっぽい線を引くと以下になる。
この1次関数が以下とすると・・・。
\(
I(t)=0.5 E(t)+2
\)
先ほどのモータモデルの数式に当てはめると・・・。
\(
\begin{eqnarray}
1/R&=&0.5 \\
R&=&2 \\
b&=&2
\end{eqnarray}
\)
このように、不明だった定数が求まる。
これが回帰分析を利用したパラメータ推定の例になる。
これにより経年劣化後のパラメータも適時推定できるので、
- 故障前に劣化状況を検知
- 劣化状況に合わせた制御ポリシーに変更
なんてことが可能になる。
まとめ
- 最小二乗法を代表とした回帰分析の代表的な利用シーンを説明
- 自動車業界だと、制御対象の内部パラメータの推定で使われることもある。
- 経年劣化で内部パラメータが変動しても回帰である程度特定可能。
- これにより事前交渉検知や劣化状況に合わせた制御ポリシーの変更が可能。
MATLAB、Python、Scilab、Julia比較ページはこちら
コメント