Skip to main content

Accessible Machine Learning for SEOs — Whiteboard Friday

Posted by BritneyMuller

Machine learning — a branch of artificial intelligence that studies the automatic improvement of computer algorithms — might seem far outside the scope of your SEO work. MozCon speaker (and all-around SEO genius) Britney Muller is here with a special edition of Whiteboard Friday to tell you why that's not true, and to go through a few steps to get you started. 

To see more on machine learning from Britney and our other MozCon 2020 speakers, check out this year's video bundle. 

Get my MozCon 2020 video bundle

Accessible Machine Learning

Click on the whiteboard image above to open a high resolution version in a new tab!

Video Transcription

Hey, Moz fans. Welcome to this special edition of Whiteboard Friday. Today we are taking a sneak peek at what I spoke about at MozCon 2020, where I made machine learning accessible to SEOs everywhere.

This is so, so exciting because it is readily at your fingertips today, and I'm going to show you exactly how to get started. 

So to kick things off, I learned about this weird concept called brood parasites this summer, and it's fascinating. It's basically where one animal tricks another animal of the same species to raise its young.

It's fascinating, and the more I learned about it, the more I realized: oh my gosh, I'm sort of like a brood parasite when it comes to programming and machine learning! I latch on and find these great models that do all the work — all of the raising — and I put in my data and my ideas, and it does things for me.

So we are going to use this concept to our advantage. In fact, I have been able to teach my dad most of these models that, again, are readily available to you today within a tool called Colab. Let me just walk you through what that looks like. 

Models to get you started

So to get started, if you want to start warming up right now, just start practicing clicking "Shift" and then click "Enter".

Just start practicing that right now. It's half the battle. You're about to be firing up some really cool models. 



All right. What are some examples of that? What does that look like? So some of the models you can play with today are things like DeOldify, which is where you repair and colorize old photos. It's really, really fun. 

Another one is a text generator. I created one with GTP-2 — super silly, it's this excuse generator. You can manipulate it and make it do different things for you. 

There's also a really, really great forecasting model, where you basically put in a chunk of time series data and it predicts what the future might have in store. It's really, really powerful and fun.

You can summarize text, which is really valuable. Think about meta descriptions, all that good stuff. 

You can also automate keyword research grouping, which I'll show you here in a second. 

You can do really powerful internal link analysis, set up a notebook for that.

Perhaps one of the most powerful things is you can extract entities and categories as Google perceives them. It's one of my favorite APIs. It's through Google's NLP API. I pull it into a notebook, and you basically put the URLs you want to extract this information from and you can compare how your URL compares to competitors.

It's really, really valuable, fun stuff. So most importantly, you cannot break any of this. Do not be intimidated by any of the code whatsoever. Lots of seasoned developers don't know what's happening in some of those code blocks. It's okay.

Using Colab

We get to play in this environment. It's hosted in Google Drive, and so there's no fear of this breaking anything on your computer or with your data or anything. So just get ready to dive in with me. Please, it's going to be so much fun. Okay, so like I said, this is through a free tool called Colab. So you know how Google basically took Excel and made Google Sheets?

They did the same thing with what's known as Jupyter Notebooks. So these were locally on computers. It's one of the most popular notebook environments. But it requires some setup, and it can be somewhat clunky. It gets confused with different versions and yada, yada. Google put that into the cloud and is now calling it Colab. It's unbelievably powerful.

So, again, it's free. It's available to you right now if you want to open it up in a new tab. There is zero setup. Google also gives you access to free GPU and TPU computing, which is great. It has a 12-hour runtime. 

Some cons is that you can hit limits. So I hit the limits, and now I'm paying $9.99 a month for the Pro version and I've had no problems.

Again, I'm not affiliated with this whatsoever. I'm just super passionate about it, and the fact that they offer you a free version is so exciting. I've already seen a lot of people get started in this. It's also something to note that it's probably not as secure or robust as Google's Enterprise solution. So if you're doing this for a large company or you're getting really serious about this, you should probably check out some other options. But if you're just kind of dabbling and want to explore and have fun, let's keep this party going. 

Using pandas

All right. So again, this is basically a cloud hosted notebook environment. So one thing that I want to really focus on here, because I think it's the most valuable for SEOs, is this library known as "pandas".

Pandas is a data frame library, where you basically run one — or two — lines of code. You can choose your file from your local computer, so I usually just upload CSVs. This silly example is one that I really did run with Google Search Console data.

So you run this in a notebook. Again, I'm sharing this entire notebook with you today. So if you just go to it and you do this, it brings you through the cells. It's not as intimidating as it looks. So if you just click into that first cell, even if it's just that text cell, "Shift + Enter", it will bring you through the notebook. 


So once you get past and once you fire up this chunk of code right here, upload your CSV. Then once you upload it, you are going to name your data frame. 


So these are the only two cells you need to really change or do anything with if you want. Well, you need to. 

So we are uploading your file, and then we are grabbing that file name. In this case, mine was just "gsc-example.csv". Again, once you upload it, you will see the name in that output here. So you just put that within this code block, run this, and then you can do some really easy lines of code to check to make sure that your data is in there.


