Yashwanth Venati wins HackRice 8 Data Science Track

Yashwanth Venati wins the D2K Lab-sponsored Data Science track at Hack Rice 8

Yashwanth Venati wins HackRice 8 Data Science Track

Yashwanth is a second year Master’s student at the University of Houston working on BlockChains and Deep Learning in the Computer Science department.

This interview is lightly edited.

Genevera Allen (GA):  Tell us about the motivation for your project at HackRice 2018.

YV:  Houston is a big city and Harris County is the 3rd largest county with 1.4M houses, many have pools.  Harris County has a team of inspectors that routinely have to investigate residential and commercial property improvements (such as room additions, pools, etc) to ensure proper permits are obtained.  Although not widespread, there are some occurrences of non-permitted property improvements (e.g. pools) so they [the County] want to detect and find these houses.  Instead of going and checking each and every house manually, we could do it by using satellite images.  The first step is to find pools in the images and associate the pools with houses.  Then we need to check if the house has a permit from the government database and then generate a report.

GA:  Tell us about your solution at HackRice.

YV:  To train any Machine Learning or Deep Learning model, we require a large amount of data, especially for images.  For us to develop a model from scratch, we would require at least a million images to start with.  Since we didn’t have that kind of image set or the technical time for image learning, I used a pre-trained model to begin with that was already trained on different images via Transfer Learning.  If you imagine a Deep Learning model, the first few layers only detect the figures and shapes in the image which we need to detect pools, so I only used these layers.  I used a pre-trained model from ImageNet which is actually trained on 14 million images and it has almost twenty thousand classes. I found a data set of Australian pools that were already labeled; since I didn’t have time for labeling the images manually, I used the data from it.  It had around 9,000 images so I trained my model with these images.  Nine thousand images is very small, so I augmented the data set and made those nine thousand images into fifty thousand images, and then used it to retrain my model with these fifty-thousand images.  Instead of twenty thousand classes in my pre-trained model, I just have two classes which are pool or no-pool.  For testing, since I don’t have a very good data set of Houston, I had to build my own testing set.  My training accuracy was 92%.

GA:  What would be the next step for your project?

YV:  This is a simple project which only detects whether there is a pool in an image or not but it doesn’t detect where the pool is exactly.  For us to know if the house has a pool or not, we need to detect where the pool is located.  I did image classification, but object detection will place a bounding box over the pool.  And then from the bounding box, we can actually see in which house the pool is located. So the next step would be to transfer this into an object detection project. Also, this model can be extended to detect other objects like Solar Panels or new buildings with additional training.

GA: Congratulations again on your Swimming Pool Detection project at HackRice 8!!