No Code / Less Code Machine Learning/Deep Learning

~ Vimal 

As a novice, one will feel alienated with the buzz words and vocab used in the context of ML/DL world. To bring more people into the AI scenario, several of the tools are being developed by researchers and companies worldwide. They frame this with the phrase “Democratizing AI”. The corporates of course focus mainly on the subscription business model for enabling one to make their custom machine learning / deep learning model. Whereas few of the academia geeks focus on developing tools to bring the common man into the AI world. Some of the examples include

  • Ktrain
  • Ludwig
  • Fastai

In this blog post I wish to introduce a simple and easy to use library ktrain. This is a high level wrapper library for the Tensorflow keras(a low level API like library for the TF). Using this library we can  build, train & deploy a deep learning model at ease. It also provides interfaces and includes functionalities from other SOA deep learning library PyTorch(from FB Research).It abstracts the various processes one will encounter while building a deep learning model for his/her use case. It provides support to create models for text & image processing workflows. Text processing or widely referred as Natural Language processing is the toughest job every machine learning engineer will encounter. There will be a lot of bias in selecting the different pretrained models for different tasks(sentiment analysis, text classification, text generation, Q/A systems etc.). This ktrain library comforts the user by doing all the heavy lifting. A text classification pipeline will only require 3 lines of python code to train and build a model. It also possesses the methods to save the model for predicting the unknown datasets. One catch is the zeroshot classifier pipeline which supports the user to classify the text/sentences/documents without training. It has support to import all the transformer models like BERT, distilBERT, XLNet etc. Image classification task is easily achievable with the pretrained model like ResNet50, Inception etc. It supports graph & tabular dataset also to enable the user for custom building a model.

A quick tutorial to execute a zeroshot sentiment analysis classification(binary classification – Positive/Negative)

  1. Install the ktrain through pip 
  2. Execute the code

With the introduction of transfer learning capacities(through transformer architecture) to the natural language related tasks, the NLI/NLU/NLG(Natural Language Inference/Understanding/Generation) field is speeding up in the last couple of years paving the way to surpass the human capabilities in all the language related tasks.