MATLAB ヘルプ センター
分類用のソフトマックス層の学習
net = trainSoftmaxLayer(X,T)
net = trainSoftmaxLayer(X,T,Name,Value)
net = trainSoftmaxLayer(X,T) は、入力データ X とターゲット T について、ソフトマックス層 net の学習を行います。
net
X
T
例
net = trainSoftmaxLayer(X,T,Name,Value) では、1 つ以上のペアの引数 Name,Value で指定された追加オプションを使用して、ソフトマックス層 net の学習を行います。
Name,Value
たとえば、損失関数を指定できます。
すべて折りたたむ
サンプル データを読み込みます。
[X,T] = iris_dataset;
X は、アヤメの花に関する次の 4 つの属性から成る 4 行 150 列の行列です。がく片の長さ、萼片の幅、花弁の長さ、花弁の幅。
T は、関連付けられたクラス ベクトルから成る 3 行 150 列の行列です。これらのクラス ベクトルは、各入力が 3 つのクラスのうち、どのクラスに割り当てられるかを定義します。各行は、アヤメの種類 (クラス) の 1 つを表すダミー変数に対応します。各列では、3 つのうち 1 つの行に含まれる 1 が、特定のサンプル (観測値または例) が属するクラスを表します。観測値が属していない他のクラスに対応する行には 0 が含まれます。
サンプル データを使用してソフトマックス層の学習を行います。
net = trainSoftmaxLayer(X,T);
学習済みのソフトマックス層を使用して、3 つのうち 1 つのクラスに観測値を分類します。
Y = net(X);
ターゲットと、ソフトマックス層から得られた分類を使用して、混同行列をプロットします。
plotconfusion(T,Y);
学習データ。m 行 n 列の行列として指定します。m は学習データの変数の数、n は観測値 (例) の数です。したがって、X の各列が 1 つのサンプルを表します。
データ型: single | double
single
double
ターゲット データ。k 行 n 列の行列として指定します。k はクラスの数、n は観測値の数です。各行は、特定のクラスを表すダミー変数です。つまり、各列はサンプルを表し、1 行に含まれる 1 つの 1 を除いて列のエントリはすべて 0 です。この 1 つのエントリは、そのサンプルのクラスを示します。
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
Name1=Value1,...,NameN=ValueN
Name
Value
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name を引用符で囲みます。
例: 'MaxEpochs',400,'ShowProgressWindow',false は、最大反復回数を 400 に指定し、学習ウィンドウを非表示にします。
'MaxEpochs',400,'ShowProgressWindow',false
MaxEpochs
学習の最大反復回数。'MaxEpochs' と正の整数値で構成されるコンマ区切りのペアとして指定します。
'MaxEpochs'
例: 'MaxEpochs',500
'MaxEpochs',500
LossFunction
'crossentropy'
'mse'
ソフトマックス層の損失関数。'LossFunction' と、'crossentropy' または 'mse' のいずれかで構成されるコンマ区切りのペアとして指定します。
'LossFunction'
mse は、平均二乗誤差関数を意味します。これは、以下によって与えられます。
mse
E=1n∑j=1n∑i=1k(tij−yij)2,
ここで、n は学習例の数、k はクラスの数です。tij はターゲット行列 T の ij 番目のエントリ、yij は入力ベクトルが xj の場合の自己符号化器からの i 番目の出力です。
クロス エントロピー関数は、以下によって与えられます。
E=1n∑j=1n∑i=1ktijlnyij+(1−tij)ln(1−yij).
例: 'LossFunction','mse'
'LossFunction','mse'
ShowProgressWindow
true
false
学習中に学習ウィンドウを表示するかどうかのインジケーター。'ShowProgressWindow' と、true または false のいずれかで構成されるコンマ区切りのペアとして指定します。
'ShowProgressWindow'
例: 'ShowProgressWindow',false
'ShowProgressWindow',false
データ型: logical
logical
TrainingAlgorithm
'trainscg'
ソフトマックス層の学習に使用される学習アルゴリズム。'TrainingAlgorithm' と、スケーリング共役勾配法を意味する 'trainscg' で構成されるコンマ区切りのペアとして指定します。
'TrainingAlgorithm'
例: 'TrainingAlgorithm','trainscg'
'TrainingAlgorithm','trainscg'
network
分類用のソフトマックス層。network オブジェクトとして返されます。ソフトマックス層 net のサイズは、ターゲット T のサイズと同じです。
R2015b で導入
trainAutoencoder | stack
trainAutoencoder
stack
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 のサイトは、お客様の地域からのアクセスが最適化されていません。
南北アメリカ
ヨーロッパ
アジア太平洋地域
最寄りの営業オフィスへのお問い合わせ