主要内容

改装

クラス:FeatureSelectionNCARegression

回帰用の近傍成分分析(nca)モデルの再当てはめ

構文

mdlrefit = refit(mdl,名称,值)

説明

mdlrefit=改装(mdl名称,值は,1以上の名称,值ペア引数で指定された修正パラメ,タ,を使用して,モデルmdlを再度当てはめます。

入力引数

すべて展開する

分類用の近傍成分分析モデル。FeatureSelectionNCARegressionオブジェクトとして指定します。

名前と値の引数

オプションの引数のペアをName1 = Value1,…,以=家として指定します。ここで的名字は引数名,价值は対応する値です。名前と値の引数は他の引数の後ろにする必要がありますが、ペアの順序は関係ありません。

R2021aより前では,名前と値をそれぞれコンマを使って区切り,的名字を引用符で囲みます。

当てはめオプション

すべて展開する

モデルの当てはめ方式。“FitMethod”と次のいずれかから構成されるコンマ区切りのペアとして指定します。

  • “准确”—すべてのデタを使用して当てはめを実行します。

  • “没有”-当てはめを行いません。fsrncaを呼び出すときに指定した特徴量の重みの初期値を使用してNCAモデルの汎化誤差を評価する場合に,このオプションを使用します。

  • “平均”-デタをサブセットに分割し,确切的法を使用して各分割を当てはめ,特徴量の重みの平均を返します。名前と値のペアの引数NumPartitionsを使用して分割数を指定できます。

例:“FitMethod”、“没有”

正則化パラメタ。“λ”と非負のスカラ,値から構成されるコンマ区切りのペアとして指定します。

n個の観測値がある場合,NCAモデルの汎化誤差を最小化する最良のλの値は1/nの整数倍であると考えられます。

例:“λ”,0.01

デ,タ型:|

特徴量の重みを推定するソルバのタプ。“规划求解”と次のいずれかから構成されるコンマ区切りのペアとして指定します。

  • “lbfgs”——メモリ制限蓄热(Broyden-Fletcher-Goldfarb-Shanno)アルゴリズム(LBFGSアルゴリズム)

  • “sgd”-確率的勾配降下法

  • “minibatch-lbfgs”- LBFGSアルゴリズムをミニバッチに適用した確率的勾配降下

例:“规划求解”、“minibatch-lbfgs”

特徴量の重みの初期値。“InitialFeatureWeights”と正の実数スカラー値によるp行1列のベクトルから構成されるコンマ区切りのペアとして指定します。

デ,タ型:|

収束概要表示の詳細レベルのンジケタ。“详细”と次のいずれかから構成されるコンマ区切りのペアとして指定します。

  • 0 -収束概要なし

  • 1 -反復回数,勾配のノルム,目的関数の値を含む収束概要。

  • 1より大きい値-当てはめたアルゴリズムに応じたより多くの収束情報

    ソルバ“minibatch-lbfgs”を使用する場合に詳細レベルを1より大きい値にすると,中間的なミニバッチLBFGSの当てはめによる反復ログが収束情報に含まれます。

例:“详细”,2

デ,タ型:|

LBFGSまたはミニバッチLBFGSのオプション

すべて展開する

ソルバ,がlbfgsである場合の,勾配ノルムに対する収束の相対許容誤差。“GradientTolerance”と正の実数スカラ,値から構成されるコンマ区切りのペアとして指定します。

例:“GradientTolerance”,0.00001

デ,タ型:|

SGDまたはミニバッチLBFGSのオプション

すべて展開する

ソルバ,がsgdである場合の初期学習率。“InitialLearningRate”と正のスカラ,値から構成されるコンマ区切りのペアとして指定します。

ソルバタプとして“sgd”を使用する場合,学習率は“InitialLearningRate”で指定された値から始まって反復ごとに減衰します。

例:“InitialLearningRate”,0.8

デ,タ型:|

ソルバ,が“sgd”(確率的勾配降下)である場合の通過の最大回数。“PassLimit”と正の整数から構成されるコンマ区切りのペアとして指定します。1回通過するごとに,尺寸(mdl.X, 1)個の観測値が処理されます。

例:“PassLimit”,10

デ,タ型:|

Sgd, lbfgsまたはミニバッチlbfgsのオプション

すべて展開する

最大反復回数。“IterationLimit”と正の整数で構成されるコンマ区切りのペアとして指定します。

例:“IterationLimit”,250年

デ,タ型:|

出力引数

すべて展開する

分類用の近傍成分分析モデル。FeatureSelectionNCARegressionオブジェクトとして返されます。結果を新しいモデルとして保存するか,mdl = refit(mdl,Name,Value)として既存のモデルを更新することができます。

すべて展開する

標本デ,タを読み込みます。

负载(“robotarm.mat”

robotarmデータセット(pumadyn32nm)はロボットアームシミュレータを使用して作成されており,7168個の学習観測値,1024個のテスト観測値,32個の特徴量が含まれています[1],[2]。これは,オリジナルのデ,タセットを前処理したものです。デ,タの前処理では,線形回帰近似を除外してから,すべての特徴量を単位分散に対して正規化しています。

特徴選択を行わずに汎化誤差を計算します。

nca = fsrnca(Xtrain,ytrain,“FitMethod”“没有”“标准化”1);L =损失(nca,Xtest,ytest)
L = 0.9017

次に,この問題に特徴選択が必要であるかどうかを判断するため,モデルを再度当てはめ, λ = 0(正則化項なし)で特徴選択を行って予測損失を計算し,前の損失値と比較します。変更しない設定にいては,改装は初期モデルncaの設定を使用します。たとえば,ncaに含まれている特徴量の重みが特徴量の重みの初期値として使用されます。

Nca2 =改装nca,“FitMethod”“准确”“λ”, 0);L2 =损失(nca2,Xtest,ytest)
L2 = 0.1088

損失が小さくなったので,特徴選択が必要であることがわかります。

特徴量の重みをプロットします。

图()图(nca2。FeatureWeights,“罗”

图中包含一个轴对象。axis对象包含一个line类型的对象。

通常は,正則化パラメ,タ,を調整すると結果が改善されます。回帰用のncaの正則化パラメ,タ,の調整で説明されているように交差検証を使用して λ を調整した結果,最良の λ の値が0.0035になったとします。この λ の値と,ソルバ,として確率的勾配降下を使用して,ncaモデルを再度当てはめます。予測損失を計算します。

Nca3 =改装(nca2,“FitMethod”“准确”“λ”, 0.0035,...“规划求解”“sgd”);L3 = loss(nca3,Xtest,ytest)
L3 = 0.0573

特徴量の重みをプロットします。

图()图(nca3。FeatureWeights,“罗”

图中包含一个轴对象。axis对象包含一个line类型的对象。

正則化パラメーターを調整した結果,損失がさらに小さくなり,4つの特徴量が関連することが識別されました。

参考文献

[1]拉斯穆森,C. E.尼尔,G. E.欣顿,D.范坎普,M. Revow, Z. Ghahramani, R. Kustra和R. Tibshirani。DELVE手册,1996,https://mlg.eng.cam.ac.uk/pub/pdf/RasNeaHinetal96.pdf

[2]https://www.cs.toronto.edu/~delve/data/datasets.html

バ,ジョン履歴

R2016bで導入