###### 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

Our researchers at AYLIEN keep abreast of and contribute to the latest developments in the field of Machine Learning. Recently, two of our research scientists, John Glover and Sebastian Ruder, attended NIPS 2016 in Barcelona, Spain. In this post, Sebastian highlights some of the stand-out papers and trends from the conference.

# NIPS

The Conference on Neural Information Processing Systems (NIPS) is one of the two top conferences in machine learning. It took place for the first time in 1987 and is held every December, historically in close proximity to a ski resort. This year, it took place in sunny Barcelona. The conference (including tutorials and workshops) went on from Monday, December 5 to Saturday, December 10. The full conference program is available here.

Machine Learning seems to become more pervasive every month. However, it is still sometimes hard to keep track of the actual extent of this development. One of the most accurate barometers for this evolution is the growth of NIPS itself. The number of attendees skyrocketed at this year’s conference growing by over 50% year-over-year.

Image 1: The growth of the number of attendees at NIPS follows (the newly coined) Terry’s Law (named after Terrence Sejnowski, the president of the NIPS foundation; faster growth than Moore’s Law)

Unsurprisingly, Deep Learning (DL) was by far the most popular research topic, with about every fourth of more than 2,500 submitted papers (and 568 accepted papers) dealing with deep neural networks.

Image 2: Distribution of topics across all submitted papers (Source: The review process for NIPS 2016)

On the other hand, the distribution of research paper topics has quite a long tail and reflects the diversity of topics at the conference that span everything from theory to applications, from robotics to neuroscience, and from healthcare to self-driving cars.

# Generative Adversarial Networks

One of the hottest developments within Deep Learning was Generative Adversarial Networks (GANs). The minimax game playing networks have by now won the favor of many luminaries in the field. Yann LeCun hails them as the most exciting development in ML in recent years. The organizers and attendees of NIPS seem to side with him: NIPS featured a tutorial by Ian Goodfellow about his brainchild, which led to a packed main conference hall.

Image 3: A full conference hall at the GAN tutorial

Though a fairly recent development, there are many cool extensions of GANs among the conference papers:

• Reed et al. propose a model that allows you to specify not only what you want to draw (e.g. a bird) but also where to put it in an image.
• Chen et al. disentangle factors of variation in GANs by representing them with latent codes. The resulting models allow you to adjust e.g. the type of a digit, its breadth and width, etc.

In spite of their popularity, we know alarmingly little about what makes GANs so capable of generating realistic-looking images. In addition, making them work in practice is an arduous endeavour and a lot of (undocumented) hacks are necessary to achieve the best performance. Soumith Chintala presents a collection of these hacks in his “How to train your GAN” talk at the Adversarial Training workshop.

Image 4: How to train your GAN (Source: Soumith Chintala)

Yann LeCun muses in his keynote that the development of GANs parallels the history of neural networks themselves: They were poorly understood and hard to get to work in the beginning and only took off once researchers figured out the right tricks and learned how to make them work. At this point, it seems unlikely that GANs will experience a winter anytime soon; the research community is still at the beginning in learning how to make the best use of them and it will be exciting to see what progress we can make in the coming years.

On the other hand, the success of GANs so far has been limited mostly to Computer Vision due to their difficulty in modelling discrete rather than continuous data. The Adversarial Training workshop showcased some promising work in this direction (see e.g. our own John Glover’s paper on modeling documents, this paper and this paper on generating text, and this paper on adversarial evaluation of dialogue models). It remains to be seen if 2017 will be the year in which GANs break through in NLP.

# The Nuts and Bolts of Machine Learning

Andrew Ng gave one of the best tutorials of the conference with his take on building AI applications using Deep Learning. Drawing from his experience of managing the 1,300 people AI team at Baidu and hundreds of applied AI projects and equipped solely with two whiteboards, he shared many insights about how to build and deploy AI applications in production.

Besides better hardware, Ng attributes the success of Deep Learning to two factors: In contrast to traditional methods, deep NNs are able to learn more effectively from large amounts of data. Secondly, end-to-end (supervised) Deep Learning allows us to learn to map from inputs directly to outputs.

While this approach to training chatbots or self-driving cars is sufficient to write innovative research papers, Ng emphasized end-to-end DL is often not production-ready: A chatbot that maps from text directly to a response is not able to have a coherent conversation or fulfill a request, while mapping from an image directly to a steering command might have literally fatal side effects if the model has not encountered the corresponding part of the input space before. Rather, for a production model, we still want to have intermediate steps: For a chatbot, we prefer to have an inference engine that generates a response, while in a self-driving car, DL is used to identify obstacles, while the steering is performed by a traditional planning algorithm.

