In late 2016 Google announced a new service on their Google Cloud platform called Google Cloud Natural Language API. This service provides various natural language processing capabilities including entity extraction. At first sight it seems as if Google’s Cloud Natural Language’s API is a direct competitor with Idyl E3 but when given a closer look the two products are very different. This blog post compares and contrasts Idyl E3 and Google Cloud Natural Language API’s entity extraction capabilities.
From the Google Cloud Natural Language API website:
Google Cloud Natural Language API reveals the structure and meaning of text by offering powerful machine learning models in an easy to use REST API. You can use it to extract information about people, places, events and much more, mentioned in text documents, news articles or blog posts.
This sounds a lot like Idyl E3. But let’s take a closer look at the similarities and differences between Idyl E3 and the Google Cloud Natural Language API.
Comparison of Idyl E3 and Google Cloud Natural Language API
Google Cloud Natural Language API and Idyl E3 are similar in that they are both applications that expose entity extraction capabilities for natural language text over an API interface. Both accept text and return the extracted entities. Idyl E3 is an application that you manage and can be installed behind your organization’s firewall. Google Cloud Natural Language API is a software-as-a-service (SaaS) offering and Google manages the application and billing. In addition to entity extraction, Google Cloud Natural Language API also offers sentiment analysis.
Text sent to Google Cloud Natural Language API is transmitted over the public internet. Even though the text is sent using SSL encryption, this may not be acceptable for text containing sensitive information. Some workloads are not allowed to be transmitted outside of the organization. Idyl E3 runs behind a firewall so your text never leaves your network. This makes Idyl E3 ideal for security sensitive workloads.
Google Cloud Natural Language API supports identifying the following entity types: Unknown, Person, Location, Organization, Event, Work of Art, Consumer Good, Other. Idyl E3 is not limited to any set of entities. With Idyl E3 you are in full control of the entity types because you are able to create entity models for any types of entities. For instance, you can train Idyl E3 to extract Hospitals, Buildings, Bridges, Schools, Stadiums, and more.
Types of Text used for Training
The types (news articles, blog posts, encyclopedia articles, etc.) of text that was used to train the engine powering Google Cloud Natural Language API does not seem to be documented. The type of text that was used is important to provide a high-level of accuracy when extracting entities. With Idyl E3’s ability to create custom models, you can create models specifically for your text, whether it be emails, legal documents, or other text.
For optimal performance, it is very important that the text being processed is similar to the text that was used to train the models.
Google Cloud Natural Language API only supports English, Spanish, and Japanese for entity analysis (source). Idyl E3 is not limited to by language. Idyl E3 can create and use entity models for any UTF-8 language.
Google Cloud Natural Language API’s pricing is per API request. This means that the more you use it the higher your bill. This is not the case with Idyl E3. Idyl E3 has flat licensing pricing. You do not pay per request.
20,000,000 Google Cloud Natural Language API requests: Monthly price = $5,000 (20,000,000 / 1,000 * 0.25)
In contrast, with Idyl E3 you could make 20 million or 100 million API requests per month and there is no additional cost. For example, you can launch Idyl E3 Analyst Edition from the AWS Marketplace for $1.50 per hour. If used for a full month the cost would be $1,080 (plus EC2 instance fees) no matter how many extraction requests you submit to Idyl E3. As you can see, Idyl E3 can cost substantially less than Google Cloud Natural Language API.
With Idyl E3 you have full control over the entity extraction process. You can create custom sentence, token, and entity models for your text giving higher accuracy and improved performance. Idyl E3’s heuristic confidence filtering helps remove noise from the identified entities. Google Cloud Natural Language API does not have a concept of entity confidence values.
Additionally, you have full control over Idyl E3’s deployment architecture. You can also use Idyl E3 in an UIMA pipeline with the UIMA Annotator for Idyl E3.
To conclude, Idyl E3 and Google Cloud Natural Language API are very different products. They both expose an API for entity extraction from natural language text but that’s where the similarities stop. We will be offering an Idyl E3 plugin that supports using Google Cloud Natural Language API to complement Idyl E3’s entity extraction capabilities. By providing this plugin Idyl E3 will be exposing a common API for both services. Look for it to be available soon.