FindAnomalies—Wolfram Language Documentation (original) (raw)
BUILT-IN SYMBOL
FindAnomalies
FindAnomalies[{example1,example2,…}]
gives a list of the examplei that are considered anomalous with respect to the other examples.
FindAnomalies[examples,prop]
gives the specified property related to the anomaly computation.
FindAnomalies[examples,{prop1,prop2,…}]
gives the properties propi.
FindAnomalies[fun,data,props]
gives properties related to the anomaly computation.
Details and Options
- FindAnomalies can be used on many types of data, including numerical, nominal and images.
- Each examplei can be a single data element, a list of data elements or an association of data elements. Examples can also be given as a Dataset object.
- FindAnomalies attempts to model the distribution of non-anomalous data in order to detect anomalies (i.e. "out-of-distribution" examples). Examples are considered anomalous when their RarerProbability is below the value specified for AcceptanceThreshold.
- In FindAnomalies[AnomalyDetectorFunction[…],data], if data comes from the same distribution as the training examples for the detector, AcceptanceThreshold corresponds to the anomaly detection false-positive rate.
- In FindAnomalies[…,props], possible properties include:
"Anomalies" examples that are considered anomalous "AnomalyCount" number of examples that are considered anomalous "AnomalyBooleanList" Boolean values indicating whether examples are anomalous "AnomalyPositions" list of anomaly positions "AnomalyRarerProbabilities" rarer probabilities of anomalous examples "NonAnomalies" examples that are considered nonanomalous "RarerProbabilities" probability to generate a sample with lower PDF than data - The following options can be given:
AcceptanceThreshold 0.001 RarerProbability threshold to consider an example anomalous FeatureExtractor Identity how to extract features from which to learn FeatureNames Automatic feature names to assign for input data FeatureTypes Automatic feature types to assume for input data Method Automatic which modeling algorithm to use PerformanceGoal Automatic aspects of performance to optimize RandomSeeding 1234 what seeding of pseudorandom generators should be done internally TimeGoal Automatic how long to spend training the detector TrainingProgressReporting Automatic how to report progress during training ValidationSet Automatic the set of data on which to evaluate the model during training - Possible settings for PerformanceGoal include:
"Quality" maximize the modeling quality of the detector "Speed" maximize speed for detecting anomalies Automatic automatic tradeoff among speeds, quality and memory {goal1,goal2,…} automatically combine goal1, goal2, etc. - Possible settings for Method are as given in LearnDistribution[…].
- The following settings for TrainingProgressReporting can be used:
"Panel" show a dynamically updating graphical panel "Print" periodically report information using Print "ProgressIndicator" show a simple ProgressIndicator "SimplePanel" dynamically updating panel without learning curves None do not report any information - FindAnomalies[…,FeatureExtractor"Minimal"] indicates that the internal preprocessing should be as simple as possible.
Examples
open allclose all
Basic Examples (3)
Find anomalous examples on a numeric dataset:
Find anomalous examples in a dataset containing numeric and nominal variables:
Generate 100 colors following a given distribution:
Add out-of-distribution colors and attempt to detect them:
Scope (3)
Train a distribution on colors:
Use the trained distribution to find anomalies:
Train an AnomalyDetectorFunction on a two-dimensional array of pseudorandom real numbers:
Use the trained AnomalyDetectorFunction to find anomalies in new examples:
Use the detector function to find anomalies, their corresponding positions and non-anomalous cases:
Obtain a random sample of training and test datasets of images:
Add anomalous examples to corrupt the datasets:
Train a distribution on images:
Use the trained distribution to find anomalous examples in the test set:
Options (5)
AcceptanceThreshold (1)
Create and visualize random 3D vectors with anomalies:
Find anomalous examples and visualize them:
Change the anomaly detection false-positive rate by specifying the AcceptanceThreshold:
Method (1)
Obtain a dataset of images:
Add out-of-distribution examples to the dataset:
Find anomalies in the dataset using the "Multinormal" method:
Find anomalies in the dataset using the "KernelDensityEstimation" method:
PerformanceGoal (1)
Obtain a dataset of images:
Find 1 percentile of the most uncommon examples in the dataset by specifying the PerformanceGoal:
Find the most uncommon examples in the dataset with the default PerformanceGoal:
TimeGoal (1)
Obtain a dataset of images and find the most uncommon examples by specifying the time goal:
Find the most uncommon examples by specifying a different time goal:
TrainingProgressReporting (1)
Obtain a dataset of images:
Show training progress interactively without the plots:
Print the training progress periodically during training:
Show a simple progress indicator:
Applications (4)
Obtain a dataset of images:
Find around 0.1 percentile of the most uncommon examples in the dataset:
Obtain a dataset of images:
Add anomalous examples to the test set:
Train an anomaly detector on the training set:
Find anomalous examples in the test set:
Obtain a dataset related to features of moons of Jupiter:
Find anomalous examples in the dataset:
Find anomalous examples with a higher RarerProbability threshold value:
Obtain time-value pairs of a given time series:
Partition the time-value pairs to a list of consecutive windows:
Attempt to find anomalous events and visualize them:
Wolfram Research (2019), FindAnomalies, Wolfram Language function, https://reference.wolfram.com/language/ref/FindAnomalies.html (updated 2020).
Text
Wolfram Research (2019), FindAnomalies, Wolfram Language function, https://reference.wolfram.com/language/ref/FindAnomalies.html (updated 2020).
CMS
Wolfram Language. 2019. "FindAnomalies." Wolfram Language & System Documentation Center. Wolfram Research. Last Modified 2020. https://reference.wolfram.com/language/ref/FindAnomalies.html.
APA
Wolfram Language. (2019). FindAnomalies. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/FindAnomalies.html
BibTeX
@misc{reference.wolfram_2024_findanomalies, author="Wolfram Research", title="{FindAnomalies}", year="2020", howpublished="\url{https://reference.wolfram.com/language/ref/FindAnomalies.html}", note=[Accessed: 26-September-2024 ]}
BibLaTeX
@online{reference.wolfram_2024_findanomalies, organization={Wolfram Research}, title={FindAnomalies}, year={2020}, url={https://reference.wolfram.com/language/ref/FindAnomalies.html}, note=[Accessed: 26-September-2024 ]}