@Florent_M Je suis curieux d'en savoir plus sur les raisons pour lesquelles vous souhaitez faire cela. Pouvez-vous décrire le problème que vous résolvez plus en détail ?
Si je comprends la fonctionnalité que vous demandez, avec un peu de JSL, vous divisez le modèle de prédiction de forêt bootstrap en colonnes séparées.
Voici un exemple:
names default to here(1);
dt=open("$sample_data/bands data.jmp");
bf=dt << Bootstrap Forest(
Y( :Banding? ),
X( Column Group( "Predictors" ) ),
Missing Value Order(
Low(
:proof cut, :caliper, :humidity, :roughness, :solvent pct, :ESA Amperage,
:wax, :hardener, :current density, :anode space ratio, :chrome content
),
High(
:viscosity, :ink temperature, :blade pressure, :varnish pct,
:press speed, :ink pct, :ESA Voltage
)
),
Method( "Bootstrap Forest" ),
Portion Bootstrap( 1 ),
Number Terms( 25 ),
Number Trees( 100 ),
Go
);
bf << Save Prediction Formula;
bf << Close Window;
c=column(dt, "Prob(Banding?==band)");
/*
because a bootstrap forest model has the structure
( tree1 + tree2 + ... + treeN)/N
--get the prediction formula expression
--get the argument inside the main parenthesis (the sum of the trees)
--convert that experession to character and use the Words() function to get each tree formula
as a character string into a list
--then iterate through the list and create a new formula column for each tree,
*/
formula_expr=c << get formula;
arg(formula_expr,1);
trees_list=words(char(arg(formula_expr,1)), "+");
for each({tree, ii}, trees_list,
ctree = New Column("TREE"||char(ii), numeric, continuous);
tree=trees_list[ii];
Eval(parse(substitute("ctree << Set Formula(fff)", "fff", tree)))
);

Merci @SamGardner !
Vous avez raison, utiliser JSL pour ce cas fait l'affaire et je vous remercie chaleureusement pour votre script. Cela m'aiderait d'avoir cette option dans le menu de formule de sauvegarde de la colonne (ainsi que d'autres métriques telles que la médiane, les quantiles, etc.).
Je vais l'utiliser pour examiner l'intervalle de confiance et éventuellement utiliser une fonction d'acquisition EI ou PI pour une modélisation de substitution itérative avec des variables catégorielles (voir https://community.jmp.com/t5/JMP-Add-Ins/Bayesian-optimization-add-in/ta-p/496785 ).
Cordialement,
Florence
Qu'est-ce qui a inspiré cette demande de liste de souhaits ?
Je voulais calculer l'incertitude de prédiction rapidement et facilement pour un modèle prédictif sans utiliser de bagging. En effet, le bagging est assez lent à calculer avec le profileur.
Quelle est l’amélioration que vous souhaiteriez voir ?
Je souhaite enregistrer la formule de tous les arbres lorsque j'utilise la plateforme Bootstrap Forest. Ou du moins l'écart type de la distribution.
Pourquoi cette idée est-elle importante ?
Ceci est très important pour moi de pouvoir calculer la fonction d'acquisition lorsque je fais l'optimisation du modèle de substitution (optimisation bayésienne). J'ai essayé d'utiliser le bagging avec la plateforme de partition, mais le résultat n'est pas satisfaisant. La plateforme de processus gaussien ne traite pas de variable catégorielle.
Merci pour l'idée. Nous étudierons cela plus en détail. Tous les détails supplémentaires que vous pouvez fournir sur pourquoi et comment vous utiliseriez les formules d'arbres individuels ainsi que leurs prédictions et résumés de prédictions seraient utiles lors de notre évaluation.