Good Contents Are Everywhere, But Here, We Deliver The Best of The Best.Please Hold on!
Your address will show here +12 34 56 78


Interest in Artificial Intelligence and Machine Learning has seen a significant boom in recent times as the techniques and technologies behind them have quickly emerged from the research labs to the mainstream and into our everyday lives.

AI is helping organizations to automate routine operational tasks that would otherwise need to be performed by employees, often at a steep time and financial cost. By automating high-volume tasks, the need for human input in many areas is being reduced, creating more efficient and cost-effective processes.

Today we’re going to take a look at why we are seeing this rapid increase in interest in the areas of AI and Machine Learning, the key trends emerging, how various industries are leveraging them, and the challenges that lie ahead in a fascinating area with seemingly unlimited potential.

What are the main reasons behind the boom?

The mathematical approaches underlying Machine Learning are not new. In fact, many date back as far as the early 1800’s, which begs the question, why are we only now seeing this boom in Machine Learning and AI? The techniques behind these advancements generally require a considerable amount of both data and computational power, both of which continue to become more and more accessible and affordable to even the smallest of organizations. Significant recent improvements in computational capacities and an ever-expanding glut of accessible data are helping to bring AI and Machine Learning from futuristic fiction to the everyday norm. So much of what we do and touch on daily basis, whether in work, at home, or at play, contains some form of ML or AI element, even if we are not always aware of it.

We’re seeing this boom now because technological advancements have made it possible. Not only that, organizations are seeing clear and quantifiable evidence that these advancements can help them overcome a variety of operational problems, streamline their processes and enable better decision-making.

Screen Shot 2016-09-28 at 18.36.46

Key trends in Machine Learning & AI

Increased volume of data requires more powerful methods of analysis

Analyzing the sheer volume of data that is being generated on a daily basis creates a unique challenge that requires sophisticated and cutting-edge research to help solve. As the volume and variety of data sources continues to expand so too does the need to develop new methods of analysis, with research focussing on the development of new algorithms and ‘tricks’ to improve performance and enable greater levels of analysis.

Affordability and accessibility in the cloud

As the level of accessible data continues to grow, and the cost of storing and maintaining it continues to drop, more and more Machine Learning solutions hosting pre-trained models-as-a-service are making it easier and more affordable for organizations to take advantage. Without necessarily needing to hire Machine Learning experts, even the smallest of companies are now just an API call away from retrieving powerful and actionable insights from their data. From a development point of view, this is enabling the quick movement of application prototypes into production, which is spurring the growth of new apps and startups that are now entering and disrupting most markets and industries out there.

Every company is becoming a data company

Regardless of what an organization does or what industry they belong to, data is helping to drive value. Some will be using it to spot trends in performance or markets to help predict and prepare for future outcomes, while others will be using it to personalize their inventory, creating a better user experience and promoting an increased level of engagement with their customers.

Traditionally, organizational decisions have been made based on numerical and/or structured data, as access to relevant unstructured data was either unavailable, or simply unattainable. With the explosion of big data in recent time and the improvement in Machine Learning capabilities, huge amounts of unstructured data can now be aggregated and analyzed, enabling a deeper level of insight and analysis which leads to more informed decision-making.

How these trends are being leveraged

Machine Learning techniques are being applied in a wide range of applications to help solve a number of fascinating problems.

Contextualized data for a personalized UX

Today’s ever-connected consumer offers a myriad of opportunities to companies and providers who are willing to go that extra step in providing a personalized user experience. Contextualized experience goes beyond simple personalization, such as knowing where your user is or what they are doing at a certain point in time. Such experience has become a basic expectation – my phone knows my location, my smartwatch knows that I’m running, etc.

There is now a greater expectation among users for a deeper, almost predictory experience with their applications and Machine Learning is certainly assisting in the quest to meet these expectations. An abundance of available data enables improved features and better machine learning models to be created, generating higher levels of performance and predictability, which ultimately leads to an improved user experience.

Via Machine Learning, a person’s future actions can be predicted at the individual level with a high degree of confidence. No longer are you viewed as a member of a cohort. Now you are known individually by a computer so that you may be targeted surgically” – John Foreman

Internet of Things

As the rapid increase in devices and applications connected to the Internet of Things continues, the sheer volume of data being generated will continue to grow at an incredible rate. It’s simply not possible for us mere mortals to analyze and understand such quantities of data manually. Machine Learning is helping to aggregate all of this data from countless sources and touchpoints to deliver powerful insights, spot actionable trends and uncover user behavior patterns.

Software and hardware innovations

We are seeing the implementation of AI and Machine Learning capabilities in both software and hardware across pretty much every industry out there. For example;

Retail buyers are being fed live inventory updates and in many cases enabling the auto-replenishment of stock as historical data predicts the future stock-level requirements and sales patterns.

Healthcare providers are receiving live updates from patients connected to a variety of devices and again, through Machine Learning of historical data, are predicting potential issues and making key decisions that are helping save lives.

Financial service providers are pinpointing potential instances of fraud, evaluating credit worthiness of applicants, generating sales and marketing campaigns and performing risk analysis, all with the help of Machine Learning and AI-powered software and interfaces.

Every application will soon be an intelligent application

AI and machine learning capabilities are being included in more and more platforms and software, enabling business and IT professionals to take advantage of them, even if they don’t quite know how they work. Similar to the way many of us drive a car without fully understanding what’s going on under the hood, professionals from all walks of life, regardless of their level of education or technical prowess, are more and more beginning to use applications on a daily basis that appear simple and user-friendly on the surface, but are powered in many ways by ML and AI.

Challenges and opportunities going forward

Machine Learning has very quickly progressed from research to mainstream and is helping drive a new era of innovation that still has a long and perhaps uncapped future ahead of it. Companies in today’s digital landscape need to consider how Machine Learning can serve them in creating a competitive advantage within their respective industries.

