差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
dmb:2011:q1 [2011/11/07 10:27] – watalu | dmb:2011:q1 [不明な日付] (現在) – 外部編集 (不明な日付) 127.0.0.1 | ||
---|---|---|---|
行 1: | 行 1: | ||
==== 課題#1 学習誤差と予測誤差 ==== | ==== 課題#1 学習誤差と予測誤差 ==== | ||
+ | |||
+ | - 初稿 2011.11.07 | ||
+ | - 第二稿 2011.11.10 | ||
+ | |||
=== はじめに === | === はじめに === | ||
今回は比較的単純な課題です. | 今回は比較的単純な課題です. | ||
- | | + | |
- | | + | |
- | | + | |
- | 〆切は来週の月曜日の2限が始まる時刻まで,とします. | + | 〆切は来週の月曜日の2限が始まる時刻まで,とします.Word形式のレポートファイルの送付先は,[[mailto: |
コードは,解説付きのコードの一番下に「貼り付け用」を別に用意したので,そちらを使うと良いです.いきなり全部をコピーするのでなく,四角囲みごとに. | コードは,解説付きのコードの一番下に「貼り付け用」を別に用意したので,そちらを使うと良いです.いきなり全部をコピーするのでなく,四角囲みごとに. | ||
行 235: | 行 239: | ||
</ | </ | ||
- | 箱ひげ図の描画. | + | |
+ | 学習用データによる誤判別率の推定値の標本分布を要約する.次の3行を実施すれば,箱ひげ図が描けて,各学習機械の誤判別率の平均と標準偏差も算出される. | ||
+ | 箱ひげ図については,次項参照のこと. | ||
< | < | ||
boxplot(error.rate.learn) | boxplot(error.rate.learn) | ||
+ | apply(error.rate.learn, | ||
+ | sqrt(apply(error.rate.learn, | ||
+ | </ | ||
+ | |||
+ | 検証用データにおける誤判別率についても,同様の次の3行で要約できる. | ||
+ | < | ||
boxplot(error.rate.eval) | boxplot(error.rate.eval) | ||
+ | apply(error.rate.eval, | ||
+ | sqrt(apply(error.rate.eval, | ||
</ | </ | ||
行 438: | 行 452: | ||
</ | </ | ||
- | 結果のグラフ(学習用データによる誤差率の推定値の標本分布) | ||
< | < | ||
boxplot(error.rate.learn) | boxplot(error.rate.learn) | ||
+ | apply(error.rate.learn, | ||
+ | sqrt(apply(error.rate.learn, | ||
</ | </ | ||
- | 結果のグラフ(検証用データによる誤差率の推定値の標本分布) | + | |
< | < | ||
boxplot(error.rate.eval) | boxplot(error.rate.eval) | ||
+ | apply(error.rate.eval, | ||
+ | sqrt(apply(error.rate.eval, | ||
+ | </ | ||
+ | |||
+ | === 解説 === | ||
+ | |||
+ | == 箱ひげ図 == | ||
+ | |||
+ | 箱ひげ図は,一次元データの打点の要約方法である.ヒストグラムの代替で,対称性と裾の重さを図示する. | ||
+ | 下図はデータの散らばり具合,ヒストグラム,箱ひげ図の対応例である | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | |||
+ | この図の場合,箱ひげ図を横に寝かせて描いたので,右方向を上,左方向を下と思って欲しい. | ||
+ | |||
+ | |ひげの上にある点|1.5倍の範囲を超えたデータ| | ||
+ | |長方形の上に伸びたひげの横線|箱の長さの1.5倍の範囲にあるデータの最大値| | ||
+ | |長方形の上辺|データを小さい順に並べたときの「上側1/ | ||
+ | |長方形中央の横線|データを小さい順に並べたときの「真ん中」(50%点)の値| | ||
+ | |長方形の下辺|データを小さい順に並べたときの「下側1/ | ||
+ | |長方形の下に伸びたひげの横線|箱の長さの1.5倍の範囲にあるデータの最小値| | ||
+ | |ひげの下にある点|1.5倍の範囲を超えたデータ| | ||
+ | |箱の長さ|上辺-下辺| | ||
+ | |||
+ | 上の図の作図に用いたコード. | ||
+ | < | ||
+ | X <- rgamma(100, shape=2) | ||
+ | jpeg(" | ||
+ | par(mfrow=c(3, | ||
+ | plot(cbind(X, | ||
+ | hist(X, xlim=c(0, | ||
+ | boxplot(X, | ||
+ | dev.off() | ||
+ | </ | ||
+ | |||
+ | == ヒストグラムを並べる場合 == | ||
+ | |||
+ | グラフの数が多いので,お勧めはしないが,箱ひげ図を描く代わりに,ヒストグラムを並べると,こうなる. | ||
+ | |||
+ | 学習用データの誤判別率のグラフを並べた例. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | < | ||
+ | jpeg(" | ||
+ | par(cex=0.3) | ||
+ | par(mfrow=c(14, | ||
+ | for( i in c(1:14) ) { | ||
+ | hist(error.rate.learn[, | ||
+ | | ||
+ | | ||
+ | } | ||
+ | dev.off() | ||
+ | </ | ||
+ | |||
+ | |||
+ | こちらは検証用データにおける誤判別率のグラフを並べた例. | ||
+ | |||
+ | {{ : | ||
+ | |||
+ | < | ||
+ | jpeg(" | ||
+ | par(cex=0.3) | ||
+ | par(mfrow=c(14, | ||
+ | for( i in c(1:14) ) { | ||
+ | hist(error.rate.eval[, | ||
+ | | ||
+ | | ||
+ | } | ||
+ | dev.off() | ||
</ | </ | ||