bigml.io - the bigml api

Post on 18-Dec-2014

516 Views

Category:

Technology

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

BigML.io is a RESTful API for creating and managing BigML resources programmatically. These slide explain how to create, retrieve, update and delete BigML Sources, Datasets, Models, and Predictions.

TRANSCRIPT

BigML.io: The BigML API

October 12, 2012

BigML Inc BigML.io: The BigML API October 12, 2012 1 / 66

1 Introduction

2 BigML Resources

3 Sources

4 Datasets

5 Models

6 Predictions

7 Evaluations

8 Bindings

9 Final Remarks

BigML Inc BigML.io: The BigML API October 12, 2012 2 / 66

BigML.io: Base URL

https://bigml.io

Base URL

A RESTful API for creating and managing BigML resourcesprogrammatically.

All accesses are performed over HTTPS.

BigML Inc BigML.io: The BigML API October 12, 2012 3 / 66

BigML.io: Development Mode

https://bigml.io/dev/

Dev Mode

No credits are charged.

Limited to 1MB per resource but unlimited in the number of resources.

BigML Inc BigML.io: The BigML API October 12, 2012 4 / 66

BigML.io: Version

https://bigml.io/andromeda/

Version

BigML.io first version is named andromeda.

If you omit the version name in your API requests, you will get access tothe latest API version.

BigML Inc BigML.io: The BigML API October 12, 2012 5 / 66

BigML.io: Authentication

1 BIGML_USERNAME=alfred

2 BIGML_API_KEY=62270d2ad14eba4e349432e80d749342de5550a4

3 BIGML_AUTH="username=$BIGML_USERNAME;api_key=$BIGML_API_KEY"

Authentication

All accesses to BigML.io need to be authenticated.

Authentication is performed including your username and your BigML APIKey in every request.

If you use an environment variable (e.g. BIGML AUTH) you can keep yourcredentials out of your source code.

BigML Inc BigML.io: The BigML API October 12, 2012 6 / 66

BigML Resources

Source Dataset Model Prediction

A source is a filecontaining theraw data that

you want to useto create apredictive

model

A dataset is astructured

version of adata sourcewhere eachcolumn has

been assigned atype

A model iscreated using a

dataset asinput, selectingwhich fields to

use as inputand which field

will be theobjective

A prediction iscreated using amodel and thenew instance

that you want toclassify as input

BigML Inc BigML.io: The BigML API October 12, 2012 7 / 66

BigML.io: Source

sepal length,sepal width,petal length,petal width,species

5.1,3.5,1.4,0.2,Iris-setosa

7.0,3.2,4.7,1.4,Iris-versicolor

5.8,2.7,5.1,1.9,Iris-virginica

Create a New Source

A source is the raw data that you want to use to create a predictivemodel.

A source is usually a (big) file in tabular format.

Each column in the file represents a feature or field.

By default, the last column represents the class or objective field.

The file may have a first row or header with a name for each field.

BigML Inc BigML.io: The BigML API October 12, 2012 8 / 66

BigML.io: Source

https://bigml.io/source

Source Base URL

Datasources can be created using several data sources:Local filesRemote data accessed via HTTP or HTTPsFiles in S3 bucketsBlobs in Windows Azure storageInline data contained in the datasource creation request

Data must be in tabular format, cannot be bigger than 64GB, andcan be compressed (.Z or .gz, but not .zip)

BigML Inc BigML.io: The BigML API October 12, 2012 9 / 66

BigML.io: Creating a Source using a local file

curl https://bigml.io/source?$BIGML_AUTH -F file=@iris.csv

Creating a Source

The file must be attached in the post as a file upload

The Content-Type in your HTTP request must bemultipart/form-data, as specified by RFC2388.

BigML Inc BigML.io: The BigML API October 12, 2012 10 / 66

BigML.io: Creating a Source using a remote URL

curl https://bigml.io/source?$BIGML_AUTH \

-X "POST" \

-H "content-type: application/json" \

-d '{"remote": "https://static.bigml.com/csv/iris.csv"}'

Creating a Remote Source

The Content-Type in your HTTP request must be application/json.

URLs can be HTTP or HTTPS with realm authentication, public orprivate Amazon S3, or Windows Azure files.

BigML Inc BigML.io: The BigML API October 12, 2012 11 / 66

