diff --git a/README.MD b/README.MD index 0d58bfc..c576a7a 100644 --- a/README.MD +++ b/README.MD @@ -4,14 +4,18 @@ EDUX is a user-friendly library for solving problems with a machine learning approach. -1. [Goal](#goal) -2. [Installation](#installation) -3. [Usage - Neural Network](#usage---neural-network) -4. [K Nearest Neighbors](#k-nearest-neighbors) -5. [Features](#features) -6. [Contributions](#contributions) - -## Goal +## Features + +EDUX supports a variety of machine learning algorithms including: + +- **Multilayer Perceptron (Neural Network):** Suitable for regression and classification problems, MLPs can approximate non-linear functions. +- **K Nearest Neighbors:** A simple, instance-based learning algorithm used for classification and regression. +- **Decision Tree:** Offers visual and explicitly laid out decision making based on input features. +- **Support Vector Machine:** Effective for binary classification, and can be adapted for multi-class problems. +- **RandomForest:** An ensemble method providing high accuracy through building multiple decision trees. + + +## Goal The main goal of this project is to create a user-friendly library for solving problems using a machine learning approach. The library is designed to be easy to use, enabling the solution of problems with just a few lines of code. ## Features @@ -20,12 +24,13 @@ The library currently supports: - Multilayer Perceptron (Neural Network) - K Nearest Neighbors -- Descision Tree +- Decision Tree - Support Vector Machine +- RandomForest ## Installation -To install, include the library as a dependency in your Java project file. +Include the library as a dependency in your Java project file. ### Gradle @@ -44,12 +49,22 @@ To install, include the library as a dependency in your Java project file. ## How to use this library + NetworkConfiguration networkConfiguration = new NetworkConfiguration(...ActivationFunction.LEAKY_RELU, ActivationFunction.SOFTMAX, LossFunction.CATEGORICAL_CROSS_ENTROPY, Initialization.XAVIER, Initialization.XAVIER); + MultilayerPerceptron multilayerPerceptron = new MultilayerPerceptron(features, labels, testFeatures, testLabels, networkConfiguration); + multilayerPerceptron.train(); + + multilayerPerceptron.predict(...); + ### Working examples You can find working examples for all algorithms in the [examples](https://github.com/Samyssmile/edux/tree/main/example/src/main/java/de/example) folder. -In all examples the IRIS dataset is used. The IRIS dataset is a multivariate dataset introduced by the British statistician and biologist Ronald Fisher in his 1936 paper *The use of multiple measurements in taxonomic problems* +In all examples the IRIS or Seaborn Pinguins datasets are used. + +#### Iris Dataset +The IRIS dataset is a multivariate dataset introduced by the British statistician and biologist Ronald Fisher in his 1936 paper *The use of multiple measurements in taxonomic problems* ![Neural Network](https://hc-linux.eu/github/iris-nn.png) ## Contributions + Contributions are warmly welcomed! If you find a bug, please create an issue with a detailed description of the problem. If you wish to suggest an improvement or fix a bug, please make a pull request. Also checkout the [Rules and Guidelines](https://github.com/Samyssmile/edux/wiki/Rules-&-Guidelines-for-New-Developers) page for more information.