API Reference
Documentation for the interpretableai
package
Index
AbstractVisualization
CategoricalClassificationRewardEstimator
CategoricalRegressionRewardEstimator
CategoricalRewardEstimationLearner
CategoricalSurvivalRewardEstimator
ClassificationLearner
ClassificationMultiLearner
ClassificationTreeLearner
ClassificationTreeMultiLearner
EqualPropensityEstimator
GLMNetCVClassifier
GLMNetCVLearner
GLMNetCVRegressor
GLMNetCVSurvivalLearner
GLMNetLearner
GridSearch
ImputationLearner
Learner
MeanImputationLearner
MixedData
MultiLearner
MultiQuestionnaire
MultiQuestionnaire
MultiTreePlot
MultiTreePlot
NumericClassificationRewardEstimator
NumericRegressionRewardEstimator
NumericRewardEstimationLearner
NumericSurvivalRewardEstimator
OptKNNImputationLearner
OptSVMImputationLearner
OptTreeImputationLearner
OptimalFeatureSelectionClassifier
OptimalFeatureSelectionLearner
OptimalFeatureSelectionRegressor
OptimalTreeClassifier
OptimalTreeLearner
OptimalTreeMultiClassifier
OptimalTreeMultiLearner
OptimalTreeMultiRegressor
OptimalTreePolicyMaximizer
OptimalTreePolicyMinimizer
OptimalTreePrescriptionMaximizer
OptimalTreePrescriptionMinimizer
OptimalTreeRegressor
OptimalTreeSurvivalLearner
PolicyLearner
PolicyTreeLearner
PrescriptionLearner
PrescriptionTreeLearner
Questionnaire
Questionnaire
Questionnaire
ROCCurve
ROCCurve
ROCCurve
ROCCurve
RandImputationLearner
RandomForestClassifier
RandomForestLearner
RandomForestRegressor
RandomForestSurvivalLearner
RegressionLearner
RegressionMultiLearner
RegressionTreeLearner
RegressionTreeMultiLearner
RewardEstimationLearner
SimilarityComparison
SingleKNNImputationLearner
StabilityAnalysis
SupervisedLearner
SupervisedMultiLearner
SurvivalCurve
SurvivalLearner
SurvivalTreeLearner
TreeLearner
TreeMultiLearner
TreePlot
TreePlot
UnsupervisedLearner
XGBoostClassifier
XGBoostLearner
XGBoostRegressor
XGBoostSurvivalLearner
ZeroImputationLearner
acquire_license
add_julia_processes
all_treatment_combinations
apply
apply_nodes
cleanup_installation
clone
convert_treatments_to_numeric
copy_splits_and_refit_leaves
decision_path
delete_rich_output_param
fit
fit
fit
fit
fit_and_expand
fit_cv
fit_predict
fit_predict
fit_predict
fit_transform
fit_transform_cv
get_best_params
get_classification_label
get_classification_label
get_classification_proba
get_classification_proba
get_cluster_assignments
get_cluster_details
get_cluster_distances
get_data
get_data
get_depth
get_estimation_densities
get_features_used
get_grid_result_details
get_grid_result_summary
get_learner
get_lower_child
get_machine_id
get_num_fits
get_num_fits
get_num_nodes
get_num_samples
get_params
get_parent
get_policy_treatment_outcome
get_policy_treatment_outcome_standard_error
get_policy_treatment_rank
get_prediction_constant
get_prediction_constant
get_prediction_weights
get_prediction_weights
get_prescription_treatment_rank
get_regression_constant
get_regression_constant
get_regression_constant
get_regression_constant
get_regression_constant
get_regression_constant
get_regression_weights
get_regression_weights
get_regression_weights
get_regression_weights
get_regression_weights
get_regression_weights
get_rich_output_params
get_split_categories
get_split_feature
get_split_threshold
get_split_weights
get_stability_results
get_survival_curve
get_survival_expected_time
get_survival_hazard
get_train_errors
get_tree
get_upper_child
impute
impute_cv
install
install_julia
install_system_image
is_categoric_split
is_hyperplane_split
is_leaf
is_mixed_ordinal_split
is_mixed_parallel_split
is_ordinal_split
is_parallel_split
load_graphviz
missing_goes_lower
plot
plot
plot
plot
predict
predict
predict
predict
predict
predict
predict
predict_expected_survival_time
predict_expected_survival_time
predict_expected_survival_time
predict_hazard
predict_hazard
predict_outcomes
predict_outcomes
predict_proba
predict_proba
predict_proba
predict_reward
predict_reward
predict_shap
predict_treatment_outcome
predict_treatment_outcome_standard_error
predict_treatment_rank
print_path
prune_trees
read_json
refit_leaves
release_license
reset_display_label
resume_from_checkpoint
score
score
score
score
score
score
score
set_display_label
set_julia_seed
set_params
set_reward_kernel_bandwidth
set_rich_output_param
set_threshold
show_in_browser
show_in_browser
show_in_browser
show_questionnaire
show_questionnaire
split_data
transform
transform_and_expand
tune_reward_kernel_bandwidth
variable_importance
variable_importance
variable_importance
variable_importance_similarity
write_booster
write_dot
write_html
write_html
write_html
write_json
write_pdf
write_png
write_questionnaire
write_questionnaire
write_svg
Setup
install
— Functioninstall(**kwargs)
Install Julia packages required for interpretableai.iai
.
This function must be called once after the package is installed to configure the connection between Python and Julia.
Parameters
Refer to the installation instructions for information on any additional parameters that may be required.
install_julia
— Functioninstall_julia(**kwargs)
Download and install Julia automatically.
Parameters
version
: (string, optional) The version of Julia to install (e.g.'1.6.3'
). Defaults to'latest'
, which will install the most recent stable release.prefix
: (string, optional) The directory where Julia will be installed. Defaults to a location determined byappdirs.user_data_dir
.
install_system_image
— Functioninstall_system_image(**kwargs)
Download and install the IAI system image automatically.
Parameters
version
: (string, optional) The version of the IAI system image to install (e.g.'2.1.0'
). Defaults to'latest'
, which will install the most recent release.replace_default
: (bool) Whether to replace the default Julia system image with the downloaded IAI system image. Defaults toFalse
.prefix
: (string, optional) The directory where Julia will be installed. Defaults to a location determined byappdirs.user_data_dir
.accept_license
: (bool) Set toTrue
to confirm that you agree to the End User License Agreement and skip the interactive confirmation dialog.
cleanup_installation
— Functioncleanup_installation()
Remove all files created by install_julia
and install_system_image
.
get_machine_id
— Functioniai.get_machine_id()
Return the machine ID for the current computer.
acquire_license
— Functioniai.acquire_license()
Acquire an IAI license for the current session.
Julia Equivalent: IAI.acquire_license
Requires IAI version 3.1 or higher.
release_license
— Functioniai.release_license()
Release any IAI license held by the current session.
Julia Equivalent: IAI.release_license
Requires IAI version 3.1 or higher.
load_graphviz
— Functioniai.load_graphviz()
Loads the Julia Graphviz library to permit certain visualizations.
The library will be installed if not already present.
General Utilities
set_julia_seed
— Functionadd_julia_processes
— Functioniai.add_julia_processes(3)
Add additional Julia worker processes to parallelize workloads.
Julia Equivalent: Distributed.addprocs
For more information, refer to the documentation on parallelization
read_json
— Functioniai.read_json(filename)
Read in a learner or grid saved in JSON format from filename
.
Julia Equivalent: IAI.read_json
resume_from_checkpoint
— Functioniai.resume_from_checkpoint(checkpoint_file)
Resume training from the supplied checkpoint_file
.
Julia Equivalent: IAI.resume_from_checkpoint
Requires IAI version 3.1 or higher.
get_rich_output_params
— Functioniai.get_rich_output_params()
Return the current global rich output parameter settings.
Julia Equivalent: IAI.get_rich_output_params
set_rich_output_param
— Functioniai.set_rich_output_param(key, value)
Sets the global rich output parameter key
to value
.
Julia Equivalent: IAI.set_rich_output_param!
delete_rich_output_param
— Functioniai.delete_rich_output_param(key)
Delete the global rich output parameter key
.
Julia Equivalent: IAI.delete_rich_output_param!
Data Preparation
MixedData
— Typeiai.MixedData(values, ordinal_levels=None)
Represents a mixed data feature
MixedData
features can represent a feature with either numeric/categoric or ordinal/categoric values.
Julia Equivalent: IAI.make_mixed_data
Parameters
values
: (list-like) The values of the mixed feature. In a numeric/categoric mix, all numeric elements will be treated as numeric and all remaining elements as categoric. In an ordinal/categoric mix, all elements belonging to theordinal_levels
will be treated as ordinal, and all remaining elements as categoric.ordinal_levels
: (Index-like, optional) If not supplied, the feature is treated as a numeric/categoric mix. If supplied, these are the ordered levels of the ordinal values in the ordinal/categoric mix.
split_data
— Functioniai.split_data(task, X, *y, **kwargs)
Split the data (X
and y
) into a tuple of training and testing data, (X_train, y_train), (X_test, y_test)
, for a problem of type task
.
Julia Equivalent: IAI.split_data
Scoring
score
— Functioniai.score(task, predictions, *truths, **kwargs)
Calculates the score attained by predictions
against the true target truths
for the problem type indicated by task
.
Julia Equivalent: IAI.score
Requires IAI version 2.1 or higher.
Learners
Learner
Learner
— TypeAbstract type encompassing all learners.
Julia Equivalent: IAI.Learner
fit
— Methodlnr.fit(X, *y, sample_weight=None)
Fit a model using the parameters in learner and the data X
and y
.
Julia Equivalent: IAI.fit!
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
set_params
— Methodget_params
— Methodclone
— Methodlnr.clone()
Return an unfitted copy of the learner with the same parameters.
Julia Equivalent: IAI.clone
write_json
— Methodlnr.write_json(filename, **kwargs)
Write learner or grid to filename
in JSON format.
Julia Equivalent: IAI.write_json
variable_importance
— Methodlnr.variable_importance()
Generate a ranking of the variables in the learner according to their importance during training. The results are normalized so that they sum to one.
Julia Equivalent: IAI.variable_importance
get_features_used
— Methodlnr.get_features_used()
Return a list of feature names used by the learner.
Julia Equivalent: IAI.get_features_used
Requires IAI version 2.2 or higher.
SupervisedLearner
SupervisedLearner
— TypeAbstract type encompassing all learners for supervised tasks.
Julia Equivalent: IAI.SupervisedLearner
predict
— Methodlnr.predict(X)
Return the predictions made by the learner for each point in the features X
.
Julia Equivalent: IAI.predict
score
— Methodlnr.score(X, *y, **kwargs)
Calculates the score for the learner on data X
and y
.
Julia Equivalent: IAI.score
UnsupervisedLearner
UnsupervisedLearner
— TypeAbstract type encompassing all learners for unsupervised tasks.
Julia Equivalent: IAI.UnsupervisedLearner
ClassificationLearner
ClassificationLearner
— TypeAbstract type encompassing all learners for classification tasks.
Julia Equivalent: IAI.ClassificationLearner
predict_proba
— Methodlnr.predict_proba(X)
Return the probabilities of class membership predicted by the learner for each point in the features X
.
Julia Equivalent: IAI.predict_proba
ROCCurve
— Methodlnr.ROCCurve(X, y)
Construct an ROCCurve
using the trained learner on the features X
and labels y
Julia Equivalent: IAI.ROCCurve
RegressionLearner
RegressionLearner
— TypeAbstract type encompassing all learners for regression tasks.
Julia Equivalent: IAI.RegressionLearner
SurvivalLearner
SurvivalLearner
— TypeAbstract type encompassing all learners for survival tasks.
Julia Equivalent: IAI.SurvivalLearner
predict
— MethodReturn the predictions made by the learner for each point in the features X
(see predict
)..
Julia Equivalent: IAI.predict
lnr.predict(X)
Return the SurvivalCurve
predicted by the trained learner for each point in the data.
lnr.predict(X, t=t)
Return the probability that death occurs at or before time t
as predicted by the trained learner for each point.
predict_hazard
— Methodlnr.predict_hazard(X)
Return the fitted hazard coefficient estimate made by the learner for each point in the data X
.
A higher hazard coefficient estimate corresponds to a smaller predicted survival time.
Julia Equivalent: IAI.predict_hazard
Requires IAI version 1.2 or higher.
predict_expected_survival_time
— Methodlnr.predict_expected_survival_time(X)
Return the expected survival time estimate made by the learner for each point in the data X
.
Julia Equivalent: IAI.predict_expected_survival_time
Requires IAI version 2.0 or higher.
PrescriptionLearner
PrescriptionLearner
— TypeAbstract type encompassing all learners for prescription tasks.
Julia Equivalent: IAI.PrescriptionLearner
predict_outcomes
— Methodlnr.predict_outcomes(X)
Return the the predicted outcome for each treatment made by the learner for each point in the features X
.
Julia Equivalent: IAI.predict_outcomes
PolicyLearner
PolicyLearner
— TypeAbstract type encompassing all learners for policy tasks.
Julia Equivalent: IAI.PolicyLearner
predict_outcomes
— Methodlnr.predict_outcomes(X, rewards)
Return the outcome from rewards
for each point in the features X
under the prescriptions made by the learner.
Julia Equivalent: IAI.predict_outcomes
Requires IAI version 2.0 or higher.
predict_treatment_rank
— Methodlnr.predict_treatment_rank(X)
Return the treatments in ranked order of effectiveness for each point in the features X
as predicted by the learner.
Julia Equivalent: IAI.predict_treatment_rank
Requires IAI version 2.1 or higher.
predict_treatment_outcome
— Methodlnr.predict_treatment_outcome(X)
Return the estimated quality of each treatment in the trained model of the learner for each point in the features X
.
Julia Equivalent: IAI.predict_treatment_outcome
Requires IAI version 2.1 or higher.
predict_treatment_outcome_standard_error
— Methodlnr.predict_treatment_outcome_standard_error(X)
Return the standard error for the estimated quality of each treatment in the trained model of the learner for each point in the features X
.
Julia Equivalent: IAI.predict_treatment_outcome_standard_error
Requires IAI version 3.2 or higher.
ImputationLearner
ImputationLearner
— Typeiai.ImputationLearner(method='opt_knn', **kwargs)
Abstract type containing all imputation learners.
Julia Equivalent: IAI.ImputationLearner
Parameters
Can be used to construct instances of imputation learners using the method
keyword argument.
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
fit
— Methodlnr.fit(X, **kwargs)
Fit a model using the parameters in learner and the data X
(see [
fit`](@ref fit(::Learner))).
Additional keyword arguments are available for fitting imputation learners - please refer to the Julia documentation.
Julia Equivalent: IAI.fit!
fit_transform
— Methodlnr.fit_transform(X, **kwargs)
Fit the imputation learner using the training data X
and impute the missing values in the training data.
Julia Equivalent: IAI.fit_transform!
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
transform
— Methodlnr.transform(X)
Impute missing values in X
using the fitted imputation model in the learner.
Julia Equivalent: IAI.transform
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
MultiLearner
MultiLearner
— TypeAbstract type encompassing all multi-task learners for supervised tasks.
Julia Equivalent: IAI.MultiLearner
SupervisedMultiLearner
SupervisedMultiLearner
— TypeAbstract type encompassing all multi-task learners for supervised tasks.
Julia Equivalent: IAI.SupervisedMultiLearner
predict
— MethodReturn the predictions made by the learner for each point in the features X
.
Requires IAI version 3.2 or higher.
lnr.predict(X)
Return the predictions for all tasks.
Julia Equivalent: IAI.predict
lnr.predict(X, task_label)
Return the predictions for a specified task.
Julia Equivalent: IAI.predict
score
— MethodCalculates the score for the learner on data X
and y
.
Julia Equivalent: IAI.score
Requires IAI version 3.2 or higher.
lnr.score(X, *y, **kwargs)
Return the average score across all tasks.
Julia Equivalent: IAI.score
lnr.score(X, *y, task_label, **kwargs)
Return the score for a specified task.
Julia Equivalent: IAI.score
ClassificationMultiLearner
ClassificationMultiLearner
— TypeAbstract type encompassing all multi-task learners for classification tasks.
Julia Equivalent: IAI.ClassificationMultiLearner
predict_proba
— MethodReturn the probabilities of class membership predicted by the learner for each point in the features X
.
Requires IAI version 3.2 or higher.
lnr.predict_proba(X)
Return the predictions for all tasks.
Julia Equivalent: IAI.predict_proba
lnr.predict_proba(X, task_label)
Return the predictions for a specified task.
Julia Equivalent: IAI.predict_proba
ROCCurve
— MethodConstruct an ROCCurve
using the trained learner on the features X
and labels y
Requires IAI version 3.2 or higher.
lnr.ROCCurve(X)
Return the curve for all tasks.
Julia Equivalent: IAI.ROCCurve
lnr.ROCCurve(X, task_label)
Return the curve for a specified task.
Julia Equivalent: IAI.ROCCurve
RegressionMultiLearner
RegressionMultiLearner
— TypeAbstract type encompassing all multi-task learners for regression tasks.
Julia Equivalent: IAI.RegressionMultiLearner
GridSearch
GridSearch
— Typeiai.GridSearch(lnr, params)
Controls grid search over parameter combinations in params
for lnr
.
Julia Equivalent: IAI.GridSearch
fit
— Methodgrid.fit(X, *y, **kwargs)
Fit a grid with data X
and y
.
Julia Equivalent: IAI.fit!
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
fit_cv
— Methodgrid.fit_cv(X, *y, **kwargs)
Fit a grid with data X
and y
using k-fold cross-validation.
Julia Equivalent: IAI.fit_cv!
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
fit_transform_cv
— Methodgrid.fit_transform_cv(X, **kwargs)
For imputation learners, fit a grid with features X
using k-fold cross-validation and impute missing values in X
.
Julia Equivalent: IAI.fit_transform_cv!
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
get_learner
— Methodgrid.get_learner()
Return the fitted learner using the best parameter combination from the grid.
Julia Equivalent: IAI.get_learner
get_best_params
— Methodgrid.get_best_params()
Return the best parameter combination from the grid.
Julia Equivalent: IAI.get_best_params
get_grid_result_summary
— Methodgrid.get_grid_result_summary()
Return a summary of the results from the grid search.
Julia Equivalent: IAI.get_grid_result_summary
get_grid_result_details
— Methodgrid.get_grid_result_details()
Return a list
of dict
s detailing the results of the grid search.
Julia Equivalent: IAI.get_grid_result_details
Requires IAI version 2.2 or higher.
Visualizations
AbstractVisualization
— TypeAbstract type encompassing objects related to visualization.
Julia Equivalent: IAI.AbstractVisualization
write_html
— Methodtreeplot.write_html(filename, **kwargs)
Write interactive browser visualization to filename
as HTML.
Julia Equivalent: IAI.write_html
show_in_browser
— Methodtreeplot.show_in_browser(**kwargs)
Show interactive visualization in default browser.
Julia Equivalent: IAI.show_in_browser
Questionnaire
— TypeSpecifies an interactive questionnaire.
Julia Equivalent: IAI.Questionnaire
Parameters
Refer to the Julia documentation on advanced tree visualization for available parameters.
Requires IAI version 1.1 or higher.
MultiQuestionnaire
— TypeSpecify an interactive questionnaire of multiple learners
Requires IAI version 1.1 or higher.
iai.MultiQuestionnaire(questions)
Constructs an interactive questionnaire using multiple learners from specified questions. Refer to the documentation on advanced tree visualization for more information.
Julia Equivalent: IAI.MultiQuestionnaire
MultiQuestionnaire
— Methodgrid.MultiQuestionnaire()
Construct a MultiQuestionnaire
containing the final fitted learner from the trained grid search as well as the learner found for each parameter combination.
Julia Equivalent: IAI.MultiQuestionnaire
Requires IAI version 2.0 or higher.
Tree Learners
TreeLearner
TreeLearner
— TypeAbstract type encompassing all tree-based learners.
Julia Equivalent: IAI.TreeLearner
apply
— Methodlnr.apply(X)
Return the leaf index in the learner into which each point in the features X
falls.
Julia Equivalent: IAI.apply
apply_nodes
— Methodlnr.apply_nodes(X)
Return the indices of the points in the features X
that fall into each node in the learner.
Julia Equivalent: IAI.apply_nodes
decision_path
— Methodlnr.decision_path(X)
Return a matrix where entry (i, j)
is True
if the i
th point in the features X
passes through the j
th node in the learner.
Julia Equivalent: IAI.decision_path
print_path
— Methodlnr.print_path(X)
Print the decision path through the learner for each sample in the features X
.
Julia Equivalent: IAI.print_path
variable_importance
— MethodCalculate the variable importance for the learner (see variable_importance
).
Julia Equivalent: IAI.variable_importance
lnr.variable_importance(**kwargs)
Calculate the variable_importance for the learner.
lnr.variable_importance(X, **kwargs)
Calculate the variable_importance for the learner on new samples X
.
lnr.variable_importance(X, *y, **kwargs)
Calculate the variable_importance for the learner on new data X
and y
.
get_num_nodes
— Methodlnr.get_num_nodes(node_index)
Return the number of nodes in the trained learner.
Julia Equivalent: IAI.get_num_nodes
get_depth
— Methodlnr.get_depth(node_index)
Return the depth of node node_index
in the trained learner.
Julia Equivalent: IAI.get_depth
get_parent
— Methodlnr.get_parent(node_index)
Return the index of the parent node of node node_index
in the trained learner.
Julia Equivalent: IAI.get_parent
get_lower_child
— Methodlnr.get_lower_child(node_index)
Return the index of the lower child of node node_index
in the trained learner.
Julia Equivalent: IAI.get_lower_child
get_upper_child
— Methodlnr.get_upper_child(node_index)
Return the index of the upper child of node node_index
in the trained learner.
Julia Equivalent: IAI.get_upper_child
get_num_samples
— Methodlnr.get_num_samples(node_index)
Return the number of training points contained in node node_index
in the trained learner.
Julia Equivalent: IAI.get_num_samples
is_categoric_split
— Methodlnr.is_categoric_split(node_index)
Return True
if node node_index
in the trained learner is a categoric split.
Julia Equivalent: IAI.is_categoric_split
is_hyperplane_split
— Methodlnr.is_hyperplane_split(node_index)
Return True
if node node_index
in the trained learner is a hyperplane split.
Julia Equivalent: IAI.is_hyperplane_split
is_leaf
— Methodlnr.is_leaf(node_index)
Return True
if node node_index
in the trained learner is a leaf.
Julia Equivalent: IAI.is_leaf
is_mixed_ordinal_split
— Methodlnr.is_mixed_ordinal_split(node_index)
Return True
if node node_index
in the trained learner is a mixed categoric/ordinal split.
Julia Equivalent: IAI.is_mixed_ordinal_split
is_mixed_parallel_split
— Methodlnr.is_mixed_parallel_split(node_index)
Return True
if node node_index
in the trained learner is a mixed categoric/parallel split.
Julia Equivalent: IAI.is_mixed_parallel_split
is_ordinal_split
— Methodlnr.is_ordinal_split(node_index)
Return True
if node node_index
in the trained learner is an ordinal split.
Julia Equivalent: IAI.is_ordinal_split
is_parallel_split
— Methodlnr.is_parallel_split(node_index)
Return True
if node node_index
in the trained learner is a parallel split.
Julia Equivalent: IAI.is_parallel_split
get_split_categories
— Methodlnr.get_split_categories(node_index)
Return the categoric/ordinal information used in the split at node node_index
in the trained learner.
Julia Equivalent: IAI.get_split_categories
get_split_feature
— Methodlnr.get_split_feature(node_index)
Return the feature used in the split at node node_index
in the trained learner.
Julia Equivalent: IAI.get_split_feature
get_split_threshold
— Methodlnr.get_split_threshold(node_index)
Return the threshold used in the split at node node_index
in the trained learner.
Julia Equivalent: IAI.get_split_threshold
get_split_weights
— Methodlnr.get_split_weights(node_index)
Return the weights for numeric and categoric features used in the hyperplane split at node node_index
in the trained learner.
Julia Equivalent: IAI.get_split_weights
missing_goes_lower
— Methodlnr.missing_goes_lower(node_index)
Return True
if missing values take the lower branch at node node_index
in the trained learner.
Julia Equivalent: IAI.missing_goes_lower
Tree learner visualization
write_png
— Methodlnr.write_png(filename, **kwargs)
Write learner to filename
as a PNG image.
Before using this function, either run load_graphviz
or ensure that Graphviz is installed and on the system PATH
.
Julia Equivalent: IAI.write_png
write_pdf
— Methodlnr.write_pdf(filename, **kwargs)
Write learner to filename
as a PDF image.
Before using this function, either run load_graphviz
or ensure that Graphviz is installed and on the system PATH
.
Julia Equivalent: IAI.write_pdf
Requires IAI version 2.1 or higher.
write_svg
— Methodlnr.write_svg(filename, **kwargs)
Write learner to filename
as an SVG image.
Before using this function, either run load_graphviz
or ensure that Graphviz is installed and on the system PATH
.
Julia Equivalent: IAI.write_svg
Requires IAI version 2.1 or higher.
write_dot
— Methodlnr.write_dot(filename, **kwargs)
Write learner to filename
in .dot format.
Julia Equivalent: IAI.write_dot
write_html
— Methodlnr.write_html(filename, **kwargs)
Write interactive browser visualization of learner to filename
as HTML.
Julia Equivalent: IAI.write_html
show_in_browser
— Methodlnr.show_in_browser(**kwargs)
Show interactive visualization of learner in default browser.
Julia Equivalent: IAI.show_in_browser
write_questionnaire
— Methodlnr.write_questionnaire(filename, **kwargs)
Write interactive questionnaire based on learner to filename
as HTML.
Julia Equivalent: IAI.write_questionnaire
show_questionnaire
— Methodlnr.show_questionnaire(**kwargs)
Show interactive questionnaire based on learner in default browser.
Julia Equivalent: IAI.show_questionnaire
TreePlot
— TypeSpecifies an interactive tree visualization.
Julia Equivalent: IAI.TreePlot
Parameters
Refer to the Julia documentation on advanced tree visualization for available parameters.
Requires IAI version 1.1 or higher.
TreePlot
— Methodiai.TreePlot(lnr, **kwargs)
Construct a TreePlot
based on the trained learner.
Julia Equivalent: IAI.TreePlot
Requires IAI version 1.1 or higher.
MultiTreePlot
— TypeSpecify an interactive tree visualization of multiple tree learners
Requires IAI version 1.1 or higher.
iai.MultiTreePlot(questions)
Constructs an interactive tree visualization using multiple tree learners from specified questions. Refer to the documentation on advanced tree visualization for more information.
Julia Equivalent: IAI.MultiTreePlot
MultiTreePlot
— Methodgrid.MultiTreePlot()
Construct a MultiTreePlot
containing the final fitted learner from the trained grid search as well as the learner found for each parameter combination.
Julia Equivalent: IAI.MultiTreePlot
Requires IAI version 2.0 or higher.
Questionnaire
— Methodiai.Questionnaire(lnr, **kwargs)
Construct a Questionnaire
based on the trained learner.
Julia Equivalent: IAI.Questionnaire
Requires IAI version 1.1 or higher.
ClassificationTreeLearner
ClassificationTreeLearner
— TypeAbstract type encompassing all tree-based learners with classification leaves.
Julia Equivalent: IAI.ClassificationTreeLearner
get_classification_label
— Methodlnr.get_classification_label(node_index)
Return the predicted label at node node_index
in the trained learner.
Julia Equivalent: IAI.get_classification_label
get_classification_proba
— Methodlnr.get_classification_proba(node_index)
Return the predicted probabilities of class membership at node node_index
in the trained learner.
Julia Equivalent: IAI.get_classification_proba
get_regression_constant
— Methodlnr.get_regression_constant(node_index)
Return the constant term in the logistic regression prediction at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_constant
Requires IAI version 3.0 or higher.
get_regression_weights
— Methodlnr.get_regression_weights(node_index)
Return the weights for each feature in the logistic regression prediction at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_weights
Requires IAI version 3.0 or higher.
set_threshold
— Methodlnr.set_threshold(label, threshold, simplify=False)
For a binary classification problem, update the the predicted labels in the leaves of the learner to predict label
only if the predicted probability is at least threshold
. If simplify
is True
, the tree will be simplified after all changes have been made.
Julia Equivalent: IAI.set_threshold!
set_display_label
— Methodlnr.set_display_label(display_label)
Show the probability of display_label
when visualizing learner.
Julia Equivalent: IAI.set_display_label!
reset_display_label
— Methodlnr.reset_display_label(display_label)
Reset the predicted probability displayed to be that of the predicted label when visualizing learner.
Julia Equivalent: IAI.reset_display_label!
RegressionTreeLearner
RegressionTreeLearner
— TypeAbstract type encompassing all tree-based learners with regression leaves.
Julia Equivalent: IAI.RegressionTreeLearner
get_regression_constant
— Methodlnr.get_regression_constant(node_index)
Return the constant term in the regression prediction at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_constant
get_regression_weights
— Methodlnr.get_regression_weights(node_index)
Return the weights for each feature in the regression prediction at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_weights
SurvivalTreeLearner
SurvivalTreeLearner
— TypeAbstract type encompassing all tree-based learners with survival leaves.
Julia Equivalent: IAI.SurvivalTreeLearner
get_survival_curve
— Methodlnr.get_survival_curve(node_index)
Return the SurvivalCurve
at node node_index
in the trained learner.
Julia Equivalent: IAI.get_survival_curve
get_survival_expected_time
— Methodlnr.get_survival_expected_time(node_index)
Return the predicted expected survival time at node node_index
in the trained learner.
Julia Equivalent: IAI.get_survival_expected_time
Requires IAI version 2.1 or higher.
get_survival_hazard
— Methodlnr.get_survival_hazard(node_index)
Return the predicted hazard ratio at node node_index
in the trained learner.
Julia Equivalent: IAI.get_survival_hazard
Requires IAI version 2.1 or higher.
get_regression_constant
— Methodlnr.get_regression_constant(node_index)
Return the constant term in the regression prediction at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_constant
Requires IAI version 3.0 or higher.
get_regression_weights
— Methodlnr.get_regression_weights(node_index)
Return the weights for each feature in the regression prediction at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_weights
Requires IAI version 3.0 or higher.
PrescriptionTreeLearner
PrescriptionTreeLearner
— TypeAbstract type encompassing all tree-based learners with prescription leaves.
Julia Equivalent: IAI.PrescriptionTreeLearner
get_prescription_treatment_rank
— Methodlnr.get_prescription_treatment_rank(node_index)
Return the treatments ordered from most effective to least effective at node node_index
in the trained learner.
Julia Equivalent: IAI.get_prescription_treatment_rank
get_regression_constant
— Methodlnr.get_regression_constant(node_index, treatment)
Return the constant in the regression prediction for treatment
at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_constant
get_regression_weights
— Methodlnr.get_regression_weights(node_index, treatment)
Return the weights for each feature in the regression prediction for treatment
at node node_index
in the trained learner.
Julia Equivalent: IAI.get_regression_weights
PolicyTreeLearner
PolicyTreeLearner
— TypeAbstract type encompassing all tree-based learners with policy leaves.
Julia Equivalent: IAI.PolicyTreeLearner
get_policy_treatment_rank
— Methodlnr.get_policy_treatment_rank(node_index)
Return the treatments ordered from most effective to least effective at node node_index
in the trained learner.
Julia Equivalent: IAI.get_policy_treatment_rank
Requires IAI version 2.0 or higher.
get_policy_treatment_outcome
— Methodlnr.get_policy_treatment_outcome(node_index)
Return the quality of the treatments at node node_index
in the trained learner.
Julia Equivalent: IAI.get_policy_treatment_outcome
Requires IAI version 2.1 or higher.
get_policy_treatment_outcome_standard_error
— Methodlnr.get_policy_treatment_outcome_standard_error(node_index)
Return the standard error for the quality of the treatments at node node_index
in the trained learner.
Julia Equivalent: IAI.get_policy_treatment_outcome_standard_error
Requires IAI version 3.2 or higher.
TreeMultiLearner
TreeMultiLearner
— TypeAbstract type encompassing all multi-task tree-based learners.
Julia Equivalent: IAI.TreeMultiLearner
ClassificationTreeMultiLearner
ClassificationTreeMultiLearner
— TypeAbstract type encompassing all multi-task tree-based learners with classification leaves.
Julia Equivalent: IAI.ClassificationTreeMultiLearner
get_classification_label
— MethodReturn the predicted label at node node_index
in the trained learner.
Requires IAI version 3.2 or higher.
lnr.get_classification_label(node_index)
Return the label for all tasks.
Julia Equivalent: IAI.get_classification_label
lnr.get_classification_label(node_index, task_label)
Return the label for a specified task.
Julia Equivalent: IAI.get_classification_label
get_classification_proba
— MethodReturn the predicted probabilities of class membership at node node_index
in the trained learner.
Requires IAI version 3.2 or higher.
lnr.get_classification_proba(node_index)
Return the probabilities for all tasks.
Julia Equivalent: IAI.get_classification_proba
lnr.get_classification_proba(node_index, task_label)
Return the probabilities for a specified task.
Julia Equivalent: IAI.get_classification_proba
get_regression_constant
— MethodReturn the constant term in the logistic regression prediction at node node_index
in the trained learner.
Requires IAI version 3.2 or higher.
lnr.get_regression_constant(node_index)
Return the constant for all tasks.
Julia Equivalent: IAI.get_regression_constant
lnr.get_regression_constant(node_index, task_label)
Return the constant for a specified task.
Julia Equivalent: IAI.get_regression_constant
get_regression_weights
— MethodReturn the weights for each feature in the logistic regression prediction at node node_index
in the trained learner.
Requires IAI version 3.2 or higher.
lnr.get_regression_weights(node_index)
Return the weights for all tasks.
Julia Equivalent: IAI.get_regression_weights
lnr.get_regression_weights(node_index, task_label)
Return the weights for a specified task.
Julia Equivalent: IAI.get_regression_weights
RegressionTreeMultiLearner
RegressionTreeMultiLearner
— TypeAbstract type encompassing all multi-task tree-based learners with regression leaves.
Julia Equivalent: IAI.RegressionTreeMultiLearner
get_regression_constant
— MethodReturn the constant term in the regression prediction at node node_index
in the trained learner.
Requires IAI version 3.2 or higher.
lnr.get_regression_constant(node_index)
Return the constant for all tasks.
Julia Equivalent: IAI.get_regression_constant
lnr.get_regression_constant(node_index, task_label)
Return the constant for a specified task.
Julia Equivalent: IAI.get_regression_constant
get_regression_weights
— MethodReturn the weights for each feature in the regression prediction at node node_index
in the trained learner.
Requires IAI version 3.2 or higher.
lnr.get_regression_weights(node_index)
Return the weights for all tasks.
Julia Equivalent: IAI.get_regression_weights
lnr.get_regression_weights(node_index, task_label)
Return the weights for a specified task.
Julia Equivalent: IAI.get_regression_weights
Tree Stability
get_tree
— Methodlnr.get_tree(index)
Return a copy of the learner that uses the tree at index
rather than the tree with the best training objective.
Julia Equivalent: IAI.get_tree
Requires IAI version 2.2 or higher.
Stability Analysis
StabilityAnalysis
— TypeConduct a stability analysis of the trees in a tree learner.
Refer to the documentation on tree stability for more information.
Julia Equivalent: IAI.StabilityAnalysis
Requires IAI version 2.2 or higher.
iai.StabilityAnalysis(lnr)
Conduct a stability analysis of the trees in lnr
, using similarity scores calculated during training
iai.StabilityAnalysis(lnr, X, y, criterion='default')
Conduct a stability analysis of the trees in lnr
, using similarity scores calculated with the data X
, y
and criterion
get_stability_results
— Methodstability.get_stability_results()
Return the trained trees in order of increasing objective value, along with their variable importance scores for each feature.
Julia Equivalent: IAI.get_stability_results
Requires IAI version 2.2 or higher.
get_cluster_distances
— Methodstability.get_cluster_distances(num_trees)
Return the distances between the centroids of each pair of clusters, under the clustering of the best num_trees
trees.
Julia Equivalent: IAI.get_cluster_distances
Requires IAI version 2.2 or higher.
get_cluster_assignments
— Methodstability.get_cluster_assignments(num_trees)
Return the indices of the trees assigned to each cluster, under the clustering of the best num_trees
trees.
Julia Equivalent: IAI.get_cluster_assignments
Requires IAI version 2.2 or higher.
get_cluster_details
— Methodstability.get_cluster_details(num_trees)
Return the centroid information for each cluster, under the clustering of the best num_trees
trees.
Julia Equivalent: IAI.get_cluster_details
Requires IAI version 2.2 or higher.
plot
— Methodstability.plot()
Plot the stability analysis results.
Returns a matplotlib.figure.Figure
containing the plotted results.
In a Jupyter Notebook, the plot will be shown automatically. In a terminal, you can show the plot with stability.plot().show()
.
Requires IAI version 2.2 or higher.
Similarity Comparison
variable_importance_similarity
— MethodCalculate similarity between this learner and another tree learner using variable importance scores.
Julia Equivalent: IAI.variable_importance_similarity
Requires IAI version 2.2 or higher.
lnr.variable_importance_similarity(new_lnr)
Calculate similarity scores between the final tree in this learner and all trees in new_lnr
lnr.variable_importance_similarity(new_lnr, X, y,
Calculate similarity scores between the final tree in this learner and all trees in new_lnr
using the data X
and y
with criterion
SimilarityComparison
— Typeiai.SimilarityComparison(orig_lnr, new_lnr, deviations)
Conduct a similarity comparison between the final tree in orig_lnr
and all trees in new_lnr
to consider the tradeoff between training performance and similarity to the original tree as measured by deviations
.
Refer to the documentation on tree stability for more information.
Julia Equivalent: IAI.SimilarityComparison
Requires IAI version 2.2 or higher.
get_train_errors
— Methodlnr.get_train_errors()
Extract the training objective value for each candidate tree in the comparison, where a lower value indicates a better solution.
Julia Equivalent: IAI.get_train_errors
Requires IAI version 2.2 or higher.
plot
— Methodsimilarity.plot()
Plot the similarity comparison results.
Returns a matplotlib.figure.Figure
containing the plotted results.
In a Jupyter Notebook, the plot will be shown automatically. In a terminal, you can show the plot with similarity.plot().show()
.
Requires IAI version 2.2 or higher.
Optimal Trees
OptimalTreeLearner
— TypeAbstract type encompassing all optimal tree learners.
Julia Equivalent: IAI.OptimalTreeLearner
OptimalTreeClassifier
— Typeiai.OptimalTreeClassifier(**kwargs)
Learner for training Optimal Classification Trees.
Julia Equivalent: IAI.OptimalTreeClassifier
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptimalTreeRegressor
— Typeiai.OptimalTreeRegressor(**kwargs)
Learner for training Optimal Regression Trees.
Julia Equivalent: IAI.OptimalTreeRegressor
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptimalTreeSurvivalLearner
— Typeiai.OptimalTreeSurvivalLearner(**kwargs)
Learner for training Optimal Survival Trees.
Julia Equivalent: IAI.OptimalTreeSurvivalLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptimalTreePrescriptionMinimizer
— Typeiai.OptimalTreePrescriptionMinimizer(**kwargs)
Learner for training Optimal Prescriptive Trees where the prescriptions should aim to minimize outcomes.
Julia Equivalent: IAI.OptimalTreePrescriptionMinimizer
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptimalTreePrescriptionMaximizer
— Typeiai.OptimalTreePrescriptionMaximizer(**kwargs)
Learner for training Optimal Prescriptive Trees where the prescriptions should aim to maximize outcomes.
Julia Equivalent: IAI.OptimalTreePrescriptionMaximizer
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptimalTreePolicyMinimizer
— Typeiai.OptimalTreePolicyMinimizer(**kwargs)
Learner for training Optimal Policy Trees where the policy should aim to minimize outcomes.
Julia Equivalent: IAI.OptimalTreePolicyMinimizer
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.0 or higher.
OptimalTreePolicyMaximizer
— Typeiai.OptimalTreePolicyMaximizer(**kwargs)
Learner for training Optimal Policy Trees where the policy should aim to maximize outcomes.
Julia Equivalent: IAI.OptimalTreePolicyMaximizer
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.0 or higher.
OptimalTreeMultiLearner
— TypeAbstract type encompassing all multi-task optimal tree learners.
Julia Equivalent: IAI.OptimalTreeMultiLearner
OptimalTreeMultiClassifier
— Typeiai.OptimalTreeMultiClassifier(**kwargs)
Learner for training multi-task Optimal Classification Trees.
Julia Equivalent: IAI.OptimalTreeMultiClassifier
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 3.2 or higher.
OptimalTreeMultiRegressor
— Typeiai.OptimalTreeMultiRegressor(**kwargs)
Learner for training multi-task Optimal Regression Trees.
Julia Equivalent: IAI.OptimalTreeMultiRegressor
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 3.2 or higher.
refit_leaves
— Methodlnr.refit_leaves(X, y)
Refit the models in the leaves of the trained learner using the supplied data.
Julia Equivalent: IAI.refit_leaves!
Parameters
Refer to the Julia documentation for available parameters.
Requires IAI version 3.0 or higher.
copy_splits_and_refit_leaves
— Methodlnr.copy_splits_and_refit_leaves(orig_lnr, X, y)
Copy the tree split structure from orig_lnr
into this learner and refit the models in each leaf of the tree using the supplied data.
Julia Equivalent: IAI.copy_splits_and_refit_leaves!
Parameters
Refer to the Julia documentation for available parameters.
Requires IAI version 3.0 or higher.
prune_trees
— Methodlnr.prune_trees(X, y)
Use the trained trees in the learner along with the supplied validation data X
and y
to determine the best value for the cp
parameter and then prune the trees according to this value.
Julia Equivalent: IAI.prune_trees!
Parameters
Refer to the Julia documentation for available parameters.
Requires IAI version 3.0 or higher.
OptImpute
impute
— Functioniai.impute(X, *args, **kwargs)
Impute the missing values in X
using either a specified method
or through grid search validation.
Julia Equivalent: IAI.impute
This method was deprecated in interpretableai 2.9.0. This is for consistency with the IAI v3.0.0 Julia release.
Parameters
Refer to the Julia documentation for available parameters.
impute_cv
— Functioniai.impute_cv(X, *args, **kwargs)
Impute the missing values in X
using cross validation.
Julia Equivalent: IAI.impute_cv
This method was deprecated in interpretableai 2.9.0. This is for consistency with the IAI v3.0.0 Julia release.
Parameters
Refer to the Julia documentation for available parameters.
OptKNNImputationLearner
— Typeiai.OptKNNImputationLearner(**kwargs)
Learner for conducting optimal k-NN imputation.
Julia Equivalent: IAI.OptKNNImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptSVMImputationLearner
— Typeiai.OptSVMImputationLearner(**kwargs)
Learner for conducting optimal SVM imputation.
Julia Equivalent: IAI.OptSVMImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
OptTreeImputationLearner
— Typeiai.OptTreeImputationLearner(**kwargs)
Learner for conducting optimal tree-based imputation.
Julia Equivalent: IAI.OptTreeImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
SingleKNNImputationLearner
— Typeiai.SingleKNNImputationLearner(**kwargs)
Learner for conducting heuristic k-NN imputation.
Julia Equivalent: IAI.SingleKNNImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
MeanImputationLearner
— Typeiai.MeanImputationLearner(**kwargs)
Learner for conducting mean imputation.
Julia Equivalent: IAI.MeanImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
RandImputationLearner
— Typeiai.RandImputationLearner(**kwargs)
Learner for conducting random imputation.
Julia Equivalent: IAI.RandImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
ZeroImputationLearner
— Typeiai.ZeroImputationLearner(**kwargs)
Learner for conducting zero-imputation.
Julia Equivalent: IAI.ZeroImputationLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 3.0 or higher.
fit_and_expand
— Methodlnr.fit_and_expand(X, type='finite')
Fit the imputation learner with training features X
and create adaptive indicator features to encode the missing pattern according to type
.
Julia Equivalent: IAI.fit_and_expand!
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
Requires IAI version 3.0 or higher.
transform_and_expand
— Methodlnr.transform_and_expand(X, type='finite')
Transform features X
with the trained imputation learner and create adaptive indicator features to encode the missing pattern according to type
.
Julia Equivalent: IAI.transform_and_expand
Parameters
Refer to the documentation on data preparation for information on how to format and supply the data.
Requires IAI version 3.0 or higher.
Optimal Feature Selection
OptimalFeatureSelectionLearner
— TypeAbstract type encompassing all Optimal Feature Selection learners.
Julia Equivalent: IAI.OptimalFeatureSelectionLearner
OptimalFeatureSelectionClassifier
— Typeiai.OptimalFeatureSelectionClassifier(**kwargs)
Learner for conducting Optimal Feature Selection on classification problems.
Julia Equivalent: IAI.OptimalFeatureSelectionClassifier
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 1.1 or higher.
OptimalFeatureSelectionRegressor
— Typeiai.OptimalFeatureSelectionRegressor(**kwargs)
Learner for conducting Optimal Feature Selection on regression problems.
Julia Equivalent: IAI.OptimalFeatureSelectionRegressor
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 1.1 or higher.
fit
— Methodlnr.fit(X, *y, sample_weight=None, **kwargs)
Fit a model using the parameters in learner and the data X
and y
(see fit
).
When the coordinated_sparsity
parameter of the learner is True
, additional keyword arguments are required - please refer to the Julia documentation.
Julia Equivalent: IAI.fit!
Requires IAI version 1.1 or higher.
predict
— MethodReturn the prediction made by the learner for each point in the data X
(see predict
).
Julia Equivalent: IAI.predict
Requires IAI version 1.1 or higher.
lnr.predict(X)
Return the prediction made by the learner.
lnr.predict(X, fit_index=fit_index)
Return the prediction made by cluster fit_index
in the learner.
score
— MethodCalculates the score for the learner on data X
and y
(see score
).
Julia Equivalent: IAI.score
Requires IAI version 1.1 or higher.
lnr.score(X, *y, **kwargs)
Calculates the score for the learner.
lnr.score(X, *y, **kwargs, fit_index=fit_index)
Calculates the score for cluster fit_index
in the learner.
variable_importance
— MethodCalculates the variable importance for the learner (see variable_importance
).
Julia Equivalent: IAI.variable_importance
Requires IAI version 1.1 or higher.
lnr.variable_importance()
Return the variable_importance for the learner.
lnr.variable_importance(fit_index=fit_index)
Return the variableimportance for cluster `fitindex` in the learner.
get_prediction_constant
— MethodReturn the constant term in the prediction in the trained learner.
Julia Equivalent: IAI.get_prediction_constant
Requires IAI version 1.1 or higher.
lnr.get_prediction_constant()
Return the constant term in the prediction
lnr.get_prediction_constant(fit_index=fit_index)
Return the constant term in the prediction for cluster fit_index
get_prediction_weights
— MethodReturn the weights for numeric and categoric features used for prediction in the trained learner.
Julia Equivalent: IAI.get_prediction_weights
Requires IAI version 1.1 or higher.
lnr.get_prediction_weights()
Return the weights in the prediction
lnr.get_prediction_weights(fit_index=fit_index)
Return the weights in the prediction for cluster fit_index
get_num_fits
— Methodlnr.get_num_fits()
Return the number of fits stored in the learner.
Julia Equivalent: IAI.get_num_fits
Requires IAI version 3.0 or higher.
Questionnaire
— Methodiai.Questionnaire(lnr, **kwargs)
Construct a Questionnaire
based on the trained learner.
Julia Equivalent: IAI.Questionnaire
Requires IAI version 2.1 or higher.
write_questionnaire
— Methodlnr.write_questionnaire(filename, **kwargs)
Write interactive questionnaire based on learner to filename
as HTML.
Julia Equivalent: IAI.write_questionnaire
Requires IAI version 2.1 or higher.
show_questionnaire
— Methodlnr.show_questionnaire(**kwargs)
Show interactive questionnaire based on learner in default browser.
Julia Equivalent: IAI.show_questionnaire
Requires IAI version 2.1 or higher.
plot
— Methodgrid.plot(type)
Plot the grid search results for Optimal Feature Selection learners.
Returns a matplotlib.figure.Figure
containing the plotted results.
In a Jupyter Notebook, the plot will be shown automatically. In a terminal, you can show the plot with grid.plot().show()
.
Parameters
type
: (str) The type of plot to construct, either"validation"
or"importance"
. For more information refer to the Julia documentation for plotting grid search results.
Requires IAI version 2.2 or higher.
Reward Estimation
RewardEstimationLearner
— TypeAbstract type encompassing all learners for reward estimation.
Julia Equivalent: IAI.RewardEstimationLearner
fit_predict
— MethodFit a reward estimation model and return predicted counterfactual rewards for each observation along with the scores of the internal estimators during training.
Julia Equivalent: IAI.fit_predict!
Categorical Treatments
CategoricalRewardEstimationLearner
— TypeAbstract type encompassing all learners for reward estimation with categorical treatments.
Julia Equivalent: IAI.CategoricalRewardEstimationLearner
fit_predict
— MethodFit a reward estimation model and return predicted counterfactual rewards for each observation along with the scores of the internal estimators during training.
Julia Equivalent: IAI.fit_predict!
Requires IAI version 2.0 or higher.
lnr.fit_predict(X, treatments, outcomes)
For problems with classification or regression outcomes, fit reward estimation model on features X
, treatments treatments
, and outcomes outcomes
and predict rewards for each observation.
lnr.fit_predict(X, treatments, deaths, times)
For problems with survival outcomes, fit reward estimation model on features X
, treatments treatments
, death indicator deaths
and event times times
and predict rewards for each observation.
predict
— MethodReturn counterfactual rewards estimated by the learner for each observation in the supplied data.
Julia Equivalent: IAI.predict
Requires IAI version 2.0 or higher.
lnr.predict(X, treatments, outcomes)
For problems with classification or regression outcomes, predict rewards for each observation in the data given by X
, treatments
and outcomes
. If using the direct method, treatments
and outcomes
can be omitted.
lnr.predict(X, treatments, deaths, times)
For problems with survival outcomes, predict rewards for each observation in the data given by X
, treatments
, deaths
and times
. If using the direct method, treatments
, deaths
and times
can be omitted.
predict_reward
— MethodReturn counterfactual rewards estimated using the learner parameters for each observation in the supplied data and predictions.
Julia Equivalent: IAI.predict_reward
Requires IAI version 3.0 or higher.
lnr.predict_reward(treatments, outcomes, predictions)
For problems with classification or regression outcomes, predict rewards for each observation in the data given by treatments
and outcomes
with predictions given by predictions
.
lnr.predict_reward(treatments, deaths, times, predictions)
For problems with survival outcomes, predict rewards for each observation in the data given by treatments
, deaths
and times
, with predictions given by predictions
.
score
— MethodCalculate the scores of the internal estimators in the learner on the supplied data.
Returns a dict
with the following entries:
'propensity'
: the score for the propensity estimator':outcome'
: adict
where the keys are the possible treatments, and the values are the scores of the outcome estimator corresponding to each treatment
Julia Equivalent: IAI.score
Requires IAI version 2.1 or higher.
lnr.score(X, treatments, outcomes)
For problems with classification or regression outcomes, calculate the scores of the internal estimators using the data given by X
, treatments
and outcomes
.
lnr.score(X, treatments, deaths, times)
For problems with survival outcomes, calculate the scores of the internal estimators using the data given by X
, treatments
, deaths
and times
.
CategoricalClassificationRewardEstimator
— Typeiai.CategoricalClassificationRewardEstimator(**kwargs)
Learner for reward estimation with categorical treatments and classification outcomes.
Julia Equivalent: IAI.CategoricalClassificationRewardEstimator
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
CategoricalRegressionRewardEstimator
— Typeiai.CategoricalRegressionRewardEstimator(**kwargs)
Learner for reward estimation with categorical treatments and regression outcomes.
Julia Equivalent: IAI.CategoricalRegressionRewardEstimator
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
CategoricalSurvivalRewardEstimator
— Typeiai.CategoricalSurvivalRewardEstimator(**kwargs)
Learner for reward estimation with categorical treatments and survival outcomes.
Julia Equivalent: IAI.CategoricalSurvivalRewardEstimator
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
EqualPropensityEstimator
— Typeiai.EqualPropensityEstimator(**kwargs)
Learner that estimates equal propensity for all treatments.
For use with data from randomized experiments where treatments are known to be randomly assigned.
Julia Equivalent: IAI.EqualPropensityEstimator
Requires IAI version 2.1 or higher.
Numeric Treatments
NumericRewardEstimationLearner
— TypeAbstract type encompassing all learners for reward estimation with numeric treatments.
Julia Equivalent: IAI.NumericRewardEstimationLearner
fit_predict
— MethodFit a reward estimation model and return predicted counterfactual rewards for each observation under each treatment option in treatment_candidates
, as well as the score of the internal outcome estimator.
Julia Equivalent: IAI.fit_predict!
Requires IAI version 2.1 or higher.
lnr.fit_predict(X, treatments, outcomes, treatment_candidates)
For problems with classification or regression outcomes, fit reward estimation model on features X
, treatments treatments
, and outcomes outcomes
and predict rewards for each observation under each treatment option in treatment_candidates
.
lnr.fit_predict(X, treatments, deaths, times, treatment_candidates)
For problems with survival outcomes, fit reward estimation model on features X
, treatments treatments
, death indicator deaths
and event times times
and predict rewards for each observation under each treatment option in treatment_candidates
.
predict
— MethodReturn counterfactual rewards estimated by the learner for each observation in the supplied data.
Julia Equivalent: IAI.predict
Requires IAI version 2.1 or higher.
lnr.predict(X, treatments, outcomes)
IAI versions 2.2 and greater: For problems with classification or regression outcomes, predict rewards for each observation in the data given by X
, treatments
and outcomes
. If using the direct method, treatments
and outcomes
can be omitted.
lnr.predict(X, treatments, deaths, times)
IAI versions 2.2 and greater: For problems with survival outcomes, predict rewards for each observation in the data given by X
, treatments
, deaths
and times
. If using the direct method, treatments
, deaths
and times
can be omitted.
lnr.predict(X, treatments, outcomes, treatment_candidates)
IAI version 2.1: Predicted reward for each observation in the data given by X
, treatments
and outcomes
under each treatment option in treatment_candidates
. If using the direct method, treatments
, deaths
and times
can be omitted.
predict_reward
— MethodReturn counterfactual rewards estimated using the learner parameters for each observation in the supplied data and predictions.
Julia Equivalent: IAI.predict_reward
Requires IAI version 3.0 or higher.
lnr.predict_reward(X, treatments, outcomes, predictions)
For problems with classification or regression outcomes, predict rewards for each observation in the data given by treatments
and outcomes
with predictions given by predictions
.
lnr.predict_reward(X, treatments, deaths, times, predictions)
For problems with survival outcomes, predict rewards for each observation in the data given by treatments
, deaths
and times
with predictions given by predictions
.
score
— MethodCalculate the scores of the internal estimator in the learner on the supplied data.
Julia Equivalent: IAI.score
On IAI versions 2.2 and greater, returns a dict
with the following entries:
'propensity'
: adict
where the keys are the treatment candidates, and the values are the scores of the propensity estimator corresponding to each candidate':outcome'
: adict
where the keys are the treatment candidates, and the values are the scores of the outcome estimator corresponding to each candidate
On IAI version 2.1, returns a float
giving the score of the outcome estimator.
Requires IAI version 2.1 or higher.
lnr.score(X, treatments, outcomes)
For problems with classification or regression outcomes, calculate the scores of the internal estimators using the data given by X
, treatments
and outcomes
.
lnr.score(X, treatments, deaths, times)
For problems with survival outcomes, calculate the scores of the internal estimators using the data given by X
, treatments
, deaths
and times
.
NumericClassificationRewardEstimator
— Typeiai.NumericClassificationRewardEstimator(**kwargs)
Learner for reward estimation with numeric treatments and classification outcomes.
Julia Equivalent: IAI.NumericClassificationRewardEstimator
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
NumericRegressionRewardEstimator
— Typeiai.NumericRegressionRewardEstimator(**kwargs)
Learner for reward estimation with numeric treatments and regression outcomes.
Julia Equivalent: IAI.NumericRegressionRewardEstimator
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
NumericSurvivalRewardEstimator
— Typeiai.NumericSurvivalRewardEstimator(**kwargs)
Learner for reward estimation with numeric treatments and survival outcomes.
Julia Equivalent: IAI.NumericSurvivalRewardEstimator
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
get_estimation_densities
— Methodlnr.get_estimation_densities()
Return the total kernel density surrounding each treatment candidate for the propensity/outcome estimation problems in the fitted learner.
Julia Equivalent: IAI.get_estimation_densities
Requires IAI version 2.2 or higher.
tune_reward_kernel_bandwidth
— Methodlnr.tune_reward_kernel_bandwidth(input_bandwidths)
Conduct the reward kernel bandwidth tuning procedure using the learner for each starting value in input_bandwidths
and return the final tuned values.
Julia Equivalent: IAI.tune_reward_kernel_bandwidth
Requires IAI version 2.2 or higher.
set_reward_kernel_bandwidth
— Methodlnr.set_reward_kernel_bandwidth(bandwidth)
Save the new value of bandwidth
as the reward kernel bandwidth inside the learner, and return new reward predictions generated using this bandwidth for the original data used to train the learner.
Julia Equivalent: IAI.set_reward_kernel_bandwidth!
Requires IAI version 2.2 or higher.
all_treatment_combinations
— Functioniai.all_treatment_combinations(*args, **kwargs)
Return a pandas.DataFrame
containing all treatment combinations of one or more treatment vectors, ready for use as treatment_candidates
in fit_predict!
or predict
.
Julia Equivalent: IAI.all_treatment_combinations
Requires IAI version 2.1 or higher.
convert_treatments_to_numeric
— Functioniai.convert_treatments_to_numeric(treatments)
Convert treatments
from symbol/string format into numeric values.
Julia Equivalent: IAI.convert_treatments_to_numeric
Requires IAI version 2.1 or higher.
Heuristics
Random Forests
RandomForestLearner
— TypeAbstract type encompassing all random forest learners.
Julia Equivalent: IAI.RandomForestLearner
RandomForestClassifier
— Typeiai.RandomForestClassifier(**kwargs)
Learner for training random forests for classification problems.
Julia Equivalent: IAI.RandomForestClassifier
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.1 or higher.
RandomForestRegressor
— Typeiai.RandomForestRegressor(**kwargs)
Learner for training random forests for regression problems.
Julia Equivalent: IAI.RandomForestRegressor
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.1 or higher.
RandomForestSurvivalLearner
— Typeiai.RandomForestSurvivalLearner(**kwargs)
Learner for training random forests for survival problems.
Julia Equivalent: IAI.RandomForestSurvivalLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
XGBoost
XGBoostLearner
— TypeAbstract type encompassing all XGBoost learners.
Julia Equivalent: IAI.XGBoostLearner
XGBoostClassifier
— Typeiai.XGBoostClassifier(**kwargs)
Learner for training XGBoost models for classification problems.
Julia Equivalent: IAI.XGBoostClassifier
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.1 or higher.
XGBoostRegressor
— Typeiai.XGBoostRegressor(**kwargs)
Learner for training XGBoost models for regression problems.
Julia Equivalent: IAI.XGBoostRegressor
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.1 or higher.
XGBoostSurvivalLearner
— Typeiai.XGBoostSurvivalLearner(**kwargs)
Learner for training XGBoost models for survival problems.
Julia Equivalent: IAI.XGBoostSurvivalLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.2 or higher.
predict_shap
— Methodlnr.predict_shap(X)
Calculate SHAP values for all points in the features X
using lnr
.
Julia Equivalent: IAI.predict_shap
Requires IAI version 2.2 or higher.
write_booster
— Methodlnr.write_booster(filename)
Write the internal booster saved in the learner to filename
.
Julia Equivalent: IAI.write_booster
Requires IAI version 2.1 or higher.
GLMNet
GLMNetLearner
— TypeAbstract type encompassing all GLMNet learners.
Julia Equivalent: IAI.GLMNetLearner
get_num_fits
— Methodlnr.get_num_fits()
Return the number of fits along the path in the trained learner.
Julia Equivalent: IAI.get_num_fits
Requires IAI version 2.1 or higher.
get_prediction_weights
— MethodReturn the weights for numeric and categoric features used for prediction in the trained learner.
Julia Equivalent: IAI.get_prediction_weights
Requires IAI version 2.1 or higher.
lnr.get_prediction_weights()
Return the weights for each feature in the prediction made by the best fit on the path in the learner.
lnr.get_prediction_weights(fit_index)
Return the weights for each feature in the prediction made by the fit at fit_index
on the path in the learner.
get_prediction_constant
— MethodReturn the constant term in the prediction in the trained learner.
Julia Equivalent: IAI.get_prediction_constant
Requires IAI version 2.1 or higher.
lnr.get_prediction_constant()
Return the constant term in the prediction made by the best fit on the path in the learner.
lnr.get_prediction_constant(fit_index)
Return the constant term in the prediction made by the fit at fit_index
on the path in the learner.
GLMNetCVLearner
— TypeAbstract type encompassing all GLMNet learners using cross-validation.
Julia Equivalent: IAI.GLMNetCVLearner
predict
— MethodReturn the prediction made by the learner for each point in the data X
.
Julia Equivalent: IAI.predict
Requires IAI version 2.1 or higher.
lnr.predict(X)
Return the prediction made by the best fit on the path in the learner.
lnr.predict(X, fit_index)
Return the prediction made by the fit at fit_index
on the path in the learner.
score
— MethodCalculate the score for the learner on data X
and y
Julia Equivalent: IAI.score
Requires IAI version 2.1 or higher.
lnr.score(X, *y, **kwargs)
Calculate the score for by the best fit on the path in the learner.
lnr.score(X, *y, fit_index=fit_index, **kwargs)
Calculate the score for by the fit at fit_index
on the path in the learner.
GLMNetCVClassifier
— Typeiai.GLMNetCVClassifier(**kwargs)
Learner for training GLMNet models for classification problems with cross-validation.
Julia Equivalent: IAI.GLMNetCVClassifier
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 3.0 or higher.
predict_proba
— MethodReturn the probabilities of class membership predicted by the learner for each point in the data X
.
Julia Equivalent: IAI.predict_proba
Requires IAI version 3.0 or higher.
lnr.predict_proba(X)
Return the probabilities of class membership predicted by the best fit on the path in the learner.
lnr.predict_proba(X, fit_index)
Return the probabilities of class membership predicted by the fit at fit_index
on the path in the learner.
ROCCurve
— MethodConstruct an ROCCurve
using the trained learner on the features X
and labels y
Julia Equivalent: IAI.ROCCurve
Requires IAI version 3.0 or higher.
lnr.predict_proba(X)
Construct an ROCCurve using by the best fit on the path in the learner.
iai.ROCCurve(lnr, X, y, fit_index=fit_index)
Construct an ROCCurve using by the fit at fit_index
on the path in the learner.
GLMNetCVRegressor
— Typeiai.GLMNetCVRegressor(**kwargs)
Learner for training GLMNet models for regression problems with cross-validation.
Julia Equivalent: IAI.GLMNetCVRegressor
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 2.1 or higher.
GLMNetCVSurvivalLearner
— Typeiai.GLMNetCVSurvivalLearner(**kwargs)
Learner for training GLMNet models for survival problems with cross-validation.
Julia Equivalent: IAI.GLMNetCVSurvivalLearner
Parameters
Use keyword arguments to set parameters on the resulting learner. Refer to the Julia documentation for available parameters.
Requires IAI version 3.0 or higher.
predict_hazard
— MethodReturn the fitted hazard coefficient estimate made by the learner for each point in the data X
.
A higher hazard coefficient estimate corresponds to a smaller predicted survival time.
Julia Equivalent: IAI.predict_hazard
Requires IAI version 3.0 or higher.
lnr.predict_hazard(X)
Return the hazard coefficient estimated made by the best fit on the path in the learner.
lnr.predict_hazard(X, fit_index)
Return the hazard coefficient estimated made by the fit at fit_index
on the path in the learner.
predict_expected_survival_time
— MethodReturn the expected survival time estimate made by the learner for each point in the data X
.
Julia Equivalent: IAI.predict_expected_survival_time
Requires IAI version 3.0 or higher.
lnr.predict_expected_survival_time(X)
Return the expected survival time made by the best fit on the path in the learner.
lnr.predict_expected_survival_time(X, fit_index)
Return the expected survival time made by the fit at fit_index
on the path in the learner.
Miscellaneous Types
ROCCurve
ROCCurve
— TypeContainer for ROC curve information.
Julia Equivalent: IAI.ROCCurve
iai.ROCCurve(probs, y, positive_label=positive_label)
Construct a ROCCurve
using predicted probabilities probs
and true labels y
, with probabilities indicating chance of predicting positive_label
:
Julia Equivalent: IAI.ROCCurve
get_data
— Methodcurve.get_data()
Extract the underlying data from the curve as a dict
with two keys:
coords
: adict
for each point on the curve with the following keys:'fpr'
: false positive rate at the given threshold'tpr'
: true positive rate at the given threshold'threshold'
: the threshold
auc
: the area-under-the-curve (AUC)
Julia Equivalent: IAI.get_roc_curve_data
Requires IAI version 2.1 or higher.
plot
— Methodcurve.plot()
Plot the ROC curve using matplotlib
.
Returns a matplotlib.figure.Figure
containing the ROC curve.
In a Jupyter Notebook, the plot will be shown automatically. In a terminal, you can show the plot with curve.plot().show()
.
Requires IAI version 2.1 or higher.
write_html
— Methodlnr.write_html(filename, **kwargs)
Write interactive browser visualization of the ROC curve to filename
as HTML.
Julia Equivalent: IAI.write_html
Requires IAI version 1.1 or higher.
show_in_browser
— MethodSurvivalCurve
SurvivalCurve
— TypeContainer for survival curve information.
Use curve[t]
to get the survival probability prediction from curve at time t
.
Julia Equivalent: IAI.SurvivalCurve
get_data
— Methodcurve.get_data()
Extract the underlying data from the curve as a dict
with two keys:
'times'
: the time for each breakpoint on the curve'coefs'
: the probablility for each breakpoint on the curve
Julia Equivalent: IAI.get_survival_curve_data
predict_expected_survival_time
— Methodcurve.predict_expected_survival_time()
Return the expected survival time according to the curve
Julia Equivalent: IAI.predict_expected_survival_time
Requires IAI version 2.2 or higher.