Despite the significant advancements made in recent years, we are still looking at an industry in its infancy. Here are some of the main challenges and opportunities for AI and Machine Learning going forward;

Security concerns

With such an increase in collected data and connectivity among devices and applications comes the risk of data leaks and security breaches which may lead to personal information finding its way into the wrong hands and applications facing

Access to resources and data

Previously, only a few big companies had access to the quality and size of datasets required to train production-level AI. However, we’re now seeing startups and even individual researchers coming up with clever ways of collecting training data in cost effective ways. For example, researchers are now using GTA as an environment for training self-driving cars.

The same applies to research, as previously it was much more difficult for a startup or an individual researcher to get access to ‘Google-level’ tools and resources for conducting research within AI, now with the proliferation of open-source frameworks and libraries such as Torch, Theano, TensorFlow, etc. and also the openness around publications and sharing the results of research, we’re seeing a more level playing field in AI research in both the industry and academia.

Hype vs. reality

There is still somewhat of a disconnect between the potential impact advancements in AI will have on our world and how it’s actually being utilized in everyday life. In some cases technology providers, the media and PR teams are seen to be pushing the boundaries of the extent of what’s possible within AI and Machine Learning, and speculating what’s next. In some cases this can lead to frustration for the users of these technologies (consumer or enterprise) when these promises go unfulfilled, and that may cause a backlash at the expense of the entire AI industry.


News API - Sign up


Sentiment analysis is widely used to gauge public opinion towards products, to analyze customer satisfaction, and to detect trends. With the proliferation of customer reviews, more fine-grained aspect-based sentiment analysis (ABSA) has gained in popularity, as it allows aspects of a product or service to be examined in more detail. To this end, we have launched an ABSA service a while ago and demonstrated how the service can be used to gain insights into the strengths and weaknesses of a product.

For performing sentiment analysis on customer reviews (as well as with many other text classification tasks), we face the problem that there are many different categories of reviews such as books, electronics, restaurants, etc. (You only need to have a look at the Departments tab on Amazon to get a feeling for the diversity of these categories.) In Machine Learning and Natural Language Processing, we refer to these different categories as domains; every domain has their unique characteristics.

In practice, this means that a model that is trained on one domain will do worse on another domain depending on how dissimilar the two domains are. For instance, a model trained on the restaurants domain will do a lot worse on the books domain than on the comparatively more similar hotels domain. For aspect-based sentiment analysis, this problem is amplified as not only the domains but also the aspects belonging to those domains differ.

In addition, as the world becomes more globalized, customer reviews need to be analyzed in other languages besides English. We thus require large amounts of training data for a large number of language-domain pairs, which is infeasible in practice as annotation — particularly the meticulous annotation required for ABSA — is expensive.

There are two directions that complement each other, which we can take to address this deficit:

  1. We can create models that allow us to transfer existing knowledge and adapt trained models to new domains without incurring a large performance hit. This area is called domain adaptation and we will talk about this in future blog posts.
  2. We can create models that are more generic and that are able to generalize well even when trained on relatively few data by leveraging information inherent in the training data. In the rest of this blog post, we will talk about the approach we took in our EMNLP 2016 paper towards this goal.

Even though Deep Learning-based models constitute the state-of-the-art in many NLP tasks, they traditionally do well only with large amounts of data. Finding ways to help them generalize with only few data samples is thus an important research problem in its own right. Taken to the extreme, we would like to emulate the way humans learn from only few examples, also known as One-Shot Learning.

Reviews — just with any coherent text — have an underlying structure. In the discourse structure of the review, sentences are connected via different rhetorical relations. Intuitively, knowledge about the relations and the sentiment of surrounding sentences should inform the sentiment of the current sentence. If a reviewer of a restaurant has shown a positive sentiment towards the quality of the food, it is likely that his opinion will not change drastically over the course of the review. Additionally, overwhelmingly positive or negative sentences in the review help to disambiguate sentences whose sentiment is equivocal.

Existing Deep Learning models for sentiment analysis act only on the sentence level; while they are able to consider intra-sentence relations, they fail to capture inter-sentence relations that rely on discourse structure and provide valuable clues for sentiment prediction.

We propose a hierarchical bidirectional long short-term memory (H-LSTM) that is able to leverage both intra– and inter-sentence relations. Because our model only relies on sentences and their structure within a review, it is fully language-independent.


hierarchical_lstm-page-001 (1)

Figure 1: The hierarchical bidirectional LSTM (H-LSTM) for aspect-based sentiment analysis. Word embeddings are fed into a sentence-level bidirectional LSTM. Final states of forward and backward LSTM are concatenated together with the aspect embedding and fed into a bidirectional review-level LSTM. At every time step, the output of the forward and backward LSTM is concatenated and fed into a final layer, which outputs a probability distribution over sentiments.

You can view the architecture of our model in the image above. The model consists of the following components:


We use a Long Short-Term Memory (LSTM), which adds input, output, and forget gates to a recurrent cell, which allow it to model long-range dependencies that are essential for capturing sentiment.

For the \(t\)th word in a sentence, the LSTM takes as input the word embedding \(x_t\), the previous output \(h_{t-1}\) and cell state \(c_{t-1}\) and computes the next output \(h_t\) and cell state \(c_t\). Both \(h\) and \(c\) are initialized with zeros.

Bidirectional LSTM

Both on the review and on the sentence level, sentiment is dependent not only on preceding but also successive words and sentences. A Bidirectional LSTM (Bi-LSTM) allows us to look ahead by employing a forward LSTM, which processes the sequence in chronological order, and a backward LSTM, which processes the sequence in reverse order. The output \(h_t\) at a given time step is then the concatenation of the corresponding states of the forward and backward LSTM.

