σμ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 AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • 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 AcademyFeuilles de routeParcours
Ctrl K
AO
+1,2 k apprenants
ConnexionRejoindre ↗
Feuilles de routeParcours
AO
+1,2 k apprenants
Connexion
  • English
  • Français
  • Español
  • العربية
  • Português
  • Deutsch
  • 日本語
  • 中文
Parcours scikit-learn›Module 1 · La façon de travailler avec les estimateurs›Sujet 1.1·~40 minDébutant

L'API des estimateurs

Position dans le parcoursModule 1 sur 4 · Sujet 1 sur 5
1.1 L'API des estimateurs
—Score du lab— / 100XP total—Série—

Un modèle est un objet avec un contrat

Tout dans scikit-learn est un estimateur, et chaque estimateur suit le même contrat. On le crée avec ses réglages, appelés hyperparamètres, par exemple la force d'une pénalité. On appelle fit(X,y)\mathrm{fit}(X,y)fit(X,y) pour qu'il apprenne des données. Ce qu'il a appris est rangé dans des attributs dont le nom finit par un tiret bas, comme la moyenne ou les coefficients. Ensuite on l'utilise : un préprocesseur offre transform(X)\mathrm{transform}(X)transform(X), un modèle offre predict(X)\mathrm{predict}(X)predict(X). L'appel fit_transform\mathrm{fit\_transform}fit_transform est fit suivi de transform. Le tableau XXX a une ligne par échantillon et une colonne par variable, et yyy est la cible. Comme le contrat est le même partout, on peut remplacer un modèle par un autre en gardant le reste du code.

z=x−μ^σ^,y^=a^+b^ xz=\frac{x-\hat\mu}{\hat\sigma},\qquad \hat y=\hat a+\hat b\,xz=σ^x−μ^​​,y^​=a^+b^x(1)

La règle d'or est que fit\mathrm{fit}fit ne doit voir que les données d'entraînement. Les nombres qu'un préprocesseur apprend, comme μ^\hat\muμ^​ et σ^\hat\sigmaσ^, sont ensuite appliqués tels quels aux données de validation et de test par transform\mathrm{transform}transform. Si l'on ajustait le normaliseur sur tous les jours, les jours de test auraient façonné la mise à l'échelle : une fuite discrète du futur. Des réglages comme random_state\mathrm{random\_state}random_state rendent les exécutions répétables, et clone\mathrm{clone}clone construit une copie neuve non ajustée d'un estimateur, ce que fait la validation croisée pour chaque pli. Dans les labs de données de marché de cette compétence, les lignes sont des couples action-mois et les colonnes des variables comme le momentum et la volatilité.

Deux petits ajustements à la mainAjustons un normaliseur sur les valeurs d'entraînement 2,4,6,82,4,6,82,4,6,8. Il apprend la moyenne 555 et l'écart type 5=2,236\sqrt5=2{,}2365​=2,236. Une nouvelle valeur 777 devient (7−5)/2,236=0,894(7-5)/2{,}236=0{,}894(7−5)/2,236=0,894. Ajustons maintenant une régression linéaire sur (x,y)=(1,2),(2,4),(3,7)(x,y)=(1,2),(2,4),(3,7)(x,y)=(1,2),(2,4),(3,7). Elle apprend la pente 2,52{,}52,5 et l'ordonnée à l'origine −0,667-0{,}667−0,667, donc la prévision pour x=4x=4x=4 est −0,667+2,5×4=9,333-0{,}667+2{,}5\times4=9{,}333−0,667+2,5×4=9,333.
  • Réglages en entrée, nombres appris en sortie : les hyperparamètres vont dans le constructeur, les nombres appris finissent par un tiret bas.
  • Ajuster sur l'entraînement seulement : transform et predict réutilisent les nombres appris sur n'importe quelles données.
  • Même contrat partout : remplacer un modèle par un autre conserve le reste du code.

