MLAILGMay 25, 2016

Data Programming: Creating Large Training Sets, Quickly

arXiv:1605.07723v3772 citations
Originality Highly original
AI Analysis

This addresses the bottleneck of data labeling for supervised learning, particularly benefiting applications where labeled data is scarce or costly, and is incremental in automating weak supervision.

The paper tackles the problem of creating large labeled training sets, which is time-consuming and expensive, by proposing data programming, a paradigm that uses noisy labeling functions to programmatically generate training data, and demonstrates that it achieves a new winning score on the 2014 TAC-KBP Slot Filling challenge and improves an LSTM baseline by almost 6 F1 points.

Large labeled training sets are the critical building blocks of supervised learning methods and are key enablers of deep learning techniques. For some applications, creating labeled training sets is the most time-consuming and expensive part of applying machine learning. We therefore propose a paradigm for the programmatic creation of training sets called data programming in which users express weak supervision strategies or domain heuristics as labeling functions, which are programs that label subsets of the data, but that are noisy and may conflict. We show that by explicitly representing this training set labeling process as a generative model, we can "denoise" the generated training set, and establish theoretically that we can recover the parameters of these generative models in a handful of settings. We then show how to modify a discriminative loss function to make it noise-aware, and demonstrate our method over a range of discriminative models including logistic regression and LSTMs. Experimentally, on the 2014 TAC-KBP Slot Filling challenge, we show that data programming would have led to a new winning score, and also show that applying data programming to an LSTM model leads to a TAC-KBP score almost 6 F1 points over a state-of-the-art LSTM baseline (and into second place in the competition). Additionally, in initial user studies we observed that data programming may be an easier way for non-experts to create machine learning models when training data is limited or unavailable.

Code Implementations4 repos
Foundations

The foundational work for this paper's niche, ranked by how specifically the neighbourhood builds on it — not by global fame.

Your Notes