Have ideas to improve npm?Join in the discussion! »

    @jsonstack/jsonm

    1.1.0 • Public • Published

    JSONM

    Coverage Status Build, Test, Release

    Description

    JSONM is a module that creates Tensorflow models with JSON.

    Jump right in

    JSONM is designed so software engineers and machine learning engineers can quickly build, train, save, and load Tensorflow based AI & ML Models. The JSONM Library includes a JSONM UMD module with batteries included so you can use JSONM in the browser without transpilers or any additional setup/configuration. The JSONM UMD is ideal for JAMstack Applications.

    Usage

    The idea behind JSONM is to enable rapid model development. JSONM attempts to automate the data pre-processing and feature engineering needed for most modeling tasks.

    Data Scientists who are more comfortable finely tuning hyperparameters and controlling pre-processing, scaling and normalization of datasets can also configure JSONM to meet specific model requirements.

    What's included

    JSONM currently supports the following models

    • General purpose multivariate based predictions
    • Multivariate linear regression based predictions
    • General purpose multivariate classification based descriptions
    • General purpose multivariate timeseries based forecasts
    • General purpose content based recommendations (coming soon)
    • General purpose cohort analysis (coming soon)

    Installation

    $ npm i @jsonstack/jsonm

    JSONM Manual


    Basic Usage

    import { getModel } from '@outsights/jsonm';
    //Iris Dataset e.g from https://raw.githubusercontent.com/repetere/modelx-model/master/src/test/mock/data/iris_data.csv
    const type = 'ai-classification';
    const dataset = [
      {
        "sepal_length_cm": 5.1,
        "sepal_width_cm": 3.5,
        "petal_length_cm": 1.4,
        "petal_width_cm": 0.2,
        "plant": "Iris-setosa",
      },
    //  ...
      {
        "sepal_length_cm": 7.0,
        "sepal_width_cm": 3.2,
        "petal_length_cm": 4.7,
        "petal_width_cm": 1.4,
        "plant": "Iris-versicolor",
      },
      // ...
      {
        "sepal_length_cm": 5.9,
        "sepal_width_cm": 3.0,
        "petal_length_cm": 5.1,
        "petal_width_cm": 1.8,
        "plant": "virginica",
      }
    ]
    const inputs = ['sepal_length_cm','sepal_width_cm','petal_length_cm','petal_width_cm', ];
    const outputs = [ 'plant',];
    const on_progress = ({ completion_percentage, loss, epoch, status, logs, defaultLog, }) => { 
      console.log({ completion_percentage, loss, epoch, status, logs, defaultLog, });
    }
    const IrisModel = await getModel({
      type,
      dataset,
      inputs,
      outputs,
      on_progress,
    }); 
    await IrisModel.trainModel()
    const predictions = await IrisModel.predictModel({ 
      prediction_inputs:[
        { sepal_length_cm: 5.1, sepal_width_cm: 3.5, petal_length_cm: 1.4, petal_width_cm: 0.2, },
        { sepal_length_cm: 5.9, sepal_width_cm: 3.0, petal_length_cm: 5.1, petal_width_cm: 1.8, },
      ],
    }); // => [ { plant:'Iris-setosa' }, { plant:'Iris-virginica' }, ]

    Example

    <iframe width="100%" height="500" src="https://jsfiddle.net/yawetse/4ph1vwes/21/embedded/result,js,html,css,resources/dark/" allowfullscreen="allowfullscreen" allowpaymentrequest frameborder="0"></iframe>

    Development

    Note Make sure you have typescript installed

    $ npm i -g typescript 

    For generating documentation

    $ npm run doc

    Notes

    Check out https://repetere.github.io/jsonm/ for the full jsonm Documentation

    Testing

    $ npm test

    Contributing

    Fork, write tests and create a pull request!

    License


    MIT

    Install

    npm i @jsonstack/jsonm

    DownloadsWeekly Downloads

    4

    Version

    1.1.0

    License

    none

    Unpacked Size

    56.4 MB

    Total Files

    126

    Last publish

    Collaborators

    • avatar