📜 ⬆️ ⬇️

Machine Learning Revolution: General Principles and Effects on SEO

I bring to your attention the translation of the article "The Revolution of Machine Learning " by Eric Enge.

Machine learning is in itself a serious discipline. It is actively used around us, and on a much more serious scale than you can imagine. A few months ago, I decided to delve into this topic in order to learn more about it. In this article I will talk about some basic principles of machine learning, as well as share my reasoning about its impact on SEO and digital marketing.

For reference, I recommend watching Rand Fishkin ’s SEO in a Two Algorithm World presentation, where Rand explores the impact of machine learning on search and SEO. I will come back to this topic.
')
I will also mention a service that allows you to predict the chances of retweeting your post based on the following parameters: the Followerwonk Social Authority indicator, the availability of images, hashtags, and some other factors. I called this service Twitter Engagement Predictor (TEP). To develop such a system I needed to create and train a neural network. You specify the initial parameters of the tweet, the service processes them and predicts the chances of a retweet.

TEP uses the data of a study published in December 2014 “Twitter engagement” (engaging in Twitter), where we analyzed 1.9 million original tweets (excluding retweets and favorites) to determine the main factors that influence how retweets are received.

My journey into machine learning


I got my first idea of ​​machine learning in 2011, when I interviewed googler Peter Norvig , who told me how to use Google to translate Google Translate.

In short, they collect information about all the translations of a word on the network and conduct training on the basis of this data. This is a very serious and complex example of machine learning, Google applied it in 2011. It is worth saying that today all the market leaders - for example, Google, Microsoft, Apple and Facebook use machine learning for many interesting directions.

Back in November, when I wanted to more seriously understand this topic, I began to search for articles on the web. I soon discovered an excellent machine learning course on the Coursera . He is taught by Andrew Ng (Andrew Eun) from Stanford University, the course gives a good idea of ​​the basics of machine learning.

Attention: The course is quite extensive (19 lessons, each on average takes about an hour or more). It also requires a certain level of training in the field of mathematics in order to penetrate into calculations. During the course you immerse yourself in mathematics with your head. But the point is this: if you own the necessary background in mathematics and are determined, then this is a good opportunity to take a free course to learn the canons of machine learning.

In addition, Eun will show you many examples in the Octave language. Based on the material studied, you can develop your own machine learning systems. That is what I did in the sample program from the article.

Basic machine learning


First of all, let me clarify one thing: I am not a leading expert in machine learning. However, I learned enough to tell you about some basic points. In machine learning can be divided into two main ways: training with a teacher and training without a teacher. To begin, I will consider learning with a teacher.

Machine learning with a teacher


At a basic level, learning with a teacher can be represented as creating a series of equations to match a known set of data. Suppose you need an algorithm for estimating the value of real estate (this example Eu often uses in the Coursera course). Take some data that will look like this:



In this example, we have (fictional) historical data that shows the value of the house depending on its size. As you may have noticed, the larger the house, the more expensive it is, but this dependence does not fall on the line. Nevertheless, we can calculate such a straight line, which would rather well correspond to the initial values, it will look like this:



This line can be used to predict prices for new homes. We consider the size of the house as an “input” parameter and the price predicted by the algorithm as an “output” parameter.

In general, this model is quite simplified. After all, there are other significant factors that affect the price of real estate - this is the number of rooms, the number of bedrooms, the number of bathrooms, the total area. Based on this, we can build a more complex model, with a data table like this:



Note that for this option the straight line will not work, we need to assign each factor its own weight in price forecasting. Perhaps the main factors will be the size and area of ​​the house, but rooms, bedrooms and bathrooms also require weight. All of these factors will be used as “input” parameters.

Even now, our model can be considered very simplified. Another significant factor in real estate prices is location. Prices in Seattle (WA) are different from prices in Galveston (TX). If you try to build a similar algorithm nationwide, using the location as an additional “input” parameter, you will run into a serious task.

