lore_explainer package¶
Submodules¶
lore_explainer.datamanager module¶
lore_explainer.decision_tree module¶
lore_explainer.explanation module¶
- class lore_explainer.explanation.ExplanationEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]¶
Bases:
json.encoder.JSONEncoderSpecial json encoder for Rule types
- default(obj)[source]¶
Implement this method in a subclass such that it returns a serializable object for
o, or calls the base implementation (to raise aTypeError).For example, to support arbitrary iterators, you could implement default like this:
def default(self, o): try: iterable = iter(o) except TypeError: pass else: return list(iterable) # Let the base class default method raise the TypeError return JSONEncoder.default(self, o)
lore_explainer.lorem module¶
- class lore_explainer.lorem.LOREM(K, bb_predict, feature_names, class_name, class_values, numeric_columns, features_map, neigh_type='genetic', categorical_use_prob=True, continuous_fun_estimation=False, size=1000, ocr=0.1, multi_label=False, one_vs_rest=False, filter_crules=True, init_ngb_fn=True, kernel_width=None, kernel=None, random_state=None, verbose=False, **kwargs)[source]¶
Bases:
object
lore_explainer.neighgen module¶
- class lore_explainer.neighgen.ClosestInstancesGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1, K=None, rK=None, k=None, core_neigh_type='unified', alphaf=0.5, alphal=0.5, metric_features=<function neuclidean>, metric_labels='hamming', categorical_use_prob=True, continuous_fun_estimation=False, size=1000, verbose=False)[source]¶
- class lore_explainer.neighgen.GeneticGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1, alpha1=0.5, alpha2=0.5, metric=<function neuclidean>, ngen=100, mutpb=0.2, cxpb=0.5, tournsize=3, halloffame_ratio=0.1, random_seed=None, verbose=False)[source]¶
- class lore_explainer.neighgen.GeneticProbaGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1, alpha1=0.5, alpha2=0.5, metric=<function neuclidean>, ngen=100, mutpb=0.2, cxpb=0.5, tournsize=3, halloffame_ratio=0.1, bb_predict_proba=None, random_seed=None, verbose=False)[source]¶
- class lore_explainer.neighgen.NeighborhoodGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1)[source]¶
Bases:
object
- class lore_explainer.neighgen.RandomGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1)[source]¶
- class lore_explainer.neighgen.RandomGeneticGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1, alpha1=0.5, alpha2=0.5, metric=<function neuclidean>, ngen=100, mutpb=0.2, cxpb=0.5, tournsize=3, halloffame_ratio=0.1, random_seed=None, verbose=False)[source]¶
Bases:
lore_explainer.neighgen.GeneticGenerator,lore_explainer.neighgen.RandomGenerator
- class lore_explainer.neighgen.RandomGeneticProbaGenerator(bb_predict, feature_values, features_map, nbr_features, nbr_real_features, numeric_columns_index, ocr=0.1, alpha1=0.5, alpha2=0.5, metric=<function neuclidean>, ngen=100, mutpb=0.2, cxpb=0.5, tournsize=3, halloffame_ratio=0.1, bb_predict_proba=None, random_seed=None, verbose=False)[source]¶
Bases:
lore_explainer.neighgen.GeneticProbaGenerator,lore_explainer.neighgen.RandomGenerator
lore_explainer.rule module¶
- class lore_explainer.rule.ConditionEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]¶
Bases:
json.encoder.JSONEncoderSpecial json encoder for Condition types
- default(obj)[source]¶
Implement this method in a subclass such that it returns a serializable object for
o, or calls the base implementation (to raise aTypeError).For example, to support arbitrary iterators, you could implement default like this:
def default(self, o): try: iterable = iter(o) except TypeError: pass else: return list(iterable) # Let the base class default method raise the TypeError return JSONEncoder.default(self, o)
- class lore_explainer.rule.NumpyEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]¶
Bases:
json.encoder.JSONEncoderSpecial json encoder for numpy types
- default(obj)[source]¶
Implement this method in a subclass such that it returns a serializable object for
o, or calls the base implementation (to raise aTypeError).For example, to support arbitrary iterators, you could implement default like this:
def default(self, o): try: iterable = iter(o) except TypeError: pass else: return list(iterable) # Let the base class default method raise the TypeError return JSONEncoder.default(self, o)
- class lore_explainer.rule.RuleEncoder(*, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, sort_keys=False, indent=None, separators=None, default=None)[source]¶
Bases:
json.encoder.JSONEncoderSpecial json encoder for Rule types
- default(obj)[source]¶
Implement this method in a subclass such that it returns a serializable object for
o, or calls the base implementation (to raise aTypeError).For example, to support arbitrary iterators, you could implement default like this:
def default(self, o): try: iterable = iter(o) except TypeError: pass else: return list(iterable) # Let the base class default method raise the TypeError return JSONEncoder.default(self, o)
- lore_explainer.rule.apply_counterfactual(x, delta, feature_names, features_map=None, features_map_inv=None, numeric_columns=None)[source]¶
- lore_explainer.rule.get_counterfactual_rules(x, y, dt, Z, Y, feature_names, class_name, class_values, numeric_columns, features_map, features_map_inv, bb_predict=None, multi_label=False)[source]¶
- lore_explainer.rule.get_rule(x, dt, feature_names, class_name, class_values, numeric_columns, multi_label=False)[source]¶
lore_explainer.util module¶
- lore_explainer.util.best_fit_distribution(data, bins=200, ax=None)[source]¶
Model data by finding best fit distribution to data
- lore_explainer.util.calculate_feature_values(X, numeric_columns_index, categorical_use_prob=False, continuous_fun_estimation=False, size=1000)[source]¶