matlabはknnclssifyの小さい実験を持参します
1107 ワード
ところでmatlabのモード識別ツールボックスは非常に強く、一般的な応用にとって基本的に自分でプログラミングする必要はなく、科学研究に大きな便利さをもたらした.
その後、KNN、BP、SVMなど、このツールボックスの多くの分類方法を利用すると予想されています.
今からknnを利用して分類します.
For the object of samplify, I only choose 3 classes while 2 samples for each class ,there are 18 features in every sample .
準備条件:フィーチャーデータとサンプルラベルをファイルとして保存しました.
テストコードは次のとおりです.
train_Labelは0,1,2などのサンプル番号を保存しています.勝手に設定して、区別できるだけでいいです.具体的なフォーマットは:
test_Dataテストファイルに保存されているのはテストデータの特徴です.
キー関数の説明:
knnclassifyは近隣を利用して分類する分類器である.
関数呼び出しの形式:
1.CLASS = KNNCLASSIFY(SAMPLE,TRAINING,GROUP)
ラベルと訓練データは同じ行数でなければならない.訓練データとテストデータは同じ列でなければならない.関数は、無効な値またはNULL値に対して損失値として使用されるか、ローを無視します.
2.CLASS = KNNCLASSIFY(SAMPLE,TRAINING,GROUP,K)
この関数では、次のような距離行列の形式を設定できます.
その後、KNN、BP、SVMなど、このツールボックスの多くの分類方法を利用すると予想されています.
今からknnを利用して分類します.
For the object of samplify, I only choose 3 classes while 2 samples for each class ,there are 18 features in every sample .
準備条件:フィーチャーデータとサンプルラベルをファイルとして保存しました.
テストコードは次のとおりです.
train_data=load('sample_feature.txt');
train_label=load('train_label.txt');
test_data=load('features.txt');
k=knnclassify(test_data,train_data,train_label,3,'cosine','random');
train_Dataは訓練サンプルの特徴を保存し、要求は最も本カテゴリを代表することができ、必ずしも多くはなく、もちろん少なくはならない.train_Labelは0,1,2などのサンプル番号を保存しています.勝手に設定して、区別できるだけでいいです.具体的なフォーマットは:
1 1 2 2 3 3
test_Dataテストファイルに保存されているのはテストデータの特徴です.
キー関数の説明:
knnclassifyは近隣を利用して分類する分類器である.
関数呼び出しの形式:
1.CLASS = KNNCLASSIFY(SAMPLE,TRAINING,GROUP)
ラベルと訓練データは同じ行数でなければならない.訓練データとテストデータは同じ列でなければならない.関数は、無効な値またはNULL値に対して損失値として使用されるか、ローを無視します.
2.CLASS = KNNCLASSIFY(SAMPLE,TRAINING,GROUP,K)
この関数では、次のような距離行列の形式を設定できます.