Using location to inform predictive analytics
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Dyskant, Erek
Predictive modeling is used throughout organizations to predict behavior and outcomes; organizations use those predictions to efficiently allocate resources. This talk will cite examples from social organizing and healthcare to show how geographical data can be used to enhance predictive analytics work and drive more efficient and effective programs.
 with Blue Labs. Blue Labs is an analytics and technology company that spun out primarily from the Obama 2012 campaigns data science team. And we apply data science techniques to improve social good in the areas of civic engagement, healthcare, and education primarily. The examples today will mostly be from politics, since that's what we know best, but then we'll try to draw those threads into other areas as well. So basically, we're all here because ultimately we'd like us or our constituents or our customers to be able to make smarter decisions. And really, people are actually pretty good at making smarter decisions already. So what we really want to do is scale decisions that are too small for a person and provide people with the data that they need to make decisions that are appropriately sized for a person to make. So sort of, you know, the example is that you can't run a political campaign with a human being just not looking at each voter's profile and saying, yes, I think this person is persuadable. No, this person lives with three Republicans in a Republican district voted in every Republican primary. This person is not persuadable. You need a machine to do that for you. So we looked at what decisions can we influence with geospatial data? And what we got to is at the top, do we keep playing in Arizona? The answer is no. Do we, and then all the way down at the bottom, which doors do we knock on? Everything in between. What I find interesting is that the top area of that chart is all about analyst supported decisions. That's something that a human being sits at a sequel prompt or sits at a data prompt and crunches a bunch of data and says the data says this or the data says that. Down at the bottom is self-service tool supported. It's either a computer is making the decisions or non-technical users making the decisions based on self-service data tools. So how do we, so this is actually shifting gears a little bit specifically to predictive analytics. So identify a granular convenient unit of analysis. Within politics, that's a voter, in healthcare, it's a patient, lots of places it's a customer, a prospective customer, a student. Find all the data that you can about people at that unit. And build a coherent view, usually of a person, but it can be of a building, it can be of a neighborhood, it can be of a road. And then build models that predict the behavior at that atom of analysis based strategy based on those things. So sort of this is what it looked like for us. Where you have general analytics databases, which is something like in our case Vertica, but you know, but Redshift, Teradata, Oracle, Postgrass, and PostGIS is our geospatial database, supporting, you know, contacting the right people, custom analysis, data exploration tools. So what does propensity modeling look like? You call up a bunch of people, you ask them what they think, you figure out what the, what the characteristics are that predict someone's support, and then you go ahead and apply that to your entire file of people. However, we can do a bit better than that. That tells you how likely someone is to support your candidate. What it doesn't tell you is how likely someone is to be persuaded by a message. So to do that, we do persuasion modeling, which we take a set of constituents, split them in half, deliver a message to half those people, actually call up the other half. So one half, our candidate is great for the economy. The other half is actually just a support question. It's, do you support this person or that person without identifying our candidate? The purpose of that second one is to make sure that we're not just modeling on people who are reachable via the phone. So we have to talk to some real-life person at the other end of the phone to take consider the person, either a treatment or a control. Then a while later, call up everybody again, ask them what they think. Hi, I'm calling with ABC Research. If the election were held today, would you vote for this person or that person? And then predict who it is who moves based on the message that they received, versus who it is who moves with no message at all. What's really interesting is that there's actually the possibility that some folks, this is true in retail too, this is true in education, it's true across the board, some folks reaching out actually has a negative persuasion of that. Sort of, you know, we tend to call that sleeping dogs. Folks who it's better off just leaving this group alone. So, what's interesting, so again, we're at a geospatial conference. What's interesting is a whole bunch of those models are geospatial. So one example is drive time to a polling location. A person is more likely to vote in an election if they don't have to drive very far to get to the polls. And so, you know, so one area we did that with a straight radius, just said, you know, number of miles to a polling location. Then spent some time looking at, okay, how does that compare to drive time? And what you'll see is that not all of these look like circles. Like this is very much not a circle, this is very much not a circle. Even this clusters up along freeways. This was built using open street map data, grass, and some really naive ways. Just, you know, we think people drive 60 miles an hour on a freeway and 15 miles an hour on one type of road and 20 miles an hour on another. I think the routing algorithm we used would, you know, would allow someone to drive up an AMRAAM. So drive up an off-ramp rather. So it's not a absolute perfect model. It's a naive, let's spend a few days building some routing bolligons based on the data that we have. And then validate it using maps. And we were like, yep, we think, you know, this takes longer to get there than this. So in the end, what you end up with is a list of people with a model score. Contact these people, not these people. So we're done. We'll call all those folks end of the campaign. So not every strategy is at an individual level. Some things happen at a group, TV ads, locations of offices, that sort of thing. So once we have the density of our supporters, we go back and say, where should we place offices that are near the most supporters? This was a fairly simple greedy algorithm. It took the office that can reach the most people, put an office there, but took the office that could reach the next most people, put it there, next most people, put it there, so on and so forth. I'm sure that there are some retail analytics folks who could walk through a bunch of other systems, but really the goal here was how fast can we support as many decisions as possible with a reasonably small staff and a modest budget. So here is going back to the persuasion model. Here's the list of all the people who we modeled as being persuadable nearby Richmond. Turns out that a whole bunch of those folks, it wasn't actually worthwhile to reach. Just walking down a really long driveway isn't worth your time. And the way that we did this was an iterative algorithm where within each volunteer's area, we took a few of the most dense areas, said let's grab everybody within a certain distance of this dense area, then said, okay, within that set of people, let's grab a bunch of people that are within those people. And walking it out, you can see like somewhere around here, it becomes apparent, it's hard to see in this specific area. These outliers are actually huge apartment buildings. They're not errors. So if 200 people live in one place, it's worthwhile to just drive out to that building. Finally, TV advertising. Using set top box data and location data, find the folks who find the programs where the most persuadable people are watching. What you'll notice is there's almost no prime time here. And where that comes from, the naive approach is you think people who are interested in politics must watch the news. So we're going to play on prime time news. It turns out everybody advertises on prime time news. You can get some efficiency by advertising in places where buying power is smaller, but the aggregate persuasion effect is so large. So the next part about it is that most of the slides that I showed were screenshots of an application that basically everybody who worked for the campaign had access to. This is the Virginia Terri McAuliffe race. It's white label. There's a Democrat's tool, but it's the same tool that's available in a few different situations. So just walking through a little bit. Let's say if we can actually just get the browser up. So basically what the tool lets you do is the projector goes up over the screen. We wanted to keep this as simple as possible. We said let's let folks specify a coreplot layer. We called it a shading layer. Let's let them specify a dot layer. We called it a point layer. That might not have liked switching screens. So basically from here folks could select what dots they wanted to say. They could correlate dots and demographic variables. In this case, we're looking at density of GOTV targets by the office, by where our field offices were. And really it was an approach of how simple can we make a GIS tool and still allow folks to find their own correlations that we hadn't thought of. We also added a tool that anybody who knew SQL could push layers into this. They didn't need to be a GIS diru. If they returned a query that had latitude and longitude, it showed up as a dot. If they made a query that had a number from zero to seven and some sort of a geographical identifier, usually a FIPS, it would detect what type of FIPS it was and spit it in as a coreplot layer. Let's see. So what we're looking at now is where it is that our volunteers had contacted voters. Green means they reached someone, yellow means nobody was home, and red means they didn't contact the person. This updated twice a day. So folks could say, hey, there's a big red blob here. What's going on? We thought we can vest this. Somebody lost a walk packet. Or this is a rough neighborhood. We need to send our best volunteers. So finally, there weren't any BI tools or advanced analytics platforms or really much of any sort of large scale enterprise software. It was lots of software bolted together to do specific tasks. So we had a SQL training once a week. Most of our interns knew SQL. They could log into the database and answer questions using SQL. A good chunk of the staff knew how to connect to our post GIS server using QGIS. They could log in and make their own custom maps. So then what is the role of software engineering become? What is the role of high level systems engineering? It becomes much more about coordination. Get data synced into a database, document that data, build open data portals, provide APIs, provide a pre-installed stack. Things like we use Geo server pretty extensively with layers for lots of information people could want and tools for pushing data both between systems. So I found a group of volunteers that I really want to contact. How do I turn that from a SQL query, push it into a list in our CRM so those volunteers get contacted. And then tools for pushing data out to field staff. Things like Explorer, the data exploration tool I showed is based on the idea of I have a SQL query that shows Geospatial data. I want all my staff to be able to access it. So that what all those tools allowed is in 2012, it doesn't look like it over here, but there were 150 people on the analytics team. In 2013, there were eight of us. So being able to go to that means that folks need to spend their time analyzing data. And we think that means you need a BI tool. What it actually means is you need all your data up to date and accessible via SQL. You need a way of spitting out an SAS or R file or whatever statistical analysis tool you need. Once you build a model, you need somewhere that I can push that model right away. So I think I'm pretty darned out of time. So very briefly, applying that to some other industries, primarily healthcare and education, looking at building the same sorts of agile data infrastructures that support those other industries. Cool.
 with Blue Labs. Blue Labs is an analytics and technology company that spun out primarily  from the Obama 2012 campaigns data science team. And we apply data science techniques  to improve social good in the areas of civic engagement, healthcare, and education primarily.  The examples today will mostly be from politics, since that's what we know best, but then we'll  try to draw those threads into other areas as well. So basically, we're all here because  ultimately we'd like us or our constituents or our customers to be able to make smarter decisions.  And really, people are actually pretty good at making smarter decisions already. So what we  really want to do is scale decisions that are too small for a person and provide people with  the data that they need to make decisions that are appropriately sized for a person to make. So  sort of, you know, the example is that you can't run a political campaign with a human being just  not looking at each voter's profile and saying, yes, I think this person is persuadable. No,  this person lives with three Republicans in a Republican district voted in every Republican  primary. This person is not persuadable. You need a machine to do that for you. So we looked at  what decisions can we influence with geospatial data? And what we got to is at the top, do we keep  playing in Arizona? The answer is no. Do we, and then all the way down at the bottom, which doors  do we knock on? Everything in between. What I find interesting is that the top area of that chart  is all about analyst supported decisions. That's something that a human being sits at a sequel  prompt or sits at a data prompt and crunches a bunch of data and says the data says this or the  data says that. Down at the bottom is self-service tool supported. It's either a computer is making  the decisions or non-technical users making the decisions based on self-service data tools. So  how do we, so this is actually shifting gears a little bit specifically to predictive analytics. So  identify a granular convenient unit of analysis. Within politics, that's a voter, in healthcare,  it's a patient, lots of places it's a customer, a prospective customer, a student. Find all the  data that you can about people at that unit. And build a coherent view, usually of a person,  but it can be of a building, it can be of a neighborhood, it can be of a road. And then build  models that predict the behavior at that atom of analysis based strategy based on those things.  So sort of this is what it looked like for us. Where you have general analytics databases,  which is something like in our case Vertica, but you know, but Redshift, Teradata, Oracle,  Postgrass, and PostGIS is our geospatial database, supporting, you know, contacting the right people,  custom analysis, data exploration tools. So what does propensity modeling look like? You call up a  bunch of people, you ask them what they think, you figure out what the, what the characteristics  are that predict someone's support, and then you go ahead and apply that to your entire file of  people. However, we can do a bit better than that. That tells you how likely someone is to support  your candidate. What it doesn't tell you is how likely someone is to be persuaded by a message.  So to do that, we do persuasion modeling, which we take a set of constituents, split them in half,  deliver a message to half those people, actually call up the other half. So one half, our candidate  is great for the economy. The other half is actually just a support question. It's, do you support  this person or that person without identifying our candidate? The purpose of that second one is to  make sure that we're not just modeling on people who are reachable via the phone. So we have to  talk to some real-life person at the other end of the phone to take consider the person, either a  treatment or a control. Then a while later, call up everybody again, ask them what they think. Hi,  I'm calling with ABC Research. If the election were held today, would you vote for this person or  that person? And then predict who it is who moves based on the message that they received,  versus who it is who moves with no message at all. What's really interesting is that there's  actually the possibility that some folks, this is true in retail too, this is true in education,  it's true across the board, some folks reaching out actually has a negative persuasion of that.  Sort of, you know, we tend to call that sleeping dogs. Folks who it's better off just leaving  this group alone. So, what's interesting, so again, we're at a geospatial conference. What's  interesting is a whole bunch of those models are geospatial. So one example is drive time to a  polling location. A person is more likely to vote in an election if they don't have to drive very  far to get to the polls. And so, you know, so one area we did that with a straight radius, just  said, you know, number of miles to a polling location. Then spent some time looking at, okay,  how does that compare to drive time? And what you'll see is that not all of these look like  circles. Like this is very much not a circle, this is very much not a circle. Even this clusters  up along freeways. This was built using open street map data, grass, and some really naive  ways. Just, you know, we think people drive 60 miles an hour on a freeway and 15 miles an hour  on one type of road and 20 miles an hour on another. I think the routing algorithm we used  would, you know, would allow someone to drive up an AMRAAM. So drive up an off-ramp rather. So it's  not a absolute perfect model. It's a naive, let's spend a few days building some routing  bolligons based on the data that we have. And then validate it using maps. And we were like, yep,  we think, you know, this takes longer to get there than this. So in the end, what you end up with  is a list of people with a model score. Contact these people, not these people. So we're done. We'll  call all those folks end of the campaign. So not every strategy is at an individual level.  Some things happen at a group, TV ads, locations of offices, that sort of thing. So once we have the  density of our supporters, we go back and say, where should we place offices that are near the most  supporters? This was a fairly simple greedy algorithm. It took the office that can reach the most  people, put an office there, but took the office that could reach the next most people, put it  there, next most people, put it there, so on and so forth. I'm sure that there are some retail  analytics folks who could walk through a bunch of other systems, but really the goal here was how  fast can we support as many decisions as possible with a reasonably small staff and a modest budget.  So here is going back to the persuasion model. Here's the list of all the people who we modeled  as being persuadable nearby Richmond. Turns out that a whole bunch of those folks, it wasn't  actually worthwhile to reach. Just walking down a really long driveway isn't worth your time.  And the way that we did this was an iterative algorithm where within each volunteer's area,  we took a few of the most dense areas, said let's grab everybody within a certain distance of this  dense area, then said, okay, within that set of people, let's grab a bunch of people that are  within those people. And walking it out, you can see like somewhere around here, it becomes apparent,  it's hard to see in this specific area. These outliers are actually huge apartment buildings.  They're not errors. So if 200 people live in one place, it's worthwhile to just drive out to that  building. Finally, TV advertising. Using set top box data and location data, find the folks who  find the programs where the most persuadable people are watching. What you'll notice is there's  almost no prime time here. And where that comes from, the naive approach is you think people who  are interested in politics must watch the news. So we're going to play on prime time news. It  turns out everybody advertises on prime time news. You can get some efficiency by advertising in  places where buying power is smaller, but the aggregate persuasion effect is so large.  So the next part about it is that most of the slides that I showed were screenshots of an  application that basically everybody who worked for the campaign had access to. This is the  Virginia Terri McAuliffe race. It's white label. There's a Democrat's tool, but it's the same  tool that's available in a few different situations. So just walking through a little bit. Let's say if  we can actually just get the browser up.  So basically what the tool lets you do is the projector goes up over the screen.  We wanted to keep this as simple as possible. We said let's let folks specify  a coreplot layer. We called it a shading layer. Let's let them specify a dot layer. We called it  a point layer. That might not have liked switching screens. So basically from here folks could select  what dots they wanted to say. They could correlate dots and demographic variables. In this case,  we're looking at density of GOTV targets by the office, by where our field offices were.  And really it was an approach of how simple can we make a GIS tool and still allow folks to find  their own correlations that we hadn't thought of. We also added a tool that anybody who knew  SQL could push layers into this. They didn't need to be a GIS diru. If they returned a query that  had latitude and longitude, it showed up as a dot. If they made a query that had a number from  zero to seven and some sort of a geographical identifier, usually a FIPS, it would detect  what type of FIPS it was and spit it in as a coreplot layer. Let's see. So what we're looking at  now is where it is that our volunteers had contacted voters. Green means they reached someone,  yellow means nobody was home, and red means they didn't contact the person. This updated twice a day.  So folks could say, hey, there's a big red blob here. What's going on? We thought we can vest  this. Somebody lost a walk packet. Or this is a rough neighborhood. We need to send our best  volunteers. So finally, there weren't any BI tools or advanced analytics platforms or really  much of any sort of large scale enterprise software. It was lots of software bolted together to do  specific tasks. So we had a SQL training once a week. Most of our interns knew SQL. They could  log into the database and answer questions using SQL. A good chunk of the staff knew how to connect  to our post GIS server using QGIS. They could log in and make their own custom maps. So then what  is the role of software engineering become? What is the role of high level systems engineering?  It becomes much more about coordination. Get data synced into a database, document that data,  build open data portals, provide APIs, provide a pre-installed stack. Things like we use Geo  server pretty extensively with layers for lots of information people could want and tools for  pushing data both between systems. So I found a group of volunteers that I really want to contact.  How do I turn that from a SQL query, push it into a list in our CRM so those volunteers get  contacted. And then tools for pushing data out to field staff. Things like Explorer, the data  exploration tool I showed is based on the idea of I have a SQL query that shows Geospatial data.  I want all my staff to be able to access it. So that what all those tools allowed is in 2012,  it doesn't look like it over here, but there were 150 people on the analytics team. In 2013,  there were eight of us. So being able to go to that means that folks need to spend their time  analyzing data. And we think that means you need a BI tool. What it actually means is you need  all your data up to date and accessible via SQL. You need a way of spitting out an SAS or R file  or whatever statistical analysis tool you need. Once you build a model, you need somewhere that  I can push that model right away. So I think I'm pretty darned out of time. So very briefly,  applying that to some other industries, primarily healthcare and education,  looking at building the same sorts of agile data infrastructures that support those other industries.  Cool.
