MonkeyLearn is a Machine Learning platform on the cloud that allows software companies and developers to easily extract actionable data from text.
You can start for free and then upgrade to our paid plans, see our plans here.
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.
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.
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.
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.
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.
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.
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.
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.
Yes, talk to us.
Yes, it depends on your plan and you can view it in our pricing page.
The free plan has a limit of 20 requests per minute that allow you to do up to 4,000 queries per minute.
Yes, talk to us and we’ll be arranging a customized enterprise license for you.