lassoPlot
LASSO 近似のトレース プロット
説明
lassoPlot( は、B)B の L1 ノルムに対して、B の値のトレース プロットを作成します。
lassoPlot( は、1 つ以上の名前と値の引数で指定された追加オプションを使用してプロットを作成します。B,FitInfo,Name=Value)
例
標本データを読み込みます。
load acetylene交互作用のある LASSO 近似の計画行列を準備します。関数x2fxは、定数項、線形項、交互作用項という順序で 2 次モデルを返します。つまり、定数項、x1、x2、x3、x1.*x2、x1.*x3、x2.*x3 という順序になります。
X = [x1 x2 x3]; D = x2fx(X,"interaction"); D(:,1) = []; % No constant term
関数 lasso を使用してデータの正則化モデルを当てはめます。
B = lasso(D,y);
名前と値の引数 PredictorNames を使用して、係数にラベルが付けられた LASSO 近似をプロットします。それぞれの線は、単一の予測子変数 (x1、x2、x3、x1.*x2、x1.*x3、x2.*x3) に対する B 内の値のトレースを表します。
lassoPlot(B,PredictorNames=["x1" "x2" "x3" "x1.*x2" "x1.*x3" "x2.*x3"]); legend(Location="NorthWest")

標本データを読み込みます。
load acetylene交互作用のある LASSO 近似のデータを準備します。
X = [x1 x2 x3]; D = x2fx(X,"interaction"); D(:,1) = []; % No constant term
関数 lasso を使用してデータの正則化モデルを当てはめます。
[B,FitInfo] = lasso(D,y);
Lambda プロット タイプと対数スケーリングで近似をプロットします。
lassoPlot(B,FitInfo,PlotType="Lambda",XScale="log");

さまざまな正則化レベルで交差検証誤差を視覚的に調べます。
標本データを読み込みます。
load acetylene定数項を持たない、交互作用がある計画行列を作成します。
X = [x1 x2 x3]; D = x2fx(X,"interaction"); D(:,1) = []; % No constant term
10 分割交差検証を使用して LASSO 近似を作成します。結果をプロットできるように、出力 FitInfo を含めます。
rng default % For reproducibility [B,FitInfo] = lasso(D,y,CV=10);
交差検証した近似をプロットします。緑の円と点線は、交差検証誤差が最小になる Lambda を示しています。青の円と点線は、最小交差検証誤差に 1 標準誤差を加算した点を示しています。
lassoPlot(B,FitInfo,PlotType="CV"); legend("show")

入力引数
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN として指定します。ここで、Name は引数名で、Value は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
例: lassoPlot(B,XScale="log") は、対数スケールの x 軸を使用します。
R2021a より前では、名前と値をそれぞれコンマを使って区切り、Name を引用符で囲みます。
例: lassoPlot(B,"XScale","log") は、対数スケールの x 軸を使用します。
プロットを描画する親座標軸。Axes オブジェクトとして指定します。Parent を指定しない場合、lassoPlot は、現在の座標軸を使用してプロットを作成します。Axes オブジェクトを作成する方法の詳細については、axes を参照してください。
プロット タイプ。"L1"、"Lambda"、または "CV" として指定します。引数 PlotType は、引数 FitInfo を指定する場合に適用されます。
PlotType | プロット |
|---|---|
"L1" | lassoPlot は、B の係数の L1 ノルムから x 軸を作成します。プロットの最上部の x 軸には、B の非ゼロ係数の数である自由度 (df) が含まれています。 |
|
この値を選択する場合、 |
|
この値を選択する場合、 |
交差検証された構造体 FitInfo を含めた場合、lassoPlot は 2 つの特定の Lambda 値も緑と青の破線で示します。
緑の破線は、交差検証平均二乗誤差 (MSE) が最小になる
Lambdaの値を示します。青の破線は、最小の MSE から 1 標準誤差以内にある最大の
Lambdaを示します。この Lambda の値では、最もスパースなモデルの MSE が比較的小さくなります。
Figure の凡例に各プロットのラベルを表示するには、コマンド ウィンドウで「legend("show")」と入力します。
x 軸方向の値のスケール。次の値のいずれかとして指定します。
"linear"— 線形の x 軸。これは、引数PlotTypeが"L1"または"Lambda"の場合の既定値です。"log"— 対数スケールの x 軸。これは、引数PlotTypeが"CV"の場合の既定値です。
データ型: string | char
出力引数
プロットの座標軸。Axes オブジェクトとして返されます。詳細については、座標軸の外観を参照してください。
プロットの Figure ウィンドウ。Figure オブジェクトとして返されます。詳細については、特殊オブジェクトの識別子を参照してください。
バージョン履歴
R2011b で導入
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)