La fonctionnalité "continuous effects" (effets continus) dans RATE permet à l'utilisateur de modifier les blocs de modèle de Risk en rendant l'effet d'une ou plusieurs variables continu. Cela remplace l'effet des coefficients. C'est une meilleure approximation automatique des coefficients. L'utilisateur contrôle la forme de la courbe continue.
Quel type de variables prend en charge les effets continus ?
L'effet continu est pris en charge sur des variables provenant de DATA ou sur des blocs utilisés comme variables qui sont à la fois numériques et ordinales.
Les modalités dans le modèle doivent également être numériques.
La variable ne doit pas avoir de modalités manquantes.
En termes de Level Management (gestion des modalités), la variable doit avoir soit une représentation binned (regroupée), et les étiquettes d'intervalle doivent être des "centroïdes", soit la variable doit avoir une représentation exacte qui n'est pas modifiée par l'utilisateur.
Rappelez-vous que ces caractéristiques peuvent être explorées dans l'écran de gestion des modalités.
Où puis-je appliquer les effets continus ?
Vous devez sélectionner le modèle et, depuis la barre latérale, aller à Edit Block (Modifier le bloc) -> Edit variable matching (Modifier la correspondance des variables). Dans la boîte de dialogue de modification des correspondances, sélectionnez la variable où vous souhaitez appliquer l'ajustement polynomial, cliquez sur "Edit coefficients" (Modifier les coefficients), et cherchez les contrôles des effets continus en bas à droite :
Notez que l'option des effets continus ne sera pas disponible si votre variable ne satisfait pas les conditions énumérées ci-dessus.
Les mathématiques derrière les effets continus
Un effet continu est un B-spline avec extrapolation linéaire dans l'espace de prédiction linéaire du GLM :
C'est une fonction polynomiale par morceaux d'une variable, définie sur l'ensemble de la ligne réelle.
Les composants polynomiaux peuvent avoir un degré de 1, 2 ou 3.
La dérivée du B-spline peut avoir certaines discontinuités aux valeurs x appelées nœuds, mais est par ailleurs continue. Cela signifie :
Un B-spline de degré 1 est une fonction linéaire par morceaux, et change de direction aux nœuds.
Un B-spline de degré 2 est une fonction quadratique par morceaux. Il est une fois différentiable et change de dérivée seconde aux nœuds.
Le premier et dernier nœud sont spéciaux : la première dérivée du spline n'a pas de discontinuité là-bas. Le spline est extrapolé linéairement selon la première dérivée au premier et dernier nœud.
Nous trouvons le meilleur polynôme possible de ce type en utilisant un ajustement par les moindres carrés sur les données sous-jacentes sans considérer l'exposition.
Vous pouvez en savoir plus sur les B-splines ici.
Comment puis-je calculer un modèle après avoir appliqué les effets continus ?
Si vous appliquez vos effets continus sur Akur8, vous pouvez simplement cliquer sur Compute (Calculer). Akur8 utilisera alors l'effet continu au lieu des coefficients sur les données sous-jacentes.
Si vous souhaitez reproduire le calcul en dehors d’Akur8, vous pouvez également le faire. Tout d'abord, exportez le bloc en format JSON. Ensuite, vous pouvez utiliser le code Python suivant pour évaluer la spline dans l'espace linéaire à un point x :
import scipy
spline = scipy.interpolate.BSpline(t=knots, c=coefficients, k=degree) spline(x)
Si x est en dehors de l'intervalle entre le premier et le dernier nœud, la méthode d'extrapolation de Scipy est différente de celle d'Akur8. Pour reproduire le résultat d'Akur8, calculez les valeurs de la dérivée au premier et au dernier nœud, pour effectuer l'extrapolation linéaire manuellement : spline(knots[0], 1) et spline(knots[-1], 1).