Image 5: Andrew Ng on end-to-end DL (right: end-to-end DL chatbot and chatbot with inference engine; left bottom: end-to-end DL self-driving car and self-driving car with intermediate steps)

Ng also shared that the most common mistakes he sees in project teams is that they track the wrong metrics: In an applied machine learning project, the only relevant metrics are the training error, the development error, and the test error. These metrics alone enable the project team to know what steps to take, as he demonstrated in the diagram below:

Image 6: Andrew Ng’s flowchart for applied ML projects

A key facilitator of the recent success of ML have been the advances in hardware that allowed faster computation and storage. Given that Moore’s Law will reach its limits sooner or later, one might reason that also the rise of ML might plateau. Ng, however, argued that the commitment by leading hardware manufacturers such as NVIDIA and Intel and the ensuing performance improvements to ML hardware would fuel further growth.

Among ML research areas, supervised learning is the undisputed driver of the recent success of ML and will likely continue to drive it for the foreseeable future. In second place, Ng saw neither unsupervised learning nor reinforcement learning, but transfer learning. We at AYLIEN are bullish on transfer learning for NLP and think that it has massive potential.

# Recurrent Neural Networks

The conference also featured a symposium dedicated to Recurrent Neural Networks (RNNs). The symposium coincided with the 20 year anniversary of LSTM…

Image 7: Jürgen Schmidhuber kicking off the RNN symposium

… being rejected from NIPS 1996. The fact that papers that do not use LSTMs have been rare in the most recent NLP conferences (see our EMNLP blog post) is a testament to the perseverance of the authors of the original paper, Sepp Hochreiter and Jürgen Schmidhuber.

At NIPS, we had several papers that sought to improve RNNs in different ways:

Other improvements apply to Deep Learning in general:

• Salimans and Kingma propose Weight Normalisation to accelerate training that can be applied in two lines of Python code.
• Li et al. propose a multinomial variant of dropout that sets neurons to zero depending on the data distribution.

The Neural Abstract Machines & Program Induction (NAMPI) workshop also featured several speakers talking about RNNs:

• Alex Graves focused on his recent work on Adaptive Computation Time (ACT) for RNNs that allows to decouple the processing time from the sequence length. He showed that a word-level language model with ACT could reach state-of-the-art with fewer computations.
• Edward Grefenstette outlined several limitations and potential future research directions in the context of RNNs in his talk.

# Improving classic algorithms

While Deep Learning is a fairly recent development, the conference featured also several improvements to algorithms that have been around for decades:

• Ge et al. show in their best paper that the non-convex objective for matrix completion has no spurious local minima, i.e. every local minimum is a global minimum.
• Bachem et al. present a method that guarantees accurate and fast seedings for large-scale k-means++ clustering. The presentation was one of the most polished ones of the conference and the code is open-source and can be installed via pip.
• Ashtiani et al. show that we can make NP-hard k-means clustering problems solvable by allowing the model to pose queries for a few examples to a domain expert.

# Reinforcement Learning

Reinforcement Learning (RL) was another much-discussed topic at NIPS with an excellent tutorial by Pieter Abbeel and John Schulman dedicated to RL. John Schulman also gave some practical advice for getting started with RL.

One of the best papers of the conference introduces Value Iteration Networks, which learn to plan by providing a differentiable approximation to a classic planning algorithm via a CNN. This paper was another cool example of one of the major benefits of deep neural networks: They allow us to learn increasingly complex behaviour as long as we can represent it in a differentiable way.

During the week of the conference, several research environments for RL were simultaneously released, among them OpenAI’s Universe, Deep Mind Lab, and FAIR’s Torchcraft. These will likely be a key driver in future RL research and should open up new research opportunities.

# Learning-to-learn / Meta-learning

Another topic that came up in several discussions over the course of the conference was Learning-to-learn or Meta-learning:

• Andrychowicz et al. learn an optimizer in a paper with the ingenious title “Learning to learn by gradient descent by gradient descent”.
• Vinyals et al. learn how to one shot-learn in a paper that frames one-shot learning in the sequence-to-sequence framework and has inspired new approaches for one-shot learning.

Most of the existing papers on meta-learning demonstrate that wherever you are doing something that gives you gradients, you can optimize them using another algorithm via gradient descent. Prepare for a surge of “Meta-learning for X” and “(Meta-)+learning” papers in 2017. It’s LSTMs all the way down!