BigML.io: Creating a Source using inline data

curl https://bigml.io/source?$BIGML_AUTH \

-X "POST" \

-H "content-type: application/json" \

-d '{"data": "a,b,c,d\n1,2,3,4\n5,6,7,8"}'

Creating an Inline Source

The Content-Type in your HTTP request must be application/json.

Source data is included in the JSON body as a string with key“data”.

Maximum size of inline sources is 10MB.

BigML Inc BigML.io: The BigML API October 12, 2012 12 / 66

BigML.io: New Source

1 {

2 "category": 0,

3 "code": 201,

4 "content_type": "application/octet-stream",

5 "created": "2012-05-21T18:41:47.546669",

6 "credits": 0.0,

7 "description": "",

8 "file_name": "iris.csv",

9 "md5": "d1175c032e1042bec7f974c91e4a65ae",

10 "name": "iris.csv",

11 "number_of_datasets": 0,

12 "number_of_models": 0,

13 "number_of_predictions": 0,

14 "private": true,

15 "resource": "source/4f52824203ce893c0a000053",

16 "size": 4608,

17 "source_parser": {},

18 "status": {

19 "code": 2,

20 "elapsed": 0,

21 "message": "The source creation has been started"

22 },

23 "tags": [],

24 "type": 0,

25 "updated": "2012-05-21T18:41:47.546693"

26 }

New Source

BigML Inc BigML.io: The BigML API October 12, 2012 13 / 66

BigML.io: Source Arguments

One Required Type Description

file multipart form data File.remote String URL of the remote source.data String Inline data in tabular format.

Optional Type Description

category Integer The category that best describes the data.description String A description of the source of up to 8192 characters.name String The name you want to give to the new source.private Boolean Whether you want your source to be private or not.source parser Object Set of parameters to parse the source.tags List A list of strings that help classify and index your source.

Table : Source Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 14 / 66

BigML.io: Creating a Source with args

curl https://bigml.io/source?$BIGML_AUTH \

-X "POST" \

-H "content-type: application/json" \

-d '{"remote": "https://static.bigml.com/csv/iris.csv", "name": "iris"}'

Creating a Source with args

BigML Inc BigML.io: The BigML API October 12, 2012 15 / 66

BigML.io: Source Parser

1 {

2 "header": true,

3 "locale": "en-US",

4 "missing_tokens": ["?"],

5 "quote": "\"",

6 "separator": ",",

7 "trim": true

8 }

Source Parser

BigML Inc BigML.io: The BigML API October 12, 2012 16 / 66

BigML.io: Updating a Source

curl https://bigml.io/source/4f64191d03ce89860a000000?$BIGML_AUTH \

-X PUT \

-H 'content-type: application/json' \

-d '{"name": "a new name", "source_parser": {"locale": "es-ES"}}'

Updating a Source

BigML Inc BigML.io: The BigML API October 12, 2012 17 / 66

BigML.io: Deleting a Source

curl "https://bigml.io/source/4f603fe203ce89bb2d000000?$BIGML_AUTH" \

-X DELETE

Deleting a Source

Response HTTP/1.1 204 NO CONTENT

BigML Inc BigML.io: The BigML API October 12, 2012 18 / 66

BigML.io: Retrieving a Source

curl \

"https://bigml.io/source/4eee50b90a590f7d5c000008?$BIGML_AUTH"

Retrieving a Source via BigML.io

https://bigml.com/dashboard/source/4eee50b90a590f7d5c000008

Visualizing a Source via BigML.com

BigML Inc BigML.io: The BigML API October 12, 2012 19 / 66

BigML.io: Source Properties

property type filterable sortable updatable

category Integer yes yes yescode Integer no no nocontent type String yes yos nocreated Datetime yes yes nocredits Float yes yes nodescription String yes yes yesfields Object no no nofile name String yes yes nomd5 String no no noname String yes yes yesnumber of datasets Integer yes yes nonumber of models Integer yes yes nonumber of predictions Integer yes yes noprivate Boolean yes yes yesresource String no no norows Integer yes yes nosize Integer yes yes nosource String yes yes nosource status String yes yes nostatus Object no no notags List yes yes yesupdated Datetime yes yes no

Table : Source Properties

BigML Inc BigML.io: The BigML API October 12, 2012 20 / 66

