Weak Label Model Learner

Learns a generative label model from the provided label source columns. This node is a key component for the realization of weak supervision approaches as popularized by Snorkel . The idea in weak supervision is that it is often possible to create a number of simple inaccurate models (e.g. simple rules or existing models for slightly different tasks) that can label unlabeled data and that the agreements and disagreements of these simple models can be analyzed to infer information on the true label. Our implementation is a TensorFlow based adaptation of the matrix completion approach proposed in this paper by the Snorkel team. We refer to the publication for details on the strategy.


Label sources
Select the columns which act as label sources i.e. that contain noisy labels for some of the rows in the first input table. It is assumed that a missing value means that the respective label source did not label the corresponding row.
The number of optimization steps to perform. More epochs can result in better results but also directly translate into a longer runtime.
Learning rate
The learning rate dictates how much a single training epoch changes the learned model. A smaller learning rate requires more epochs to reach convergence while a large learning rate might lead to divergence of the algorithm.

Input Ports

Table containing label sources. A label source is either a nominal or a probability distribution column. Note that missing values in a label source are interpreted as abstains i.e. it is assumed that a missing value indicates that the label source did decide not to label the corresponding row. In case of nominal columns, label sources without a set of possible values assigned are ignored during the computation and a corresponding warning is displayed on the node.

Output Ports

A weak label model that can be applied to data with the Weak Label Model Predictor.
Each row in this table gives the conditional probabilities that the label source displayed in the Label Source column takes on a specific value given the true label displayed in the Latent Label column.


This node has no views




You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.