Meta-learning was also one of the key talking points at the RNN symposium. Jürgen Schmidhuber argued that a true meta-learner would be able to learn in the space of all programs and would have the ability to modify itself and elaborated on these ideas at his talk at the NAMPI workshop. Ilya Sutskever remarked that we currently have no good meta-learning models. However, there is hope as the plethora of new research environments should also bring progress in this area.

# General Artificial Intelligence

Learning how to learn also plays a role in the pursuit of the elusive goal of attaining General Artificial Intelligence, which was a topic in several keynotes. Yann LeCun argued that in order to achieve General AI, machines need to learn common sense. While common sense is often vaguely mentioned in research papers, Yann LeCun gave a succinct explanation of what common sense is: “Predicting any part of the past, present or future percepts from whatever information is available.” He called this predictive learning, but notes that this is really unsupervised learning.

His talk also marked the appearance of a controversial and often tongue-in-cheek copied image of a cake, which he used to demonstrate that unsupervised learning is the most challenging task where we should concentrate our efforts, while RL is only the cherry on the icing of the cake.

Image 8: The Cake slide of Yann LeCun’s keynote

Drew Purves focused on the bilateral relationship between the environment and AI in what was probably the most aesthetically pleasing keynote of the conference (just look at those graphics!)

Image 9: Graphics by Max Cant of Drew Purves’ keynote (Source: Drew Purves)

He emphasized that while simulations of ecological tasks in naturalistic environments could be an important test bed for General AI, General AI is needed to maintain the biosphere in a state that will allow the continued existence of our civilization.

Image 10: Nature needs AI and AI needs Nature from Drew Purves’ keynote

While it is frequently — and incorrectly — claimed that neural networks work so well because they emulate the brain’s behaviour, Saket Navlakha argued during his keynote that we can still learn a great deal from the engineering principles of the brain. For instance, rather than pre-allocating a large number of neurons, the brain generates 1000s of synapses per minutes until its second year. Afterwards, until adolescence, the number of synapses is pruned and decreases by ~50%.

Image 11: Saket Navlakha’s keynote

It will be interesting to see how neuroscience can help us to advance our field further.

In the context of the Machine Intelligence workshop, another environment was introduced in the form of FAIR’s CommAI-env that allows to train agents through interaction with a teacher. During the panel discussion, the ability to learn hierarchical representations and to identify patterns was emphasized. However, although the field is making rapid progress on standard tasks such as object recognition, it is unclear if the focus on such specific tasks brings us indeed closer to General AI.

# Natural Language Processing

While NLP is more of a niche topic at NIPS, there were a few papers with improvements relevant to NLP:

• He et al. propose a dual learning framework for MT that has two agents translating in opposite directions teaching each other via reinforcement learning.
• Sokolov et al. explore how to use structured prediction under bandit feedback.
• Huang et al. extend Word Mover’s Distance, an unsupervised document similarity metric to the supervised setting.
• Lee et al. model the helpfulness of reviews by taking into account position and presentation biases.

Finally, a workshop on learning methods for dialogue explored how end-to-end systems, linguistics and ML methods can be used to create dialogue agents.

# Miscellaneous

## Schmidhuber

Jürgen Schmidhuber, the father of the LSTM was not only present on several panels, but did his best to remind everyone that whatever your idea, he had had a similar idea two decades ago and you should better cite him lest he interrupt your tutorial.

## Robotics

Boston Robotics’ Spot proved that — even though everyone is excited by learning and learning-to-learn — traditional planning algorithms are enough to win the admiration of a hall full of learning enthusiasts.

Image 12: Boston Robotics’ Spot amid a crowd of fascinated onlookers

## Apple

Apple, one of the most secretive companies in the world, has decided to be more open, to publish, and to engage with academia. This can only be good for the community. We’re looking forward to more apple research papers.

Image 13: Ruslan Salakhutdinov at the Apple lunch event

## Uber

Uber announced their acquisition of Cambridge-based AI startup Geometric Intelligence and threw one of the most popular parties of NIPS.

Image 14: The Geometric Intelligence logo

## Rocket AI

Talking about startups, the “launch” of Rocket AI and their patented Temporally Recurrent Optimal Learning had some people fooled (note the acronyms in the below tweets). Riva-Melissa Tez finally cleared up the confusion.

These were our impressions from NIPS 2016. We had a blast and hope to be back in 2017!

## Intro

For PR professionals, entrepreneurs, marketers, or just about anyone out there who is looking to connect with relevant journalists, reporters and influencers to cover their press release, the biggest challenge in doing so can often lie in finding exactly who are the most suitable people to approach.

This can be a time-consuming and often fruitless endeavour as many take a spray and pray approach by sending out high volumes of emails in the hope that someone out there picks one up. One of the main drawbacks of this approach however is that mass emails aren’t targeted and are inevitably written in an impersonal manner and generally fail to grab the attention of the intended recipient.