BigML.io: Listing Sources

curl "https://bigml.io/source?limit=10;offset=10;$BIGML_AUTH"

Listing Sources

limit Specifies the number of sources to retrieve. Must be lessthan or equal to 200.

offset The position of the whole source list at which the retrievedsource list will start off.

BigML Inc BigML.io: The BigML API October 12, 2012 21 / 66

BigML.io: Listing Sources (cont.)

1 {

2 "meta": {

3 "limit": 10,

4 "next": "/source?limit=10&offset=20&username=francisco&api_key=aa4420adaed03ea68c850",

5 "offset": 10,

6 "previous": null,

7 "total_count": 540

8 },

9 "objects": [

10 {

11 "code": 200,

12 "content_type": "text/csv",

13 ...

14 },

15 ...

16 {

17 "code": 200,

18 "content_type": "text/csv",

19 ...

20 }

21 ]

22 }

Source Listing

BigML Inc BigML.io: The BigML API October 12, 2012 22 / 66

BigML.io: Filtering Sources

curl "https://bigml.io/source?size_gt=1048576;$BIGML_AUTH"

Retrieving sources bigger than 1 MB

Filter Description

lt Less thanlte Less than or equal togt Greater thangte Greater than or equal to

Table : Filtering Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 23 / 66

BigML.io: Sorting Sources

curl "https://bigml.io/source?order_by=-size;$BIGML_AUTH"

Sorting sources by size

order by Specifies the order of the sources to retrieve. Must be oneof the sortable fields. If you prefix the field name with “-”,the order will be descending.

BigML Inc BigML.io: The BigML API October 12, 2012 24 / 66

BigML.io: Dataset

https://bigml.io/dataset

Dataset Base URL

A dataset is a structured version of a source where each field hasbeen processed and serialized according to its type.

A field can be numeric or categorical.

Datetime and text fields are coming down the pike.

BigML Inc BigML.io: The BigML API October 12, 2012 25 / 66

BigML.io: Create a New Dataset

curl "https://bigml.io/andromeda/dataset?$BIGML_AUTH" \

-X POST \

-H 'content-type: application/json' \

-d '{"source": "/source/4ee5761c80e1c664f1000000"}'

Create a New Dataset

BigML Inc BigML.io: The BigML API October 12, 2012 26 / 66

1 { "category": 0,

2 "code": 201,

3 "columns": 5,

4 "created": "2012-05-25T06:02:40.889538",

5 "credits": 0.0087890625,

6 "description": "",

7 "fields": {

8 "000000": {

9 "column_number": 0,

10 "name": "sepal length",

11 "optype": "numeric"

12 },

13 ...

14 },

15 "locale": "en_US",

16 "name": "iris' dataset",

17 "number_of_models": 0,

18 "number_of_predictions": 0,

19 "private": true,

20 "resource": "dataset/4f66a0b903ce8940c5000000",

21 "rows": 0,

22 "size": 4608,

23 "source": "source/4f665b8103ce8920bb000006",

24 "source_status": true,

25 "status": {

26 "code": 1,

27 "message": "The dataset is being processed and will be created soon"

28 },

29 "tags": [],

30 "updated": "2012-05-25T06:02:40.889570" }

New Datatset

BigML Inc BigML.io: The BigML API October 12, 2012 27 / 66

BigML.io: Dataset Arguments

Required Type Description

source String Valid source/id

Optional Type Description

category Integer The category that best describes the dataset.description String A description of the dataset of up to 8192 characters.fields Object The fields that you want to use to create the dataset.name String Name of the dataset.private Boolean Whether you want your dataset to be private or not.size Integer Maximum number of bytes to process.tags List A list of strings that help classify and index your dataset.

Table : Dataset Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 28 / 66

BigML.io: Creating a Dataset with args

curl "https://bigml.io/dataset?$BIGML_AUTH" \

-X POST \

-H 'content-type: application/json' \

-d '{"source": "/source/4ee5761c80e1c664f1000000", "name": "my dataset"}'

Creating a Dataset with args

BigML Inc BigML.io: The BigML API October 12, 2012 29 / 66

BigML.io: Updating a Dataset

curl https://bigml.io/dataset/4f66a0b903ce8940c5000000?$BIGML_AUTH \

-X PUT