Machine learning can be used to solve all the above problems. In each of the examples we used data sets (they are often called “training samples”) to run programs whose algorithm is based on matching this data. This method allows you to use the new "input" parameters to predict the result (in our case, prices). Thus, a machine learning method in which a system is trained on the basis of training samples is called “teacher training.”

Classification tasks


There is a special type of problem in which the main goal is to predict specific results. Imagine, for example, that we want to determine the likelihood that a newborn will grow to at least 6 feet (~ 183 cm) with time. The input will look something like this:



At the output of this algorithm, we get a value of 0, if a person is likely to be lower than 183 cm and a value of 1 if growth is predicted above a given one. To solve this classification problem, we specify the input parameters for a specific class. In this case, we are not trying to determine the exact growth, but simply predict the probability that it will be higher or lower than the target.

Examples of more complex classification questions are handwriting recognition or letter spam.

Machine learning without a teacher


This method of machine learning is used in the absence of a training set. The idea is to teach the system to select groups of objects with common properties. For example, we may have the following data set:



The algorithm analyzes this data and groups it based on common properties. The example below shows the objects "x" have common properties:



However, the algorithm can make mistakes when recognizing objects and group them like this:



Unlike training with a teacher, this algorithm itself determined the parameters inherent in each of the groups and grouped them. One of the examples of the implementation of the system of teaching without a teacher is the Google News service. Let's look at the following example:



We see news of Iran’s detention of 10 American sailors, as well as links to related news from Reuters and Bloomberg (circled in red). Grouping this news is a good example of a teacher-less machine learning system, when an algorithm learns to find connections between objects and merge them.

Other examples of using machine learning


A remarkable example of the use of machine learning is the algorithm for determining the author, which Moz implemented in its service for working with content . Learn more about this algorithm here . The article on the link describes in detail the problems that Moz specialists had to face and how they solved the task.

Now let me tell you a little about the Twitter Engagement Predictor service mentioned in the beginning of the article, the system of which is based on a neural network. An example of his work can be seen in the screenshot:



The program makes a binary forecast retweet your post or not, and in the case of a positive answer calculates the probability of a retweet.

When analyzing the source data used for network training, you can discover many interesting nuances, for example:



The table shows statistics for user tweets with a Social Authority level from 0 to 9, without images, without links and mentions, containing 2 hashtags and from 0 to 40 characters of text. We see 1,156 such tweets without retweets and only 17 tweets with retweets.

Our algorithm shows that with a high probability, a tweet with such parameters will not receive retweets, but this prediction will be wrong for 1.4% of cases (17 of 1173). The neural network predicts a probability of getting a retweet of 2.1%.

I calculated a table of possible cases and found that we had 1,02045 examples with the possibility of error, or approximately 10% of the entire training set. This means that the neural network will make correct predictions at best for 90% of situations.

In addition, I checked two additional data sets (containing 470k and 473k examples) via a neural network to assess the accuracy of the TEP readings. In the absolute forecast (yes / no) the system was right in 81% of cases. Considering that about 10% of examples with a possible error were also present here, we can say that the result is quite good! For this reason, the TEP service additionally displays the probability of a retweet as a percentage, instead of the usual forecast (yes / no).

Examples of algorithms that Google can use


Now that we’ve dealt with the main ways of machine learning, let's move on to the second part of the article and see what Google can use these methods for:

Penguin Algorithm


One approach to implementing the Google Penguin algorithm is to build links between reference characteristics, which can be potential indicators of link spam:

  1. An external link is located in the footer area;
  2. External link is located in the sidebar;
  3. The link is placed close to the word "Advertising" (and / or similar);
  4. The link is placed close to the image on which the word "Advertising" is written (and / or the like);
  5. The link is located in a block with links that have low relevance to each other;
  6. Link anchor is not related to the page content;
  7. An external link is located in the navigation area;
  8. The external link does not have a separate style (highlighted or underlined);
  9. The link is located on the "bad" type of site (spammed directory; from a country not related to the site);
  10. ... Other factors