So one of the first ones that most people do is "df". This is your data frame that you named with your file right here. So you just do "df.head()". This shows you the first five rows of your data frame. You can also do "df.tail()", and it shows you the last five rows of your data frame.

You can even put in a number in here to modify how many rows you want to explore. So maybe you do "df.head(30)", and then you see the first 30 rows. It's that easy just to get it in there and to see it. Now comes the really fun stuff, and this is just tip of the iceberg.

So you can run this really, really cool code cell here to create a filterable table. What's powerful about this, especially with your Google Search Console data, is you can easily extract and explore keywords that have high click-through rate and a low ranking in search. It's one of my favorite ways to explore keyword opportunities for clients, and it couldn't be easier.

So check that out. This is kind of the money part right here. 

If you're doing keyword research, which can take a lot, right, you're trying to bucket keywords, you're trying to organize topics and all that good stuff, you can instantly create a new column with pandas with branded keyword terms.

So just to walk you through this, we're going "df["Branded"]". This is the name of the new column we're going to create. We have this query string "contains," and this is just regex, ("moz|rand|ose"). So any keywords that contain one of those words gets in the "Branded" column a "True".

So now that makes filtering and exploring that so much faster. You can even do this in ways where you can create an entirely different data frame table. So sometimes if you have lots and lots of data, you can use the other cell in that example. All of these examples will be in the notebook.

You can use that and export your keywords into buckets like that, and there's no stall time. Things don't freeze up like Excel. You can account for misspellings and all sorts of good stuff so, so easily with regular expressions. So super, super cool.

Conclusion

Again, this is just tip of the iceberg, my friends. I am most excited to sort of plant this seed within all of you so that you guys can come back and teach me what you've been able to accomplish. I think we have so much more to explore in this space. It is going to be so much fun. If you get a kick out of this and you want to continue exploring different models, different programs within Colab, I highly suggest you download the Colab Chrome extension.

It just makes opening up the notebook so much easier. You can save a copy to your drive and play with it all you want. It's so much fun. I hope this kind of sparked some inspiration in some of you, and I am so excited to hear what all of you think and create. I really appreciate you watching.

So thank you so much. I will see you all next time. Bye.

Video transcription by Speechpad.com


Ready for more?

You'll uncover even more SEO goodness in the MozCon 2020 video bundle. At this year's special low price of $129, this is invaluable content you can access again and again throughout the year to inspire and ignite your SEO strategy:

  • 21 full-length videos from some of the brightest minds in digital marketing
  • Instant downloads and streaming to your computer, tablet, or mobile device
  • Downloadable slide decks for presentations

Get my MozCon 2020 video bundle


Sign up for The Moz Top 10, a semimonthly mailer updating you on the top ten hottest pieces of SEO news, tips, and rad links uncovered by the Moz team. Think of it as your exclusive digest of stuff you don't have time to hunt down but want to read!

Comments

Popular posts from this blog

How to Identify and Refresh Outdated Content

When someone regularly adds new content to their sites, they face an inevitable question: What happens to my older articles? The way blogging works is really unfair to your past work: It gets buried in archives, losing traffic and relevance. Is there a way to keep your content always up-to-date? Yes, but first let’s discuss the why. Why update your content? Keeping your content fresh and updated is more than overcoming the unfairness of your past work fading away. It's actually a legit marketing tactic that saves money and makes your users’ on-site experience smoother. So let’s dive into why updating old content is so important: 1. User experience The most obvious reason is that you want each of your site pages to be an effective entry landing page: Outdated content and broken links will likely result in bounces. These are lost leads and clients. 2. Search engine optimization When it comes to SEO, content updates offer quite a few advantages: Maintaining more consisten...

How Your Local Business Can Be a Helper

Posted by MiriamEllis “When I was a boy and I would see scary things in the news, my mother would say to me, ‘Look for the helpers. You will always find people who are helping.’ To this day, especially in times of disaster, I remember my mother's words, and I am always comforted by realizing that there are still so many helpers — so many caring people in this world.” — Fred Rogers This quote is one I find myself turning to frequently these days as a local SEO. It calls to mind my irreplaceable neighborhood grocer. On my last essential run to their store, they not only shared a stashed 4-pack of bath tissue with me, but also stocked their market with local distillery-produced hand sanitizer which I was warned will reek of bourbon, but will get the job done. When times are hard, finding helpers comes as such a relief. Even the smallest acts that a local business does to support physical and mental health can be events customers remember for years to come. While none of us gets ...

How to Create a Useful and Well-Optimized FAQ Page

Posted by AnnSmarty The golden rule of marketing has always been: Don’t leave your customer wondering, or you’ll lose them. This rule also applies very well to SEO: Unless Google can find an answer — and quickly — they’ll pick and feature your competitor. One way to make sure that doesn’t happen is having a well set-up, well-optimized FAQ page. Your FAQ is the key to providing your customers and search engines with all the answers they might need about your brand. Why create an FAQ page? Decrease your customer support team’s workload. If you do it right, your FAQ page will be the first point of contact for your potential customers — before they need to contact you directly. Shorten your customers’ buying journeys. If your site users can find all the answers without having to hear back from your team, they’ll buy right away. Build trust signals. Covering your return policies, shipping processes, and being transparent with your site users will encourage them to put more trust into...