To help streamline and vastly improve this entire process, we’re going to show you how you can use Machine Learning and NLP to significantly improve your PR targeting process. A technique we’ve used at AYLIEN to land coverage in the likes of TechCrunch, The Next Web and Forbes.

Using the AYLIEN News API, we’ll show you how easy it can be to quickly build your own highly-targeted list of journalists, reporters and influencers to reach out and pitch to.

As an example, let’s say you’ve recently gone through a funding round and you’re hoping to get some press coverage and exposure. We’ll start by first identifying the publishers who have generated the most articles mentioning startups and funding in the past 60 days. We will then narrow our search and get more targeted by finding specific people who write  about startup funding, and then finish by giving you some tips and instructions on how to create a highly-targeted search to match your own needs.

## Which publishers are writing about startup funding?

To find the publishers that write the most about startups and funding, we’ll use the /trends endpoint in the News API. Using the /trends endpoint enables you to identify the most frequently mentioned keywords, entities and topical or sentiment-related categories in news content. Put simply, it allows you to measure the amount of times that specific elements of interest are mentioned in the content you source through the News API.

By performing the following search using /trends, we can source these metrics for all stories that mention our keywords–startup and funding–and by specifying field=source.name, our results will be returned with a count for each source (publisher, news outlet or blog).

Here’s the query we used;

Our News API returns results in JSON format, and here’s what they look like for this query;


{
"trends": [
{
"value": "TechCrunch",
"count": 206
},
{
"value": "Fortune",
"count": 108
},
{
"value": "Business Insider",
"count": 91
},
{
"value": "PR Newswire",
"count": 70
},
{
"value": "Inc.com",
"count": 64
},
{
"value": "Seeking Alpha",
"count": 62
},
{
"value": "Forbes",
"count": 52
},
{
"value": "CNBC TV18",
"count": 46
},
{
"value": "Entrepreneur.com",
"count": 44
},
{
"value": "Bloomberg",
"count": 43
},
{
"value": "BetaKit",
"count": 33
},
{
"value": "Market Wired",
"count": 31
},
{
"value": "Huffington Post",
"count": 26
},
{
"value": "Quartz",
"count": 26
},
{
"value": "Fast Company",
"count": 24
},
{
"value": "Business Wire",
"count": 23
},
{
"value": "Business Standard",
"count": 19
},
{
"value": "ZDNet",
"count": 18
},
{
"value": "Daily Mail UK",
"count": 18
},
{
"value": "Mashable",
"count": 17
},
{
"value": "The Guardian",
"count": 16
},
{
"value": "Deccan Herald",
"count": 15
},
{
"value": "Globe and Mail",
"count": 14
},
{
"value": "Business Line",
"count": 13
},
{
"value": "Reuters",
"count": 12
},
{
"value": "Upstart Business Journal RSS Feed",
"count": 12
},
{
"value": "The Next Web",
"count": 10
},
{
"value": "The Wall Street Journal",
"count": 10
},
{
"value": "Economic Times",
"count": 10
},
{
"value": "Variety",
"count": 10
},
{
"value": "Madison",
"count": 10
},
{
"value": "Times of Israel",
"count": 10
},
{
"value": "CNN",
"count": 9
},
{
"value": "CNET",
"count": 9
},
{
"value": "Globes",
"count": 9
},
{
"value": "The Verge",
"count": 8
},
{
"value": "Autonews",
"count": 8
},
{
"value": "Yahoo",
"count": 8
},
{
"value": "Irish Independent",
"count": 8
},
{
"value": "Modern Ghana",
"count": 8
},
{
"value": "Drudge Report",
"count": 8
},
{
"value": "Berlin Startup Jobs",
"count": 8
},
{
"value": "Digital Trend",
"count": 7
},
{
"value": "Times of India",
"count": 7
},
{
"value": "Albuquerque Journal",
"count": 7
},
{
"value": "USA Today",
"count": 6
},
{
"value": "Nikkei Asian Review",
"count": 6
},
{
"value": "Times Picayune",
"count": 6
},
{
"value": "New Zealand Herald",
"count": 6
},
{
"value": "Sify",
"count": 6
},
{
"value": "Star",
"count": 6
},
{
"value": "Malay Mail",
"count": 6
},
{
"value": "WCPO",
"count": 6
},
{
"value": "The Guardian Nigeria",
"count": 6
},
{
"value": "The Economist",
"count": 5
},
{
"value": "Japan Times",
"count": 5
},
{
"value": "Republican",
"count": 5
},
{
"value": "Daily Courier",
"count": 5
},
{
"value": "Sydney Morning Herald",
"count": 5
},
{
"value": "Gulf News",
"count": 5
},
{
"value": "Bangkok Post",
"count": 5
},
{
"value": "Buzz Feed",
"count": 5
},
{
"value": "DNA",
"count": 5
},
{
"value": "Kyiv Post",
"count": 5
},
{
"value": "Portland Press Herald",
"count": 5
},
{
"value": "Roanoke Times",
"count": 5
},
{
"value": "ALL TOP STARTUPS",
"count": 5
},
{
"value": "Irish Central",
"count": 5
},
{
"value": "CRN",
"count": 5
},
{
"value": "Haaretz",
"count": 5
},
{
"value": "Nigeria Communications Week",
"count": 5
},
{
"value": "Wired",
"count": 4
},
{
"value": "Kiplinger",
"count": 4
},
{
"value": "Vietnam Net",
"count": 4
},
{
"value": "M Live - 786",
"count": 4
},
{
"value": "Scoop",
"count": 4
},
{
"value": "Arkansas Democrat Gazette",
"count": 4
},
{
"value": "Newsweek",
"count": 4
},
{
"value": "Stuff",
"count": 4
},
{
"value": "Yale Daily News",
"count": 4
},
{
"value": "Anthill Online",
"count": 4
},
{
"value": "Medium",
"count": 4
},
{
"value": "Vice Motherboard",
"count": 4
},
{
"value": "IT news Africa",
"count": 4
},
{
"value": "Zero Hedge",
"count": 3
},
{
"value": "Oregonian",
"count": 3
},
{
"value": "Philippine Daily Inquirer",
"count": 3
},
{
"value": "Daily Caller",
"count": 3
},
{
"value": "Benzinga",
"count": 3
},
{
"value": "Billboard",
"count": 3
},
{
"value": "International Business Times - UK",
"count": 3
},
{
"value": "Age",
"count": 3
},
{
"value": "D Magazine",
"count": 3
},
{
"value": "Montreal Gazette",
"count": 3
},
{
"value": "Hill",
"count": 3
},
{
"value": "ARL Now",
"count": 3
},
{
"value": "Canadian Business",
"count": 3
},
{
"value": "Channel News Asia",
"count": 3
},
{
"value": "China Post",
"count": 3
}
],
"field": "source.name"
}




