Restricted Boltzmann Machine (DL_RBM)

This function creates a Restricted Boltzmann Machine used for dimensionality reduction

An RBM is a type of neural network used for unsupervised learning. It has two layers of neurons - visible and hidden - that are connected by weights. RBMs are unique because they have symmetric connections between the visible and hidden layers and no connections within the same layer. They use contrastive divergence to adjust the weights and learn complex probability distributions of the input data. RBMs are used in applications such as image and speech recognition, dimensionality reduction, and collaborative filtering. They can learn without labeled data and be used as building blocks for larger neural network architectures.

Sample Request

Build an RBM for data clustering

{
    "project_id": 1,
    "parent_id": 7,
    "block_id": 8,
    "function_code": "DL_RBM_I",
    "args": {
    "hyp_params":{
            "n_components": 5,
            "n_iter": 5
        }
    }
}

Building a Restricted Boltzmann Machine

RBM Construction

POST https://autogon.ai/api/v1/engine/start

Request Body

NameTypeDescription

project_id*

int

The id of the current project

block_id*

int

The id of the current block

function_code*

string

The function code for current block

parent_id*

int

The id of the previous block

args*

object

Block arguments

n_components

int

Number of binary hidden units

n_iter

int

Number of iterations over the dataset

random_state

int

Pass an int for reproducible results across multiple function calls

learning_rate

float

The learning rate for weight updates

{
    "status": "true",
    "message": {
        "id": 8,
        "project": 1,
        "block_id": 8,
        "parent_id": 7,
        "dataset_url": "",
        "x_value_url": "",
        "y_value_url": "",
        "x_train_url": "",
        "y_train_url": "",
        "x_test_url": "",
        "y_test_url": "",
        "output": {}
    }
}

Sample Request

Compile and train the pre-built RBM model, using passed in Hyper Parameters

{
    "project_id": 1,
    "parent_id": 8,
    "block_id": 9,
    "function_code": "DL_RBM_T",
    "args": {
        "model_name": "titanic_model",
        "hyp_params":{
        }
    }
}

Training a Restricted Boltzmann Machine

RBM Training

POST https://autogon.ai/api/v1

Request Body

NameTypeDescription

project_id*

int

The id of the current project

hyp_params

object

hyper parameters for model compilation and training

parent_id*

int

The id of the previous block

block_id*

int

The id of the current block

function_code*

The function code for current block

args*

object

Block arguments

model_name*

String

The name the model would be saved with

{
    "status": "true",
    "message": {
        "id": 9,
        "project": 1,
        "block_id": 9,
        "parent_id": 8,
        "dataset_url": "",
        "x_value_url": "",
        "y_value_url": "",
        "x_train_url": "",
        "y_train_url": "",
        "x_test_url": "",
        "y_test_url": "",
        "output": {}
    }
}

Sample Request

Make predictions with the trained RBM model.

{
    "project_id": 1,
    "parent_id": 8,
    "block_id": 9,
    "function_code": "DL_RBM_P",
    "args": {
        "test_data": "",
    }
}

Predicting with a Restricted Boltzmann Machine

RBM Predict

POST https://autogon.ai/api/v1/engine/start

Request Body

NameTypeDescription

test_data*

String

Input data for prediction

project_id*

int

ID of the current project

block_id*

int

ID of the current block

parent_id*

int

ID of the previous block

function_code*

String

Function code for the current block

args*

object

Block arguments

{
    "status": "true",
    "message": {
        "id": 9,
        "project": 1,
        "block_id": 9,
        "parent_id": 8,
        "dataset_url": "",
        "x_value_url": "",
        "y_value_url": "",
        "x_train_url": "",
        "y_train_url": "",
        "x_test_url": "",
        "y_test_url": "",
        "output": {}
    }
}

// Some code

Last updated