Hierarchical Bidirectional LSTM

Stacking a Bi-LSTM on the review level on top of sentence-level Bi-LSTMs yields the hierarchical bidirectional LSTM (H-LSTM) in Figure 1.

The sentence-level forward and backward LSTMs receive the sentence starting with the first and last word embedding \(x\_{1}\) and \(x\_l\) respectively. The final output \(h\_l\) of both LSTMs is then concatenated with the aspect vector \(a\) and fed as input into the review-level forward and backward LSTMs. The outputs of both LSTMs are concatenated and fed into a final softmax layer, which outputs a probability distribution over sentiments for each sentence.


The most popular benchmark for ABSA is the SemEval Aspect-based Sentiment Analysis task. We evaluate on the most recent edition of this task, the SemEval-2016 ABSA task. To demonstrate the language and domain independence of our model, we evaluate on datasets in five domains (restaurants, hotels, laptops, phones, cameras) and eight languages (English, Spanish, French, Russian, Dutch, Turkish, Arabic, Chinese) from the competition.

We compare our model using random (H-LSTM) and pre-trained word embeddings (HP-LSTM)  against the best model of the SemEval-2016 Aspect-based Sentiment Analysis task for each domain-language pair (Best) as well as against the two best single models of the competition: IIT-TUDA (Kumar et al., 2016), which uses large sentiment lexicons for every language, and XRCE (Brun et al., 2016), which uses a parser augmented with hand-crafted, domain-specific rules.

English Restaurants 88.1 88.1 86.7 82.1 81.4 83.0 85.3
Spanish Restaurants 83.6 83.6 79.6 75.7 79.5 81.8
French Restaurants 78.8 78.8 72.2 73.2 69.8 73.6 75.4
Russian Restaurants 77.9 73.6 75.1 73.9 78.1 77.4
Dutch Restaurants 77.8 77.0 75.0 73.6 82.2 84.8
Turkish Restaurants 84.3 84.3 74.2 73.6 76.7 79.2
Arabic Hotels 82.7 81.7 82.7 80.5 82.8 82.9
English Laptops 82.8 82.8 78.4 76.0 77.4 80.1
Dutch Phones 83.3 82.6 83.3 81.8 81.3 83.6
Chinese Cameras 80.5 78.2 77.6 78.6 78.8
Chinese Phones 73.3 72.4 70.3 74.1 73.3

Table 1: Results of our system with randomly initialized word embeddings (H-LSTM) and with pre-trained embeddings (HP-LSTM) for ABSA for each language and domain in comparison to the best system for each pair (Best), the best two single systems (XRCE, IIT-TUDA), a sentence-level CNN (CNN), and our sentence-level LSTM (LSTM).

As you can see in the table above, our hierarchical model achieves results superior to the sentence-level CNN and the sentence-level Bi-LSTM baselines for almost all domain-language pairs by taking the structure of the review into account.

In addition, our model shows results competitive with the best single models of the competition, while requiring no expensive hand-crafted features or external resources, thereby demonstrating its language and domain independence. Overall, our model compares favorably to the state-of-the-art, particularly for low-resource languages, where few hand-engineered features are available. It outperforms the state-of-the-art on four and five datasets using randomly initialized and pre-trained embeddings respectively. For more details, refer to our paper.


Text Analysis API - Sign up



Complex is a New York-based media platform for youth culture which was founded as a bi-monthly magazine by fashion designer Marc Ecko. Complex reports on trends in style, pop culture, music, sports and sneakers with a focus on niche cultures such as streetwear, sneaker culture, hip-hop, and graphic art. Complex currently reaches over 120 million unique users per month across its owned and operated and partner sites, socials and YouTube channels”



Digital ad sales is big business. How big? Well, we’re about to see digital ad spending in the US surpass TV for the first time, representing 37% of all US ad spending going in to 2017. That big! For publishers like Complex, engaged visitors means a greater exposure to ads, higher click rates and, as a result, they are able to generate a sustainable revenue stream across their publishing network.

A large, active and engaged target audience is exactly what advertisers like to see. As a result, publishers focus their efforts on providing unique, engaging and relevant content to their readers, which helps keep them active on their site, promotes future return visits and increases brand recognition.

The Challenge

The Complex Media Network welcomes more than 120 million unique visitors each month. Ultimately, the goal is to serve each and every individual user with relevant ads based on the content they are viewing and/or based on a number of other factors such as geographic location, demographic profile, device type, time of day and many more.

Complex offer varied ad-targeting features across their network, enabling ad partners to target readers based on the previously mentioned factors and triggers. However, until recently, they had little to offer partners on contextually placed advertisements.

A contextual advertising system analyzes website text for keywords and returns advertisements to the webpage based on those keywords. For example, if a visitor is reading an article about fashion, they can be targeted with ads for related products or services, such as clothes and sneakers.

The need for digital ads to become contextually relevant is greater than ever before as web users move away from engaging with online advertisements. These stats and figures certainly confirm the challenge faced by online publishers and emphasize the need for more targeted ad campaigns;

  • In a study, only 2.8% of participants thought that ads on websites were relevant to them.
  • A January 2014 study found that 18 to 34 year olds were far more likely to ignore online ads, such as banners and those on social media and search engines, than they were traditional TV, radio and newspaper ads.This is a huge chunk of the Complex target market.
  • The average clickthrough rate of display ads across all formats and placements is just 0.06%
  • Users who are retargeted to are 70% more likely to convert.

In particular, Complex were looking to automate video insertion in articles to help scale views across their sites. They already had an automatic video insertion widget in place, however the information being fed into it was the result of a manual process that ultimately proved to be unreliable. They required an intelligent automation of this process.

The Solution