By importing our results into a visualization tool such as Tableau, we can quickly get an idea of which publishers are writing most about our selected keywords.

Note: The chart below is interactive. You can hover over and click the various bubbles to see more information.

Straight away we can see that TechCrunch dominate our results, generating almost twice as many matches as the next top result. What does this tell us? It tells us that TechCrunch are more than likely a leading publisher when it comes to writing about startup funding.

## Which reporters are writing about startup funding?

Now that we’ve established the top publishers writing about startups and funding, we’ll look to find out which specific reporters/influencers are writing the most content around this subject area.

Similar to our previous query, we’re once again going to use the /trends endpoint. This time, however, we’ll look at field=author.name. Here’s the search query we used;

Here are our visualized results for the query above;

If further proof was needed that TechCrunch are leaders in reporting about startup funding, check out the top ten authors from our results, and who they write for. TechCrunch reporters make up half of the top 10, but top of the list is Erin Griffiths of Fortune.

1. Erin Griffiths – Fortune
2. Steve O’Hear – TechCrunch
3. Lora Kolodny – TechCrunch
4. Kia Kokalitcheva – Fortune
5. Sarah Buhr – TechCrunch
6. Ingrid Lunden – TechCrunch
7. Sam Shead – Business Insider
8. Connie Loizos – TechCrunch
9. Jessica Galang – BetaKit
10. Tas Bindi – ZDNet

### What now?

Now that you have a list of reporters who you know are writing plenty of content around your area of interest, you can focus your efforts on contacting them individually, rather than sending out blind and impersonal mass emails.

Reporters generally have a profile or portfolio of their work on their publisher’s website, and so by citing this relevant work as a reason for contacting them specifically, you are showing that you have done your homework and have intentionally reached out to them.

## Further narrowing your search

Depending on your own precise search criteria, there are a number of options available to narrow down your search and pinpoint exactly what, and who, you are looking for.

### Search by article title

While searching for mentions of startup and funding gave us some excellent results, perhaps you have a niche product or app and you would like to find a reporter who has previously written about your exact field of expertise. Searching by article title is often the most accurate method of sourcing content that is specifically about your keyword, rather than just mentioning it somewhere in the body of text.