-H 'content-type: application/json' \

-d '{"name": "a new name"}'

Updating a Dataset

BigML Inc BigML.io: The BigML API October 12, 2012 30 / 66

BigML.io: Deleting a Dataset

curl "https://bigml.io/dataset/4f66a0b903ce8940c5000000?$BIGML_AUTH" \

-X DELETE

Deleting a Dataset

Response HTTP/1.1 204 NO CONTENT

BigML Inc BigML.io: The BigML API October 12, 2012 31 / 66

BigML.io: Retrieving a Dataset

curl "https://bigml.io/dataset/4f66a0b903ce8940c5000000?$BIGML_AUTH"

Retrieving a Dataset via BigML.io

https://bigml.com/dashboard/dataset/4f66a0b903ce8940c5000000

Retrieving a Dataset via BigML.com

BigML Inc BigML.io: The BigML API October 12, 2012 32 / 66

BigML.io: Dataset Properties

property type filterable sortable updatable

category Integer yes yes yescode Integer no no nocolumns Integer yes yes nocreated Datetime yes yes nocredits Float yes yes nodescription String yes yes yesfields Object no no nolocale String no no noname String yes yes yesnumber of models Integer yes yes nonumber of predictions Integer yes yes noprivate Boolean yes yes yesresource String no no norows Integer yes yes nosize Integer yes yes nosource String yes yes nosource status Boolean yes yes nostatus Object no no notags List yes yes yesupdated Datetime yes yes no

Table : Dataset Properties

BigML Inc BigML.io: The BigML API October 12, 2012 33 / 66

BigML.io: Listing Datasets

curl "https://bigml.io/dataset?limit=10;offset=10;$BIGML_AUTH"

Listing Datasets

limit The total number of datasets to retrieve (≤ 200).

offset The offset at which the dataset listing will start.

BigML Inc BigML.io: The BigML API October 12, 2012 34 / 66

BigML.io: Dataset Listing

1 {

2 "meta": {

3 "limit": 10,

4 "next": "/dataset?limit=10&offset=20&username=ciskoo&api_key=70aaae8d77699bc5d43788a5",

5 "offset": 10,

6 "previous": null,

7 "total_count": 2114

8 },

9 "objects": [

10 {

11 "code": 200,

12 "columns": 120,

13 ...

14 },

15 ...

16 {

17 "code": 200,

18 "columns": 5,

19 ...

20 }

21 ]

22 }

Dataset Listing

BigML Inc BigML.io: The BigML API October 12, 2012 35 / 66

BigML.io: Filtering Datasets

curl "https://bigml.io/dataset?size_gt=1048576;$BIGML_AUTH"

Retrieving datasets bigger than 1 MB

Filter Description

lt Less thanlte Less than or equal togt Greater thangte Greater than or equal to

Table : Filtering Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 36 / 66

BigML.io: Sorting Datasets

curl "https://bigml.io/dataset?order_by=-size;$BIGML_AUTH"

Sorting datasets by size

order by Specifies the order of the datasets to retrieve. Must be oneof the sortable fields. If you prefix the field name with “-”,they will be given in descending order.

BigML Inc BigML.io: The BigML API October 12, 2012 37 / 66

BigML.io: Model

https://bigml.io/model

Model Base URL

A model is a tree-like representation of your dataset withpredictive power.

You can create a model selecting which fields from your datasetyou want to use as input fields (or predictors) and which field youwant to predict, the objective field.

BigML Inc BigML.io: The BigML API October 12, 2012 38 / 66

BigML.io: Create a New Model

curl https://bigml.io/model?$BIGML_AUTH \

-X POST \

-H 'content-type: application/json' \

-d '{"dataset": "dataset/4f66a80803ce8940c5000006"}'

Create a New Model

BigML Inc BigML.io: The BigML API October 12, 2012 39 / 66

