Autogon Docs
  • Change Log
  • Get Started
  • Libraries
  • Slicing & Indexing
  • Autogon Engine (Studio)
    • Data Processing
      • Data Input (DP_1)
      • Automated Data Processing (DP_ADP)
      • Missing Data (DP_2)
      • Data Encoding (DP_3)
      • Data Split (DP_4)
      • Feature Scaling (DP_5)
      • Drop Columns (DP_6)
      • Time Stepper (DP_7)
      • Parse Datetime (DP_PDT)
      • Reorder Columns (DP_ROC)
      • Feature Sampling (DP_FSP)
      • Reshape Array (DP_RSH)
      • Column Astype (DP_ASP)
      • Show Duplicates (DP_SDC)
      • Drop Duplicates (DP_DRD)
      • Scalar to Ndarray (DP_STN)
      • Image to Ndarray (DP_ITN)
      • Dataset Info (DP_INF)
      • Dataset Correlations (DP_CRR)
      • Dataset Description (DP_DSC)
      • Dataset Datatypes (DP_DTY)
      • Dataset Uniques (DP_UNQ)
      • Dataset Stats Counts (DP_STC)
      • Principal Component Analysis (DP_PCA)
      • Text Vectorizer (DP_VEC)
      • Resampler (DP_RES)
    • Data Visualization
      • Scatter Plots (DP_SCP)
      • Ordinary Plots (DP_ORD)
      • Compare Scatter Plots (DP_CSP)
      • Pie Plots (DP_PIE)
      • Heatmap Plots (DP_HMP)
    • Machine Learning
      • Simple Linear Regression (ML_R_1)
      • Multiple Linear Regression (ML_R_2)
      • Polynomial Linear Regression (ML_R_3)
      • Support Vector Regression (ML_R_4)
      • Decision Tree Regression (ML_R_5)
      • Random Forest Regression (ML_R_6)
      • Logistic Regression (ML_CN_1)
      • K-Nearest Neighbors - KNN (ML_CN_2)
      • Support Vector Machine (ML_CN_3)
      • Kernel SVM (ML_CN_4)
      • Naive Bayes (ML_CN_5)
      • Decision Tree Classification (ML_CN_6)
      • Random Forest Classification (ML_CN_7)
      • Hierarchical Clustering (ML_CG_1)
      • K-Means Clustering (ML_CG_2)
      • XGBoost (MS_XGBOOST)
      • Grid Search (ML_GRID)
      • Shap Explain (ML_SHAP)
      • Isolation Forest (ML_ISF)
      • (ML_DBS)
    • Automated Machine Learning
      • AutoRegression (AUTO_R_1)
      • AutoClassification (AUTO_CN_1)
      • AutoRegression II (AUTO_R_2)
    • Deep Learning
      • Artificial Neural Network (DL_ANN)
      • Self Organizing Maps (DL_SOM)
      • Restricted Boltzmann Machine (DL_RBM)
    • Automated Deep Learning
      • Auto Image Classification (A_DL_IMC)
      • Auto Image Regression (A_DL_IMR)
      • Auto Text Classification (A_DL_TXC)
      • Auto Text Regression (A_DL_TXR)
      • Auto Structured Data Classification (A_DL_SDC)
      • Auto Structured Data Regression (A_DL_SDR)
      • General AutoDL Blocks (A_DL_ALL)
  • LabelCraft
    • Images, Annotations and Augmentation
    • Import and Export
    • Model Training and Prediction
  • Production APIs
    • Production Pipelines
  • Autogon Qore
    • Vision AI
    • Natural Language AI
      • Text Classification (Deprecated)
      • Text Summary (Deprecated)
      • Ask Your Data
      • Generate Synthetic Data
      • Speech To Text
      • Text To Speech
      • Sentiment Analyzer (Deprecated)
      • Conversation with Chatbot Agent
      • Conversational Interaction with GPT-4
      • Essay Marker
      • Resume Ranker
      • Translator
    • Voice Cloning
      • Create a Voice
      • Get Voices
      • Text-To-Speech
  • Other APIs
    • Project
      • List all projects
      • Create a New Project
      • Get Project Details
      • Delete a Project
    • Dataset
      • List all datasets
      • Create a Dataset
      • Get a Dataset
      • Updating a dataset
      • Delete a Dataset
      • Dataset Connection
      • Visualize Dataset