With up to 70,000 web pages being analyzed on a daily basis, Complex needed to automate their processes by automatically categorizing and tagging articles based on topics, keywords and mentions of specific entities. This data could then be fed into their video insertion widget.

Complex display content-relevant videos towards the end of many of their articles. These videos contain pre-roll ads that are targeted specifically to the reader. For example, I was reading an article about Frank Ocean and at the bottom of this article I was offered a video related to singer.

If I’m reading a story about a certain person or topic, the chances are that I’ll be interested in viewing a related video. When I clicked play I was fed a pre-roll ad about mortgages from a bank here in Ireland. Yep, I’m currently house-hunting so this targeted ad was bang on the money!

Screen Shot 2016-09-21 at 13.38.38

Complex display content-relevant videos towards the end of many of their articles

Endpoints used

Complex are using our Concept Extraction endpoint to extract and disambiguate mentions of celebrities, companies, brands and locations from online content and our Classification endpoint to then categorize this content for indexing among their various publications and channels. Let’s take a closer look at each endpoint and how Complex use them to improve their processes;

Concept Extraction

The Concept Extraction endpoint extracts named entities mentioned in a document, disambiguates and cross-links them to DBpedia and Linked Data entities, along with their semantic types (including DBpedia and types). By extracting concepts, Complex could easily understand what people, places, organizations and brands are mentioned in the articles they publish and were then able to produce a rich tagging system to assist with their ad targeting.

Here’s an example from our live demo. We entered the URL for an article about rappers Lil Wayne, Birdman and Tyga and received the following results;

Screen Shot 2016-09-20 at 18.22.43


Originally, Complex were using keywords in their video insertion widget that were manually entered by editors via their CMS. However these proved to be unreliable and insufficient so they decided to automatically extract them using our Classification endpoint.

The Classification endpoint classifies, or categorizes, a piece of text according to your choice of taxonomy, either IPTC Subject Codes or IAB QAG. Complex classify their articles according to IAB QAG.

Using the same article, we analyzed the URL and received the following results;

Screen Shot 2016-09-20 at 18.29.42

The first category returned was Celebrity Fan/Gossip which fits the bill perfectly in this instance. Note how confidence in the other categories gradually declines. While still somewhat relevant, we declare our lack of confidence in them. By providing confidence scores, users can define their own parameters in terms of what confidence levels to accept, decline or review.

“Since working with the AYLIEN Text Analysis API, we have seen great improvement in CTRs on our video widget, which translates to preroll revenue.” – Ronit Shaham, Complex

The outcome

Understanding content at this depth has enabled Complex to place pin-point accurate videos and creative ads throughout their content in a semantic, less intrusive way. The concepts, categories and data points extracted are used to organize this content while being fed into an intelligent contextual ad recommendation engine and video insertion widget, which has led to a significant improvement in Click Through Rates from videos embedded within the content. This increase in CTRs has naturally boosted pre-roll revenues for Complex.

In particular, Complex found the extracted keywords to be most accurate among a number of solutions they trialled, which ultimately led them to choosing the AYLIEN Text Analysis API.

Complex Summary colour (1)

As consumers of online content become more and more immune to the effects of online ads, marketers and publishers are having to find ways to connect with them on a more personal level. Through a combination of data collection, text analysis and machine learning techniques, highly-personalized and targeted ads can now be served instantly, based on the content itself and viewer demographics. This really is a win-win for all involved as the visitor sees useful material, the publisher sees higher CTRs and the advertiser receives more traffic coming in from these clicks.

Wanna learn more semantics in advertising? Check out our blog post – Semantic Advertising and Text Analysis gives more targeted ad campaigns


Text Analysis API - Sign up



It’s certainly an exciting time be involved in Natural Language Processing (NLP), not only for those of us who are involved in the development and cutting-edge research that is powering its growth, but also for the multitude of organizations and innovators out there who are finding more and more ways to take advantage of it to gain a competitive edge within their respective industries.

With the global NLP market expected to grow to a value of $16 billion by 2021, it’s no surprise to see the tech giants of the world investing heavily and competing for a piece of the pie. More than 30 private companies working to advance artificial intelligence technologies have been acquired in the last 5 years by corporate giants competing in the space, including Google, Yahoo, Intel, Apple and Salesforce. [1]

It’s not all about the big boys, however, as NLP, text analysis and text mining technologies are becoming more and more accessible to smaller organizations, innovative startups and even hobbyist programmers.

NLP is helping organizations make sense of vast amounts of unstructured data, at scale, giving them a level of insight and analysis that they could have only dreamed about even just a couple of years ago.

Today we’re going to take a look at 3 industries on the cusp of disruption through the adoption of AI and NLP technologies;

  1. The legal industry
  2. The insurance industry
  3. Customer service

NLP & Text Analysis in the Legal industry

While we’re still a long long way away from robot lawyers, the current organic crop of legal professionals are already taking advantage of NLP, text mining and text analysis techniques and technologies to help them make better-informed decisions, in quicker time, by discovering key insights that can often be buried in large volumes of data, or that may seem irrelevant until analyzed at scale, uncovering strategy-boosting and often case-changing trends.

Let’s take a look at two examples of how legal pro’s are leveraging NLP and text analysis technologies to their advantage;

  • Information retrieval in ediscovery
  • Contract management
  • Article summarization

Information retrieval in ediscovery

Ediscovery refers to discovery in legal proceedings such as litigation, government investigations, or Freedom of Information Act requests, where the information sought is in electronic format. Electronic documents are often accompanied by metadata that is not found on paper documents, such as the date and time the document was written, shared, etc. This level of minute detail can be crucial in legal proceedings.

As far as NLP is concerned, ediscovery is mainly about information retrieval, aiding legal teams in their search for relevant and useful documents.

