Sherlock: A Deep Learning Approach to Semantic Data Type Detection