1 { "category": 0,

2 "code": 201,

3 "columns": 5,

4 "created": "2012-05-25T07:13:07.243623",

5 "credits": 0.03515625,

6 "dataset": "dataset/4f66a80803ce8940c5000006",

7 "dataset_status": true,

8 "description": "",

9 "holdout": 0.0,

10 "input_fields": [],

11 "locale": "en_US",

12 "max_columns": 5,

13 "max_rows": 150,

14 "name": "iris' dataset model",

15 "number_of_predictions": 0,

16 "objective_fields": [],

17 "private": true,

18 "range": [

19 1, 150

20 ],

21 "resource": "model/4f67c0ee03ce89c74a000006",

22 "rows": 150,

23 "size": 4608,

24 "source": "source/4f665b8103ce8920bb000006",

25 "source_status": true,

26 "status": {

27 "code": 1, "message": "The model is being processed and will be created soon"

28 },

29 "tags": [],

30 "updated": "2012-05-25T07:13:07.243658" }

New Model

BigML Inc BigML.io: The BigML API October 12, 2012 40 / 66

BigML.io: Model Arguments

Required Type Description

dataset String Valid dataset/id

Optional Type Description

category Integer The category that best describes the dataset.description String A description of the dataset of up to 8192 characters.input fields List The fields that you want to use to create the model.name String Name of the dataset.objective fields List The field that you want to predict.private Boolean Whether you want your dataset to be private or not.range List The range of successive instances to build the model.tags List A list of strings that help classify your dataset.

Table : Model Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 41 / 66

BigML.io: Creating a Model with args

curl https://bigml.io/andromeda/model?$BIGML_AUTH \

-X POST \

-H 'content-type: application/json' \

-d '{"dataset": "dataset/4f66a80803ce8940c5000006", "input_fields": ["000001", "000003"]}'

Creating a Model with args

BigML Inc BigML.io: The BigML API October 12, 2012 42 / 66

BigML.io: Updating a Model

curl https://bigml.io/model/4f67c0ee03ce89c74a000006?$BIGML_AUTH \

-X PUT \

-H 'content-type: application/json' \

-d '{"name": "a new name"}'

Updating a Model

BigML Inc BigML.io: The BigML API October 12, 2012 43 / 66

BigML.io: Deleting a Model

curl "https://bigml.io/model/4f67c0ee03ce89c74a000006?$BIGML_AUTH"

-X DELETE

Deleting a Model

Response HTTP/1.1 204 NO CONTENT

BigML Inc BigML.io: The BigML API October 12, 2012 44 / 66

BigML.io: Retrieving a Model

curl "https://bigml.io/model/4f66a80803ce8940c5000006?$BIGML_AUTH"

Retrieving a Model via BigML.io

https://bigml.com/dashboard/model/4f66a80803ce8940c5000006

Retrieving a Model via BigML.com

BigML Inc BigML.io: The BigML API October 12, 2012 45 / 66

BigML.io: Model Properties

property type filterable sortable updatable

category Integer yes yes yescode Integer no no nocolumns Integer yes yes nocreated Datetime yes yes nocredits Float yes yes nodataset String yes yes nodataset status Boolean yes yes nodescription String yes yes yesinput fields Object no no nolocale String no no nomax columns Integer yes yes nomax rows Integer yes yes nomodel Object no no noname String yes yes yesnumber of predictions Integer yes yes noobjective fields List no no noprivate Boolean yes yes yesrange List no no noresource String no no nosize Integer yes yes nostatistical pruning Boolean yes yes nostatus Object no no notags List yes yes yesupdated Datetime yes yes no

Table : Model Properties

BigML Inc BigML.io: The BigML API October 12, 2012 46 / 66

BigML.io: Listing Models

curl "https://bigml.io/model?limit=10;offset=10;$BIGML_AUTH"

Listing Models

limit The number of models to retrieve (≤ 200).

offset The offset at which the model listing will start off.

BigML Inc BigML.io: The BigML API October 12, 2012 47 / 66

BigML.io: Model Listing

1 {

2 "meta": {

3 "limit": 10,

4 "next": "/model?limit=10&offset=20&username=ciskoo&api_key=70aaae8d77699bc5d437876d85",

5 "offset": 10,

6 "previous": null,

7 "total_count": 1220

8 },

9 "objects": [

10 {

11 "code": 200,

12 "columns": 1150,

13 ...

14 },

15 ...

16 {

17 "code": 200,

18 "columns": 512,

19 ...

20 }

21 ]

22 }

Model Listing

BigML Inc BigML.io: The BigML API October 12, 2012 48 / 66

BigML.io: Filtering Models

curl "https://bigml.io/model?size_gt=1048576;$BIGML_AUTH"