In many cases, the amount of data requiring analysis can exceed 100GB, when often only 5% – 10% of it is actually relevant. With outside service bureaus charging $1,000 per GB to filter and reduce this volume, you can start to see how costs can quickly soar.

Data can be filtered and separated by extracting mentions of specific entities (people, places, currency amounts, etc), including/excluding specific timeframes and in the case of email threads, only include mails that contain mentions of the company, person or defendant in question.

Contract management

NLP enables contract management departments to extract key information, such as currency amounts and dates, to generate reports that summarize terms across contracts, allowing for comparisons among terms for risk assessment purposes, budgeting and planning.

In cases relating to Intellectual Property disputes, attorneys are using NLP and text mining techniques to extract key information from sources such as patents and public court records to help give them an edge with their case.

Article summarization

Legal documents can be notoriously long and tedious to read through in their entirety. Sometimes all that is required is a concise summary of the overall text to help gain an understanding of its content. Summarization of such documents is possible with NLP, where a defined number of sentences are selected from the main body of text to create, for example, a summary of the top 5 sentences that best reflect the content of the document as a whole.

NLP & Text Analysis in the Insurance industry

Insurance providers gather massive amounts of data each day from a variety of channels, such as their website, live chat, email, social networks, agents and customer care reps. Not only is this data coming in from multiple channels, it also relates to a wide variety of issues, such as claims, complaints, policies, health reports, incident reports, customer and potential customer interactions on social media, email, live chat, phone… the list goes on and on.
The biggest issue plaguing the insurance industry is fraud. Let’s take a look at how NLP, data mining and text analysis techniques can help insurance providers tackle these key issues;

  • Streamline the flow of data to the correct departments/agents
  • Improve agent decision making by putting timely and accurate data in front of them
  • Improve SLA response times and overall customer experience
  • Assist in the detection of fraudulent claims and activity

Streamlining the flow of data

That barrage of data and information that insurance companies are being hit by each and every day needs to be intricately managed, stored, analyzed and acted upon in a timely manner. A missed email or note may not only result in poor service and an upset customer, it could potentially cost the company financially if, for example, relevant evidence in a dispute or claim case fails to surface or reach the right person/department on time.

Natural Language Processing is helping insurance providers ensure the right data reaches the right set of eyeballs at the right time through automated grouping and routing of queries and documents. This goes beyond simple keyword-matching with text analysis techniques used to ‘understand’ the context and category of a piece of text and classify it accordingly.

Fraud detection

According to a recent report by Insurance Europe, detected and undetected fraudulent claims are estimated to represent 10% of all claims expenditure in Europe. Of note here, of course, is the fraud that goes undetected.

Insurance companies are using NLP and text analysis techniques to mine the data contained within unstructured sources such as applications, claims forms and adjuster notes to unearth certain red flags in submitted claims. For example, a regular indicator of organized fraudulent activity is the appearance of common phrases or descriptions of incidents from multiple claimants. The trained human eye may or may not be able to spot such instances but regardless, it would be a time consuming exercise and likely prone to subjectivity and inconsistency from the handler.

The solution for insurance providers is to develop NLP-powered analytical dashboards that support quick decision making, highlight potential fraudulent activity and therefore enable their investigators to prioritise cases based on specifically defined KPIs.

NLP, Text Analysis & Customer Service

In a world that is increasingly focused on SLAs, KPIs and ROIs, the role of Customer Support and Customer Success, particularly in technology companies, has never been more important to the overall performance of an organization. With the ever-increasing number of startups and innovative companies disrupting pretty much every industry out there, customer experience has become a key differentiator in markets flooded with consumer choice.

Let’s take a look at three ways that NLP and text analysis is helping to improve CX in particular;

  • Chat bots
  • Analyzing customer/agent interactions
  • Sentiment analysis
  • Automated routing of customer queries

Chat bots

It’s safe to say that chat bots are a pretty big deal right now! These conversational agents are beginning to pop up everywhere as companies look to take advantage of the cutting edge AI that power them.

Chances are that you interact with multiple artificial agents on a daily basis, perhaps even without realizing it. They are making recommendations as we online shop, answering our support queries in live chats, generating personalized fitness routines and communicating with us as virtual assistants to schedule meetings.

Screen Shot 2016-09-16 at 12.21.48

A recent interaction I had with a personal assistant bot, Amy
Chat bots are helping to bring a personalized experience to users. When done right, not only can this reduce spend in an organization , as they require less input from human agents, but it can also add significant value to the customer experience with intelligent, targeted and round-the-clock assistance at hand.

Analyzing customer/agent interactions

Interactions between support agents and customers can uncover interesting and actionable insights and trends. Many interactions are in text format by default (email, live chat, feedback forms) while voice-to-text technology can be used to convert phone conversations to text so they can be analyzed.

Listening to their customers

The voice of the customer is more important today than ever before. Social media channels offer a gold mine of publicly available consumer opinion just waiting to be tapped. NLP and text analysis enables you to analyze huge volumes of social chatter to help you understand how people feel about specific events, products, brands, companies, and so on.

Analyzing the sentiment towards your brand, for example, can help you decrease churn and improve customer support by uncovering and proactively working on improving negative trends. It can help show you what you are doing wrong before too much damage has been done, but also quickly show you what you are doing right and should therefore continue doing.

Customer feedback containing significantly high levels of negative sentiment can be relayed to Product and Development teams to help them focus their time and efforts more accordingly.

Because of the multi-channel nature of customer support, you tend to have customer queries and requests coming in from a variety of sources – email, social media, feedback forms, live chat. Speed of response is a key performance metric for many organizations and so routing customer queries to the relevant department, in as few steps as possible, can be crucial.

NLP is being used to automatically route and categorize customer queries, without any human interaction. As mentioned earlier, this goes beyond simple keyword-matching with text analysis techniques being used to ‘understand’ the context and category of a piece of text and classify it accordingly.


