。
この例では,回帰学器械器アプリアプリ使用ししサポートベクターマシン(svm)回帰回帰の学习を行い,RegressionSVM预测ブロックを的万博1manbetxSimulinkの応答予测に使用する方法を示します。このブロックは,観测値(予测子データ)を受け入れて,学习済みのSVM回帰モデルを使用することにより,その観测値の予测された応答を返します。
回帰学习器アプリでハイパーパラメーターの最适化を使用して,SVM回帰モデルの学习を行います。
1.Matlab®コマンドコマンドウィンドウCARBIG.
データデータを読み込み,予测子仪数量のを含む行作作者
加载CARBIG.X = [加速,气缸,位移,马力,型号,重量];y = mpg;
2.回帰学仪を开开ます。[アプリ]タブの[アプリ]セクションで[さらに表示]矢印をクリックして,アプリギャラリーを表示し。[机械学习および深层学习]グループの[回帰学器]をクリックします。
3.[回帰学器]タブの[ファイル]セクションで,[新规セッション],[ワークスペースから]を选択します。
4. [新规セッション]ダイアログボックスで,[データデータ数]のリストから行列X
を选択します。[応答]の[ワークスペースから]オプションボタンをクリックし,ワークスペースからベクトルýを选択します。既定の検证オプションは5分割交差検证であるため,过适合が防止されます。この例では,既定の设定を変更しないでください。
5.既定のオプションをそのまま使用して続行するため,[セッションの开始]をクリックします。
6.学校ささ最适最适ななSVMモデルを选択し。[回帰学器]タブの[モデルタイプ]セクションで[さらに表示]矢印をクリックして,ギャラリーを开启ます。[サポートベクターマシン]グループで[最最化可なsvm]をクリックします。最适化可能なモデルを选択すると[并列の使用]ボタンが无效になります。
7。[学习]セクションで[学习]ををします。最最适がが実実れるれる[最小麦のプロット]详细最适され连连さ,详细ののれ,最の四角で示さます,赤の四角で示さ,赤の四角で示さます,最小麦ののを参照してください。
最适化されたハイパーパラメーターはプロットのの上と[在のモデル]ペインの[最最适化されれたハイパーパラメーターセクションの両方に一覧表示されます。一般に,最适化の结果に再现性はありません。
8.モデルをmatlabワークスペーススペースエクスポートしますます。[回帰学器]タブの[エクスポート]セクションで[モデルのエクスポート]那[モデルのエクスポート]を选択し,[好的]をクリックします。エクスポートエクスポートされたモデルモデルの名前は训练有素
です。
あるいは,アプリでのSVMモデルの学习时と同じ设定を使用して回帰モデルの学习を行うMATLABコードを生成できます。[回帰学器]タブの[エクスポート]セクションで[关关の生成]ささます。关键名をTrainRegressionsVMModel.
に変更し,关关ファイルを保存しし。关联TrainRegressionsVMModel.
,SVMモデルの学习习行い。
TrousoModel = TrainRegressionsVMModel(X,Y);
9.学习済みのSVMモデルを训练有素
変数から抽出します。训练有素
には,RegressionSVM
フィールドのRegressionSVM
モデルオブジェクトが含まれます。
svmMdl = trainedModel.RegressionSVM;
ハイハイパーパラメーターの最适最适によってモデルが过适适にことがあるためためためためためににインポートするする前にに検定别途インポートする前に検定セット作物ししておきおきモデル适适されれたの性能その検定検定セットでで性能をその検定検定セットでするすることを推奨しし详细は,回帰学仪器アプリアプリのハイハイパーパラメーターの最适最适をを使使使モデルモデル学习を参照してください。
この例では,RegressionSVM预测ブロックを含むs万博1manbetximulinkモデルslexcardataregressortionsvmpredictexample.slx.
が节のれていますて,このsimulinkモデルを万博1manbetx开放ことも,新闻モデルを作用成することできます。
万博1manbetxsimulinkモデルslexcardataregressortionsvmpredictexample.slx.
を开启ます。
simmdlname ='slexCarDataRegressionSVMPredictExample';open_system(SimMdlName)
slexcardataregressortionsvmpredict表口
のコールバック关节preloadfcn.
には,标本データ読み込み,svmモデルの学习,およびsim万博1manbetxulinkモデルの入力信号组作作作者行行为コードが含まてます.simulinkモデルを开放と,simulinkモデルを読み込む前,ソフトウェアがpreloadfcn.
のコードを実行します。コールバック关键词表示するは,[モデル化]タブの[设定]セクションで,[モデル设定]那[モデルプロパティ]をを选択し。次次,[コールバック]タブで,[モデルのコールバック]ペインのコールバック关preloadfcn.
を选択します。
新しいS万博1manbetximulinkモデルを作物成するには,空のモデルテンプレートを开き,回归vm预测ブロックを追加し.inportブロックブロックoutportブロックブロック追して,それらをreclessvm预测ブロックに接続します。
Regressionsvm预测ブロックをダブルクリックし,[ブロックパラメーター]ダイアログダイアログを开放ます。学习済みのsvmモデルを含む含むワークスペース変含むををできます。svmmdl.
です。アクションボタン(縦に3つ并んだ点)ををするか,[モデル化]タブの[モデルの更新]をクリックします。ダイアログダイアログボックス训练有素的机器学习模型には,SVMモデルsvmmdl.
の学习に使使れるオプションが表示されます。
回归vm预测ブロックには,6个のの子のを含む観测値必要です.inportブロックブロックダブルクリックし,[信号]タブで[端子の次元]を6に设定し。
万博1manbetxSimulink的モデルの构造体配列の形式で,入力信号データを作成します。构造体配列には,次のフィールドが含まれていなければなりません。
时间
- 観测値がモデルにににれた时钟。方便はは子データの値に対応しばませんんんませんんんん。したがっしたがっ,このこのの场场は时间
がが列ベクトルでなけれでなければなりませませ
信号
-价值
フィールドと方面
フィールドが含まれている,入力データを说明する1行1列の构造体配列。价值
はは子データの行列,方面
は予测子数量の数です。
Carsmall.
データセットから,slexcardataregressortionsvmpredict表口
モデルに适切な构造体配列を作用成し。
加载Carsmall.testx = [加速,圆柱,位移,马力,型号,重量];testx = rmmissing(testx);carsmallinput.time =(0:size(testx,1)-1)';carsmallinput.signals(1).values = testx;carsmallinput.signals(1).dimensions =尺寸(testx,2);
ワークスペースから信号データをインポートするには,次を実行します。
[コンフィギュレーションパラメーター]ダイアログボックスを开放。[モデル化]タブで,[モデル设定]をクリック。
[データのインポート/エクスポート]ペインで[入力]チェックボックスをオンにし,邻のテキストボックスにCarmallInput.
とと力。
[ソルバー]ペインの[シミュレーション时间]で,[终了时间]をcarsmallinput.time(结束)
に设定。[ソルバーの选択]で,[タイプ]を固定步骤
に,[ソルバー]を离散(不连续状态)
に设定。
详细は,シミュレーションのための信号データ読み込み読み込み(万博1manbetxSimulink)を参照してください。
モデルをシミュレートします。
SIM(SimMdlName);
Inportブロックブロックで,観测値を検出と,その観测値をreclessvm预测ブロックに送ります。シミュレーションデータインスペクター(万博1manbetxSimulink)をを用して,出口ブロックのログデータを表示できます。