elektronn2.training.trainutils module

class elektronn2.training.trainutils.ExperimentConfig(exp_file, host_script_file=None, use_existing_dir=False)[source]

Bases: object

check_config()[source]
classmethod levenshtein(s1, s2)[source]

Computes Levenshtein-distance between s1 and s2 strings Taken from: http://en.wikibooks.org/wiki/Algorithm_Implementation/ Strings/Levenshtein_distance#Python

make_dir()[source]

Saves all python files into the folder specified by self.save_path Also changes working directory to the save_path directory

read_user_config()[source]
class elektronn2.training.trainutils.HistoryTracker[source]

Bases: object

load(file_name)[source]
plot(save_name=None, autoscale=True, close=True)[source]
register_debug_output_names(names)[source]
save(save_name)[source]
update_debug_outputs(vals)[source]
update_history(vals)[source]
update_regression(pred, target)[source]
update_timeline(vals)[source]
class elektronn2.training.trainutils.Schedule(**kwargs)[source]

Bases: object

Create a schedule for parameter or property

Examples

>>> lr_schedule = Schedule(dec=0.95) # decay by factor 0.95 every 1000 steps (i.e. decreasing by 5%)
>>> wd_schedule = Schedule(lindec=[4000, 0.001]) # from 0.001 to 0 in 400 steps
>>> mom_schedule = Schedule(updates=[(500,0.8), (1000,0.7), (1500,0.9), (2000, 0.2)])
>>> dropout_schedule = Schedule(updates=[(1000,[0.2, 0.2])]) # set rates per Layer
bind_variable(variable_param=None, obj=None, prop_name=None)[source]
update(iteration)[source]
elektronn2.training.trainutils.binary_nll(pred, gt)[source]
elektronn2.training.trainutils.confusion_table(labs, preds)[source]
Gives all counts of binary classifications situations:
labs:correct labels (-1 for ignore)
preds:0 for negative 1 for positive (class probabilities must be thresholded first)
Returns:count of: (true positive, true negative, false positive, false negative)
elektronn2.training.trainutils.error_hist(gt, preds, save_name, thresh=0.42)[source]

preds: predicted probability of class ‘1’ Saves plot to file

elektronn2.training.trainutils.eval_thresh(args)[source]

Calculates various performance measures at certain threshold :param args: thresh, labs, preds :return: tpr, fpr, precision, recall, bal_accur, accur, f1

elektronn2.training.trainutils.evaluate(gt, preds, save_name, thresh=None, n_proc=None)[source]

Evaluate prediction w.r.t. GT Saves plot to file :param save_name: :param gt: :param preds: from 0.0 to 1.0 :param thresh: if thresh is given (e.g. from tuning on validation set) some performance measures are shown at this threshold :return: perf, roc-area, threshs

elektronn2.training.trainutils.evaluate_model_binary(model, name, data=None, valid_d=None, valid_l=None, train_d=None, train_l=None, n_proc=2, betaloss=False, fudgeysoft=False)[source]
elektronn2.training.trainutils.find_nearest(array, value)[source]
elektronn2.training.trainutils.loadhistorytracker(file_name)[source]
elektronn2.training.trainutils.performance_measure(tp, tn, fp, fn)[source]
For output of confusion table gives various perfomance performance_measures:
return:tpr, fpr, precision, recall, balanced accuracy, accuracy, f1-score
elektronn2.training.trainutils.rescale_fudge(pred, fudge=0.15)[source]
elektronn2.training.trainutils.roc_area(tpr, fpr)[source]
Integrate ROC curve:
data:(tpr, fpr)
return:area
elektronn2.training.trainutils.user_input(local_vars)[source]