このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
ClassificationSVM Predict
ライブラリ:
Statistics and Machine Learning Toolbox /
Classification
説明
ClassificationSVM Predict ブロックは、1 クラスおよび 2 クラス (バイナリ) の分類について、SVM 分類オブジェクト (ClassificationSVM
または CompactClassificationSVM
) を使用して、観測値を分類します。
オブジェクトを含むワークスペース変数の名前を指定することにより、学習済みの SVM 分類オブジェクトをブロックにインポートします。入力端子 x では観測値 (予測子データ) を受信し、出力端子 label では観測値の予測クラス ラベルを返します。オプションの出力端子 score を追加すると、予測クラス スコアまたは事後確率が返されます。
例
ClassificationSVM Predict ブロックの使用によるクラス ラベルの予測
この例では、ClassificationSVM Predictブロックを Simulink® のラベル予測に使用する方法を示します。このブロックは、観測値 (予測子データ) を受け入れて、学習済みのサポート ベクター マシン (SVM) 分類モデルを使用することにより、その観測値の予測されたクラス ラベルとクラス スコアを返します。
端子
入力
x — 予測子データ
行ベクトル | 列ベクトル
予測子データ。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
出力
label — 予測クラス ラベル
スカラー
予測クラス ラベル。スカラーとして返されます。
1 クラス学習の場合、label は陽性クラスを表す値です。
2 クラス学習の場合、label はスコアまたは事後確率が最大になるクラスです。
データ型: single
| double
| half
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
| Boolean
| fixed point
| enumerated
score — 予測クラス スコアまたは事後確率
スカラー | 1 行 2 列のベクトル
予測クラスのスコアまたは事後確率。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
パラメーター
メイン
学習済みの機械学習モデルの選択 — SVM 分類モデル
svmMdl
(既定値) | ClassificationSVM
オブジェクト | CompactClassificationSVM
オブジェクト
ClassificationSVM
オブジェクトまたは CompactClassificationSVM
オブジェクトを含むワークスペース変数の名前を指定します。
fitcsvm
を使用して SVM モデルに学習させる場合、以下の制限が適用されます。
予測子データにカテゴリカル予測子 (
logical
、categorical
、char
、string
、またはcell
) を含めることはできません。学習データをテーブルで渡す場合、予測子は数値 (double
またはsingle
) でなければなりません。また、名前と値の引数CategoricalPredictors
は使用できません。カテゴリカル予測子をモデルに含めるには、モデルを当てはめる前にdummyvar
を使用してカテゴリカル予測子を前処理します。名前と値の引数
ScoreTransform
の値を'invlogit'
や無名関数にすることはできません。新しい観測値が与えられた場合に事後確率を予測するブロックでは、学習済みの SVM モデルをfitPosterior
またはfitSVMPosterior
に渡します。名前と値の引数
KernelFunction
の値は'gaussian'
('rbf'
と同じであり、1 クラス学習の場合の既定値)、'linear'
(2 クラス学習の場合の既定値) または'polynomial'
でなければなりません。
プログラムでの使用
ブロック パラメーター: TrainedLearner |
型: ワークスペース変数 |
値: ClassificationSVM オブジェクト | CompactClassificationSVM オブジェクト |
既定の設定: 'svmMdl' |
Add output port for predicted class scores — 予測クラス スコアに 2 番目の出力端子を追加する
off
(既定値) | on
チェック ボックスをオンにすると、ClassificationSVM Predict ブロックに 2 番目の出力端子 score が追加されます。
プログラムでの使用
ブロック パラメーター: ShowOutputScore |
型: 文字ベクトル |
値: 'off' | 'on' |
既定の設定: 'off' |
データ型
固定小数点が使用可能なパラメーター整数丸めモード — 固定小数点演算の丸めモード
Floor
(既定値) | Ceiling
| Convergent
| Nearest
| Round
| Simplest
| Zero
固定小数点演算の丸めモードを指定します。詳細は、丸め (Fixed-Point Designer)を参照してください。
ブロック パラメーターは常に、最も近い表現可能な値に丸められます。ブロック パラメーターの丸めを制御するには、マスク フィールドに MATLAB® の丸め関数を使用して式を入力します。
プログラムでの使用
ブロック パラメーター: RndMeth |
型: 文字ベクトル |
値: "Ceiling" | "Convergent" | "Floor" | "Nearest" | "Round" | "Simplest" | "Zero" |
既定の設定: "Floor" |
整数オーバーフローで飽和 — オーバーフロー アクションのメソッド
off
(既定値) | on
オーバーフローの際に飽和するか折り返すかを指定します。
アクション | 理由 | オーバーフローの際の影響 | 例 |
---|---|---|---|
このチェック ボックスをオンにする ( | モデルにオーバーフローの可能性があり、生成されたコードで明示的な飽和保護が必要である。 | オーバーフローの際は、データ型が表現できる最小値または最大値に飽和します。 | データ型 |
このチェック ボックスをオフにする ( | 生成されたコードの効率を最適化したい。 ブロックが範囲外の信号を処理する方法を過剰指定したくない。詳細は、信号範囲のエラーのトラブルシューティング (Simulink)を参照してください。 | オーバーフローの際は、データ型が表現できる適切な値で折り返します。 | データ型 |
プログラムでの使用
ブロック パラメーター: SaturateOnIntegerOverflow |
型: 文字ベクトル |
値: "off" | "on" |
既定の設定: "off" |
固定小数点ツールによる変更に対して出力データ型の設定をロックする — 固定小数点ツールによるデータ型のオーバーライドの防止
off
(既定値) | on
このパラメーターを選択して、ブロックに指定したデータ型を固定小数点ツールがオーバーライドしないようにします。詳細は、[出力データ型の設定をロックする] の使用 (Fixed-Point Designer)を参照してください。
プログラムでの使用
ブロック パラメーター: LockScale |
型: 文字ベクトル |
値: "off" | "on" |
既定の設定: "off" |
Label data type — label 出力のデータ型
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: <クラス名>
| <データ型式>
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 |
型: 文字ベクトル |
値: "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" (非数値ラベルの場合) |
ラベルのデータ型、最小値 — 範囲チェックの label 出力の最小値
[]
(既定値) | スカラー
Simulink がチェックする label 出力範囲の下限値を指定します。
Simulink は以下を実行するために最小値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、ソフトウェアインザループ (SIL) モードやエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[ラベルのデータ型、最小値] パラメーターが、label の実際の出力信号を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
依存関係
このパラメーターを指定できるのは、[学習済み機械学習モデルを選択] で指定されたモデルで数値ラベルが使用される場合だけです。
プログラムでの使用
ブロック パラメーター: LabelOutMin |
型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
ラベルのデータ型、最大値 — 範囲チェックの label 出力の最大値
[]
(既定値) | スカラー
Simulink がチェックする label 出力範囲の上限値を指定します。
Simulink は以下を実行するために最大値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[ラベルのデータ型、最大値] パラメーターが、label の実際の出力信号を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
依存関係
このパラメーターを指定できるのは、[学習済み機械学習モデルを選択] で指定されたモデルで数値ラベルが使用される場合だけです。
プログラムでの使用
ブロック パラメーター: LabelOutMax |
型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
Score data type — score 出力のデータ型
Inherit: auto
(既定値) | double
| single
| half
| int8
| uint8
| int16
| uint16
| int32
| uint32
| int64
| uint64
| boolean
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| <データ型式>
score 出力のデータ型を指定します。データ型は継承するか、直接指定するか、Simulink.NumericType
のようにデータ型オブジェクトとして表現することができます。
[Inherit: auto]
を選択すると、ブロックはデータ型を継承するルールを使用します。
データ型の詳細については、信号のデータ型の制御 (Simulink)を参照してください。
[データ型アシスタントを表示] ボタン をクリックすると、[データ型アシスタント] が表示されます。これは、データ型の属性を設定する際に役立ちます。詳細は、データ型アシスタントを利用したデータ型の指定 (Simulink)を参照してください。
プログラムでの使用
ブロック パラメーター: ScoreDataTypeStr |
型: 文字ベクトル |
値: "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" |
スコアのデータ型、最小値 — 範囲チェックの score 出力の最小値
[]
(既定値) | スカラー
Simulink がチェックする score 出力範囲の下限値を指定します。
Simulink は以下を実行するために最小値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、ソフトウェアインザループ (SIL) モードやエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[スコアのデータ型、最小値] パラメーターが、score の実際の出力を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
プログラムでの使用
ブロック パラメーター: ScoreOutMin |
型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
スコアのデータ型、最大値 — 範囲チェックの score 出力の最大値
[]
(既定値) | スカラー
Simulink がチェックする score 出力範囲の上限値を指定します。
Simulink は以下を実行するために最大値を使用します。
一部のブロックを対象としたパラメーター範囲のチェック (ブロック パラメーターの最小値と最大値の指定 (Simulink)を参照)。
シミュレーション範囲のチェック (信号範囲の指定 (Simulink)およびシミュレーション範囲のチェックの有効化 (Simulink)を参照)。
モデルから生成するコードの最適化。この最適化により、アルゴリズム コードが削除され、SIL やエクスターナル モードなど、一部のシミュレーション モードの結果に影響を与える可能性があります。詳細は、Optimize using the specified minimum and maximum values (Embedded Coder)を参照してください。
メモ
[スコアのデータ型、最大値] パラメーターが、score の実際の出力を飽和させたり、クリップしたりすることはありません。これを行うには、代わりに Saturation (Simulink) ブロックを使用してください。
プログラムでの使用
ブロック パラメーター: ScoreOutMax |
型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
Raw score data type — 未変換スコアのデータ型
Inherit: auto
(既定値) | double
| single
| half
| int8
| uint8
| int16
| uint16
| int32
| uint32
| int64
| uint64
| boolean
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| <データ型式>
内部の未変換スコアのデータ型を指定します。データ型は継承するか、直接指定するか、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 |
型: 文字ベクトル |
値: "[]" | スカラー |
既定の設定: "[]" |
Kernel data type — カーネル計算用のデータ型
double
(既定値) | single
| half
| int8
| uint8
| int16
| uint16
| int32
| int64
| uint64
| uint32
| boolean
| fixdt(1,16,0)
| fixdt(1,16,2^0,0)
| <データ型式>
カーネル計算用のパラメーターのデータ型を指定します。型は直接指定するか、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 は切片パラメーターです。
事前確率
クラスの "事前確率" は、母集団内でそのクラスの観測値が出現すると考えられる相対頻度です。
ヒント
線形 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 以降、[ラベルのデータ型] パラメーターの既定のデータ型値とサポートされるデータ型は、[学習済み機械学習モデルを選択] で指定されたモデルで使用されるラベルによって異なります。既定値は、数値ラベルと logical ラベルの場合は [継承: 逆伝播による継承]
、非数値ラベルの場合は [継承: 自動]
です。
[ラベルのデータ型] として [継承: 逆伝播による継承]
(非数値ラベルの場合) または [継承: '定数値' から継承]
を指定している場合は、値を [継承: 自動]
に変更してください。
R2021a: [スコアのデータ型] および [生スコアのデータ型] の既定値は [継承: 自動]
R2021a 以降、パラメーター [スコアのデータ型] および [生スコアのデータ型] の既定値は [継承: 自動]
です。
R2021a: [Kernel data type] はデータ型名またはデータ型オブジェクトとして指定
R2021a 以降、[Kernel data type] パラメーターでは継承オプションはサポートされません。[Kernel data type] はサポートされるデータ型名またはデータ型オブジェクトとして指定できます。
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- 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)