What is MonkeyLearn?

MonkeyLearn is a Machine Learning platform on the cloud that allows software companies and developers to easily extract actionable data from text.

What is Machine Learning?

Machine Learning is a subfield within Artificial Intelligence that builds algorithms that allow computers to learn to perform tasks from data instead of being explicitly programmed.

If you are more interested in this, we strongly recommend reading our Gentle Guide to Machine Learning blog post.

What is text classification?

Text classification means assigning a class or category to a text, it is also known as tagging. One or more categories can be assigned to a particular text depending if you want to work with single or multilabel classification.

A machine learning classifier, learns to assign the corresponding category to a text by using mathematical models and algorithms that learn to associate a particular input (text) to the corresponding output (label). This is done automatically, the only thing that you have to do in MonkeyLearn if you want to create your custom text classifier, is to define your categories and upload text samples for each category. Then the algorithm will learn to do the classsifications by training over the examples that you provided. Text samples can be reviews, articles, emails, tweets, comments, any piece of text.

You can keep learning about classification in our documentation!

What is extraction?

Extraction is the mechanism by which you can extract particular pieces of data contained in a piece of text.

MonkeyLearn has different extraction modules to extract different types of data: addresses, emails, entities, company names, keywords, etc. You may select the extraction module that resolves your particular problem. In the near future we will add the feature to allow users to create their custom extractors.

You can keep learning about extraction in our documentation!

What is the difference between classification and text extraction?

The main difference between classification and text extraction, is that in classification the result may be a prediction of a label, tag or category, that usually is not present within the text and has to be predicted or induced from the text contents. On the other hand, the extraction gets particular data that can be found within the text.

For example, if you do sentiment analysis, you can categorize opinions as positive even if the word “positive” is not present in the text: it adds information to the text that has been categorized. If you do entity extraction to the same piece of text, you can get, for example, companies, locations or people mentioned within the text.

What is a pipeline?

Pipeline modules aim to let you combine many MonkeyLearn’s components by making just one request. For example, if you want to extract all the keywords from a text as well as use the topic of a text, you can use a pipeline that does both analysis with one request. The advantage is that you avoid going back and forward with the text for every analysis that you want to perform to it. As a result, you can get much faster response times.

Pipelines also let you make some processing over the text input and output so you can move all the logic of the text mining of your program to MonkeyLearn’s servers and just forget about it.

You can keep learning about pipelines in our documentation!

What is a query in MonkeyLearn?

In MonkeyLearn, each classification or extraction task is considered a query, either it’s done by the API or by the GUI.

A single API request can consume multiple queries (classifications or extractions). That is, if a classifier module is called with 150 texts, it will perform 150 classifications and will consume 150 queries.

Not every API request consumes queries: getting module details, training, deploying, uploading samples, etc, do not consume queries.

Every call to the API returns an X-Query-Limit-Request-Queries parameter which tells how many queries were consumed by that call. Also, the API Reference documentation details how many queries consumes each API call.

Pipelines consume the same amount of queries as making all the classifications and extractions independently. The advantage it’s much simpler, much faster and produces less API overhead.

Can I classify or extract more than one text with one API request?

Yes, not only is it possible, but we strongly recommend it.

With just a single API request you can send up to 200 texts to a classifier or extractor at the same time.

This is the way to get the best performance. Every classification or extraction  made (even if they are made in one request) count as a query (eg. a call to a classifier API with 200 texts means 200 classifications = 200 queries). The advantage is that they are made in much less time than if they were made by one call for every text.

How can I see how many queries do I have remaining?

There are two ways to do it: through the GUI or though the API.

If you are logged in, you can go to My Account, then at the Query Usage tab you will see your Plan limit and your Consumed queries.

If you make a request through the API, you’ll get two headers that show your current consumption:

  • X-Query-Limit-Limit: Your current query limit.
  • X-Query-Limit-Remaining: Amount of queries your account has left to use.
What happens if I exceed my query limit?

If you exceed your query limit, MonkeyLearn will respond with an error informing you about it, and will not perform the task for which it was called.

The limit is monthly based, so you can start again the next month.

If you need more queries, you can talk to us or consult our pricing.