SVMで学習した変数​を.matに格納して​別のPCに移したい

5 Ansichten (letzte 30 Tage)
Toshi
Toshi am 11 Mai 2019
Beantwortet: Kenta am 22 Mai 2019
分類学習器アプリのSVM(線形)を使用して得た学習データ(Classificationデータ)を用いて、
別のPCにあるSimulinkの関数に使用したいと考えています。
そのため、Classification内の変数データを.matに出力して、USBで格納し、
他のPCに入れて展開しSimulinkで使用したいと考えています。
SVMを使用したPCは、MALAB&Simulink 2019です。
どのようにすれば、Classification内の変数データを.matに出力して取り出せるでしょうか。
ご指南頂けますと幸いです。
何卒よろしくお願い申し上げます。
  2 Kommentare
Kenta
Kenta am 11 Mai 2019
一点お尋ねしたいのですが、ここでいう、「得た学習データ(classificationデータ)」とは、推論をして得られたデータのことで正しいですか?
それならば、得られた分類器をコードとしてインポートして、通常のコードと同様にコマンドウィンドウのほうで走らせると予測結果を.matファイルとして保存できると思います。その場合、繰り返し、かつ手軽に、予測ラベルを取り出せるので便利かと思いました。
Toshi
Toshi am 17 Mai 2019
お返事ありがとうございます。
「分類学習器」の「モデルのエクスポート」から、
「trainedmodel」を作成し、その中の「ClassificationSVM」の中身を指しています。
仰っているやり方は、「モデルのエクスポート」からの「コード生成」で合っておりますでしょうか?
恐れ入りますが、その場合の具体的な操作について、
ご教示頂けますと幸いです。
何卒よろしくお願い申し上げます。

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Kenta
Kenta am 22 Mai 2019
返信が遅くなり、申し訳ありません。
load fisheriris
inds = ~strcmp(species,'setosa');
X = meas(inds,3:4);
y = species(inds);
ylabel=[ones(50,1);ones(50,1)+1];
data=[X,ylabel];
%% 推論を行う場合
yfit=trainedModel.predictFcn(X);
% 精度の計算(実際は新たなデータで行う)
accuracy=nnz(yfit==ylabel)/numel(yfit)
% svmのパラメータを知りたい場合は、ワークスペースのtrainedModelをクリック、さらにClassificationSVMをクリックすると各パラメータを確認可能
たとえば、上のデータで分類アプリを実行しました。
SVM=>細かいガウスで実行後、「モデルのエクスポート」をクリックします。
するとワークスペース上にtrainedModelが格納されますね。
それを上の%のコメントのとおり進めていけば、SVMのパラメータが確認できます。
保存したい場合は、trainedModel.classificationSVMを変数として取り出し、.matで保存してください。

Weitere Antworten (0)

Kategorien

Mehr zu Simulink finden Sie in Help Center und File Exchange

Produkte

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!