Package: niaaml-gui
NiaAML-GUIThis is a basic graphical user interface intended for users of theNiaAMLPython package.Python versions:3.9.x, 3.10.x, 3.11.xInstallationInstall NiaAML-GUI with pip:pipinstallniaaml_guiAfter a successful installation, run themain.py:pythonmain.pyFedora LinuxTo install NiaAML GUI on Fedora, use:$dnfinstallNiaAML-GUIAlpine LinuxTo install NiaAML GUI on Alpine Linux, please enable Community repository and use:$apkaddniaaml-guiUsageNiaAML GUI application allows you to use main features of theNiaAMLframework. There are two views in the application. In the first one, you can prepare an environment for a pipeline optimization process. The purpose of the second one is to allow you to use an existing pipeline from a file.The application currently supports data input in a form of CSV files.Optimization ViewBelow is a screenshot of the first view with labeled components and you can find a description for each component under the screenshot.1:Tabbed view for choosing components for the optimization. Clicked components get transferred to their corresponding brackets (labels5,6and7).2:Input CSV dataset's file selection widget. After the dataset has been selected, you can also view and edit it using the edit button next to theSelect filebutton.Also make sure you check theCSV has headercheckbox in case the selected CSV file has a header row.Below you can se a screenshot of the CSV file's editting window.3:Dropdown widget for categorical features' encoder selection. It will be ignored in case the dataset contains no categorical features.4:Dropdown widget for missing data imputer selection. It will be ignored in case the dataset contains no missing values.5:List of selected feature selection algorithms (optional).6:List of selected feature transform algorithms (optional).7:List of selected classifiers.8:Dropdown widget for the selection of components' selection optimization algorithm.9:Dropdown widget for the selection of hyperparameters' tuning optimization algorithm. Defaults to8if none is selected.10:Population size for the components' selection process.11:Population size for the hyperparameters' tuning process.12:Number of evaluations during the components' selection process.13:Number of evaluations during the hyperparameters' tuning process.14:Dropdown widget for the selection of a fitness function to use during the pipeline evaluation step.15:Destination of the optimization's result (pipeline and text file).Optimization:Below you can see screenshots of views during and after the optimization has finished.Usage ViewBelow is a screenshot of the second view with labeled components and you can find a description for each component under the screenshot.1:Pipeline file selection widget.2:Input CSV file selection widget. The file should contain the same headers (if any) than the dataset in the optimization process and there should be no classes (expected results) present. After the dataset has been selected, you can also view and edit it using the edit button next to theSelect filebutton.Also make sure you check theCSV has headercheckbox in case the selected CSV file has a header row.RunYou get a similar output than in the optimization process, but this time there is an array of predicted values present.ExampleLets say we want to find an optimal classification pipeline for theEcoli dataset[1]. You can see the optimization setup in the screenshot below.We hit theStart optimizationbutton and wait... You can see the output in the screenshot below.There are also 2 new files in the selected destination directory.Now we can use the exported pipeline file for further classification on the unseen data.The result for 5 individuals is the screenshot below.References[1]Dua, D. and Graff, C. (2019).UCI Machine Learning Repository. Irvine, CA: University of California, School of Information and Computer Science.Cite usL. Pečnik, I. Fister Jr. "NiaAML: AutoML framework based on stochastic population-based nature-inspired algorithms." Journal of Open Source Software 6.61 (2021): 2949.