1. 学ぶ
  2. /
  3. コース
  4. /
  5. R で学ぶクレジットリスク・モデリング

Connected

演習

事前確率を変更して木を剪定する

動画で学んだとおり、過学習を避けるには木の剪定が必要です。前の演習では大きな木がいくつか登場しました。ここでは学んだことを実践し、事前確率を変更して構築した木を剪定していきます。rpart パッケージはワークスペースに読み込まれています。

動画で説明したように、再現性を確保するために最初に乱数シードを設定します。これから交差検証の誤差結果を確認しますが、結果にはランダム性があり、異なるシードで関数を実行するとわずかに変わる可能性があります。

この演習では、交差検証誤差を最小にする複雑度パラメータ(CP)を特定し、その値に基づいて木を剪定する方法を学びます。

指示

100 XP
  • tree_prior はワークスペースに読み込まれています。
  • plotcp() を使って、tree_prior の複雑度パラメータに対する交差検証誤差(X-val Relative Error)を可視化します。
  • printcp() を使って、CP、分割数、誤差に関する情報の表を表示します。tree_prior で交差検証誤差が最小となる分割を特定できるか確認してください。
  • which.min() を使って、tree_prior$cptable のうち交差検証誤差 "xerror" が最小の行を特定し、これを index に代入します。
  • 列 "CP" の中で、tree_prior$cptable の index 行を選び、tree_min を作成します。
  • prune() 関数を使って剪定後の木を得ます。剪定後の木は ptree_prior と名付けます。
  • パッケージ rpart.plot は読み込まれています。関数 prp()(デフォルト設定)で剪定後の木をプロットします。