Of course, the compliance of a link with only one of these factors does not necessarily make it “bad”, but the algorithm can identify sites where a significant portion of external links have the specified properties.

The example I set out demonstrates the system of training with the teacher, where you train the algorithm based on the data you have about bad and good links (sites) found in recent years. After learning the algorithm, it can be used to check references to determine their "quality". Based on the percentage of “bad” links (and / or PageRank), you can decide whether to lower your site’s search rating or not.

Another approach to solving this problem involves the use of a base of good and bad links, where the algorithm itself determines their characteristics. With this approach, the algorithm will surely detect additional factors that people do not notice.

Panda Algorithm


After we considered the potential possibilities of the Penguin algorithm, the situation cleared up a bit. Now let us introduce the capabilities of the content quality estimation algorithm.

  1. The small amount of content in comparison with the pages of competitors;
  2. Insufficient use of synonyms in the text;
  3. Abuse of keywords on the page;
  4. Large blocks of text located at the bottom of the page;
  5. Many links to non-related pages;
  6. Pages with content copied from other sites;
  7. ... Other factors

For this task, you can train the algorithm based on examples of good sites in order to highlight their qualitative characteristics.
As in the case with Penguin above, I do not in any way assert that these items are specifically used in the Panda algorithm - they only demonstrate the general concept of how all this can work.

How Machine Learning Affects SEO


The key to understanding the extent to which machine learning influences SEO lies in the question of why Google (and other search engines) use these methods. It is important that there is a strong correlation between the quality of the results of organic output and Google's revenue from contextual advertising.

Back in 2009, Bing and Google conducted a series of experiments that showed that the appearance of even small delays in the search results significantly affect user satisfaction. In turn, less satisfied users clicked less on advertisements, and search engines earned less revenue:



All this is explained very simply. Google is full of competitors, and this is not just Bing search. Fighting for an audience in other (non-exploratory) services is also a form of competition. Facebook, Apple / Siri and Amazon are already connected here. There are many alternative sources of getting and sharing information, and they work every day to become better. Therefore, Google should.

I have already suggested that machine learning can be used in the Penguin and Panda algorithms, and this may well be part of a global search quality assessment algorithm. Most likely, you will see many more examples of the use of similar algorithms in the future.

So what does this mean?


Given that improving user satisfaction is crucial for Google, we should consider this indicator as the main ranking factor for SEO. You need to learn how to measure it and increase it over time. I recommend asking yourself the following questions:

  1. Is the content of your page consistent with most users? If the user is interested in your product, does he need help in choosing? Does he need advice on how to use the product?
  2. What about related intentions? If a user came to you for a specific product, which related products might interest him?
  3. What is missing in the content of your page?
  4. Does your page look better than the pages of competitors?
  5. How do you measure page quality scores and improve them over time?

Google has many ways in which you can evaluate the quality of your page and use this data to change its ranking in search results. Here are some of them:

  1. How long do users stay on the site page and how does this indicator differ from competitors?
  2. What is the CTR level of your site pages in comparison with competitors?
  3. How many users come to your site for branded requests?
  4. If you have a specific product page, do you provide more complete or concise information about it than competitors?
  5. If the user returns to your search results from your site, does he continue to browse other sites or enter another query?

Conclusion


Machine learning is rapidly spreading. Obstacles to learning basic algorithms disappear. All major companies in the market in one way or another use the methods of machine learning. Here's some information for what machine learning uses Facebook, but how actively it is recruiting machine learning experts from Apple. Other companies provide platforms to facilitate the introduction of machine learning, such as Microsoft and Amazon .

People engaged in SEO and digital marketing should expect top companies to actively develop algorithms to solve their problems. Therefore, it is better to tune in to work in accordance with the main objectives of the market leaders.

In the case of SEO, machine learning will eventually raise the bar for content quality and user experience. It's time to take all these factors into account in your promotion strategies in order to get aboard a fast-moving technology liner.

Source: https://habr.com/ru/post/277103/


All Articles