{{category R}} !!!SVM: Support Vector Machine サポートベクターマシーン *分類には、境界部分のデータポイントに注目 *できるだけ距離を置いて分けられる方が良いという発想 {{pre install.packages("kernlab", dependencies = T) library(kernlab) }} !サンプリングの方法(トレーニングデータとテストデータの二種類のデータセットの作成) {{pre rnd.number <- sample(全体の数,ランダムサンプルする数) training.data <- data.frame[rnd.number, ] test.data <- data.frame[-rnd.number, ] }} !SVM関数 ksvm(分類カテゴリ~説明変数, data=データフレーム, kernel="使用するカーネル関数", kpar=パラメタ) *これでモデルを作って、predictでテストデータを使って試す *もしくは、オプションで交差検証法を使う ** cross=交差検証法の回数 *カーネル関数 **vanilladot 線形カーネル **polydot 多項式カーネル ***kpar=list(degree=2) で2乗の多項式 **rbfdot ガウシアンカーネル ***kpar=list(sigma=1) sigmaが大きいと細かく複雑になる !!References https://www.cis.doshisha.ac.jp/mjin/R/31/31.html