1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Coursera Machine Learning Stanford Univ. Week7

Posted at

5週目と同様こんなん出ました
week7.PNG
ここは重要ってことですね。

今週のテーマはSupport Verctor Machine SVMです
Logistic regressionで使ったCost functionからSVMで使われるCost functionへの変形する形で説明してくれています。そしてGaussian Kernelの説明に進みます。
Week6でふれたHigh Bias, High Varianceの関係がこのSVMのCost functionのCとσを変えるとどのような関係になるかがテストにも出てきます。プログラミング課題でも最適なCとσの組を選びなさいという問題になっています。

今週のexcerciseの提出物は2つのパートに分かれていて下記の4つです

  1. ガウシアンカーネル
    2. [?] gaussianKernel.m - Gaussian kernel for SVM
    3. [?] dataset3Params.m - Parameters to use for Dataset 3
  2. スパムの検出
    5. [?] processEmail.m - Email preprocessing
    6. [?] emailFeatures.m - Feature extraction from emails

ガウシアンカーネル

特にはまるところはありませんでした。dataset3Paramsの方はpdfに書いてあるパラメータで一番良い組み合わせを選べばいいんだなということでfor文で8x8回繰り返して
mean(double(predictions ~= yval));
が最小になる組み合わせを選択。
8x8のerrorsというマトリクスに上のmeanを保存して置いて最小の組み合わせのインデックスを求め、それに対応するC,sigmaを返せばよい。
マトリクスの要素の最小値を探してそのインデックスを探す方法はfor文回すのは無しとするとoctaveでどうやるやるのかわからずgoogleさんで探して下記のようにしました。
マトリクスをシリアライズして最小となるindexを探して元のマトリクスの行、列の値に変換という方法です。
[e_min, ind] = min(errors(:));
[i, j] = ind2sub(size(errors), ind);

スパムの検出

メールの本文を加工してスパムに特徴的なものをvocabulary listにあるものがメールに含まれていれば1、含まれていんなければ0のword_indiciesリストを作ってSVMにくわせるというもの、主要な部分は作られているので自分で書かなければならないコードはほとんどありません。
課題のコードを書くことよりどういうことをやっているのか実際のコードをみて覚えるということですね。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?