機械学習

1/2ページ
  • 2019.02.17

最尤推定 (MLE)

気温と降雨/降雪  次のデータは、2017年11月から2018年1月にかけて、青森県青森市で降水(降雨または降雪)のあった日の最低気温と、降雨・降雪の現象を示すデータです(気象庁が提供しているデータを元に作成しました)。入力データベクトル $\boldsymbol{\mathrm{X}}$ の各要素は気温 (℃)、目標データベクトル $\boldsymbol{\mathrm{Y}}$ の各要素は雪 […]

  • 2019.02.08

検証曲線 (validation curve)

検証曲線(validation curve) scikit-learnによる回帰分析  これまでの記事では、ほとんどゼロからモデルを構築しながら、色々な回帰分析の手法について学んできました。今回は回帰分析シリーズの締め括りとして、scikit-learn という機械学習専用ライブラリを使った線形回帰の手順を解説します。  今回の分析で用いるモジュールをまとめてインポートしておきます。 # http […]

  • 2019.02.03

非線形モデル② 複数のモデルを比較検討します

モデルの比較  今回は 複数の非線形モデルを作成して、曲線の形状や評価値を見ながら、比較検討作業を行ないます。 関数の定義  そのための準備として、最初に「任意の関数オブジェクトを渡すと、平均 2 乗誤差を計算する関数を返す関数」を定義しておきます。 # https://python.atelierkobato.com/model-compare/ # 非線形モデル リストM4-B-1 # モジュ […]

  • 2019.01.29

線形基底関数モデル⑤ K-分割交差検証

K-分割交差検証  前回記事で扱ったホールドアウト検証は、入力データと目標データを一つの方法で分割するので、結果に偏りが生じる可能性があります。そこで今回は下図のようにデータを 4 等分して、テストデータと訓練データの役割を変えながら、近似曲線とテストデータの誤差を計算し、最後に 4 個の標準偏差の平均を求めて、これをモデルの評価基準とします。    標準偏差の平均が最小となる基底関数の組合わせが […]

  • 2019.01.27

線形基底関数モデル④ ホールドアウト検証

オーバーフィッティング  次の図は、前回記事のランダム・ガウス基底のコードで、試行回数NT (Number of Trials) を 1000 回に設定して描いた近似曲線です。  標準偏差 SD は 2.874 となり、NT = 10 のときよりも大幅に下がっています。しかし、波打つような曲線になっていることには違和感を覚えます。直感的には NT = 10 のモデルのほうがよさそうに思えます。   […]

  • 2019.01.24

線形基底関数モデル③ ガウス基底モデル

ガウス基底モデル  前回までは多項式近似を扱いましたが、今回は   \[\phi(x)=\exp\left\{-\frac{(x-\mu)^2}{2\sigma^2}\right\}\] で定義されるガウス関数を基底関数として用いた ガウス基底モデル を扱います。 ガウス基底モデル①  $\sigma=10,\ \mu=20k\ (k=0,\ 1,\ 2,\ 3,\ 4)$ とした 5 個の ガウ […]

  • 2019.01.22

線形基底関数モデル② Fit_funcクラス

Fit_funcクラス  前回記事では、入力変数 $x$ と目標データ $y$ の関係を基底関数 $\phi_k(x)$ の線形結合   \[f(x)=a_0\phi_0(x)+a_1\phi_1(x)+a_2\phi_2(x)+\cdots +a_{M-1}\phi_{M-1}(x)+a_M\] によって近似するようなモデル(線形基底関数モデル)について学びました。今後、色々な基底関数を選びなが […]

  • 2019.01.17

線型基底関数モデル① 多項式近似

線型基底関数モデル 新しい年齢と体重のデータ  前回までは 25歳以下に限定した年齢と体重のデータを使っていました。今回は年齢制限をなくして、幅広い年齢層から 20人を無作為抽出したデータを使用します。 # https://python.atelierkobato.com/kitei/ # 線形基底関数モデル リストM3-A-1 # モジュールをインポート import numpy as np i […]

  • 2019.01.15

線型回帰モデル② 最小二乗法による単回帰分析

線型回帰モデル② 最小二乗法による単回帰分析  前回記事では年齢データ $x_k$ と体重データ $y_k$ をもとに、   \[Q(a,b)=\frac{1}{N}\sum_{k=0}^{N-1}\{w(x_k)-y_k\}^2=\frac{1}{N}\sum_{k=0}^{N-1}(ax_k+b-y_k)^2\] を最小にするような $a,\ b$ を勾配法のアルゴリズムで計算させて、年齢 $ […]

  • 2019.01.11

線形回帰モデル① 勾配降下法によるパラメータの決定

 この記事は「微分と偏微分」についての基礎的な知識を前提に書かれています。  数学に関しては、こちらのサイトの『数学事典』 の各項目を参照してください。 線形回帰モデル① 勾配降下法によるパラメータの決定  次のように $N$ 人の年齢 $x_k$ と体重 $y_k$ のデータセットが用意されたとします。   \[\boldsymbol{x}=\begin{bmatrix} x_0\\x_1\\\ […]