Big question - why hasn't anyone applied data science and machine learning in the real estate domain?
With the recent (7 years?) advances in natural language processing, image recognition and the validation of various machine learning models why haven't savy investors started a mad race towards developing the ultimate valuation tool?
I've been dabbling in tackling this problem - and so far, it's not that bad.
The only big problems I see is that the data sources for national markets are not uniform.
That the given data might be incomplete or even contain errors (which will affect your model).
That the sample set might be orders of magnitude smaller than your feature space (fixable via removing or combining linearly correlated features to yield an orthogonal feature set)
...So why hasn't anyone done this yet?
Hi everybody!
I have used machine learning (ML) to build models that estimate values/prices for apartments and to predict the expected gross monthly rental income. I did this for my local market (Ålesund) here in Western Norway, but also for Oslo. I also focused on only apartments because that was the most relevant to me. (And no one rents houses in Norway, everybody buys.)
There is a ton to talk about here, so I'll just dive right into it and try to give a somewhat concise overview. I hope this will spark an interesting conversation ;)
So, the biggest challenge has been data volume. It took me a long time to collect over 200 samples in my local market, which is part of the reason I resorted to Oslo (Norway's capital) where I have almost 2.500 samples. Still not a ton by ML standards, but useful.
I used a linear regression model (LR) and a neural network (NN) to model both values/prices as well as gross rental income. For Oslo, I am now down to 6% median error rate (with the NN), and 90% of the test samples are within 18%-19% error rates at the worst. And this is by using only four features (input variables) for the model: living area, year built, and location (longitude and latitude). I am personally quite happy with that. The reason I only use those four is because others (I have a total of 22 features collected, many very sparse) didn't improve my models or made its performance even deteriorate.
I also use principal component analysis (PCA) as a very simple anomaly detection algorithm on the data set. I do this to help me automatically identify properties on the market which may be undervalued.
I know that Zillow's zestimate gets butchered left, right and center. But truth be told, 6% median error rate (also Zillow's national average) is quite good, and probably better than a lot of humans. On average, that is. Sure, it can be off by 20%. But humans can be too sometimes. At least I can. I would also like to point out that 6% median error rate means that, on average, all the stuff that is NOT captured by the models (living area, location, year built) only accounts for 6% of the price.
But still this means that I can't blindly rely on just the models. I use them to help me identify and decide on potential deals. And I can happily report that I just bought my first investment property (a studio apartment right in the city center) using these methods. Personally, I think this is pretty remarkable, because before I started with any of these in March I had NO clue about the local real estate market.
So, what's on the horizon? I have a lot of things I would love to try out. I would love to use image recognition methods to look at pictures of listings and detect things in them that influence the price (a nice kitchen, a pool, a pet elephant, etc.). It would also be great to use text recognition to do something similar. I also want to collect data on more markets to extend my investment horizon (Oslo is useless to me because it is way too hot and expensive, but Trondheim could be good).
Anyway, I would also definitely be up for a dedicated BP ML/AI group and to work together to improve our efforts and models! And I am more than willing to share more details. I'd like to point out, though, that I found ML and data science back in February, so I am far from an expert ;)
@Jason Ling - This is definitely a sweet spot "I would then turn my efforts on trying to predict when a homeowner is willing to sell their property in an effort to try to seek out off-market deals before anyone else is aware of them."
It reminds of the case where Target knew someone was pregnant based on seemingly unrelated purchases...
It sounds like alot of people here are at the 'peak of inflated expectations' regarding machine learning for REI.
There are so many problems with relying only on an algorithm to make investing decisions; some of them include
Do you really think zillow/redfin/etc aren't working on this problem and working hard at making their estimates better? ML was not invented yesterday. You're all disillusion if you think you can just plug some off the shelf public data into some off the shelf software and think you're going to change the world or at the very least gain a competitive advantage.
Try creating an automated system that will fly a drone into a house, analyse it and come up with rehab budgets; you could sell that for billions if you could make it work, but good luck
The catch-22 is that those are easy neighborhood to comp out in the first place so any algorithm is going to be less useful.
I'll have to disagree: a human can a.) only deal with a small number of data points and b.) only fathom very simple relationships between them (at least when it comes to the numbers).
An algorithm, on the other hand can learn complicated mathematical relationships (also nonlinear ones that are especially hard for humans to deal with) between all the variables and the price, can do so unbiased (theoretically), and take into account an enormous number of data points. For example, if your algorithm has learned exactly how prices change with location, there is no need to be restricted to only comps in the neighborhood. Same goes for built year etc.
I do fully agree with everything else you've written, though!
I think you're underestimating the power of the human brain. When we look at a house we're not just attempting math on "a small number of data points"; we're looking at millions when you factor in the design / feel / smell / emotions produced / etc / etc. It has been estimated that the human brain has the speed of 2.2 billion megaflops and storage capacity of 3.5 quadrillion bytes
>> Data which exists today does not provide the full story of price; for example
As a Norwegian investor, I have no clue about the MLS, granted. But most of the points you list could, in principle, be captured through image recognition. I am not saying we are there yet; But by using Deep Learning to also look at images (the ones coming with the listing, Google Street View, satellite images, ...), you could capture the effects of how the neighborhood maintains its properties and yards, how tall the ceilings are, what the condition is like, whether the toilet is golden and covered in sapphires, etc.
Assuming you have that data, of course. What I am saying is, that these things are in principle possible with ML/AI. I am not saying they are easy to implement. But I'd say the possibilities are clearly there!
>> I think you're underestimating the power of the human brain. When we look at a house we're not just attempting math on "a small number of data points"; we're looking at millions when you factor in the design / feel / smell / emotions produced / etc / etc.
I think there's a misunderstanding here: What I meant is that the human brain sucks compared to algorithms when you look at thousands and maybe millions of numbers and trying to identify the underlying mathematical patterns. Anything but simple constant or linear relationships between a very small number of numeric samples is too much for the human brain.
Take, for example, a typical CMA: selecting a few comps, same neighborhood, very similar houses, very similar layouts and conditions etc. We can deal with that. But a (good) algorithm that has captured the effects of how location, number of bedrooms and baths, built year, ... influence the price could draw from a much larger number of samples (properties) in order to come up with an estimate. And again, I'm talking about numbers and mathematical functions here.
I am well aware of the awesomeness of the human brain in almost all other areas, and that it can do things that are fully out of the reach of (today's) algorithms, at least given today's availability of data. At least for now, the best results will surely be when we can use ML/AI together with our human strengths.
One last point: AI has in some notable areas surpassed human performance. It has surpassed the performance of human experts in some cases, for example at playing games (Go, Chess, video games, ...). And in other areas it has at least surpassed average human performance, such as in hand written digit recognition and image categorization tasks. Or probably even car accident avoidance.
@Jason Ling - This is definitely a sweet spot "I would then turn my efforts on trying to predict when a homeowner is willing to sell their property in an effort to try to seek out off-market deals before anyone else is aware of them."
It reminds of the case where Target knew someone was pregnant based on seemingly unrelated purchases...
That's a very interesting idea! Would be hard to get a hold of the neccessary data.
>>There are so many problems with relying only on an algorithm to make investing decisions; some of them include
Yes, there are problems. If there were none then I would assume that the problem would be solved by data scientists far better than I.
What I want to discover, for my own, is why the problem been solved. If the answer is that you need to bake in localized assumptions and knowledge into your model and there are many many localities where the knowledge and assumptions change over time... Then I could see why Zillow/Redfin haven't cracked this problem. It's an incredibly difficult problem to solve on a national level - but it is solvable at the city or zip-code level.
>>All of these things, and many more, provide huge impact into market value, and today that data does not exist.
Yes, although I'm not sure about huge. I've seen many notebooks that show very strong correlation between sale price, square foot, basement size etc.. Although there is also a strong correlation between "house condition" and "sale price".
>>Do you really think zillow/redfin/etc aren't working on this problem and working hard at making their estimates better?
I know they are working this problem, they've posted a Kaggle competition with a 1.2mil bounty for those who can help them minimize the log(error) of their estimates. They're providing a 2k sample dataset for the L.A area I believe.
>>ML was not invented yesterday.
I know, ML is a bit of a misnomer. It's mostly regression techniques and a lot of those techniques have been around since the 70's.
>>You're all disillusion if you think you can just plug some off the shelf public data into some off the shelf software and ?>>think you're going to change the world or at the very least gain a competitive advantage.
No need to start making it personal. Let's try to keep the tone friendly and conversational - nothing will get done if the conversation degrades into name calling and tearing each other down.
But no, I don't think you can solve the problem completely by plugging it into some off the shelf software(? To clarify, we're writing the analysis code in R/Python and porting it to C if the idea proves through).
As far as thinking I'm going to change the world - That's beyond the scope of the conversation and now we're getting into hyperbole. My original goal is to answer the question
"Can I write software to predict the price of a home given freely available data?"
You might say, "Well Zillow and Redfin fail and so will you" and my response with that is that I'm completely comfortable with failing because
1.) I will gain insight into the application of data science techniques towards real estate investment
2.) I will make myself more marketable as a software engineer regardless of whether I succeed or fail
>>Try creating an automated system that will fly a drone into a house, analyse it and come up with rehab budgets; you >>could sell that for billions if you could make it work, but good luck
I'm not prepared to make the capital investment needed to make that work. ML towards REI using available data is a side project I can do on nights and weekends - and I'll likely know whether the problem is worth pursuing in < 18 months.
Involving hardware (drones) and image recognition would require capital expenditure and would make the task far too large for a single person to tackle.
We are definitely not the only ones to think about it.
Opendoor (https://techcrunch.com/2016/06/07/a-startup-that-p... presumably uses ML at the heart of their operation, and you can see they are limiting the criteria of their searches to try and make properties uniform with a large addressable market. Unfortunately their equity/debt structure is particularly novel, so it wasn't an enticing company to invest in.
But their operating model makes sense, use ML to go through massive amounts of data and find outliers, then do manual analysis from there.
As many others have pointed out, finding uniform/enough data is the big problem. I do only apartment complexes now, and in my home market that means ~100 potential deals / year, it's just easier to analyze manually.
Big question - why hasn't anyone applied data science and machine learning in the real estate domain?
With the recent (7 years?) advances in natural language processing, image recognition and the validation of various machine learning models why haven't savy investors started a mad race towards developing the ultimate valuation tool?
I've been dabbling in tackling this problem - and so far, it's not that bad.
The only big problems I see is that the data sources for national markets are not uniform.
That the given data might be incomplete or even contain errors (which will affect your model).
That the sample set might be orders of magnitude smaller than your feature space (fixable via removing or combining linearly correlated features to yield an orthogonal feature set)
...So why hasn't anyone done this yet?
Frankly I think the step your presenting is the wrong way to go around it. Our company has made big inroads on the context of using data to hunt for "events" in real estate, with very, and I mean very good results. Personally I do not see it as AI, as it's just a hunt algorithm that looks for key events. As someone else pointed out, real estate data is hit or miss by region or county... It's not about evaluating the property per say, it's about evaluating the owners of said properties. What if I knew you owned a property for 30 years now and just paid it off, maybe it's your 65'th birthday, your wife or husband died, or you filed a UD on a bad tenant, the 5y ARM loan just renewed.... and I came knocking... because our algorithm detected a life event attached to a property... So yes, people are doing stuff, just not reselling or presenting it as a product to the open market.
Interesting topic. I applaud you for trying but....
Models were being used & are used by the Hedge Funds when they were purchasing thousands of properties at a time but if you're a little guy buying a few deals a year, competing against other little guys in the same market the bottom line
Companies like Zillow have tried w/ their Z(estimate) but we find it to be wrong 95% of the time.
Instead of using a "Zestimate" for a rough idea on what a house is potentially worth, I suggest looking at nearby houses sold that are similar to your subject property as that is better physical evidence of what the market is willing to pay for homes like yours--just make sure they are not too far apart (I would suggest to try and stay as close as 0.5 walking miles in urban areas and suburban and rural areas depend more on the town you are trying to rehab in. Good luck!
Troy Fisher
Hi Troy! www.citybuildr.com doesn't work, can you please check the URL?
Sorry: www.CityBldr.com
I see more opportunity in using ML tools, as a business model, for the intersection of Appraisal, Lending and Development. Think a startup mentality version of Marcus & Millichap, using the same kind of datasets.
I think this is an area ripe for play. If you want to work on this together. Reach out to me. I have been talking with a ML as a Service firm around here. There is really no one doing this and would add great value to a fund.
I'm a software engineer at HireVue, a company that makes video interviewing software. A major component of our business is predictive modeling to aid evaluators in looking at potentially the best candidates first when there's a large set of candidates. Our data scientists are some of the savviest in their profession. It has been cool to rub shoulders with them.
Personally, I have very limited experience with machine learning. I used optimization techniques in various research projects in grad school and at my previous job designing various wireless network protocols. In grad school, I did a lot with feedback systems and control theory. But directly on the topic of machine learning, I only took one undergraduate course.
I'm brand new to even learning about real estate investment, much less beginning my first deal. But already I'm excited about the prospect of using machine learning personally to aid me in solving some problems. If anything, it would be a fun exercise. Given my limited knowledge in both real estate investment and machine learning, I don't expect to actually be using it to get myself started on my first several deals. But perhaps if I have the spare time after getting more hands-on investment experience, I'll look into maybe developing some neural network models to solve some problems. The cool thing is that there are SO many specific problems that could be defined which would all require totally different machine learning models to be developed and could aid in different aspects of the investment industry and be applied to specific types of markets.
If I were to try something out later on, I think at first it might be fun to build a model that could determine something like how good each county is in the U.S. for using the BRRRR strategy on single family homes. The reason for this is that so many people post on Bigger Pockets questions like where in the U.S. to even get started for out-of-state BRRRR or other investing. Lots of people provide great answers, but those answers are typically arrived at from intimate experience in a particular area, and many times the answers are to look in or around certain major cities that are already got markets and have a fair amount of competition. It would be cool to quantify an estimate of how good each popular area is and to potentially discover areas that not many people are looking at yet but are ripe for the picking.
@David Ripplinger Do it! Pick one task/problem you think is a good mix of fun/ROI/challenge and have at it! It's how I got started, and now I use ML and simulation to find deals (estimates for market value and estimates for rental income), find comparables (sales, rents), create automatic deal reports (for myself, investors, and the banks), and for strategic planning and portfolio optimization. (I mentioned this just for some extra input, I am fully aware I'm an all out nerd. Can't help myself :D )
@Jason Ling @Severin Sadjina I work in AI/ML on the product side (former software engineer) focused on CV applications. I just found this thread, how have your efforts progressed on this topic? Looks like there were a lot of naysayers, but I'm sure there's something to be had with NLP, CV and basic linear regression.
@Jason Ling @Severin Sadjina I work in AI/ML on the product side (former software engineer) focused on CV applications. I just found this thread, how have your efforts progressed on this topic? Looks like there were a lot of naysayers, but I'm sure there's something to be had with NLP, CV and basic linear regression.
Hi Kevin!
Still using Data Science, ML and computer simulations to find the best deals, analyze markets and cashflows, generate automatic reports for banks and investor, and for optimizing overall strategies wrt. risks and profit potential.
In terms of ML/DS, it all depends on the data of course. But there's much possible in these directions. I have also started exploring how to commercialize these tools. There's been quite a bit of interest in that regard actually.
What else would you like to know? And have you thought along these lines yourself? :)
@Severin Sadjina that's awesome that you're still working on it, and I'm not surprised there's commercial interest! Wholeheartedly agree on having good data sources, I'm very much at the infancy of figuring out what's accessible on what approach to take.
I'd be curious to know what kind of results you've been able to get, and what signals have you found to be the most effective. I'd love to connect further if you're open to it.
Hi Kevin!
I focus mainly on condos in my local market of Ålesund in Norway (check it out btw., the region is beautiful). I’m currently achieving below 5% median relative error, that is, half the estimates are within 5% accurate or better. I very much suspect that is at least as good as what the appraisers and agents are able to do in my market. To me, that is very helpful identifying deal potential very fast and accurate.
Estimating rent seems to be much harder. I get about 9% median error rate. I think part of the problem is that well over 90% of rentals are put out by laymen in my market, so the prices themselves and the data quality is a bit all over the place. But that too is still very useful in estimating the profitability of a deal up front.
The main factors that the ML models seems to like so far are (no really big surprises there I guess):
Again, this is for condos in Norway, so take that with a grain of salt. There are more factors too but I get very far just with those. Been playing around with the agent’s texts in the ads, for example. That can sometimes reveal conditions that can influence the price a lot (like that some of the work done is not approved or whatever).
I’d love to include the standard/conditions of the real estate better, that’s a bit more tricky.
Anyway, just some thoughts! Hope they’re useful!
Hey, how about we organize a virtual meetup on ML in real estate for all us to explore this topic more and exchange experiences and ideas?
Who’d be interested in joining for something like that?
@Severin Sadjina, I'm interested in a virtual meetup on ML in real estate investment.
Meeting options
Option 1) Come to the Zoom Hackathon "Create REI CRM (Podio Based)" on Sunday, August 23, at 12 PM EDT (18:00 Norway Time). On the hackathon, we will train our CRM to assess the viability of real estate through open databases. Some of the source databases are listed in the BiggerPockets articles:
Option 2) I have the right to post announcements on BiggerPockets "Real Estate Events and Happenings" forum.