There isn't an easy way to reuse artificial intelligence softwares. If you need to work with tumor patterns, you will need acquire a neural network that will have specific synapsis weights, and neuron quantities, applied to this scope. If you are a biologist and need recognize whales species by the their noises, you will need acquire another neural network platform, containing synapsis weights and neuron quantities completly different than the first case.
Octhum was made to solve this problem, training the intelligences with many models, verifying which model is the best, and using it. In this way, we can use various scopes in the same platform, with each scope using the the model that best suits. This is possible because Octhum require the same formatting in the database file content (showed below).
The solution is a REST API developed in PHP that works based in SaaS technology, allowing third-part software customisation (to forecast sells in a ERP, for example).
1 - Clone project in apache folder
2 - Install composer
3 - Set apache document root to octhum/doc_root folder
4 - In octhum/frameworks/lumen/ folder, run the command "composer update --no-scripts" to install all lumen dependencies
5 - Install MySql Server, and create a database
5 - Configure your environment variables (including database connection parameters) in octhum/frameworks/lumen/.env file (if .env doesn't exist, create it following the .env Laravel's model)
6 - Make some imports in php.ini, specifically mysqli.so, mysqlnd.so
7 - In octhum/frameworks/lumen/ folder, run the command "php artisan migrate" to run all lumen migrations
8 - Install PHP FANN
8.1 - Install FANN lib, running "dnf install fann-devel" (Fedora) or "sudo apt-get install libfann-dev" (Ubuntu)
8.2 - Install PECL module, running "dnf install php-pear". After that, install FANN-PHP, running "sudo pecl install fann"
8.3 - Import "fann.so" in php.ini file
If something be wrong, follow instructions in http://php.net/manual/pt_BR/fann.installation.php
9 - Serve API, running "php -S localhost:8000 -t public" in octhum/frameworks/lumen/
10 - Access http://localhost
The first screen is the intelligences list, containing all created intelligences. To create an intelligence, you should to click in button "Create Intelligence"
A windows will be opened, containing some informations to be filled. We will create an intelligence to decide the color, based in RGB inputted.
Filled the informations, we should select a file (in the moment only CSV format. There are two file examples actually, in the "files/tests" folder) in the pre-defined model, below:
In our case, classifications are the three possible colors that we defined, can be green, blue or yellow. Variables are the inputs that we will give to algorithm, to decide the classification. Octhum doesn't limit the classifications neither variables quantity.
We will now input the informations to the Octhum process.
Now that Octhum had learned about our scope, we will use the intelligence (clicking in "Use" button). A windows will appear, containing all variables defined in the database file (in our case, R, G and B).
Below, some obvious inputs made (255,0,0 obviously will be red, for example).
Below an example that isn't so obviously, matching with our interpretation, maybe.
Below a GET request example, putting the concatenated inputs on URL to know the classification