Lab : ce qui est noté

  • Ce que le normaliseur apprend : la moyenne10 pts
  • Ce que le normaliseur apprend : l'écart type10 pts
  • Transformer une valeur de test10 pts
  • Ce que la régression apprend : la pente15 pts
  • Une prévision10 pts
  • Quels attributs sont appris10 pts
  • Un flux de travail sûr10 pts
  • Associer le vocabulaire10 pts
  • Pourquoi ajuster le normaliseur sur l'entraînement seulement15 pts
0/ 9 traités
Exercices
1Réponse numérique10 ptsSans réponse

Un normaliseur est ajusté sur les valeurs d'entraînement 2,4,6,82,4,6,82,4,6,8. Quelle est la moyenne apprise ?

m=m =m=accepté : ± 0.01
2Réponse numérique10 ptsSans réponse

Les valeurs 2,4,6,82,4,6,82,4,6,8 ont pour moyenne 555 et pour écarts au carré 9,1,1,99,1,1,99,1,1,9. Le normaliseur utilise l'écart type de population (division par n=4n=4n=4). Que vaut-il ? Donnez trois décimales.

s=s =s=accepté : ± 0.003
3Réponse numérique10 ptsSans réponse

Le normaliseur a appris la moyenne 555 et l'écart type 2,2362{,}2362,236. Une valeur de test 777 arrive. Que renvoie transform, (7−5)/2,236(7-5)/2{,}236(7−5)/2,236 ? Donnez trois décimales.

z=z =z=accepté : ± 0.003
4Réponse numérique15 ptsSans réponse

Une régression linéaire est ajustée sur (x,y)=(1,2),(2,4),(3,7)(x,y)=(1,2),(2,4),(3,7)(x,y)=(1,2),(2,4),(3,7). La pente vaut ∑(x−xˉ)(y−yˉ)/∑(x−xˉ)2\sum(x-\bar x)(y-\bar y)/\sum(x-\bar x)^{2}∑(x−xˉ)(y−yˉ​)/∑(x−xˉ)2 avec xˉ=2\bar x=2xˉ=2, yˉ=4,333\bar y=4{,}333yˉ​=4,333. Quelle est la pente apprise ? Donnez une décimale.

b=b =b=accepté : ± 0.05
5Réponse numérique10 ptsSans réponse

La régression a appris la pente 2,52{,}52,5 et l'ordonnée à l'origine −0,667-0{,}667−0,667. Que renvoie predict pour x=4x=4x=4 ? Donnez trois décimales.

y=y =y=accepté : ± 0.005
6Choix10 ptsSans réponse

Lesquels sont des nombres appris par fit plutôt que des réglages que vous choisissez ? Choisissez toutes les bonnes réponses.

7Remettre les étapes dans l'ordre10 ptsSans réponse

Mettez dans l'ordre les étapes d'un flux de modélisation sûr.

Faites glisser pour réordonner, ou placez le focus sur un élément, Espace pour le soulever, les flèches pour le déplacer et Espace pour le déposer.

  1. 1Ajuster le modèle sur les données d'entraînement transformées
  2. 2Séparer les jours en entraînement et test selon le temps
  3. 3Prévoir sur les données de test transformées et noter
  4. 4Appliquer transform aux données d'entraînement et de test
  5. 5Ajuster le normaliseur sur les seules données d'entraînement
8Associer10 ptsSans réponse

Associez chaque appel à ce qu'il fait.

Choisissez le partenaire de chaque élément de gauche.

fit(X, y)
transform(X)
predict(X)
clone(estimator)
9Expliquer avec des mots15 ptsSans réponse

En une ou deux phrases, expliquez pourquoi un normaliseur doit être ajusté sur les seuls jours d'entraînement et non sur tous les jours.

Mode mathsSaisie au clavier ou en LaTeXExercice 1 sur 9 · Ctrl ⏎ pour vérifier

Connectez-vous pour exécuter votre code.

Tous les cours sont gratuits à lire. Créez un compte ou connectez-vous pour exécuter du code, lancer les tests et soumettre ce lab.

  • IDE dans le navigateur avec terminal bash — rien à installer
  • Correction instantanée, XP et votre place dans le parcours
Créer un compteSe connecter
OU
Continuer avec GitHub