計測工学基礎
2022.05.25

Back



  1. 本日の作業内容

  2. 前回の宿題について

    今回もいろいろと問題のあるレポートが出てきましたので,参考までに以下に例を示します.参考にしてください.

    まずは,前回も指摘しました数式エディタの行内での起動です.本文中で文字の説明を行う際には質量 m のようにテキスト内で数式モードで文字を書けば良いですが,数式,特に分数のように縦の高さがある程度必要なものは別行立てで数式を作ってください.

    以下のものは何人かで見られました.指数関数の係数の分母の平方根は標準偏差σを含みません.数式をよく見直しておきましょう.

    ギリシャ文字のρを標準偏差に使用することはほとんどありませんが?standard deviation の先頭の文字sをギリシャ文字で表すとσになるので,σがよく使用されます.他には分散がvariantなので大文字の V で不変分散を表し,標準偏差を √V にするとかですかね.

    本文中でも物理量はイタリックと前回も指摘しましたが,下のようにまだ斜体になっていない人も何人かいました.注意しましょう.これは技術文書(論文等)を作成する際の約束事です.

    下の例は惜しいですが,間違っています.σ2 は標準偏差ではなく,分散です.

    さて,以下はグラフに関するものですが,結構沢山問題なものが出てきました.次回以降はこのようにならないようにしましょう.

    まずは,実験データ(今回はプログラムにより発生させた数値)ですが,それを折れ線で表現することは最近ではしなくなっています.実験データは必ず点をプロットしましょう.理論曲線やフィッティングした曲線などを平滑化した曲線で表示するというのが近年の主流です.

    凡例が無いので,プロットが何に対応するのかわかりませんね.もともとは表示されていたはずですが?

    下の例は数は少なかったのですが乱数の平均値が発生した頻度のままグラフにしていますね.なので,縦軸が大きく,当然標準正規分布と比較することができません.標準正規分布の曲線は確率密度関数です.なので,積分すると面積が1となります.今回は前データの個数で割って割合とすることで目的のグラフが作成できたのですが,わかりませんでしたでしょうか.

    下のようにプロットと正規分布が横にずれているということは,norm.dist() 関数に与えた平均値が間違っているとしか考えられません.このように変な様子となったら見直しましょう.

    下のグラフは青のプロット点も正規分布の値ですね.今回の発生量ではこのようなキレイな結果とはなりません.

    何件かあったのですが,今回の題意とは違う作業の結果をつけてくれたケースがありました.きちんと課題を理解しましょう.これはWebテキストの図3ですよね.

    番号と名前が無い人も何人かいました.そして,下のものはさらにグラフも変でした.norm.dist() ではなく,実験プロットをそのまま線で結ぶ,上で述べた意味のない折れ線グラフですね.

    さて,最後はちょっと困ったものです.番号と名前もないですが,中身もなんだか不明です.どうしたんでしょうか?

  3. 前回の復習

    正規分布について学習しました.関数としてはnorm.dist()をメインで使用しました.引数を4個も取るのですが,それぞれ中身を理解して今回も使用しましょう.特に,最後の引数はFALSEならば確率密度関数の値を,TRUEであれば積算を返すことはよく覚えておきましょう.

  4. 自習資料

    資料を参考に予習してください.

  5. 演習

    実験において,基本的な原理が明らかとなっており変数の関係が数式的に表現できるようなデータの組を得ることができる場合には,実験結果のグラフに関係式に基づいた近似曲線を描くことができます.例えば,図1に示すような実験結果が得られた場合などです.

    Office 365版
    図1 グラフの例

    実験結果を整理する場合,図1のようなグラフのプロット点を折れ線でつなぐことには全く意味がありません.背景となる理論が不明の場合(実際にはよくあることですが)にはスムーズな線で結ぶことを行います.一方で前述のように原理が明らかで関係式が既知の場合には,その関係式をプロットして理論と実験の結果の比較が可能です.

    しかしながら,通常の実験では操作したパラメータによって理論式の係数やべき級数の展開次数などが変わる場合があり,そのような場合には実験結果と最もよく合うようにそれらの係数を選ぶことが実験の目的だったりします.

    最小二乗法とは,結果に最もよく合う係数などを決めるための手法です.実験値には必ず誤差が含まれていますので,理論式との誤差が最も小さくなる係数を探します.誤差は正と負の両方があるので,誤差の2乗和を最小にすることが必要ですので,最小二乗法と呼ばれます.また,それにより求めた曲線の式を回帰式と呼ぶ場合があります.今回は最小二乗法の中で最も基本的な線形回帰について学習します.

    1. 原理式からの算出

      予習用の資料の(1)式のように,結果が y = a + bx の直線式に従うことが予想される場合には,誤差の2乗和を最小にすることで,式(15)により係数が求められることがわかります.この(15)に従って作業してみましょう.

      先ほどの図1は以下のデータをプロットしたものです.

      Voltage (V)Current (mA)
      0.111
      0.320
      1.158
      1.273
      1.889
      2.5112
      3.1197
      3.7303

      係数を出すために必要な和はΣx2,Σx,Σy,Σxyですので,それらを求めれば算出できます.以下のような値となるはずです.

      a = -15.87
      b = 71.74
      y = -15.87 + 71.74x
      

    2. 回帰直線の式を使う

      表計算ソフトには回帰曲線を求めるための関数も用意されています.今行っている線形回帰では直線の式ですので,傾きと切片を求める関数slope()とintercept()で計算できます.数式を実際に入力して求めてみましょう.関数ウイザードを使用すると,データ範囲などを案内してくれますので,わかると思います.

    3. 決定係数

      統計的な分析では「決定係数」(Coefficent of determination)という値が使われることが多くあります.この値(R2)は独立変数(説明変数,通常は横軸の変数)が従属変数(非説明変数,縦軸の変数)のどれくらいを説明できるかを表すとされており,通常は以下の式で計算されます.

      ここで, f は推定値,<y>はyの平均値です.

      上の例ではR2の値は0.90となり,割りと高い値です.

    4. より高度な近似式の求め方

      slope()とintercept()を用いる方法は,y=a+bxという式の傾きと切片を求める方法でした.しかしながら,原理的には切片が0になる線形の関係式で計算したい場合があります.そこで,一般的な線形回帰式を求めるための関数linest()というものが用意されています.

      LINEST(既知のY(yの範囲),既知のX(xの範囲),定数,補正)という引数仕様です.「定数」の部分はTRUE(0以外の値)だと切片あり,FALSE(0の場合)には切片なし(原点を通る)です.

      最後の補正の部分は使用するためにはちょっとした操作が必要です.まず線形の部分を0,補正の部分も普通に0にして,Enterを押して確定してみましょう.65.57という値が表示されたのでは無いでしょうか?これが原点を通る直線の場合での傾きとなります.

      Excelで上のようにEnterを押すと,「数式がスピルされています」とメッセージが出て,右側に勝手に0が入ります.「スピル」とは何かは,詳細を表示で見てください.linest() 関数は結果を「配列」で返すために,複数のセルを使用します.

      配列になったので,セルに入れた数式の両側に中カッコが付いているのがわかるでしょうか.

      図2 スピルされたことのポップアップ表示

      もう一度同じことを行って,最後にEnterではなく,Shift+Ctrl+Enterで確定してみてください.今度は一つ右側のセルにには何も出ません.

      その状態で先程のセルとその右隣のセルを選択し,ファンクションキーのF2を押します.(ノートPCなどではFnキーを押してからF2キーを押すものもありますので,自分の環境を確認してください.)そうすると,データの列がハイライトされます.その状態で,Enterの操作を行うと,右側のセルに切片の値も表示されるようになります.

    5. グラフへの近似曲線の挿入

      グラフに近似式の直線を挿入してみましょう.グラフエリアをダブルクリックしてグラフ編集をアクティブにし,データプロットをクリックして右クリックで出てくるメニューから「近似曲線を挿入」を選びます.デフォルトでは回帰の種類が左上の「線形」になっているはずなので,そのまま先ほど計算した直線が描画されます.原点を通るものに変更する場合には,「オプション」の中の「切片を設定」にチェックを入れ,値を0とすれば原点を通る直線に描き換えられます.


      図3 回帰直線の描画

      EXCELは科学技術データ用のアプリでは無いために,グラフに入れられる近似曲線の機能はずいぶんと貧弱です.そのため,単純な直線や単純なべき関数や指数関数などでしか使用できません.万能ではなく,使えないものがあることを理解しておいてください.
    6. 各種作業

      以下に示す作業を行ってみましょう.

      1. 中性子の個数

        リンク先にあるのは原子番号と原子量(既知の元素のみ)の対応表です.正電荷を持つ陽子どうしを結合させるために必要な中性子は,陽子1個あたり何個になると推定されるか,求めてみましょう.

      2. 多項式近似

        リンク先のデータはある金属の電気抵抗率の温度依存性です.マティーセンの法則によれば金属の電気抵抗はデバイ温度以下の極低温で以下の式となります.式の係数を求めてみましょう.

        ρ = ρ0 + αT + βT 2 + γT 5

        高次の項を入れるには,linest()関数のXの範囲の部分にべきの項を追加します.n次までだとすると以下のようになります.

        LINEST(既知のY(yの範囲),既知のX(xの範囲)^{1,2,3,…,n}, 定数,補正)

        べきの次数は連続でなくても飛ばしでも可能です.今回は1次,2次,5次ですね.
        数式の入力が終わったら,Enterで確定させて下さい.そうすると,配列数式という形式になり,5次の項の係数,2次の項の係数,1次の項の係数,定数項となり,近似式を求めることができます.#N/A(N/AはNot Applicable)は今のところは無視して大丈夫です.

  6. 次回の予習範囲

    次回も最小二乗法について学習します.予習用の資料を参考に予習してください.

  7. 宿題

    いつものレポート提出システムを利用して行います.

    宿題の公開は原則として水曜日の18:00からとなります.また,提出の締め切りは授業翌火曜日の13:00までです.よろしくお願いします.


Back