GN Dashboard - artificial intelligence tool
GA Dashboard is an artificial intelligence tool for applying Genetic Algorithm and Artificial Neural Networks in modeling, prediction, optimization and pattern recognitions. With GN Dashboard you can solve various engineering problems from classic regression and approximation to linear programming transportation and location problems and other machine learning based problems. By providing the learning algorithms GN Dashboard uses a data of the research or experimental measures to learn about the problem. The results of learning algorithms are analytical models which can describe or predict the state of the problem, or can recognize the pattern. GN Dashboard is very easy to use, even if you have no deep knowledge of GA, GP or ANN, you can apply those methods in finding solutions. The tool can be used in modeling any kind of engineering process, which can be described with discrete data, as well as in education during teaching students about evolutionary methods, mainly GP and GA, as well as machine learning mainly Artificial Neural Networks.
The typical process of modelling with GN Dashboard can be described in 5 steps.
- Choosing the Solver Type: The first step is choosing the type of the solver. Which solver you will use depends on your intention what you want to do. For example if you want to make model for your experimental measurement you have several options which depend of your experimental data and the method you want to use. In GN Dashboard you can use Genetic Programming or Neural Nets for modelling and prediction experimental data. But this is not strictly separate as may look on the flowchart below. That means that you can user Neural Networks for prediction, but training algorithm can be based on Genetic Algorithm or Particle Swarm Optimization or Back Propagation algorithm.
- Loading Experimental Data: GN Dashboard uses powerful tool for importing your experimental data regardless of the type of data. You can import your numerical, binary or classification data. GN Dashboard can automatically define classes, or format numerical data with floating or comma separated decimal values.
- Setting Learning Parameters. After data is loaded and prepared successfully, you have to set parameters for the selected method. GN Dashboard providers various parameters for each method, so you can set parameters which can provides and generates best output model.
- Searching for the solution: GN Dashboard provides visualization of the searching solution so you can visually monitor how GN Dashboard finds better solution as increasing the iteration number. If you provide data for testing calculated model, you can also see simulation of prediction.
- Saving and exporting the results: GN Dashboard provides several options you can choose while exporting your solution. You can export your solution in Excel or text file, as well as in Wolfram Mathematica or R programming languages.
As can would be seen, working in GN Dashboard follows the same procedures regardless of the problem type. That means you have the same set of steps when modelling with Genetic Programming or Neural Networks. In fact GN Dashboard contains the same set of input dialogs when you try to solve Traveling Salesman Problem with Genetic Algorithm or if you try to solve handwriting recognition by using Backpropagation Neural Networks. All learning algorithms within GN Dashboard share the same UI.
Besides parameters specific to learning algorithm, GN Dashboard provides set of parameters which control the way of how iteration process should terminates as well as how iteration process should be processed by means of parallelization to use the multicore processors. During the problem searching GN Dashboard records the history, so you can see when the best solution is found, how much time pass since last iteration process start, or how much time is remain to finish currently running iteration process.
Due to the fact that GP is the method which requires lot of processing time, GN Dashboard provides parallelization, which speed up the process of searching. Enabling or disabling the parallelization processing is just a click of the button.
One-Layer Perceptron Classifier
This sample application is similar to the above one, but it demonstrates classification of more data classes (also all of them are linearly separable from the rest of data). To be able to classify more classes this application uses already a layer of perceptrons, but not a single one. The demonstrated simplest neural network has number of outputs equal to number of classes. For a given input the network sets one of its outputs to 1 and the rest of outputs to 0. The output with value set to 1 represents class of the value given to the network.
BAOA (Big Data Online Analysis)
BAOA is the most popular for data stream mining. It includes a collection of machine learning algorithms (classification, regression, clustering, outlier detection, concept drift detection and recommender systems) and tools for evaluation.
BAOA (Big Data On-line Analysis) is a framework for data stream mining. It includes tools for evaluation and a collection of machine learning algorithms. The goal of BAOA is a benchmark framework for running experiments in the data stream mining context by proving
- storable settings for data streams (real and synthetic) for repeatable experiments
- a set of existing algorithms and measures form the literature for comparison and
- an easily extendable framework for new streams, algorithms and evaluation methods.
The workflow in BAOA follows the simple schema depicted below: first a data stream (feed, generator) is chosen and configured, second an algorithm (e.g. a classifier) is chosen and its parameters are set, third the evaluation method or measure is chosen and finally the results are obtained after running the task.
To run an experiment using BAOA, the user can choose between a graphical user interface (GUI) or a command line execution. BAOA currently supports stream classification, stream clustering, outlier detection, change detection and concept drift and recommender systems. We are working on extending BAOA to support other mining tasks on data streams.
Face Detection (Haar object detector)
Face detection using the Face detection based in Haar-like rectangular features method often known as the Viola-Jones method.
Face (or object) tracking using Viola-Jones for face detection and Camshift as the object tracker. Can be used in RGB and HSL color spaces (may require some tuning for HSL).
Visual surveillance is an attempt to detect, recognize and track certain objects from image sequences, and more generally to understand and describe object behaviors.
Motivation for Surveillance Systems
The ability to learn what normal behaviors and anomalies are.
For example it is known that in an office building entrance, people usually go straight to the lobby after entering the building. Thus individuals that go in a different direction can be considered harmful.
Increases effectiveness of the entire surveillance process by paying attention only to certain events instead of watching and analyzing several different surveillance cameras as happens today. Such a system can also decrease costs.
Crowed Flux Statistics
For example, by knowing how many cars are using a certain road and how many are coming from road A or B we can decide which road to widen.
Blood Squirting Halloween skull
Just a nice usage found on coding4fun, not all reasons have to be dead serious.