σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft Academyロードマップスキル
Ctrl K
AO
+1.2k 人の学習者
ログイン参加する ↗
ロードマップスキル
AO
+1.2k 人の学習者
ログイン
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
σμimplied vol · KKmax(S−K,0)udβρᵢⱼfat tailsPnL · drawdownyield · TdSₜ = μSₜ dt + σSₜ dWₜC = S·N(d₁) − K·e⁻ʳᵀ·N(d₂)σₚ² = wᵀΣwd₁ = [ln(S/K) + (r + σ²⁄2)T] ⁄ σ√T∂V/∂t + ½σ²S²·∂²V/∂S² + rS·∂V/∂S − rV = 0Sharpe = (Rₚ − R_f) ⁄ σₚVaR₉₉ = μ − 2.33σρ = Cov(X,Y) ⁄ σₓσᵧE[Rₚ] = Σ wᵢ·E[Rᵢ]φ(x) = e^(−x²/2) ⁄ √2πE[Rᵢ] = R_f + βᵢ(E[Rₘ] − R_f)dXₜ = θ(μ − Xₜ)dt + σ dWₜσ²ₜ = ω + α·ε²ₜ₋₁ + β·σ²ₜ₋₁C − P = S − K·e⁻ʳᵀΔ = ∂V/∂S Γ = ∂²V/∂S²p = (e^(rΔt) − d) ⁄ (u − d)rₜ = ln(Pₜ ⁄ Pₜ₋₁)E[Xₜ₊₁ | ℱₜ] = Xₜf* = (bp − q) ⁄ bz = (x − μ) ⁄ σP(N=k) = λᵏe^(−λ) ⁄ k!Θ = −∂V/∂Tν = S·φ(d₁)·√Tmin wᵀΣw s.t. wᵀμ = μ*∫Σ∂∞λ
uantCraft Academyロードマップスキル
Ctrl K
AO
+1.2k 人の学習者
ログイン参加する ↗
ロードマップスキル
AO
+1.2k 人の学習者
ログイン
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
scikit-learn スキル›モジュール 2 · 中核となるモデル›トピック 2.6·~55 分中級

木、フォレスト、ブースティング

スキル上の位置モジュール 2/4 · トピック 6/6
2.6 木、フォレスト、ブースティング
—ラボスコア— / 100合計XP—連続日数—

多数の小さな木と、特徴量の公正な順位付け

決定木は「20日リターンは1%を超えるか」のような問いで行を繰り返し分割し、各段階でグループが最も純粋になる分割を選びます。グループのジニ不純度は G=1-Σₖpₖ² で、2つの子の加重不純度を下げる分割が良い分割です。深さに制限のない木は葉ごとに1行となり、学習正解率は100%、テスト正解率は約50%になります。木を誠実に保つ方法は2つあります。ランダムフォレストは、行と特徴量のランダムな標本で育てた浅い木を多数平均し、誤りが部分的に打ち消し合います。勾配ブースティングは小さな木を1本ずつ足し、各木はそこまでの和がまだ外している部分に当てはめます:Fₘ=Fₘ₋₁+νhₘ。学習率 ν が各ステップを小さく保ちます。どちらも max_depth、min_samples_leaf、木の本数で制御し、再現のために random_state が必要です。

特徴量重要度には2種類あります。不純度重要度(feature_importances_)は、学習行で各特徴量が不純度をどれだけ下げたかの合計で、総和は1になり、異なる値が多い特徴量に有利で、モデルがすでに見たデータで計算されます。置換重要度はテスト行の1列をシャッフルし、スコアがどれだけ落ちるかを測ります。重要な特徴量は崩すと痛手になり、無用なものは影響しません。ラベルが2つの特徴量の積で決まる人工的な問題では、ロジスティック回帰のAUCは0.5付近ですが、木は交互作用を見つけ、2つの順位付けはどちらも正しい2列を指します。SPYの方向では役に立たない結果になります。深さ無制限の木のテスト正解率は50.5%、AUCはロジット0.498、フォレスト0.515、ブースティング0.531、6つの不純度重要度はすべて0.13から0.20の間で、置換による順位はそれと食い違います。平坦な重要度と0.5付近のテストAUCは、順位付けすべきものがないことを意味します。

  • 深さを制限する:無制限の木は学習で100%、テストで約50%。
  • 不純度重要度は学習行で計算され、信頼すべきはテスト行の置換重要度。
  • 木は線形モデルに見えない交互作用を捉えるが、ノイズの多いリターンには存在しない。AUCは0.5付近が当然。

ラボ:採点される内容

  • 深さ曲線15点
  • フォレストとブースティング10点
  • 3モデル、3つのAUC20点
  • 不純度重要度10点
  • 置換による順位20点
  • SPYの研究25点
エクスプローラー · lab-sl-18
▾ lab-sl-18
▾ data
…
bash · ブラウザ内
learner@quantcraft:~/lab-sl-18$
Pythonは未読み込みPythonLn 1, Col 1Spaces: 4UTF-8

このトピックをリセットしますか?

lab-sl-18 の内容はすべてスターターファイルに戻り、ターミナルも消去されます。現在の解答は失われ、元に戻せません。

リセットされるもの
  • main.py → スターターコード
  • ターミナル履歴とテスト出力
  • 未提出の変更
保持されるもの
  • ラボの最高スコア
  • XPと連続日数
  • 講義の進捗とメモ

コードを実行するにはログインしてください。

レクチャーはすべて無料で読めます。コードの実行、テスト、ラボの提出にはアカウントの作成かログインが必要です。

  • ブラウザ内IDEとbashターミナル。インストール不要
  • 即時採点、XP、スキルでの現在地
アカウントを作成ログイン
または
GitHubで続ける