ClassificationSVM Predict
1 クラスおよびバイナリ分類用のサポート ベクター マシン (SVM) 分類器を使用した観測値の分類

ライブラリ:
Statistics and Machine Learning Toolbox /
Classification
説明
ClassificationSVM Predict ブロックは、1 クラスおよび 2 クラス (バイナリ) の分類について、SVM 分類オブジェクト (ClassificationSVM または CompactClassificationSVM) を使用して、観測値を分類します。
オブジェクトを含むワークスペース変数の名前を指定することにより、学習済みの SVM 分類オブジェクトをブロックにインポートします。入力端子 x では観測値 (予測子データ) を受信し、出力端子 label では観測値の予測クラス ラベルを返します。オプションの出力端子 score を追加すると、予測クラス スコアまたは事後確率が返されます。
例
ClassificationSVM Predict ブロックの使用によるクラス ラベルの予測
この例では、ClassificationSVM Predictブロックを Simulink® のラベル予測に使用する方法を示します。このブロックは、観測値 (予測子データ) を受け入れて、学習済みのサポート ベクター マシン (SVM) 分類モデルを使用することにより、その観測値の予測されたクラス ラベルとクラス スコアを返します。
端子
入力
予測子データ。1 つの観測値の列ベクトルまたは行ベクトルとして指定します。
x の変数の順序は、[学習済み機械学習モデルを選択] で指定された SVM モデルに学習させた予測子変数の順序と同じでなければなりません。
SVM モデルに学習をさせるときに fitcsvm で 'Standardize',true を設定した場合、ClassificationSVM Predict ブロックは、SVM モデルの Mu プロパティにある平均と Sigma プロパティにある標準偏差を使用して、x の値を標準化します。
データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point
出力
予測クラス ラベル。スカラーとして返されます。
1 クラス学習の場合、label は陽性クラスを表す値です。
2 クラス学習の場合、label はスコアまたは事後確率が最大になるクラスです。
データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point | enumerated
予測クラスのスコアまたは事後確率。1 クラス学習ではスカラーとして、2 クラス学習では 1 行 2 列のベクトルとして返されます。
1 クラス学習の場合、score は陽性クラスの分類スコアです。1 クラス学習の事後確率を得ることはできません。
2 クラス学習の場合、score は 1 行 2 列のベクトルです。
score の 1 番目および 2 番目の要素は、それぞれ陰性クラス (
svmMdl.ClassNames(1)) および陽性クラス (svmMdl.ClassNames(2)) の分類スコアに対応します。ここで、svmMdlは [学習済み機械学習モデルを選択] で指定された SVM モデルです。svmMdlのClassNamesプロパティは、陰性および陽性のクラス名をチェックするために使用できます。fitPosteriorまたはfitSVMPosteriorを使用してスコアから事後確率への最適な変換関数を当てはめた場合、score にはクラスの事後確率が格納されます。それ以外の場合は、score にクラス スコアが格納されます。
依存関係
この端子を有効にするには、[ブロック パラメーター] ダイアログ ボックスの [メイン] タブで [予測済みクラス スコア用の出力端子を追加] のチェック ボックスをオンにします。
データ型: single | double | half | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | Boolean | fixed point
パラメーター
メイン
ClassificationSVM オブジェクトまたは CompactClassificationSVM オブジェクトを含むワークスペース変数の名前を指定します。
fitcsvm を使用して SVM モデルに学習させる場合、以下の制限が適用されます。
予測子データにカテゴリカル予測子 (
logical、categorical、char、string、またはcell) を含めることはできません。学習データを table で渡す場合、予測子は数値 (doubleまたはsingle) でなければなりません。また、名前と値の引数CategoricalPredictorsは使用できません。カテゴリカル予測子をモデルに含めるには、モデルを当てはめる前にdummyvarを使用してカテゴリカル予測子を前処理します。名前と値の引数
ScoreTransformの値を'invlogit'や無名関数にすることはできません。新しい観測値が与えられた場合に事後確率を予測するブロックでは、学習済みの SVM モデルをfitPosteriorまたはfitSVMPosteriorに渡します。名前と値の引数
KernelFunctionの値は'gaussian'('rbf'と同じであり、1 クラス学習の場合の既定値)、'linear'(2 クラス学習の場合の既定値) または'polynomial'でなければなりません。
プログラムでの使用
ブロック パラメーター: TrainedLearner |
| 型: ワークスペース変数 |
値: ClassificationSVM オブジェクト | CompactClassificationSVM オブジェクト |
既定の設定: 'svmMdl' |
チェック ボックスをオンにすると、ClassificationSVM Predict ブロックに 2 番目の出力端子 score が追加されます。
プログラムでの使用
ブロック パラメーター: ShowOutputScore |
| 型: 文字ベクトル |
値: 'off' | 'on' |
既定: 'off' |
データ型
固定小数点が使用可能なパラメーター
固定小数点演算の丸めモードを指定します。詳細は、丸めモード (Fixed-Point Designer)を参照してください。
ブロック パラメーターは常に、最も近い表現可能な値に丸められます。ブロック パラメーターの丸めを制御するには、マスク フィールドに MATLAB® の丸め関数を使用して式を入力します。
プログラムでの使用
ブロック パラメーター: RndMeth |
| 型: 文字ベクトル |
値: "Ceiling" | "Convergent" | "Floor" | "Nearest" | "Round" | "Simplest" | "Zero" |
既定の設定: "Floor" |
オーバーフローの際に飽和するか折り返すかを指定します。
| アクション | 理由 | オーバーフローの際の影響 | 例 |
|---|---|---|---|
このチェック ボックスをオンにする ( | モデルにオーバーフローの可能性があり、生成されたコードで明示的な飽和保護が必要である。 | オーバーフローの際は、データ型が表現できる最小値または最大値に飽和します。 | データ型 |
このチェック ボックスをオフにする ( | 生成されたコードの効率を最適化したい。 ブロックが範囲外の信号を処理する方法を過剰指定したくない。詳細は、信号範囲のエラーのトラブルシューティング (Simulink)を参照してください。 | オーバーフローの際は、データ型が表現できる適切な値で折り返します。 | データ型 |
プログラムでの使用
ブロック パラメーター: SaturateOnIntegerOverflow |
| 型: 文字ベクトル |
値: "off" | "on" |
既定の設定: "off" |
このパラメーターを選択して、ブロックに指定したデータ型を固定小数点ツールがオーバーライドしないようにします。詳細は、[出力データ型の設定をロックする] の使用 (Fixed-Point Designer)を参照してください。
プログラムでの使用
ブロック パラメーター: LockScale |
| 型: 文字ベクトル |
値: "off" | "on" |
既定の設定: "off" |
データ型
label 出力のデータ型を指定します。型は継承するか、列挙データ型として指定するか、Simulink.NumericType のようにデータ型オブジェクトとして表現できます。
サポートされるデータ型は、[学習済み機械学習モデルを選択] で指定されたモデルで使用されるラベルによって異なります。
モデルで数値ラベルまたは logical ラベルが使用される場合、サポートされるデータ型は [
Inherit: Inherit via back propagation] (既定)、double、single、half、int8、uint8、int16、uint16、int32、uint32、int64、uint64、boolean、固定小数点およびデータ型オブジェクトです。モデルで非数値ラベルが使用される場合、サポートされるデータ型は [
Inherit: auto] (既定)、Enum: <class name>およびデータ型オブジェクトです。
継承オプションを選択すると、ソフトウェアは以下のように動作します。
Inherit: Inherit via back propagation(数値ラベルと logical ラベルの場合の既定値) — Simulink® は、データ型の伝播時にブロックの [ラベルのデータ型] を自動的に決定します (データ型の伝播 (Simulink)を参照)。この場合、ブロックは下流ブロックまたは信号オブジェクトのデータ型を使用します。Inherit: auto(非数値ラベルの場合の既定値) — ブロックは自動定義された列挙データ型変数を使用します。たとえば、[学習済み機械学習モデルを選択] で指定されたワークスペース変数名がmyMdlで、クラス ラベルがclass 1およびclass 2であるとします。この場合、対応する label の値はmyMdl_enumLabels.class_1およびmyMdl_enumLabels.class_2になります。ブロックは、関数matlab.lang.makeValidNameを使用して、クラス ラベルを有効な MATLAB 識別子に変換します。
データ型の詳細については、信号のデータ型の制御 (Simulink)を参照してください。
[データ型アシスタントを表示] ボタン
をクリックすると、[データ型アシスタント] が表示されます。これは、データ型の属性を設定する際に役立ちます。詳細は、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
プログラムでの使用
ブロック パラメーター: LabelDataTypeStr |
| 型: 文字ベクトルまたは string |
値: "Inherit: Inherit via back propagation" | "Inherit: auto" | "double" | "single" | "half" | "int8" | "uint8" | "int16" | "uint16" | "int32" | "uint32" | "int64" | "uint64" | "boolean" | "fixdt(1,16,0)" | "fixdt(1,16,2^0,0)" | "Enum: <class name>" | "<data type expression>" |
既定の設定: "Inherit: Inherit via back propagation" (数値ラベルと logical ラベルの場合) | "Inherit: auto" (非数値ラベルの場合) |
Simulink がチェックする label 出力範囲の下限値を指定します。
Simulink は以下を実行するために最小値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、ソフトウェアインザループ (SIL) モードやエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
[ラベルのデータ型、最小値] パラメーターが、label の実際の出力信号を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
依存関係
このパラメーターを指定できるのは、[学習済み機械学習モデルを選択] で指定されたモデルで数値ラベルが使用される場合だけです。
プログラムでの使用
ブロック パラメーター: LabelOutMin |
| 型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
Simulink がチェックする label 出力範囲の上限値を指定します。
Simulink は以下を実行するために最大値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
[ラベルのデータ型、最大値] パラメーターが、label の実際の出力信号を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
依存関係
このパラメーターを指定できるのは、[学習済み機械学習モデルを選択] で指定されたモデルで数値ラベルが使用される場合だけです。
プログラムでの使用
ブロック パラメーター: LabelOutMax |
| 型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
score 出力のデータ型を指定します。データ型は継承するか、直接指定するか、Simulink.NumericType のようにデータ型オブジェクトとして表現することができます。
[Inherit: auto] を選択すると、ブロックはデータ型を継承するルールを使用します。
データ型の詳細については、信号のデータ型の制御 (Simulink)を参照してください。
[データ型アシスタントを表示] ボタン
をクリックすると、[データ型アシスタント] が表示されます。これは、データ型の属性を設定する際に役立ちます。詳細は、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
プログラムでの使用
ブロック パラメーター: ScoreDataTypeStr |
| 型: 文字ベクトルまたは string |
値: "Inherit: auto" | "double" | "single" | "half" | "int8" | "uint8" | "int16" | "uint16" | "int32" | "uint32" | "int64" | "uint64" | "boolean" | "fixdt(1,16,0)" | "fixdt(1,16,2^0,0)" | "<data type expression>" |
既定の設定: "Inherit: auto" |
Simulink がチェックする score 出力範囲の下限値を指定します。
Simulink は以下を実行するために最小値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、ソフトウェアインザループ (SIL) モードやエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
[スコアのデータ型、最小値] パラメーターが、score の実際の出力を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
プログラムでの使用
ブロック パラメーター: ScoreOutMin |
| 型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
Simulink がチェックする score 出力範囲の上限値を指定します。
Simulink は以下を実行するために最大値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
[スコアのデータ型、最大値] パラメーターが、score の実際の出力を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
プログラムでの使用
ブロック パラメーター: ScoreOutMax |
| 型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
内部の未変換スコアのデータ型を指定します。データ型は継承するか、直接指定するか、Simulink.NumericType のようにデータ型オブジェクトとして表現することができます。
[Inherit: auto] を選択すると、ブロックはデータ型を継承するルールを使用します。
データ型の詳細については、信号のデータ型の制御 (Simulink)を参照してください。
[データ型アシスタントを表示] ボタン
をクリックすると、[データ型アシスタント] が表示されます。これは、データ型の属性を設定する際に役立ちます。詳細は、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
依存関係
このパラメーターを指定できるのは、[学習済み機械学習モデルを選択] で指定されたモデルで "none" (既定の設定で、"identity" と同じ) 以外のスコア変換が使用される場合だけです。
モデルでスコア変換が使用されない (
"none"または"identity") 場合は、[スコアのデータ型] を使用してスコアのデータ型を指定できます。モデルで
"none"または"identity"以外のスコア変換が使用される場合は、このパラメーターを使用して未変換の生スコアのデータ型を指定できます。変換されたスコアのデータ型を指定するには、[スコアのデータ型] を使用します。
スコア変換オプションを変更するには、学習時に名前と値の引数 ScoreTransform を指定するか、学習後に ScoreTransform プロパティを変更します。
プログラムでの使用
ブロック パラメーター: RawScoreDataTypeStr |
| 型: 文字ベクトル |
値: "Inherit: auto" | "double" | "single" | "half" | "int8" | "uint8" | "int16" | "uint16" | "int32" | "uint32" | "int64" | "uint64" | "boolean" | "fixdt(1,16,0)" | "fixdt(1,16,2^0,0)" | "<data type expression>" |
既定の設定: "Inherit: auto" |
Simulink がチェックする未変換スコア範囲の下限値を指定します。
Simulink は以下を実行するために最小値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、ソフトウェアインザループ (SIL) モードやエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
[生スコアのデータ型、最小値] パラメーターが、未変換スコアの実際の信号を飽和させたり、クリップしたりすることはありません。
プログラムでの使用
ブロック パラメーター: RawScoreOutMin |
| 型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
Simulink がチェックする未変換スコア範囲の上限値を指定します。
Simulink は以下を実行するために最大値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
[生スコアのデータ型、最大値] パラメーターが、未変換スコアの実際の信号を飽和させたり、クリップしたりすることはありません。
プログラムでの使用
ブロック パラメーター: RawScoreOutMax |
| 型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
カーネル計算用のパラメーターのデータ型を指定します。型は直接指定するか、Simulink.NumericType のようにデータ型オブジェクトとして表現できます。
[Kernel data type] パラメーターは、指定した SVM モデルのカーネル関数のタイプによって、異なるパラメーターのデータ型を指定します。SVM モデルに学習させている場合は、名前と値の引数 KernelFunction を指定します。
'KernelFunction' 値 | データ型 |
|---|---|
'gaussian' または 'rbf' | [Kernel data type] は、ガウス カーネル の平方距離 のデータ型を指定します。ここで、x は観測値の予測子データで、s はサポート ベクターです。 |
'linear' | [Kernel data type] は、線形カーネル関数 の出力のデータ型を指定します。ここで、x は観測値の予測子データで、s はサポート ベクターです。 |
'polynomial' | [Kernel data type] は、多項式カーネル関数 の出力のデータ型を指定します。ここで、x は観測値の予測子データ、s はサポート ベクター、p は多項式カーネル関数の次数です。 |
データ型の詳細については、信号のデータ型の制御 (Simulink)を参照してください。
[データ型アシスタントを表示] ボタン
をクリックすると、[データ型アシスタント] が表示されます。これは、データ型の属性を設定する際に役立ちます。詳細は、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
プログラムでの使用
ブロック パラメーター: KernelDataTypeStr |
| 型: 文字ベクトル |
値: 'double' | 'single' | 'half' | 'int8' | 'uint8' | 'int16' | 'uint16' | 'int32' | 'uint32' | 'uint64' | 'int64' | 'boolean' | 'fixdt(1,16,0)' | 'fixdt(1,16,2^0,0)' | '<data type expression>' |
既定の設定: 'double' |
Simulink がチェックするカーネル計算用の内部変数範囲の下限値を指定します。
Simulink は以下を実行するために最小値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、ソフトウェアインザループ (SIL) モードやエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[カーネルのデータ型、最小値] パラメーターが、実際のカーネル計算値を飽和させたり、クリップしたりすることはありません。
プログラムでの使用
ブロック パラメーター: KernelOutMin |
| 型: 文字ベクトル |
値: '[]' | スカラー |
既定の設定: '[]' |
Simulink がチェックするカーネル計算用の内部変数範囲の上限値を指定します。
Simulink は以下を実行するために最大値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[カーネルのデータ型、最大値] パラメーターが、実際のカーネル計算値を飽和させたり、クリップしたりすることはありません。
プログラムでの使用
ブロック パラメーター: KernelOutMax |
| 型: 文字ベクトル |
値: '[]' | スカラー |
既定の設定: '[]' |
ブロックの特性
データ型 |
|
直達 |
|
多次元信号 |
|
可変サイズの信号 |
|
ゼロクロッシング検出 |
|
詳細
観測値 x を分類するための SVM の "分類スコア" は、x から判定境界 (範囲は -∞ ~ +∞) までの符号付き距離です。クラスの正のスコアは、x がそのクラスにあると予測されることを示します。負のスコアはそうではないことを示します。
陽性クラス分類スコア は、学習済み SVM 分類関数です。 は x に対する数値的な予測応答でもあり、x を陽性クラスとして予測するスコアでもあります。
ここで、 は推定された SVM パラメーター、 は予測子空間における x とサポート ベクターの間のドット積です。合計には学習セットの観測値が含まれます。x に対する負のクラス分類スコア、つまり x を陰性クラスとして予測するスコアは、–f(x) です。
G(xj,x) = xj′x (線形カーネル) の場合、スコア関数は次のように縮小されます。
s はカーネル スケール、β は近似線形係数のベクトルです。
詳細は、サポート ベクター マシンについてを参照してください。
"事後確率" はデータが与えられる場合に、観測値が特定のクラスに属している確率です。
SVM の場合、事後確率は、観測値 j がクラス k = {-1,1} に含まれるスコアの関数 P(s) です。
可分クラスの場合、事後確率は次のステップ関数になります。
ここで
sj は観測値 j のスコアです。
+1 と –1 はそれぞれ陽性と陰性のクラスを表します。
π は観測値が陽性のクラスにある事前確率を表しています。
不可分クラスの場合、事後確率は次のシグモイド関数になります。
ここで、パラメーター A は傾きパラメーター、B は切片パラメーターです。
クラスの "事前確率" は、母集団内でそのクラスの観測値が出現すると考えられる相対頻度です。
内部モデル パラメーターのデータ型は、有効になっている score 出力端子のデータ型と同期されます。score 出力端子が有効になっていない場合、モデル パラメーターのデータ型は他の内部データ型と同期されます。
ヒント
線形 SVM モデルを使用しており、多数のサポート ベクターが含まれている場合、予測 (観測値の分類) が低速になる可能性があります。線形 SVM モデルに基づく観測値の分類を効率的に行うには、
discardSupportVectorsを使用してClassificationSVMまたはCompactClassificationSVMオブジェクトからサポート ベクターを削除します。
代替機能
MATLAB Function ブロックを SVM 分類オブジェクト (ClassificationSVM または CompactClassificationSVM) のオブジェクト関数 predict と共に使用できます。たとえば、MATLAB Function ブロックの使用によるクラス ラベルの予測を参照してください。
Statistics and Machine Learning Toolbox™ ライブラリ内の ClassificationSVM Predict ブロックを使用するかどうか、または MATLAB Function ブロックを関数 predict と共に使用するかどうかを判断する際には、以下を考慮してください。
Statistics and Machine Learning Toolbox ライブラリ ブロックを使用する場合、固定小数点ツール (Fixed-Point Designer)を使用して浮動小数点モデルを固定小数点に変換できます。
MATLAB Function ブロックを関数
predictと共に使用する場合は、可変サイズの配列に対するサポートを有効にしなければなりません。MATLAB Function ブロックを使用する場合、予測の前処理や後処理のために、同じ MATLAB Function ブロック内で MATLAB 関数を使用することができます。
拡張機能
C/C++ コード生成
Simulink® Coder™ を使用して C および C++ コードを生成します。
固定小数点の変換
Fixed-Point Designer™ を使用して固定小数点システムの設計とシミュレーションを行います。
バージョン履歴
R2020b で導入R2021a 以降、[ラベルのデータ型] パラメーターの既定のデータ型値とサポートされるデータ型は、[学習済み機械学習モデルを選択] で指定されたモデルで使用されるラベルによって異なります。既定値は、数値ラベルと logical ラベルの場合は [継承: 逆伝播による継承]、非数値ラベルの場合は [継承: 自動] です。
[ラベルのデータ型] として [継承: 逆伝播による継承] (非数値ラベルの場合) または [継承: '定数値' から継承] を指定している場合は、値を [継承: 自動] に変更してください。
R2021a 以降、パラメーター [スコアのデータ型] および [生スコアのデータ型] の既定値は [継承: 自動] です。
R2021a 以降、[Kernel data type] パラメーターでは継承オプションはサポートされません。[Kernel data type] はサポートされるデータ型名またはデータ型オブジェクトとして指定できます。
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Web サイトの選択
Web サイトを選択すると、翻訳されたコンテンツにアクセスし、地域のイベントやサービスを確認できます。現在の位置情報に基づき、次のサイトの選択を推奨します:
また、以下のリストから Web サイトを選択することもできます。
最適なサイトパフォーマンスの取得方法
中国のサイト (中国語または英語) を選択することで、最適なサイトパフォーマンスが得られます。その他の国の MathWorks のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
- América Latina (Español)
- Canada (English)
- United States (English)
ヨーロッパ
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)