Previously, we found that 5 out of our top 10 search results for startup and funding write for TechCrunch. But what if we want to be even more targeted and find a reporter who specifically writes about fintech startups and funding?

To do so, we will use a previous search query for startup and funding from above, but we will now add a parameter to search article titles for the word fintech. Here’s our updated query;

JSON results;


{
"trends": [
{
"value": "Oscar Williams-grut",
"count": 9
},
{
"value": "Erweiterte Suche",
"count": 5
},
{
"value": "Andrew Meola",
"count": 3
},
{
"value": "Natasha Lomas",
"count": 2
},
{
"value": "Steve O'hear",
"count": 2
},
{
"value": "Tas Bindi",
"count": 2
},
{
"value": "John Rampton",
"count": 1
},
{
"value": "Roger Aitken",
"count": 1
},
{
"value": "Aaron Aders",
"count": 1
},
{
"value": "Tx Zhuo",
"count": 1
},
{
"value": "Lisa Rabasca Roepe",
"count": 1
},
{
"value": "Richie Hecker",
"count": 1
},
{
"value": "Mileika Lasso",
"count": 1
},
{
"value": "Peter Nowak",
"count": 1
},
{
"value": "Par Sophie",
"count": 1
},
{
"value": "Spencer Israel",
"count": 1
},
{
"value": "John Detrixhe",
"count": 1
},
{
"value": "Julie Verhage",
"count": 1
},
{
"value": "Jessica Galang",
"count": 1
},
{
"value": "Douglas Soltys",
"count": 1
},
{
"value": "Ara Rodríguez",
"count": 1
},
{
"value": "Jessica Vomiero",
"count": 1
},
{
"value": "Valeria Ríos",
"count": 1
},
{
"value": "Amy Feldman",
"count": 1
},
{
"value": "Ameinfo Staff",
"count": 1
},
{
"value": "Kevin Sandhu",
"count": 1
},
{
"value": "George Beall",
"count": 1
},
{
"value": "Par Delphine",
"count": 1
},
{
"value": "Caitlin Hotchkiss",
"count": 1
},
{
"value": "Robert Hackett",
"count": 1
},
{
"value": "Nathan Sinnott",
"count": 1
},
{
"value": "Eliran Rubin",
"count": 1
},
{
"value": "Lee Roden",
"count": 1
},
{
"value": "Piruze Sabuncu",
"count": 1
},
{
"value": "Danon Gabriel",
"count": 1
},
{
"value": "Rachel Witkowski",
"count": 1
},



As you can see from the JSON results above, Oscar Williams-grut has recently written 9 articles matching our search query. A quick look at Oscar’s profile on Business Insider confirms that he writes about finance, specializing in fintech, business, markets, and politics. He would certainly top our list of contacts if we wanted to reach out about a fintech startup funding press release!

### Location and language

Our News API scans content from thousands of sources and RSS feeds worldwide, in multiple languages, meaning you can narrow your search to locate content in specific languages and from specific countries. As an example, you can add the following parameters to your search query to locate only sources from Portugal, that are also written in the Portuguese language;

• source.locations.country[]=pt
• language[]=pt

### Social shares count

One of main reasons for finding relevant reporters and bloggers in the first place is to gain as much public exposure as possible. One way to help ensure this is to source reporters based on the number of shares their content receives on social media.

You can be quite specific here by choosing the social network(s) that interest you most. For example, perhaps your content is best suited for distribution on Facebook. You can therefore find out which reporters tend to generate the most shares on Facebook by adding a minimum share count for that network. Here’s an example query that will do just that, by only sourcing authors who have generated over 10,000 shares on Facebook in the past 60 days;

At the time of writing, this query is returning the names of four reporters, each of which have generated over 10,000 Facebook shares with content containing our keywords startup and funding published in the past 60 days.

Of course, the further you lower the minimum number of shares, the more results you will obtain. We changed the above search query to contain a minimum of 5,000 shares and our results almost trebled.

### Alexa rank

Similar to how we defined a minimum number of Facebook social shares in the example above, you also have the option to define the minimum and maximum Alexa rank of websites that you source.

Why is this useful? The Alexa ranking system is compiled to analyze the frequency of visits on websites and rank them against each other according to the volume of visits they receive. Alexa’s algorithm is pretty simple – it is calculated by the amount of website traffic generated over the past 3 months.

If you’re looking to maximize your exposure, you will naturally want your content to be featured on sites with the highest visitor traffic, and you will therefore be looking at sites with the best Alexa ranks.

Try the search query below. It is the same as our earlier search for publishers, but we are now narrowing the search to only include sites with an Alexa rank of 1-1000.

Click here to learn more about sourcing and filtering news content by Alexa rank.

## Conclusion

It took us less than 5 minutes to source and visualize the top publishers and reporters writing about startup funding, which could potentially save hours of time scanning the web and social media in the search for suitable influencers to reach out to about your press release.

Ready to try the News API for yourself? Click the image below and sign up for a free 14-day trial.

## Intro

Here at AYLIEN we spend our days creating cutting-edge NLP and Text Analysis solutions such as our Text Analysis API and News API to help developers build powerful applications and processes.

We understand, however, that not everyone has the programming knowledge required to use APIs, and this is why we created our Text Analysis Add-on for Google Sheets – to bring the power of NLP and Text Analysis to anyone who knows how to use a simple spreadsheet.

Today we want to show you how you can build an intelligent sentiment analysis tool with zero coding using our Google Sheets Add-on and a free service called IFTTT.

Here’s what you’ll need to get started;

## What is IFTTT?

IFTTT stands for If This, Then That. It is a free service that enables you automate specific tasks by triggering actions on apps when certain criteria is met. For example, “if the weather forecast predicts rain tomorrow, notify me by SMS”.

### Step 1 – Connect Google Drive to IFTTT

• Log in to your IFTTT account
• Search for, and select, Google Drive
• Click Connect and enter your Google login information

### Step 2 – Create Applets in IFTTT

Applets are the processes you create to trigger actions based on certain criteria. It’s really straightforward. You define the criteria (the ‘If’) and then the trigger (the ‘That’). In our previous weather-SMS example, the ‘if’ is a rain status within a weather app, and the ‘that’ is a text message that gets sent to a specified cell phone number.

To create an applet, go to My Applets and click New Applet.

Here’s what you’ll see. Click the blue +this

You will then be shown a list of available apps. In this case, we want to source specific tweets, so select the Twitter app.

You will then be asked to choose a trigger. Select New tweet from search.

You can now define exactly what tweets you would like to source, based on their content. You can be quite specific with your search using Twitter’s search operators, which we’ve listed below;

#### Twitter search operators

To search for specific words, hashtags or languages

• Tweets containing all words in any position (“Twitter” and “search”)
• Tweets containing exact phrases (“Twitter search”)
• Tweets containing any of the words (“Twitter” or “search”)
• Tweets excluding specific words (“Twitter” but not “search”)
• Tweets with a specific hashtag (#twitter)
• Tweets in a specific language (written in English)

To search for specific people or accounts

• Tweets from a specific account (Tweeted by “@TwitterComms”)
• Tweets sent as replies to a specific account (in reply to “@TwitterComms”)
• Tweets that mention a specific account (Tweet includes “@TwitterComms”)

To exclude Retweets and/or links

• To exclude Retweets (“-rt”)
• To exclude links/URLs (“-http”) and (“-https”)

#### Our first trigger

We’re going to search for tweets that mention “bad santa 2 is” or “bad santa 2 was”. Why are we searching for these terms? Well, we find that original, opinionated tweets generally use either one of these phrases. It also helps to cut out tweets that contain no opinion (neutral sentiment) such as the one below;

Our goal with this tool is to analyze the viewer reaction to “Bad santa 2”  which means Tweets such as this one aren’t entirely interesting to us in this case. However, if we wanted to asses the overall buzz on Twitter about Bad Santa 2 perhaps we might just look for any mention at all and concentrate on the volume of tweets.

And so, here’s our first trigger.

Click Create Trigger when you’re happy with your search. You will then see the following;

Notice how the Twitter icon has been added. Now let’s choose our action. Click the blue +that

Next, search for or select Google Drive. You will then be given 4 options – select Add row to spreadsheet. This action will add each matching tweet to an individual row in Google Sheets.

Next, give the spreadsheet a name. We simply went for ‘Bad Santa 2’. Click Create Action. You will then be able to review your applet. Click Finish when you are happy with it.

Done! Tweets that match your search criteria will start appearing in an auto-generated Google Sheet within minutes. Now you can go through this process again to create a second applet. We chose another movie, Allied. (“Allied was” or “Allied is”).

Here is an example of what you can expect to see accumulate in your Google Sheet;

Note: When you install our Google Sheets Add-on we’ll give 1,000 credits to use for free. You then have the option to purchase additional credits should you wish to. For this example, we will stay within the free range and analyze 500 tweets for each movie. You may choose to use more or less, depending on your preference.

### Step 3 – Clean your data

Because of the nature of Twitter, you’re probably going to find a lot of crap and spammy tweets in your spreadsheet. To minimize the amount of these tweets that end up in your final data set, there are a few things we recommend you do;

#### Sort your tweets alphabetically

By sorting your tweets alphabetically, you can quickly scroll down through your spreadsheet and easily spot multiples of the same tweet. It’s a good idea to delete multiple instances of the same tweet as they will not only skew your overall results but multiple instances of the same tweet can often point to bot activity or spamming activity on Twitter. To sort your tweets alphabetically, select the entire column, select Data and Sort sheet by column B, A-Z.

#### Remove retweets (if you haven’t already done so)

Alphabetically sorting your tweets will also list all retweets together (beginning with RT). You may or may not want to include retweets, but this is entirely up to you. We decided to remove all retweets because there are so many bots out there auto-retweeting and we felt that using this duplicate content isn’t exactly opinion mining.

#### Search and filter certain words

Think about the movie(s) you are searching for and how their titles may be used in different contexts. For example, we searched for tweets mentioning ‘Allied’, and while we used Twitter’s search operators to exclude words like forces, battle and treaty, we noticed a number of tweets about a company named ‘Allied’. By searching for their company Twitter handle, we could highlight and delete the tweets in which they were mentioned.

#### NB: Remove movie title from tweets

Before you move on to Step 4 and analyze your tweets, it is important to remove the movie title from each tweet, as it may affect the quality of your results. For example, our tweet-level sentiment analysis feature will read ‘Bad Santa 2…” in a tweet and may assign negative sentiment because of the inclusion of the word bad.

To remove all mentions of your chosen movie title, simply use EditFind and Replace in Google Sheets.

### Step 4 – Analyze your tweets

Now comes the fun part! It’s time to analyze your tweets using the AYLIEN Text Analysis Add-on. If you have not yet installed the Add-on, you can do see here.

Using our Add-on couldn’t be easier. Simply select the column containing all of your tweets, then click Add-onsText Analysis.

To find out whether our tweets have been written in a positive, neutral or negative way, we use Sentiment Analysis.

Note: While Sentiment Analysis is a complex and fascinating field in NLP and Machine Learning research, we won’t get into it in too much detail here. Put simply, it enables you to establish the sentiment polarity (whether a piece of text is positive, negative or neutral) of large volumes of text, with ease.

Next, click the drop-down menu and select Sentiment AnalysisAnalyze.

Each tweet will then be analyzed for subjectivity (whether it is written subjectively or objectively) and sentiment polarity (whether it is written in a positive, negative or neutral manner). You will also see a confidence score for both subjectivity and sentiment. This tells you how confident we are that the assigned label (positive, negative, objective, etc) is correct.

By repeating this process for our
Allied tweets, we can then compare our results and find out which movie has been best received by Twitter users.

### Step 5 – Compare & visualize

In total we analyzed 1,000 tweets, 500 for each movie. Through a simple count of positive, negative and neutral tweets, we received the following results;

Bad Santa 2

Positive – 170

Negative – 132

Neutral – 198

Allied

Positive – 215

Negative – 91

Neutral – 194

Now to generate a percentage score for each movie. Let’s start by excluding all neutral tweets. We can then easily figure out what percentage of remaining tweets are positive. So, for Allied, of the remaining 306 tweets, 215 were positive,giving us a positive score of 70%.

By doing the same with Bad Santa 2, we get 56%.

Allied wins!

To visualize your results, use your tweet volume data to generate some charts and graphs in Google Sheets;

### Comparing our results with Rotten Tomatoes & IMDb

It’s always interesting to compare results of your analysis with those of others. To compare ours, we went to the two major movie review site – Rotten Tomatoes & IMDb, and we were pleasantly surprised with the similarity in our results!

#### Allied

The image below from Rotten Tomatoes shows both critic (left) and audience (right) score for Allied. Seeing as we analyzed tweets from a Twitter audience, we are therefore more interested in the latter. Our score of 70% comes so close to that of almost 15,000 reviewers on Rotten Tomatoes – just 1% off!

IMDb provide an audience-based review score of 7.2/10. Again, very close to our own result.

Our result for Bad Santa 2, while not as close as that of Allied, was still pretty close to Rotten Tomatoes with 56%.

With IMDb, however, we once again come within 1% with a score of 5.7/10.

## Conclusion

We hope that this simple and fun use-case using our Google Sheets Add-on will give you an idea of just how useful, flexible and simple Text Analysis can be, without the need for any complicated code.

While we decided to focus on movie reviews in this example, there are countless other uses for you to try. Here’s a few ideas;

• Track mentions of brands or products
• Track event hashtags
• Track opinions towards election candidates

Ready to get started? Click here to install our Text Analysis Add-on for Google Sheets.