Using_location_to_inform_predictive_analytics__720p__0_3431.png Using_location_to_inform_predictive_analytics__720p__3432_6191.png Using_location_to_inform_predictive_analytics__720p__6192_7079.png Using_location_to_inform_predictive_analytics__720p__7080_7439.png Using_location_to_inform_predictive_analytics__720p__7440_10943.png Using_location_to_inform_predictive_analytics__720p__10944_11171.png Using_location_to_inform_predictive_analytics__720p__11172_13895.png Using_location_to_inform_predictive_analytics__720p__13896_15539.png Using_location_to_inform_predictive_analytics__720p__15540_15623.png Using_location_to_inform_predictive_analytics__720p__15624_15671.png Using_location_to_inform_predictive_analytics__720p__15672_15971.png Using_location_to_inform_predictive_analytics__720p__15972_16079.png Using_location_to_inform_predictive_analytics__720p__16080_16187.png Using_location_to_inform_predictive_analytics__720p__16188_16847.png Using_location_to_inform_predictive_analytics__720p__16848_17099.png Using_location_to_inform_predictive_analytics__720p__17100_18407.png Using_location_to_inform_predictive_analytics__720p__18408_19151.png Using_location_to_inform_predictive_analytics__720p__19152_20147.png Using_location_to_inform_predictive_analytics__720p__20148_21575.png Using_location_to_inform_predictive_analytics__720p__21576_22511.png Using_location_to_inform_predictive_analytics__720p__22512_22679.png Using_location_to_inform_predictive_analytics__720p__22680_22931.png Using_location_to_inform_predictive_analytics__720p__22932_23003.png Using_location_to_inform_predictive_analytics__720p__23004_23061.png