As the sheer amount of unstructured data out there grows and grows, so too does the need to gather, analyze and make sense of it. Regardless of the industry in which they operate, organizations that focus on benefitting from NLP and text analysis will no doubt gain a competitive advantage as they battle for market share.


Text Analysis API - Sign up


In this tutorial we’re going to show you how easy it is to analyze customer opinion in reviews and social media content using the “Text Analysis by AYLIEN” Extension for RapidMiner. In particular we will walk you through building a review analysis process using our Aspect-Based Sentiment Analysis feature to mine and analyze customer reviews.

If you’re new to RapidMiner, or it’s your first time using the Text Analysis Extension, you should first read our Getting Started tutorial which takes you through the installation process and the basics behind using our extension. You can download a copy of the Extension in the RapidMiner marketplace.

N.B. If you haven’t got an AYLIEN account, you can sign up for a free account here. You’ll need this to use the Text Analysis Extension.

Aspect based Sentiment Analysis


What is Aspect-based Sentiment Analysis (ABSA)?

The whole idea behind our ABSA features is to provide a way for our users to extract specific aspects from a piece of text and measure the sentiment towards each aspect individually. Our customers use it to analyze reviews, Facebook comments, tweets and input from customer feedback forms to determine not just the sentiment of the overall text but what aspects, in particular, a customer likes or dislikes from that text.

We’ve trained domain specific models for the following industries:

  • Restaurants
  • Hotels
  • Airlines
  • Cars

Building the review analysis process

So, here’s what we’re going to do:

  • Analyze the sentiment of reviews collected in a CSV file
  • Understand the top aspects mentioned and their sentiment (positive, negative or neutral)
  • Run a correlation analysis on the words and aspects
  • Visualize our findings

Here’s what our completed process will look like when we’re finished. In this tutorial we’re going to walk you through each step of the process and what operators we used to analyze hotel reviews.

Completed RapidMiner Process

Step 1. Analyzing reviews

For the purpose of this tutorial we are going to use a collection of reviews we gathered on one particular hotel from publicly available sources. Our reviews were listed in a CSV file which we loaded into RapidMiner using the Read CSV operator.

Loading the reviews is the easy part. As you can see from the completed process we start with a Read CSV operator that reads the file containing all our reviews from the disk. All you need to do is to specify the path to the file. We then use the AYLIEN Analyze Aspect-Based Sentiment operator to analyze the sentiment of each review in our file.

Screen Shot 2016-09-13 at 18.51.58




Remember to set your input attribute to “Review” and to choose your domain option in the parameters section of the operator. In this case we’re using the hotels model.


Screen Shot 2016-09-12 at 12.08.10


Once you’ve ran the analysis, a new ExampleSet will be generated under the Results tab, which contains a new column for showing a list of the aspects present in each review and the respective polarity (positive, negative or neutral) of each aspect.

You can see the identified aspects and their polarity listed in the column in yellow.

Screen Shot 2016-09-09 at 11.13.28


While we have the results listed in the ExampleSet, the format they are in means it’s a little difficult to analyze and visualize them further. Which is why need to spend some time cleaning and prepping the results.

Step 2. Prepping the results

In order to make sense of the data we are going to create word vectors through a tokenization process using a “Process documents to data” operator as shown in the image below. This operator is used to create word vectors from string attributes through tokenization and other text processing functions.

Before running our tokenization we duplicate our data using a Multiply operator which allows us to run two types of analysis in parallel with different end goals in mind using the same data. Which is why we have two separate “Process documents to data” operators in our process.


Screen Shot 2016-09-13 at 19.00.56

 The ABSA Result Processor:

For the first process we’re going to tokenize our ABSA results (which are in the format “aspect:polarity”) using a simple whitespace split, and we’re going to assign weights to these newly created columns or features based on Binary Term Occurrences, i.e. a 1 if a specific aspect:polarity pair exists in a review, and 0 otherwise. You can see the various parameters we’ll use in the Parameters section below.

Screen Shot 2016-09-12 at 15.30.57


Screen Shot 2016-09-13 at 19.15.08


The Review Text Processor:

For the second processor we’re going to run some further text processing functions on the review text from our duplicated set.

First we’ll tokenize the text to create unigram tokens, we’ll then transform them all to lowercase, and clean the data by filtering out tokens that contain non-letter characters such as numbers and punctuation using a regular expression ([A-Za-z]*) and finally we’ll discard tokens shorter than 3 characters and remove all stopwords. All of these functions can be seen in the sub-process below.

Screen Shot 2016-09-12 at 15.28.38


Screen Shot 2016-09-13 at 19.14.59


So now that we have our sentiment analysis done and the data processed and cleaned, we’ll run some further processes which will make mining the data and visualizing it a little easier.  

Step 3. Splitting and filtering results


Screen Shot 2016-09-13 at 18.53.05










First we’ll use a Split operator to separate out aspects and polarity attributes (which, if you recall, are in the format “aspect:polarity” in our data, e.g. “beds:positive”). In the parameters section you should choose the attribute you want to split and the split pattern. In this case we’re going to split by “:” in our results as shown below.


Screen Shot 2016-09-13 at 19.14.43


The ExampleSet generated should resemble the one below showing the attribute split into word_1 (Aspect) and word_2 (Polarity) columns:

Screen Shot 2016-09-13 at 18.09.32


Using the duplicated results we’re going to isolate both positive and negative results using a simple Filter operator which is also shown in the image above.

Your filtered ExampleSets should resemble the one displayed below, showing the positive aspects and their count. You will have also noted that we used a Sort operator to sort our results in descending order of total occurrences, i.e. which aspect:polarity pairs appeared most frequently in the entire review set, which will help in our visualization process.

