- バックアップ一覧
- 差分 を表示
- 現在との差分 を表示
- ソース を表示
- バイオ・データ・マイニング/RでSVMを使う へ行く。
このページはまだ書きかけです.
はじめに †
『Rによるバイオインフォマティクスデータ解析』の7.15「SVM」を参考にして,RでSVMを使って学習します.
準備 †
Rのインストールについては,次のページを見てください.
Naïve Bayesは,e1071パッケージに含まれています. そこで,e1071パッケージをインストールします. install.packagesコマンドを実行すると,パッケージをダウンロードするサーバーを聞かれますので,リストからJapanのどれかを選択します.
install.packages("e1071") library("e1071")
ここでは,標準で使用できるirisデータセットを使います.
data(iris)
このデータセットは,アヤメの種類(Species)を花びらの長さ(Sepal.Length),幅(Lepal.Width),がくの長さ(Petal.Length),幅(Petal.Width)によって分類する問題です. 長さと幅は連続値,種類はsetosa, versicolor, virginicaのいずれかをとる離散値です.
このデータセットには,setosa, versicolor, virginicaという3種類のアヤメについて,それぞれ50個ずつ,合計150個のデータが含まれています. ランダムに10個のデータを選択して,見てみましょう.
iris[sort(sample(1:150,10)),]
これをランダム・サンプリングして80%を訓練データとし,のこりの20%をテスト・データとします.
Sepal.Length Sepal.Width Petal.Length Petal.Width Species 4 4.6 3.1 1.5 0.2 setosa 22 5.1 3.7 1.5 0.4 setosa 65 5.6 2.9 3.6 1.3 versicolor 97 5.7 2.9 4.2 1.3 versicolor 100 5.7 2.8 4.1 1.3 versicolor 108 7.3 2.9 6.3 1.8 virginica 116 6.4 3.2 5.3 2.3 virginica 122 5.6 2.8 4.9 2.0 virginica 136 7.7 3.0 6.1 2.3 virginica 146 6.7 3.0 5.2 2.3 virginica
SVM †
説明は後で書き足します.
idx <- sample(nrow(iris), as.integer(nrow(iris)*0.8)) iris.train <- iris[idx,] iris.test <- iris[-idx,]
iris.svm <- svm(Species~., data=iris.train)
iris.svm
このページはまだ書きかけです.