With the development of machine learning through the years, no code environments and tools are becoming increasingly popular among the machine learning community. Though many such tools provide capabilities such as data visualization, data pre-processing and model development, there are few tools that provide capabilities of building deep learning models without code. One such tool is BigML. BigML provides commoditized machine learning as a service for business analysts and application integration.
In this article, we will discuss the following points in detail:-
- What are the services of BigML?
- Creating a deep learning model with BigML
What are the services of BigML?
The goal of BigML is simple. It is to make machine learning easy, simple and beautiful for all users. A machine learning or deep learning model can be built with just 3-4 clicks. BigML offers other features as well. The main modes of service are:
Web Interface: This mode guides the user to upload a dataset, make a descriptive predictive model, and evaluate the model. It uses the pipeline approach and is fast and responsive. The web interface also includes other features like downloadable trees, sunburst graphs, and one-click ensemble models.
Command Line Interface: The command-line tool is called bigmler that is built on python API. The service allows more flexibility than the web interface like the choice of making predictions locally or remotely, and performing tasks such as cross-validation.
API: A REST API is provided that can be used as a wrapper to be included in any programming language. Along with Python, the API is provided for Ruby, PHP, Java, C#, NodeJS, Clojure, Bash (curl calls), and Objective C.
Creating a deep learning model with BigML
To build a deep learning model you will have to first set up an account by going here. After setting up an account which is free of cost up to 16MB of data, you will find the dashboard with pre-existing datasets.
The dataset
You can use these datasets or to upload your own dataset, click on the upload button and select your dataset. I will use a simple sentiment analysis dataset that you can download from here. The dataset contains a set of tweets that are either positive or negative. Positive tweets are denoted by 1 and negative with 0.
Once you have uploaded the dataset you can see it display on the dashboard.
Next, click on the dataset you have just uploaded. Select the 1-click dataset option as shown below and the dataset is pushed to the cloud.
The one-click dataset shows the missing values and the distribution of the dataset.
The BigML tool is very smart and does not require any pre-processing. You don’t have to use tokenizer, use word2vec or word clouds to make the predictions. Here, we have decided to use a deep neural network so the only step before we build our model is to split the dataset into training and test set. You can do so by clicking the first icon on the right-hand side.
Train -test split
Here you can select the size of your dataset training and test sets.
After selecting the size, click on create training and test and you will see the spilt dataset before you.
Model building
Now it is time to build the model. To build a deep learning model click on the icon and select deepnet as shown in the screenshot below.
Once you have selected this the model automatically understands the requirements of the model and the following window is shown.
The optimization, the objective is all automatically set. But these can be changed as per user requirements as well. After you have set the parameters you can select the create Deepnet option and wait for a while. Within minutes the model is trained and ready for an evaluation.
Note: since the dataset used here contains only text there is no graphical representation after training. But, it will be present if your dataset includes numbers.
As you can see the number of hidden layers is 1, the optimizer is adam and the learning rate is 0.01. All of this was automatically decided and done with BigML. Now to see the accuracy and result, follow the steps as shown below.
Evaluation
Click on evaluate to evaluate the model and find the performance on the test dataset.
The model accuracy is 71% which is a good score considering the fact that there was no pre-processing or tokenization done on the dataset. But for more proof, it is always better to make a prediction and check how the model performs.
Prediction
To predict, click on the predict option. This shows a window where you can type a random tweet and make a prediction.
When the tweet said ‘he hates that author’ the word hate is negative and hence the prediction was 0. But with a positive tweet, the prediction is 1. This shows the model is working quite well.
Conclusion
BigML is a mighty tool in the field of machine learning and we just saw how to build a deep learning model with just three clicks. There is a lot left to explore in this tool like unsupervised learning, collaborative filtering etc. But, this tool is of great use for the data science world.