Screen Shot 2016-09-13 at 18.09.05

Step 4. Correlation analysis

The final step before we visualize our results is running a correlation analysis between words used in our reviews and the positive, negative and neutral aspects. We want to see which words are most commonly used to express a certain sentiment (positive, negative or neutral) towards a certain aspect (e.g. beds).

Luckily in RapidMiner this is very easy to do using the Correlation Matrix operator. In order to use it however we first need to join the two ExampleSets that we created separately, so we’ll have the words and the aspect:polarity pairs in one dataset. To be able to do that, we need to assign numerical IDs to our results, which can be done with the Generate ID operators. Afterwards we’ll simply use the Join operator to merge these ExampleSets and feed the result to the Correlation Matrix operator.


Screen Shot 2016-09-13 at 18.52.42








Your Correlation Matrix should resemble the one below:

Screen Shot 2016-09-13 at 18.08.47


The higher the correlation coefficient (the values in the matrix), the stronger the correlation, with 1 being the highest and -1 the lowest, i.e. an inverse correlation.

Using the matrix table you can filter and identify words extracted from reviews that correlate with a certain aspect:polarity attribute and vice-versa, as shown in the example below where words like dirty, blankets, complaint, dingy and cigarette correlate with the negative references to cleanliness.

Screen Shot 2016-09-13 at 16.24.40

Step 5. Basic Visualization

Doing basic visualizations in RapidMiner is easy using either the Charts function or the Advanced charts capabilities in your Results tabs. Below we’ve used some simple bar charts to visualize our findings.


Negative aspects mentioned

Screen Shot 2016-09-13 at 18.08.37

Positive aspects mentioned

Screen Shot 2016-09-13 at 18.07.58

Polarity of aspects mentioned

Screen Shot 2016-09-13 at 18.07.05


You can download the entire RapidMiner Process and try it for yourself – Download the process

If you’d like to read more about how you can collect reviews for analysis using RapidMiner. Check out our tutorial on Scraping Rotten Tomatoes reviews with RapidMiner.

We’ve also found some useful customer review datasets which you can use if you’d like to build this process yourself using sample reviews.


Text Analysis API - Sign up


Welcome to Part 3 of our Getting Started with the News API series. In Part 1 we introduced you to the API, the demo/query builder and the supporting interactive documentation. We also showed you how to perform a variety of basic searches to help you get familiar with the API.

In Part 2 we began to explore some of the more advanced capabilities that the API has to offer from an analysis and insights point of view, introducing you to the various endpoints available to you.

Whether you’re pushing data from the News API into an app, resurfacing the analysis in a news feed or building intuitive dashboards with the extracted data, the News API enables you to obtain a deep understanding for what’s happening in the news, in near real-time.

Today we’ll be focusing on some of the more advanced search techniques available to you in the News API, in particular;

  • Searching by date
  • Searching by location
  • Searching and sorting by Alexa Rank
  • Working with categories

Before you go any further – have you created an AYLIEN account?
If not, we recommend you sign up for your Free trial and head back to Part 1 to learn the basics of search, making calls and creating specific search queries.

Already created your account and checked out Part 1 and Part 2? Great! Let’s kick on with Part 3, starting with searching by dates.

Making calls:

We’ve created SDKs for some of the most popular programming languages which make using the API super easy. We’ve included example search queries for you to try for yourself throughout the post.


News API results are returned in JSON format, making it easy for you to do as you please with the data. Throughout this post, we will be displaying charts and graphs that we generated using the JSON results returned from the search query examples provided.

1. Searching by date

The ability to search and source stories according to specific time and date ranges enables you to target news content generated around certain events. As we know, media coverage and public opinion can change day by day, making this search feature all the more important. By pinpointing specific date ranges, we can best analyze the content produced, the opinions held and the sentiment towards our entities and categories of interest.

Example Queries

As an example, and in keeping with our focus on the US Presidential Election, let’s search using the following two queries that are each 3 days in length, but separated by about 3 months;

Mentions of Donald Trump between June 16 – June 18 2016


Mentions of Donald Trump in the past 3 days


With so much change in the race to become the next president over the past 3 months, the media reaction and variance in results between then and now should provide a very interesting comparison and analysis! Below we compare and visualize sentiment levels from these two time periods.

sentitrumpNote:The date format required here is a restricted form of the canonical representation of dateTime in the XML Schema specification (ISO 8601). You can learn more about working with dates and XML Schema specification (ISO 8601) in our documentation.

2. Searching by location

The geographic origin of a news story can have a considerable effect on its content, style and writer bias towards certain aspects and opinions. The News API gives you ample flexibility when it comes to working with locations. Whether you want to source stories from a particular location, about a particular location or simply mentioning a particular location, we have you covered.

There are three ways to work with locations in the News API;

Source Location refers to where the source HQ is located. For example, The Irish Times is based in Dublin, Ireland. Searching Dublin and/or Ireland will therefore return stories retrieved from this source.

Source Scope refers to the geographical regions that a source covers. For example, a source may be located in the UK but focuses its content on French politics.The source scope would therefore be France.

Mentioned Locations is used to identify when a location as a keyword or entity is mentioned in the title or body of a story. For example, you may want to source stories mentioning Ohio in the title during the US election.

Example Queries

Source Location

Stories about US Presidential Elections published by sources from Great Britain

Source Scope

Stories about US Presidential Elections published by sources who cover Irish news

Mentioned Location

Stories about US Presidential Elections with `New York` mentioned in their title

Learn more about working with locations in our documentation.

3. Searching and sorting by Alexa Rank

By including specific Alexa ranking parameters in your content search you can significantly increase the chances that your results/stories are coming from reputable, popular and trustworthy sources. This is particularly relevant to News API users who are pushing content to apps and news feeds for their own users to consume.

