def main(): """ Just runs some example code. """ # setup the flow flow = Flow(name="list files") listfiles = ListFiles() listfiles.config["dir"] = str(helper.get_data_dir()) listfiles.config["list_files"] = True listfiles.config["list_dirs"] = False listfiles.config["recursive"] = False listfiles.config["regexp"] = ".*.arff" flow.actors.append(listfiles) tee = Tee() flow.actors.append(tee) convert = Convert() convert.config["setup"] = conversion.PassThrough() tee.actors.append(convert) console = Console() console.config["prefix"] = "Match: " tee.actors.append(console) load = LoadDataset() load.config["use_custom_loader"] = True flow.actors.append(load) cross = CrossValidate() cross.config["setup"] = Classifier(classname="weka.classifiers.trees.J48", options=["-C", "0.3"]) flow.actors.append(cross) summary = EvaluationSummary() summary.config["matrix"] = True flow.actors.append(summary) # print flow flow.setup() print("\n" + flow.tree + "\n") # save the flow fname = tempfile.gettempdir() + os.sep + "simpleflow.json" Flow.save(flow, fname) # load flow fl2 = Flow.load(fname) # output flow fl2.setup() print("\n" + fl2.tree + "\n")
def main(): """ Just runs some example code. """ # setup the flow helper.print_title("Output actor help") cv = CrossValidate() cv.config["setup"] = Classifier(classname="weka.classifiers.trees.J48") cv.print_help()
def main(): """ Just runs some example code. """ # setup the flow helper.print_title("Cross-validate clusterer") iris = helper.get_data_dir() + os.sep + "iris.arff" flow = Flow(name="cross-validate clusterer") filesupplier = FileSupplier() filesupplier.config["files"] = [iris] flow.actors.append(filesupplier) loaddataset = LoadDataset() flow.actors.append(loaddataset) flter = Filter() flter.name = "Remove class" flter.config["filter"] = filters.Filter( classname="weka.filters.unsupervised.attribute.Remove", options=["-R", "last"]) flow.actors.append(flter) cv = CrossValidate() cv.config["setup"] = Clusterer(classname="weka.clusterers.EM") flow.actors.append(cv) console = Console() console.config["prefix"] = "Loglikelihood: " flow.actors.append(console) # run the flow msg = flow.setup() if msg is None: print("\n" + flow.tree + "\n") msg = flow.execute() if msg is not None: print("Error executing flow:\n" + msg) else: print("Error setting up flow:\n" + msg) flow.wrapup() flow.cleanup()
def main(): """ Just runs some example code. """ # setup the flow helper.print_title("Cross-validate classifier") iris = helper.get_data_dir() + os.sep + "iris.arff" flow = Flow(name="cross-validate classifier") filesupplier = FileSupplier() filesupplier.config["files"] = [iris] flow.actors.append(filesupplier) loaddataset = LoadDataset() flow.actors.append(loaddataset) select = ClassSelector() select.config["index"] = "last" flow.actors.append(select) cv = CrossValidate() cv.config["setup"] = Classifier(classname="weka.classifiers.trees.J48") flow.actors.append(cv) branch = Branch() flow.actors.append(branch) seqsum = Sequence() seqsum.name = "summary" branch.actors.append(seqsum) summary = EvaluationSummary() summary.config["title"] = "=== J48/iris ===" summary.config["complexity"] = False summary.config["matrix"] = True seqsum.actors.append(summary) console = Console() seqsum.actors.append(console) seqerr = Sequence() seqerr.name = "errors" branch.actors.append(seqerr) errors = ClassifierErrors() errors.config["wait"] = False seqerr.actors.append(errors) seqroc = Sequence() seqroc.name = "roc" branch.actors.append(seqroc) roc = ROC() roc.config["wait"] = False roc.config["class_index"] = [0, 1, 2] seqroc.actors.append(roc) seqprc = Sequence() seqprc.name = "prc" branch.actors.append(seqprc) prc = PRC() prc.config["wait"] = True prc.config["class_index"] = [0, 1, 2] seqprc.actors.append(prc) # run the flow msg = flow.setup() if msg is None: print("\n" + flow.tree + "\n") msg = flow.execute() if msg is not None: print("Error executing flow:\n" + msg) else: print("Error setting up flow:\n" + msg) flow.wrapup() flow.cleanup()