liveBook · Manning

Semi-supervised learning

As explained in Outlier Detection in Python

Semisupervised learning is a machine-learning paradigm that trains with labeled data while also exploiting substantially larger amounts of unlabeled data.

Semi-supervised learning combines labeled records with a larger pool of unlabeled data. In outlier detection, it uses labels about which records should receive high scores to improve predictions, especially for outliers similar to those already seen. section 15.4 section 15.6

A practical workflow is:

  • Label flagged records, and consider labeling records just below the flagging threshold. A label expresses whether similar records should score highly in the future—not merely whether a record is statistically unusual or proved important during investigation. section 15.4 section 15.6
  • Wait until enough labels have accumulated to train a useful model. Strong systems may require thousands of labeled outliers, so this approach is often more feasible after a detector has been running for some time. section 15.4
  • Use the resulting scores alongside unsupervised outlier detection. Classification can improve scores for familiar kinds of relevant outlier, but it handles novel records poorly. section 15.4 section 15.6

Labels can also support rules, classifiers, and regression tests. These serve different purposes: rules and classifiers sort known kinds of records, while tests check that known outliers still score highly after a model is retuned. section 15.0 section 15.6

How Outlier Detection in Python covers it

How deep it goes
Defines the approach and its place in a detection workflow, but does not specify an algorithm or implementation.
Examples
Illustrates label collection with flagged records and records just below detection thresholds in ongoing or one-off projects.
What it assumes
Assumes records can be hand-labeled; explains that enough labels may be unavailable early in a detection project.
What you can do after
Evaluate/understand it as a way to improve familiar-outlier scores without abandoning unsupervised detection of novel records.
How it connects
Connects hand-labeling and binary classification with unsupervised outlier detection, rules, and regression testing.

Also explained in

Compare how 5 books explain semi-supervised learning →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Outlier Detection in Python. The section links point to the parts of the book it draws on.