Let’s take a look at an example where we want to only search for a specific entity mentioned on sources from a defined range of Alexa rankings.

Example Query

Search for stories that mention Hillary Clinton in the past 7 days from sources with an Alexa rank between 1 and 1000.


Screen Shot 2016-09-06 at 15.00.22

The image above is taken from our online Demo using the search query provided. Note the Alexa rank of the The New York Times displayed below the image to the left.

We’ve added Alexa integration to nearly all News API endpoints. Here’s a couple of visualized examples using two of the endpoints we covered in Part 2, ‘Stories Over Time’ using the /time_series endpoint and a World Cloud generated from /trends.

Screen Shot 2016-09-06 at 15.04.55

For a more in-depth look at Alexa rank searching in the News API, check out our blog post – Searching and sorting by Alexa rank in the News API.

4. Working with categories

Knowing the high-level semantic category of stories can be extremely useful in your search for, and analysis of, news content. Our classifier is capable of classifying content into two taxonomies, depending on your preference or use case; IPTC Subject Codes and IAB QAG.

In many cases, our News API users rely on category-specific searches to source highly relevant news stories. For example, while a financial news aggregator may have little interest in the daily reportings of a Presidential election, they will certainly be interested in how it affects market performance, consumer confidence and even international relations. They can therefore narrow their search to focus on categories such as Personal FInance, producing relevant stories similar to the one shown below.

Screen Shot 2016-09-06 at 15.49.55

Example Query

Mentions of election in the past month classified as Personal Finance under IAB QAG



Learn more about working with categories in our documentation.

Summary and Recap

We hope that you have enjoyed our Getting Started guides and have gained a solid understanding of how the News API can be used as a powerful tool in your news content sourcing and analysis.

As a quick recap, here are the key points we have covered over the 3 part series;

Part 1

  • Basic Search
  • Targeted Search

Part 2

  • Time Series – leveraging time stamped data
  • Sentiment – comparing the positive/negative polarity in author opinion
  • Histograms – working with numerical data points and metrics
  • Trends – uncovering useful insights

Part 3

  • Searching by date
  • Searching by location
  • Searching and sorting by Alexa Rank
  • Working with categories

News API - Sign up


Yesterday I was talking to a friend at a Starbucks by the River Liffey, and I explained to him how I, as a solo founder, approach taking advice from my team and advisors. I don’t think there is anything novel or special about my approach; I think it simply boils down to openness, trust and good communication.

He immediately came back to me and said: “So you’ve basically made a co-founder out of your team?” and I felt like that’s exactly what I’ve tried to do.

Having this ‘virtual’ co-founder has been a crucial step in our progress and development as a company, and in my personal development, and I always encourage other founders to engage with advisors and mentors in areas they lack expertise in, which if done right, could really provide a level of help and support you would normally get from a second or third or fourth co-founder. As a founder, you have to make tough decisions and navigate through diverse and challenging areas, so even if you have the strongest sense of intuition, you really need that second voice and that extra pair of eyeballs to validate your decisions, or at least to give you a better understanding of your intuition, and that’s where an experienced advisor can be tremendously helpful.

In my case, in addition to having the chance to work with amazingly talented, supportive and caring people on a daily basis, I’ve been lucky enough to have two brilliant advisors – Shawn Broderick and John Breslin.

Over the past couple of years, Shawn and John have helped me with various issues, from fundraising to team building to product directions and building ties with academia.

AYLIEN advisory board update

Today I’m proud to announce the addition of two new advisors to our team: Prof. Barry Smyth of UCD and INSIGHT and Dr. James (Jimi) Shanahan of UC Berkeley, Xerox and NativeX.

Both individuals are extremely well achieved, and I find it difficult to put them in a single category like “academic” or “entrepreneurial” as they’re both very well balanced between the academic/research world, and the business world, and in addition to being distinctly successful academics, they have both started, grown and sold companies. So instead, I’m going to tell you a bit more about their background and how we plan to work together in future.

Barry Smyth


Barry is a Full Professor and Digital Chair of Computer Science at University College Dublin. To date, he has published in excess of 400 scientific articles and has contributed to dozens of patents.

In 1999, Barry co-founded ChangingWorlds, bringing advanced personalization tech to the mobile sector. ChangingWorlds grew to 120 people before being acquired by Amdocs Ltd in 2008, the same year in which Barry co-founded HeyStaks Technologies Ltd – a company focused on commercializing new social search technology.

Barry received a Ph.D. in Artificial Intelligence at Trinity College in Dublin and holds a B.Sc. in Computer Science from University College Dublin.

James Shanahan


James has over 20 years’ experience developing and researching cutting-edge information management systems that harness information retrieval, linguistics, and machine learning in applications and domains such as web search and computational advertising at companies such as NativeX, Digg, AT&T, SearchMe and Turn Inc.

A frequent speaker at various academic and commercial conferences, James has published seven books and 45 refereed papers in machine learning and information systems. As you may have guessed from the image above, James is a keen kiteboarder. In fact, he represented Ireland at the Kiteboarding World Championships in both 2014 and 2015!

James received a Ph.D. in Engineering Mathematics from The University of Bristol, United Kingdom and holds a B.Sc. in Computer Science from the University of Limerick Ireland.

Going forward

Barry and Jimi have a strong knowledge of/ties to academia, and together with our other brilliant academic advisor, John Breslin, we will be working on growing our partnerships with leading universities and research institutions in Ireland and abroad. This will hopefully result in wider academic collaborations between us and other organizations, and will ultimately lead to new publications, products and internship/fellowship opportunities with us for students and researchers working in the Machine Learning and Natural Language Processing space.

If you’re interested in collaborating with us in any of these areas, please feel free to get in touch with me directly: