MARTIN OMANDER: I heard about how you can
do machine learning in Looker.
Now, how does that work?
Do I have to be a data scientist to use it?
Because I'm not.
CHRIS SCHMIDT: No, definitely not.
It's actually intended for the average Looker user.
Let me show you.
[UPBEAT MUSIC]
MARTIN OMANDER: Hi, Chris.
It's great to have you join us today.
Can you tell us a little bit about yourself?
CHRIS SCHMIDT: Thanks, Martin, and thanks for inviting me.
So I'm the machine learning accelerator lead
at Google Cloud.
Before joining Google about three years ago,
I worked as an economist doing public policy research, mostly
for state and federal agencies.
MARTIN OMANDER: Oh, so you must know a lot about machine
learning and statistics.
Now, we are talking about machine
learning in Looker today.
First off, can you tell us what Looker is?
CHRIS SCHMIDT: Absolutely.
So Looker is Google's enterprise business intelligence platform
for analyzing and acting on governed data.
Many large organizations use it to build custom data workflows
that empower business users to make
better decisions with data.
MARTIN OMANDER: Why would I want to do
machine learning in Looker?
CHRIS SCHMIDT: That's a great question.
Well, because it allows the business analyst
to use predictive analytics as part of their business
intelligence workflows.
It brings the power of Google machine
learning to the business user.
MARTIN OMANDER: I see.
Can you show us how to get started?
CHRIS SCHMIDT: Sure.
First, you'll want to find the Machine Learning
Accelerator in Looker.
Just ask your Looker admin to install it from the Looker
Marketplace if you don't see it under the Applications menu.
MARTIN OMANDER: All right, opening it now.
CHRIS SCHMIDT: It looks like you don't have any models yet.
Let's create one.
Go ahead and click the Create New Model button.
MARTIN OMANDER: Got it.
CHRIS SCHMIDT: You're looking at a model creation guide now.
Let's pretend we're BI analysts at a regional airline,
and we want to predict customer satisfaction.
MARTIN OMANDER: Why do I have to predict customer satisfaction?
Don't customers fill out surveys for that kind of thing?
CHRIS SCHMIDT: Well, some customers complete
a satisfaction survey, but most don't.
And we care about all of our customer's experience.
For example, the airline might want
to reach out to frequent flyers who likely
had a poor experience recently, even if they didn't fill out
a survey.
MARTIN OMANDER: Makes sense.
Also, I'm really curious about what
factors are the most important for predicting customer
satisfaction.
Is it if the flight was on time, or could it
be the amount of leg room, or something else?
CHRIS SCHMIDT: That's a great question.
Let's find out.
First, we need to choose an objective.
MARTIN OMANDER: All right, I see two objectives.
Which one do I choose?
CHRIS SCHMIDT: So our machine learning model
will predict whether or not a customer is satisfied
with their flight, which means we're trying
to predict a category or class.
MARTIN OMANDER: I see.
So I'll click on Predict a Category.
And now, what do I do?
CHRIS SCHMIDT: Well, right now, we
see a list of Looker Explorers.
You'll want to select the Airline Customer Satisfaction
Explorer to build your input data set to train the model.
MARTIN OMANDER: OK, now, this looks familiar to me.
It's like a normal Looker Explorer.
What fields should I select for my input data?
CHRIS SCHMIDT: So there are a few fields
we know we want to include for sure.
We definitely want to include the Overall Satisfaction
field because it includes the outcome we're
trying to predict.
MARTIN OMANDER: That makes sense.
CHRIS SCHMIDT: You'll also want to make
sure you filter in that field so that we don't
have any rows with null values.
MARTIN OMANDER: Why do I want to do that?
CHRIS SCHMIDT: Well, the algorithm
needs to know the answer to train the model.
So rows with no values are not really helpful.
MARTIN OMANDER: Got it.
OK, I'll filter out rows with null values.
CHRIS SCHMIDT: Now, you should select the Passenger ID field
because we want our data to be at the passenger level.
MARTIN OMANDER: That makes sense.
What other fields should I pick?
CHRIS SCHMIDT: So now, this is where your experience flying
comes in.
You should select fields that you
think contribute to overall customer satisfaction.
What fields do you think will help
us predict if a passenger enjoyed their flight?
MARTIN OMANDER: Oh, all right, let's see here.
I'm going to pick Seat Comfort, Inflight Entertainment, Ease
of Online Booking, Leg Room, and Arrival Delay.
How do those sound to you, Chris?
CHRIS SCHMIDT: Those are all great.
Intuitively, we would expect them to be
correlated with the outcome.
But you should also consider some other fields
that describe the passenger.
For example, business travelers might value different factors
than leisure travelers.
MARTIN OMANDER: OK, so I'll add customer type
and type of travel.
CHRIS SCHMIDT: So now, just click the Run button
like you would do in any Looker Explorer.
[CLOCK TICKING]
[DING]
MARTIN OMANDER: Done.
And should I click Continue now?
CHRIS SCHMIDT: Yes.
And this brings you to the next step,
which asks you to name your model
and review the summary statistics for your input data.
MARTIN OMANDER: Got it.
Now, what do I use as my target here?
CHRIS SCHMIDT: So the target is the field from your input data
that contains the values you're trying to predict.
In this case, it's overall satisfaction.
MARTIN OMANDER: Ah, that makes sense.
And now, do I click Generate Summary?
CHRIS SCHMIDT: Yeah.
So now, we can review our summary statistics
to help us decide if we want to keep all the fields we selected
in our model's training data.
You can also access advanced model options
from that gear wheel at the bottom.
MARTIN OMANDER: Is there anything I
should uncheck or change here?
CHRIS SCHMIDT: No, the application automatically
identified the Passenger ID column and de-selected it.
We wouldn't want to train a model using
a unique ID like that.
MARTIN OMANDER: I like that the application keeps me
from doing anything wrong.
Should I click on Create Model now?
CHRIS SCHMIDT: Yes.
We're ready to create your first machine learning model.
Now, this can take several minutes for the model training
to learn all the patterns in the data.
MARTIN OMANDER: Ah, perfect.
I need a cup of tea, anyway.
[CLOCK TICKING]
[DING]
And we're back.
Did my model finish training?
CHRIS SCHMIDT: It looks like it.
When the model finishes training,
we see its evaluation metrics.
You can use those metrics to compare
the performance of different versions of your model.
MARTIN OMANDER: Oh, like if I decided to add or remove fields
and run it again?
CHRIS SCHMIDT: Exactly.
It's an iterative process to continue improving the model.
MARTIN OMANDER: Now, I really want
to see what's the most important factor in determining customer
satisfaction.
Can I?
CHRIS SCHMIDT: Actually, you can.
Just click on the Feature Importance screen,
and you'll see.
MARTIN OMANDER: Look at that.
It was seat comfort and in-flight entertainment.
That's not what I'd expected.
So what can I do with a machine learning model like this
once it's created?
CHRIS SCHMIDT: So now, you can predict
if a customer is satisfied with their flight,
even if they don't respond to a survey.
MARTIN OMANDER: Sounds good.
Let's create some predictions.
CHRIS SCHMIDT: Let's do it.
Just click the Continue button.
MARTIN OMANDER: Oh, and now, I see the Looker Explorer UI
again.
Do I pick the data that I want to use to get predictions?
CHRIS SCHMIDT: Exactly.
And you'll notice that Looker already
selects the required fields.
So you'll just need to update your filters.
MARTIN OMANDER: So what should I filter on?
CHRIS SCHMIDT: Well, we'll want to get predictions
for when overall satisfaction is missing,
meaning the customer did not respond to our survey.
MARTIN OMANDER: OK.
Now, I just click the Run button?
CHRIS SCHMIDT: That's correct.
Looker is now running a query against the data in BigQuery.
Now that you have the data you want to score,
just click the Generate Predictions button.
[CLOCK TICKING]
[DING]
MARTIN OMANDER: That's so cool.
So now, I see the predictions in gray on the left.
CHRIS SCHMIDT: Now, your predictions
are accessible in BigQuery.
And a LookML developer can add them
to a Looker Explorer for building visualizations
and dashboards.
I've actually already created a dashboard for you
as an example.
Go to your main menu and open the Shared Folder.
MARTIN OMANDER: OK, got it.
CHRIS SCHMIDT: And now, open the Airline Customer Satisfaction
Predictions dashboard.
MARTIN OMANDER: Oh, and here, I see
that we have the number of satisfied and dissatisfied
customers.
So how would a business take action with these new insights?
CHRIS SCHMIDT: Well, in Looker, you
can drill into data to get more detail
about high-level metrics.
So you can click on the dissatisfied customer count
and see which customers we think did not enjoy their flight,
even if they didn't respond to our survey.
MARTIN OMANDER: Oh, I see.
So if this were real data, I could
reach out to these customers and offer them a free upgrade
on their next flight?
CHRIS SCHMIDT: Exactly.
There are likely many ways a business might respond
to knowing which customers were likely least
satisfied with their service.
With Looker, you now have the power
to identify those customers.
MARTIN OMANDER: Well, Chris, I'm not a machine learning guy,
but I like how even I was able to build a prediction
model with just a few clicks.
Now, let's say people who watch this
want to get started with machine learning accelerator.
What can they do?
CHRIS SCHMIDT: Well, first, they should ask their Looker admin
to install the application from Looker Marketplace.
Then, they can begin building machine
learning models and using their predictions.
MARTIN OMANDER: And what are some common use
cases that would benefit from machine learning models?
CHRIS SCHMIDT: The possibilities are really endless,
but we've seen customers use these models
for things like marketing and supply chain management use
cases.
MARTIN OMANDER: Thank you for showing us this, Chris.
And Thank you, everyone, for watching.
If you have any questions for Chris or me,
add them in the comments section below.
Also, let us know if there are any service topics you'd
like to see in future episodes.
We read every single comment.
Until next time.
[UPBEAT MUSIC]