このページの翻訳は最新ではありません。ここをクリックして、英語の最新版を参照してください。
線形分類学習器テンプレート
templateLinear
は、マルチクラス問題の高次元データに線形分類モデルをあてはめるために適したテンプレートを作成します。
このテンプレートでは、バイナリ学習器モデル、正則化のタイプおよび強度、ソルバーなどを指定します。テンプレートの作成後、テンプレートとデータをfitcecoc
に渡して、モデルに学習をさせます。
は、1 つ以上の名前と値のペアの引数で指定された追加オプションを使用してテンプレートを返します。たとえば、ロジスティック回帰の実装、正則化のタイプまたは強度、目的関数の最小化に使用するソルバーを指定できます。t
= templateLinear(Name,Value
)
t
をコマンド ウィンドウに表示した場合、名前と値のペアの引数を使用して指定したオプションを除くすべてのオプションが空 ([]
) として表示されます。学習中、空のオプションに既定値が使用されます。
複数のバイナリ線形分類モデルから構成されている ECOC モデルに学習をさせます。
NLP のデータセットを読み込みます。
loadnlpdata
X
は予測子データのスパース行列、Y
はクラス ラベルの categorical ベクトルです。データには 2 つを超えるクラスがあります。
既定の線形分類モデル テンプレートを作成します。
t = templateLinear();
既定値を調整する方法については、templateLinear
のページの名前と値のペアの引数を参照してください。
複数のバイナリ線形分類モデルから構成されている ECOC モデルに学習をさせます。これらの分類モデルは、ドキュメンテーション Web ページにおける単語の度数分布から製品を特定できます。学習時間を短縮するため、予測子データを転置し、観測値が列に対応することを指定します。
X = X'; rng(1);% For reproducibilityMdl = fitcecoc(X,Y,'Learners',t,'ObservationsIn','columns')
Mdl = CompactClassificationECOC ResponseName: 'Y' ClassNames: [1x13 categorical] ScoreTransform: 'none' BinaryLearners: {78x1 cell} CodingMatrix: [13x78 double] Properties, Methods
または、'Learners','Linear'
を使用して、既定の線形分類モデルから構成されている ECOC モデルに学習をさせることができます。
メモリを節約するため、fitcecoc
は線形分類学習器から構成されている学習済みの ECOC モデルをCompactClassificationECOC
モデル オブジェクトで返します。
オプションのName,Value
引数のコンマ区切りペアを指定します。Name
は引数名で、Value
は対応する値です。Name
は引用符で囲まなければなりません。Name1,Value1,...,NameN,ValueN
のように、複数の名前と値のペアの引数を、任意の順番で指定できます。
'Learner','logistic','Regularization','lasso','CrossVal','on'
は、LASSO ペナルティがあるロジスティック回帰と 10 分割の交差検証を実装するように指定します。
Lambda
—正則化項の強度'auto'
(既定値) |非負のスカラー|非負値のベクトル。正則化項の強度。'Lambda'
と'auto'
、非負のスカラーまたは非負値のベクトルから構成されるコンマ区切りのペアとして指定します。
'auto'
の場合、Lambda
= 1/n です。
交差検証の名前と値のペアの引数 (CrossVal
など)を指定した場合,nは分割内観測値の数です。
それ以外の場合、n は学習標本のサイズです。
非負値のベクトルの場合、templateLinear
は、Lambda
の異なる値それぞれについて目的関数の最適化を逐次的に昇順で実行します。
Solver
が'sgd'
または'asgd'
でRegularization
が'lasso'
の場合、templateLinear
が前の係数の推定値を次の最適化反復のウォーム スタートとして使用することはありません。それ以外の場合、templateLinear
はウォーム スタートを使用します。
Regularization
が'lasso'
の場合、templateLinear
がLambda
の以後の値を使用して最適化を行うときに、係数の推定値 0 は値が保持されます。
templateLinear
は、指定された正則化強度ごとに係数の推定値を返します。
例:'Lambda',10.^(-(10:-2:2))
データ型:char
|string
|double
|single
Learner
—線形分類モデルのタイプ'svm'
(既定値) |'logistic'
線形分類モデルのタイプ。'Learner'
と'svm'
または'logistic'
から構成されるコンマ区切りのペアとして指定します。
次の表では、 です。
β は p 個の係数のベクトルです。
x は p 個の予測子変数による観測値です。
b はスカラー バイアスです。
値 | アルゴリズム | 応答の範囲 | 損失関数 |
---|---|---|---|
'svm' |
サポート ベクター マシン | y ∊ {–1,1}。陽性クラスの場合は 1、それ以外の場合は –1 | ヒンジ: |
'logistic' |
ロジスティック回帰 | 'svm' と同じ |
逸脱度 (ロジスティック): |
例:'Learner','logistic'
Regularization
—複雑度ペナルティのタイプ'lasso'
|'ridge'
複雑度ペナルティのタイプ。'Regularization'
と'lasso'
または'ridge'
から構成されるコンマ区切りのペアとして指定します。
最小化のための目的関数は、平均損失関数 (Learner
を参照) と次の表の正則化項を加算することにより作成されます。
値 | 説明 |
---|---|
'lasso' |
LASSO (L1) ペナルティ: |
'ridge' |
リッジ (L2) ペナルティ: |
正則化項の強度 (式の λ) を指定するには、Lambda
を使用します。
バイアス項 (β0) は正則化ペナルティから除外されます。
Solver
が'sparsa'
の場合、Regularization
の既定値は'lasso'
になります。それ以外の場合は、既定値は'ridge'
です。
ヒント
予測子変数を選択する場合は、'lasso'
を指定します。変数の選択の詳細については、特徴選択の紹介を参照してください。
最適化の精度を向上させるには、'ridge'
を指定します。
例:'Regularization','lasso'
Solver
—目的関数の最小化手法'sgd'
|'asgd'
|“双重”
|'bfgs'
|'lbfgs'
|'sparsa'
|string 配列|文字ベクトルの cell 配列目的関数の最小化手法。'Solver'
と次の表の値をもつ文字ベクトル、string スカラー、string 配列、または文字ベクトルの cell 配列から構成されるコンマ区切りのペアとして指定します。
値 | 説明 | 制限 |
---|---|---|
'sgd' |
確率的勾配降下法 (SGD)[4][2] | |
'asgd' |
平均化確率的勾配降下法 (ASGD)[7] | |
“双重” |
SVM 用の双対 SGD[1][6] | Regularization は'ridge' 、Learner は'svm' でなければなりません。 |
'bfgs' |
Broyden-Fletcher-Goldfarb-Shanno 準ニュートン アルゴリズム (BFGS)[3] | X の次元数が非常に多い場合は非効率的です。 |
'lbfgs' |
記憶制限 BFGS (LBFGS)[3] | Regularization は'ridge' でなければなりません。 |
'sparsa' |
可分近似によるスパース再構成 (SpaRSA)[5] | Regularization は'lasso' でなければなりません。 |
指定する項目によって、内容は次のように変わります。
予測子データセットに 100 個以下の予測子変数が格納されている場合にリッジ ペナルティ (Regularization
を参照) を指定すると、既定のソルバーは'bfgs'
になります。
予測子データセットに 100 個より多い予測子変数が格納されている場合に SVM モデル (Learner
を参照) とリッジ ペナルティを指定すると、既定のソルバーは“双重”
になります。
予測子データセットに 100 個以下の予測子変数が格納されている場合に LASSO ペナルティを指定すると、既定のソルバーは'sparsa'
になります。
それ以外の場合、既定のソルバーは'sgd'
になります。
選択するソルバーの詳細は、ヒントを参照してください。
例:'Solver',{'sgd','lbfgs'}
Beta
—線形係数の初期推定値zeros(p
,1)
(既定値) |数値ベクトル|数値行列線形係数の初期推定値 (β)、'Beta'
と p 次元の数値ベクトルまたは p 行 L 列の数値行列から構成されるコンマ区切りのペアとして指定します。p はX
の予測子変数の数、L は正則化強度値の数です (詳細については、Lambda
を参照)。
p 次元ベクトルを指定した場合、次のプロセスを使用して目的関数が L 回最適化されます。
初期値としてBeta
、正則化強度としてLambda
の最小値を使用して最適化を行う。
前回の最適化で生成された推定値をウォーム スタートとして使用し、Lambda
内の次に小さい値を正則化強度として使用して、再度最適化を行う。
Lambda
の値をすべて使用するまでステップ 2 を繰り返す。
p 行 L 列の行列を指定した場合、目的関数が L 回最適化されます。反復j
では、初期値としてBeta(:,
が使用され、j
)Lambda
を昇順で並べ替えた後で正則化強度としてLambda(
が使用されます。j
)
'Solver','dual'
を設定した場合、Beta
は無視されます。
データ型:single
|double
Bias
—切片の初期推定値切片の初期推定値 (b)。'Bias'
と数値スカラーまたは L 次元の数値ベクトルから構成されるコンマ区切りのペアとして指定します。L は正則化強度値の数です (詳細については、Lambda
を参照)。
スカラーを指定した場合、次のプロセスを使用して目的関数が L 回最適化されます。
初期値としてBias
、正則化強度としてLambda
の最小値を使用して最適化を行う。
生成された推定値を次回の最適化の反復でウォーム スタートとして使用し、Lambda
内の次に小さい値を正則化強度として使用する。
Lambda
の値をすべて使用するまでステップ 2 を繰り返す。
L 次元ベクトルを指定した場合、目的関数が L 回最適化されます。反復j
では、初期値としてBias(
が使用され、j
)Lambda
を昇順で並べ替えた後で正則化強度としてLambda(
が使用されます。j
)
既定の設定では、次のようになります。
Learner
が'logistic'
の場合、gjはY(
が陽性クラスであれば 1、そうでなければ -1 になります。j
)Bias
は、学習の場合は g の、交差検証の場合は分割内観測値の加重平均になります。
Learner
が'svm'
の場合、Bias
は 0 になります。
データ型:single
|double
FitBias
—線形モデルの切片使用フラグtrue
(既定値) |false
線形モデルの切片使用フラグ。'FitBias'
とtrue
またはfalse
から構成されるコンマ区切りのペアとして指定します。
値 | 説明 |
---|---|
true |
線形モデルにバイアス項 b が追加され、推定されます。 |
false |
推定時に b = 0 に設定されます。 |
例:'FitBias',false
データ型:logical
PostFitBias
—最適化後に線形モデルの切片をあてはめるフラグfalse
(既定値) |true
最適化後に線形モデルの切片をあてはめるフラグ。'PostFitBias'
とtrue
またはfalse
から構成されるコンマ区切りのペアとして指定します。
値 | 説明 |
---|---|
false |
最適化時にバイアス項 b と係数 β が推定されます。 |
true |
b を推定するため、以下が行われます。
|
true
を指定する場合、FitBias
は true でなければなりません。
例:'PostFitBias',true
データ型:logical
Verbose
—詳細レベル0
(既定値) |1
詳細レベル。“详细”
と0
または1
のいずれかから構成されるコンマ区切りのペアとして指定します。Verbose
は、コマンド ラインにおける診断情報の表示を制御します。
値 | 説明 |
---|---|
0 |
templateLinear は診断情報を表示しません。 |
1 |
templateLinear は、目的関数の値、勾配の大きさ、および他の診断情報を定期的に表示します。 |
例:“详细”,1
データ型:single
|double
BatchSize
—ミニバッチのサイズミニバッチのサイズ。'BatchSize'
と正の整数から構成されるコンマ区切りのペアとして指定します。各反復では、学習データの観測値をBatchSize
個使用して勾配が推定されます。
予測子データが数値行列の場合、既定値は10
です。
予測子データがスパース行列の場合、既定値はmax([10,ceil(sqrt(ff))])
です。ここで、ff = numel(X)/nnz(X)
(X
の"スパース性係数") です。
例:'BatchSize',100
データ型:single
|double
LearnRate
—学習率学習率。'LearnRate'
と正のスカラーで構成される、コンマ区切りのペアとして指定します。LearnRate
は、劣勾配をスケールすることによって最適化のステップ サイズを制御します。
Regularization
が'ridge'
の場合、LearnRate
は初期学習率 γ0を指定します。templateLinear
は、次の式を使用して、反復 t、γtについての学習率を決定します。
Regularization
が'lasso'
の場合、すべての反復についてLearnRate
は一定になります。
既定の設定では、LearnRate
は1/sqrt(1+max((sum(X.^2,obsDim))))
です。obsDim
は、観測値が予測子データX
の列から構成されている場合は1
、それ以外の場合は2
です。
例:'LearnRate',0.01
データ型:single
|double
OptimizeLearnRate
—学習率を減少させるフラグtrue
(既定値) |false
発散 (最小値の限度を超える状態) が検出された場合に学習率を減少させるフラグ。'OptimizeLearnRate'
とtrue
またはfalse
から構成されるコンマ区切りのペアとして指定します。
OptimizeLearnRate
が'true'
の場合、次のようになります。
数回の最適化反復について、LearnRate
を学習率として使用して最適化が開始される。
目的関数の値が増加した場合、現在の学習率の半分の値を使用して再開される。
目的関数が減少するまで、ステップ 2 が繰り返される。
例:'OptimizeLearnRate',true
データ型:logical
TruncationPeriod
—LASSO 切り捨て実行間のミニバッチの回数10
(既定値) |正の整数LASSO 切り捨て実行間のミニバッチの回数。'TruncationPeriod'
と正の整数から構成されるコンマ区切りのペアとして指定します。
切り捨て実行の後で、ソフトしきい値が線形係数に適用されます。つまり、k =TruncationPeriod
回のミニバッチが処理された後で、次を使用して係数推定 j が切り捨てられます。
SGD の場合、
はミニバッチを次を満たす k の回数処理した後の係数 j の推定値です。
γtは反復 t における学習率です。λ はLambda
の値です。
ASGD の場合、 はミニバッチを次を満たす k の回数処理した後の係数 j の平均推定値です。
Regularization
が'ridge'
の場合、TruncationPeriod
は無視されます。
例:'TruncationPeriod',100
データ型:single
|double
BatchLimit
—バッチの最大回数バッチを処理する最大回数。'BatchLimit'
と正の整数から構成されるコンマ区切りのペアとして指定します。BatchLimit
回のバッチが処理されると、最適化が終了します。
既定の設定では、次のようになります。
'BatchLimit'
と'
PassLimit
'
を指定した場合、処理する観測値の数が最も少なくなる引数が選択されます。
'BatchLimit'
を指定し、'PassLimit'
は指定しなかった場合、データ全体を完全に 1 回通すのに十分な回数のバッチが処理されます。
例:'BatchLimit',100
データ型:single
|double
BetaTolerance
—線形係数およびバイアス項の相対許容誤差1e-4
(既定値) |非負のスカラー線形係数およびバイアス項 (切片) の相対許容誤差。'BetaTolerance'
と非負のスカラーから構成されるコンマ区切りのペアとして指定します。
であるとします。これは、最適化反復 t における係数およびバイアス項のベクトルです。 で最適化が終了します。
Solver
で指定された最後のソルバーで収束する場合、最適化が終了します。それ以外の場合、Solver
で指定された次のソルバーが使用されます。
例:'BetaTolerance',1e-6
データ型:single
|double
NumCheckConvergence
—次回の収束チェックの前にバッチを処理する回数次回の収束チェックの前にバッチを処理する回数。'NumCheckConvergence'
と正の整数から構成されるコンマ区切りのペアとして指定します。
バッチのサイズの指定について、BatchSize
を参照してください。
既定の設定では、データセット全体が通されるたびに約 10 回収束がチェックされます。
例:'NumCheckConvergence',100
データ型:single
|double
PassLimit
—最大通過回数1
(既定値) |正の整数データを通す最大回数。'PassLimit'
と正の整数から構成されるコンマ区切りのペアとして指定します。
データが完全に1回通されると、すべての観測値が処理されます。
データが通される回数がPassLimit
になると、最適化が終了します。
'
BatchLimit
'
とPassLimit
を指定した場合、処理する観測値の数が最も少なくなる引数が選択されます。
例:'PassLimit',5
データ型:single
|double
BetaTolerance
—線形係数およびバイアス項の相対許容誤差1e-4
(既定値) |非負のスカラー線形係数およびバイアス項 (切片) の相対許容誤差。'BetaTolerance'
と非負のスカラーから構成されるコンマ区切りのペアとして指定します。
であるとします。これは、最適化反復 t における係数およびバイアス項のベクトルです。 で最適化が終了します。
DeltaGradientTolerance
も指定した場合、いずれかの終了条件が満たされると最適化が終了します。
Solver
で指定された最後のソルバーで収束する場合、最適化が終了します。それ以外の場合、Solver
で指定された次のソルバーが使用されます。
例:'BetaTolerance',1e-6
データ型:single
|double
DeltaGradientTolerance
—勾配差分の許容誤差1
(既定値) |非負のスカラー上位および下位プールのカルーシュ・キューン・タッカー (KKT) 相補性条件違反値の間における勾配差分の許容誤差。'DeltaGradientTolerance'
と非負のスカラーから構成されるコンマ区切りのペアとして指定します。
KKT 違反値の大きさがDeltaGradientTolerance
より小さい場合、最適化が終了します。
Solver
で指定された最後のソルバーで収束する場合、最適化が終了します。それ以外の場合、Solver
で指定された次のソルバーが使用されます。
例:'DeltaGapTolerance',1e-2
データ型:double
|single
NumCheckConvergence
—次回の収束チェックの前に処理するデータセット全体が通される回数5
(既定値) |正の整数次回の収束チェックの前に処理するデータセット全体が通される回数。'NumCheckConvergence'
と正の整数から構成されるコンマ区切りのペアとして指定します。
例:'NumCheckConvergence',100
データ型:single
|double
PassLimit
—最大通過回数10
(既定値) |正の整数データを通す最大回数。'PassLimit'
と正の整数から構成されるコンマ区切りのペアとして指定します。
データが完全に1回通されると、すべての観測値が処理されます。
データが通される回数がPassLimit
になると、最適化が終了します。
例:'PassLimit',5
データ型:single
|double
BetaTolerance
—線形係数およびバイアス項の相対許容誤差1e-4
(既定値) |非負のスカラー線形係数およびバイアス項 (切片) の相対許容誤差。'BetaTolerance'
と非負のスカラーから構成されるコンマ区切りのペアとして指定します。
であるとします。これは、最適化反復 t における係数およびバイアス項のベクトルです。 で最適化が終了します。
GradientTolerance
も指定した場合、いずれかの終了条件が満たされると最適化が終了します。
Solver
で指定された最後のソルバーで収束する場合、最適化が終了します。それ以外の場合、Solver
で指定された次のソルバーが使用されます。
例:'BetaTolerance',1e-6
データ型:single
|double
GradientTolerance
—勾配の絶対許容誤差1e-6
(既定値) |非負のスカラー勾配の絶対許容誤差。'GradientTolerance'
と非負のスカラーから構成されるコンマ区切りのペアとして指定します。
最適化反復 t における係数およびバイアス項に関する目的関数の勾配ベクトルを とします。 で最適化が終了します。
BetaTolerance
も指定した場合、いずれかの終了条件が満たされると最適化が終了します。
指定された最後のソルバーで収束する場合、最適化が終了します。それ以外の場合、Solver
で指定された次のソルバーが使用されます。
例:'GradientTolerance',1e-5
データ型:single
|double
HessianHistorySize
—ヘッセ近似の履歴バッファーのサイズ15
(既定値) |正の整数ヘッセ近似の履歴バッファーのサイズ。'HessianHistorySize'
と正の整数から構成されるコンマ区切りのペアとして指定します。各反復において、最新のHessianHistorySize
回の反復の統計量を使用してヘッシアンが構成されます。
SpaRSA の場合、'HessianHistorySize'
はサポートされません。
例:'HessianHistorySize',10
データ型:single
|double
IterationLimit
—最適化反復の最大回数1000
(既定値) |正の整数最適化反復の最大回数。'IterationLimit'
と正の整数から構成されるコンマ区切りのペアとして指定します。IterationLimit
は、Solver
の値が'bfgs'
、'lbfgs'
または'sparsa'
である場合に適用されます。
例:'IterationLimit',500
データ型:single
|double
"ウォーム スタート"は、収束時間を短縮するために最適化ルーチンに与えられるベータ係数およびバイアス項の初期推定値です。
観測値が列に対応するように予測子行列を配置して'ObservationsIn','columns'
を指定することをお勧めします。このようにすると、最適化実行時間が大幅に短縮される可能性があります。
予測子データが高次元でRegularization
が'ridge'
の場合に最適化の精度を向上させるには、次のSolver
の組み合わせのいずれかを設定します。
'sgd'
'asgd'
“双重”
(Learner
が'svm'
の場合)
{'sgd','lbfgs'}
{'asgd','lbfgs'}
{'dual','lbfgs'}
(Learner
が'svm'
の場合)
他の組み合わせでは、最適化の精度が低下する可能性があります。
予測子データが中~低次元でRegularization
が'ridge'
の場合に最適化の精度を向上させるには、Solver
を'bfgs'
に設定します。
Regularization
が'lasso'
の場合、次のSolver
の組み合わせのいずれかを設定します。
'sgd'
'asgd'
'sparsa'
{'sgd','sparsa'}
{'asgd','sparsa'}
SGD と ASGD のいずれかを選択する場合、以下を考慮します。
SGD は反復あたりの時間が短くなりますが、収束するまでに必要な反復回数が多くなります。
ASGD は収束するまでに必要な反復回数が少なくなりますが、反復あたりの時間が長くなります。
予測子データに含まれている観測値の数が少なく、予測子変数の数が多い場合、次のようにします。
'PostFitBias',true
を指定します。
ソルバーが SGD または ASGD の場合、PassLimit
を 1 より大きい正の整数 (5 や 10 など) に設定します。このように設定すると、多くの場合に精度が向上します。
ソルバーが SGD または ASGD の場合、BatchSize
は収束速度に影響を与えます。
BatchSize
が小さすぎる場合、最小値を計算するための反復回数は多くなりますが、反復ごとの勾配の計算時間は短くなります。
BatchSize
が大きすぎる場合、最小値を計算するための反復回数は少なくなりますが、反復ごとの勾配の計算時間は長くなります。
学習率 (LearnRate
を参照) が大きいと、最小値への収束が高速になりますが、発散 (最小値の限度を超える状態) の可能性があります。学習率が小さいと最小値への収束が保証されますが、終了までに時間がかかる可能性があります。
Regularization
が'lasso'
の場合は、さまざまな値のTruncationPeriod
を試してください。たとえば、TruncationPeriod
を1
、10
に設定してから100
に設定します。
効率のため、予測子データは標準化されません。予測子データ (X
) を標準化するには、次のように入力します。
X = bsxfun(@rdivide,bsxfun(@minus,X,mean(X,2)),std(X,0,2));
このコードでは、予測子が行、観測値が列に対応するようにX
が配置されている必要があります。また、メモリを節約するため、このコードは元の予測子データを標準化されたデータに置き換えます。
[1] Hsieh, C. J., K. W. Chang, C. J. Lin, S. S. Keerthi, and S. Sundararajan. “A Dual Coordinate Descent Method for Large-Scale Linear SVM.” Proceedings of the 25th International Conference on Machine Learning, ICML ’08, 2001, pp. 408–415.
[2]拉ngford, J., L. Li, and T. Zhang. “Sparse Online Learning Via Truncated Gradient.” J. Mach. Learn. Res., Vol. 10, 2009, pp. 777–801.
[3] Nocedal, J. and S. J. Wright. Numerical Optimization, 2nd ed., New York: Springer, 2006.
[4] Shalev-Shwartz, S., Y. Singer, and N. Srebro. “Pegasos: Primal Estimated Sub-Gradient Solver for SVM.” Proceedings of the 24th International Conference on Machine Learning, ICML ’07, 2007, pp. 807–814.
[5] Wright, S. J., R. D. Nowak, and M. A. T. Figueiredo. “Sparse Reconstruction by Separable Approximation.” Trans. Sig. Proc., Vol. 57, No 7, 2009, pp. 2479–2493.
[6] Xiao, Lin. “Dual Averaging Methods for Regularized Stochastic Learning and Online Optimization.” J. Mach. Learn. Res., Vol. 11, 2010, pp. 2543–2596.
[7] Xu, Wei. “Towards Optimal One Pass Large Scale Learning with Averaged Stochastic Gradient Descent.” CoRR, abs/1107.2490, 2011.
以下は、線形モデル テンプレートと tall 配列をfitcecoc
に渡してモデルに学習をさせる場合の使用上の注意および制限です。
tall 配列を処理する場合、以下の名前と値のペアの引数は既定値が異なります。
'Lambda'
—'auto'
(既定値) またはスカラーが可能
'Regularization'
—'ridge'
のみをサポート
'Solver'
—'lbfgs'
のみをサポート
'FitBias'
—true
のみをサポート
“详细”
— 既定値は1
'BetaTolerance'
— 既定値は1e–3
に緩和される
'GradientTolerance'
— 既定値は1e–3
に緩和される
'IterationLimit'
— 既定値は20
に緩和される
tall 配列が含まれているtemplateLinear
オブジェクトをfitcecoc
で使用する場合、使用可能なソルバーは LBFGS だけです。各反復で損失と勾配の計算を tall 配列のさまざまな部分に分散させることにより、 LBFGS が実装されます。Beta
とBias
の初期値を指定しなかった場合、データの一部に対して局所的にモデルをあてはめ、平均化で係数を結合することにより、パラメーターの初期推定が改善されます。
詳細は、tall 配列を参照してください。
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
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:.
Selectweb siteYou can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.