Retrieving models bigger than 1 MB

Filter Description

lt Less thanlte Less than or equal togt Greater thangte Greater than or equal to

Table : Filtering Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 49 / 66

BigML.io: Sorting Models

curl "https://bigml.io/model?order_by=-size;$BIGML_AUTH"

Sorting models by size

order by Specifies the order of the models to retrieve. Must be oneof the sortable fields. If you prefix the field name with “-”,they will be given in descending order.

BigML Inc BigML.io: The BigML API October 12, 2012 50 / 66

BigML.io: Prediction

https://bigml.io/prediction

Prediction Base URL

A prediction is created using a model/id and the properties of thenew instance (input data) for which you wish to create a prediction.

To create a new prediction, BigML.io will automatically navigate thecorresponding model to find the leaf node that best classifies thenew instance.

BigML Inc BigML.io: The BigML API October 12, 2012 51 / 66

BigML.io: Create a New Prediction

curl https://bigml.io/prediction?$BIGML_AUTH \

-X POST \

-H 'content-type: application/json' \

-d '{"model": "model/4f67c0ee03ce89c74a000006",

"input_data": {"000001": 3}}'

Create a New Prediction

BigML Inc BigML.io: The BigML API October 12, 2012 52 / 66

1 { "code": 201,

2 "created": "2012-03-21T16:26:51.300678",

3 "credits": 0.01,

4 "dataset": "dataset/4f66a80803ce8940c5000006",

5 "dataset_status": true,

6 "fields": { ... },

7 "input_data": { "000001": 3 },

8 "locale": "en-US",

9 "model": "model/4f67c0ee03ce89c74a000006",

10 "model_status": true,

11 "name": "Prediction for species",

12 "objective_fields": [ "000004" ],

13 "prediction": { "000004": "Iris-virginica" },

14 "prediction_path": {

15 "bad_fields": [],

16 "next_predicates": [

17 { "count": 100, "field": "000002", "operator": ">", "value": 2.45 },

18 { "count": 50, "field": "000002", "operator": "<=", "value": 2.45 }

19 ],

20 "path": [],

21 "unknown_fields": []

22 },

23 "private": true,

24 "resource": "prediction/4f6a014b03ce89584500000f",

25 "source": "source/4f665b8103ce8920bb000006",

26 "source_status": true,

27 "status": { "code": 5, "message": "The prediction has been created" },

28 "updated": "2012-03-21T16:26:51.300700" }

New Prediction

BigML Inc BigML.io: The BigML API October 12, 2012 53 / 66

BigML.io: Prediction Arguments

Required Type Description

model String Valid model/id.input data Object Field’s id/value pairs representing the instance.

Optional Type Description

category Integer The category that best describes the dataset.description String A description of the dataset of up to 8192 characters.name String Name of the dataset.private Boolean Whether you want your dataset to be private or not.tags List A list of strings that help classify and index your dataset.

Table : Prediction Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 54 / 66

BigML.io: Creating a Prediction with args

curl https://bigml.io/andromeda/prediction?$BIGML_AUTH \

-X POST \

-H 'content-type: application/json' \

-d '{"input_data": {"000001": 3},

"model": "model/4f67c0ee03ce89c74a000006",

"name": "my prediction"}'

Creating a Prediction with args

BigML Inc BigML.io: The BigML API October 12, 2012 55 / 66

BigML.io: Updating a Prediction

curl https://bigml.io/prediction/4f6a014b03ce89584500000f?$BIGML_AUTH \

-X PUT \

-H 'content-type: application/json' \

-d '{"name": "a new name"}'

Updating a Prediction

BigML Inc BigML.io: The BigML API October 12, 2012 56 / 66

BigML.io: Deleting a Prediction

curl "https://bigml.io/prediction/4f6a014b03ce89584500000f?$BIGML_AUTH"

-X DELETE

Deleting a Prediction

Response HTTP/1.1 204 NO CONTENT

BigML Inc BigML.io: The BigML API October 12, 2012 57 / 66

BigML.io: Retrieving a Prediction

curl "https://bigml.io/prediction/4f6a014b03ce89584500000f?$BIGML_AUTH"

Retrieving a Prediction via BigML.io

https://bigml.com/dashboard/prediction/4f6a014b03ce89584500000f

Retrieving a Prediction via BigML.com

