@Florent_M Sono curioso di scoprire di più sul motivo per cui vuoi farlo. Puoi descrivere più dettagliatamente il problema che stai risolvendo?
Se ho capito la funzionalità che stai richiedendo, con un po' di JSL dividi il modello di previsione della foresta bootstrap in colonne separate.
Ecco un esempio:
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)))
);

Grazie @SamGardner !
Hai ragione, usare JSL per quel caso rende il lavoro e ti ringrazio di cuore per il tuo script. Sarebbe di aiuto per me avere questa opzione nel menu della formula di salvataggio della colonna (così come altre metriche come mediana, quantili e così via...).
Lo userò per dare un'occhiata all'intervallo di confidenza ed eventualmente per usare una funzione di acquisizione EI o PI per la modellazione surrogata iterativa con variabili categoriali (vedi https://community.jmp.com/t5/JMP-Add-Ins/Bayesian-optimization-add-in/ta-p/496785 ).
Distinti saluti,
Fiorentino
Cosa ha ispirato questa richiesta di lista dei desideri?
Volevo calcolare l'incertezza della previsione in modo rapido e semplice per il modello predittivo senza utilizzare il bagging. In effetti, il bagging è piuttosto lento da calcolare con il profiler.
Qual è il miglioramento che vorresti vedere?
Vorrei salvare la formula di tutti gli alberi quando utilizzo la piattaforma Bootstrap Forest. O almeno la deviazione standard della distribuzione.
Perché questa idea è importante?
Questo è molto importante per me per poter calcolare la funzione di acquisizione quando eseguo l'ottimizzazione del modello surrogato (ottimizzazione bayesiana). Ho provato ad utilizzare il bagging con la piattaforma di partizione, ma il risultato non è soddisfacente. La piattaforma del processo gaussiano non si occupa di variabili categoriali.
Grazie per l'idea Indagheremo ulteriormente su questo aspetto. Eventuali dettagli aggiuntivi che puoi fornire sul perché e sul come utilizzeresti le formule dei singoli alberi e le relative previsioni e riepiloghi delle previsioni sarebbero utili durante la nostra valutazione.