An open API service indexing awesome lists of open source software.

https://github.com/meta-ben/iris-data_self-organized-map

2018 - Java Machine Learning Self Organized Map based on Iris.data
https://github.com/meta-ben/iris-data_self-organized-map

iris-classification iris-dataset iris-prediction java kohonen-map machine-learning self-organizing-map

Last synced: 2 months ago
JSON representation

2018 - Java Machine Learning Self Organized Map based on Iris.data

Awesome Lists containing this project

README

        

``Reupload project from 2018 : This project was recovered so don't take commits into accounts``

🤖 IrisData-Self-Organized-Map 🧠


Machine Learning













## Overview
This project is a GUI application made with ``FXML``, it allow the user to visualize and predict iris datas using a Self-Organizing Map (SOM)
and the famous ``iris.data`` dataset as learning base.

The app learn and categorize iris datas using the file ``datas/iris.data`` and show you a kohonen map of ``neurons`` ( gray square neurons are dead ones )

Then you can use the ``datas/iris_to_predict.data`` to try the prediction ( or create your own ``{whatever_iris}.data`` )

## Features
1 - ``Play with learning variables on fly`` by modifying the following file ``settings/app_settings.json`` you can for example modify number of ``learning_phases`` or the ``learning_rate``, Rerun the learning phase to take your modification into account

2 - ``Modify neuron categorizing colors on fly`` by modifying the following file ``settings/app_settings.json`` you can play with ``iris-setosa-color`` ``iris-versicolor-color`` or ``iris-virginica-color``, Rerun the learning phase to take your modification into account

3 - ``Predict iris datas`` you can load a non-labeled ``.data`` file like the one used for example in ``datas/iris_to_predict.data`` then ask the program to predict the iris type for each vector in the file

## Run it
The github file provide a file named ``IrisData-SOM-1.0-SNAPSHOT.jar`` you can run it with the java command here : ``java --module-path $PATH_TO_FX --add-modules javafx.controls,javafx.fxml -jar IrisData-SOM-1.0-SNAPSHOT.jar``

BUT the prefered way is to use maven (``mvn``) and just do at the root project folder ``mvn javafx:run``

## Build the project
If you want to build the project you can follow the steps below :

- If you just want to build an exported jar install maven ( mvn ) and run mvn clean package at the root project folder and skip the step belows !
- Ensure you have Java installed ( used version for this rebuilt is ``java coretto-11`` )
- Download [IntelliJ IDEA Community](https://www.jetbrains.com/idea/download/other.html)
- Open the project using IntelliJ
- Make a run config using ``IrisDataSomApplication`` as main class and set java version to ``java coretto-11``
- Then you just have to press build for building the project or run to run it

Note : Build with Java 11 and based on FXML 17.0.6