BigML Inc BigML.io: The BigML API October 12, 2012 58 / 66

BigML.io: Prediction Properties

property type filterable sortable updatable

category Integer yes yes yescode Integer no no nocreated Datetime yes yes nocredits Float yes yes nodataset String yes yes nodataset status Boolean yes yes nodescription String yes yes yesfields Object no no noinput data Object no no nolocale String no no nomodel String yes yes nomodel status Boolean yes yes noname String yes yes yesobjective fields List yes yes noprediction Object yes yes noprediction path Object no no noprivate Boolean yes yes yesresource String no no nosource String yes yes nosource status Boolean yes yes nostatus Object no no notags List yes yes yesupdated Datetime yes yes no

Table : Prediction Properties

BigML Inc BigML.io: The BigML API October 12, 2012 59 / 66

BigML.io: Listing Predictions

curl "https://bigml.io/prediction?limit=10;offset=10;$BIGML_AUTH"

Listing Predictions

limit The number of predictions to retrieve (≤ 200).

offset The offset at which the prediction listing will start off.

BigML Inc BigML.io: The BigML API October 12, 2012 60 / 66

1 { "category": 0,

2 "code": 201,

3 "created": "2012-05-25T07:20:35.687797",

4 "credits": 0.01,

5 "dataset": "dataset/4f66a80803ce8940c5000006",

6 "dataset_status": true,

7 "description": "",

8 "fields": { ... },

9 "input_data": { "000001": 3 },

10 "locale": "en_US",

11 "model": "model/4f67c0ee03ce89c74a000006",

12 "model_status": true,

13 "name": "Prediction for species",

14 "objective_fields": [ "000004" ],

15 "prediction": { "000004": "Iris-virginica" },

16 "prediction_path": {

17 "bad_fields": [],

18 "next_predicates": [

19 { "field": "000002", "operator": ">", "value": 2.45 },

20 { "field": "000002", "operator": "<=", "value": 2.45 }

21 ],

22 "path": [], "unknown_fields": [] },

23 "private": true,

24 "resource": "prediction/4f6a014b03ce89584500000f",

25 "source": "source/4f665b8103ce8920bb000006",

26 "source_status": true,

27 "status": { "code": 5, "message": "The prediction has been created" },

28 "tags": [],

29 "updated": "2012-05-25T07:20:35.687819" }

Prediction Listing

BigML Inc BigML.io: The BigML API October 12, 2012 61 / 66

BigML.io: Filtering Predictions

curl "https://bigml.io/prediction?created__gt=2012-01-12;$BIGML_AUTH"

Retrieving predictions created after 12/1/2012

Filter Description

lt Less thanlte Less than or equal togt Greater thangte Greater than or equal to

Table : Filtering Arguments

BigML Inc BigML.io: The BigML API October 12, 2012 62 / 66

BigML.io: Sorting Predictions

curl "https://bigml.io/prediction?order_by=-name;$BIGML_AUTH"

Sorting predictions by name

order by Specifies the order of the predictions to retrieve. Must beone of the sortable fields. If you prefix the field name with“-”, they will be given in descending order.

BigML Inc BigML.io: The BigML API October 12, 2012 63 / 66

BigML.io: Evaluation

https://bigml.io/evaluation

Evaluation Base URL

An evaluation automatically measures the performance of a modelcorrectly predicting the objective field for a pre-labeled test set.

An evaluation is created using the model/id of the model underevaluation and the a dataset/id of the testset.

BigML Inc BigML.io: The BigML API October 12, 2012 64 / 66

BigML.io: Public Bindings

Bash https://github.com/bigmlcom/bigml-bash

Python https://github.com/bigmlcom/python

R https://github.com/bigmlcom/bigml-r

iOS https://github.com/fgarcialainez/ML4iOS

Java https://github.com/javinp/bigml-java

Ruby http://vigosan.github.com/big ml/

BigML Inc BigML.io: The BigML API October 12, 2012 65 / 66

BigML.io: Final Remarks

dev mode Remember to include /dev in your URL requests to avoidcredit charges.

version Remember to include the current version name/andromeda in your URL requests to make sure thatfuture versions of the BigML API do not interfere with yourapplication.

BigML Inc BigML.io: The BigML API October 12, 2012 66 / 66

top related