Powered by GitBook
On this page
  • Sample Request
  • Building a K-Nearest Neighbors model
  • K-Nearest Neighbors
  • Sample Request
  • Predicting with K-Nearest Neighbors
  • K-Nearest Neighbors Predict
  • Sample Request
  • K-Nearest Neighbors Metrics

Was this helpful?

  1. Autogon Engine (Studio)
  2. Machine Learning

K-Nearest Neighbors - KNN (ML_CN_2)

This function finds the K number of training examples closest (nearest neighbors) to the input data and then classifying the input data based on the majority class of its nearest neighbors.

In other words, it assigns a label to a new data point based on how similar it is to the existing data points, where similarity is defined by distance metric such as Euclidean or Manhattan.

This function can be used for both supervised and unsupervised learning.

Sample Request

Build a KNN model named, "ClassicModel"

{
    "project_id": 1,
    "parent_id": 7,
    "block_id": 8,
    "function_code": "ML_CN_2",
    "args": {
        "model_name": "ClassicModel",
        "random_state": 0,
        "n_neighbors": 5,
        "distance": "minkowski",
        "p": 2
    }
}

Building a K-Nearest Neighbors model

K-Nearest Neighbors

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

Request Body

Name
Type
Description

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

model_name*

String

Name of the model to be used for prediction.

random_state

int

Controls the randomness of the estimator (defaults to 0).

n_neighbors

int

Number of neighbors to use by default for kneighbors queries (defaults to 5).

distance

String

Metric to use for distance computation. Default minkowski, which results in the standard Euclidean distance when p = 2.

p

int

Power parameter for the Minkowski metric. When p = 1, this is equivalent to using manhattan_distance, and euclidean_distance for p = 2 (defaults to 2).

{
    "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": "{\"ClassicModel\": {\"function_code\": \"ML_R_3\", \"model_url\": ""}}"
    }
}
// Some code
const project_id = 1
const parent_id = 7
const block_id = 8

kNearestNeighbors = await client.k_nearest_neighbors(project_id, parent_id, block_id, {
    model_name: "ClassicModel",
    random_state: 0,
    n_neighbors: 5,
    distance: "minkowski",
    p: 2
});

Sample Request

Make predictions with the pre-built model passing an optional test data.

{
    "project_id": 1,
    "parent_id": 8,
    "block_id": 9,
    "function_code": "ML_CN_2_P",
    "args": {
        "model_name": "ClassicModel",
        "test_data": ""
    }
}

Predicting with K-Nearest Neighbors

K-Nearest Neighbors Predict

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

Request Body

Name
Type
Description

model_name*

String

Name of previously trained model to be used for prediction

test_data

String

Input data for prediction. Defaults to x_train_url in StateManagment

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

{
    "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": "{\"y_pred_url\": ""}"
    }
}
// Some code
const project_id = 1
const parent_id = 7
const block_id = 8

kNearestNeighborsnPredict = await client.k_nearest_neighbors_predict(project_id, parent_id, block_id, {
   model_name: "ClassicModel",
    test_data: ""
});

Sample Request

Evaluate model metrics

{
    "project_id": 1,
    "parent_id": 8,
    "block_id": 9,
    "function_code": "ML_CN_2_M",
    "args": {
        "model_name": "ClassicModel"
    }
}

K-Nearest Neighbors Metrics

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

Request Body

Name
Type
Description

project_id*

int

ID of the current project

parent_id*

int

ID of the previous block

block_id*

int

ID of the current block

function_code*

String

Function code for the current block

model_name*

String

Name of the pre-trained model to be used for evaluation

{
    "status": "true",
    "message": {
        "id": 1,
        "project": 12,
        "block_id": 10,
        "parent_id": 11,
        "dataset_url": "",
        "x_value_url": "",
        "y_value_url": "",
        "x_train_url": "",
        "y_train_url": "",
        "x_test_url": "",
        "y_test_url": "",
        "output": "{'confusion_matrix': '', 'accuracy': 0.9}"
    }
}
// Some code
const project_id = 1
const parent_id = 7
const block_id = 8

kNearestNeighborsMetrics= await client.k_nearest_neighbors_metrics(project_id, parent_id, block_id, {
    model_name: "SimpleModel",
 
});
PreviousLogistic Regression (ML_CN_1)NextSupport Vector Machine (ML_CN_3)

Last updated 2 years ago

Was this helpful?