reset
Syntax
Description
forest = reset( returns the
incremental robust random cut forest (RRCF) model forest)forest with reset
learned parameters. If any hyperparameters of forest are estimated
during incremental training, the reset function resets these
hyperparameters as well. reset always preserves the
forest.NumPredictors property.
Examples
Create a default RRCF model for incremental anomaly detection. Specify to use 50 robust random cut trees and to standardize the predictor data. Reset the model after incremental training and see which parameters are reset.
IncrementalMdl = incrementalRobustRandomCutForest(NumLearners=50, ...
StandardizeData=true);IncrementalMdl is an incrementalRobustRandomCutForest model object. All its properties are read-only. By default, the software sets the anomaly contamination fraction to 0 and the score threshold to 0.
IncrementalMdl must be fit to data before you can use it to perform any other operations.
Load Data
Load the 1994 census data stored in census1994.mat. The data set consists of demographic data from the US Census Bureau.
load census1994.matThe fit function of incrementalRobustRandomCutForest does not use observations with missing values. Remove missing values and categorical variables in the data to reduce memory consumption and speed up training. Use only the first 5000 observations in the data for training and anomaly detection.
adultdata = rmmissing(adultdata); adultdata = removevars(adultdata,["workClass","education","marital_status", ... "occupation","relationship","race","sex","native_country","salary"]); adultdata = adultdata(1:5000,:); rng("default") % For reproducibility
Fit Incremental Model
Fit the incremental model IncrementalMdl to the data by using the fit function. To simulate a data stream, fit the model in chunks of 100 observations at a time. At each iteration:
Process 100 observations.
Overwrite the previous incremental model with a new one fitted to the incoming observations.
n = numel(adultdata(:,1)); numObsPerChunk = 100; nchunk = floor(n/numObsPerChunk); % Incremental fitting rng("default"); % For reproducibility for j = 1:nchunk ibegin = min(n,numObsPerChunk*(j-1) + 1); iend = min(n,numObsPerChunk*j); idx = ibegin:iend; IncrementalMdl = fit(IncrementalMdl,adultdata(idx,:)); end
Display all the properties of the trained model object IncrementalMdl.
details(IncrementalMdl)
incrementalRobustRandomCutForest with properties:
CollusiveDisplacement: 'maximal'
NumLearners: 50
NumObservationsPerLearner: 256
ObservationRemoval: 'oldest'
NumObservationsToKeep: 256
Mu: [37.9400 1.9217e+05 10.1980 567.7170 102.5340 40.7060]
Sigma: [12.8905 1.0789e+05 2.5006 2.4309e+03 431.7485 11.7970]
CategoricalPredictors: []
EstimationPeriod: 1000
IsWarm: 1
ContaminationFraction: 0
NumTrainingObservations: 4000
NumPredictors: 6
ScoreThreshold: 176.3187
ScoreWarmupPeriod: 0
PredictorNames: {'age' 'fnlwgt' 'education_num' 'capital_gain' 'capital_loss' 'hours_per_week'}
ScoreWindowSize: 1000
Methods, Superclasses
Reset Incremental Model
Reset the learned parameters by using the reset function, and compare them to the previous model to see which parameters are reset.
newMdl = reset(IncrementalMdl); details(newMdl)
incrementalRobustRandomCutForest with properties:
CollusiveDisplacement: 'maximal'
NumLearners: 50
NumObservationsPerLearner: 256
ObservationRemoval: 'oldest'
NumObservationsToKeep: 256
Mu: [0 0 0 0 0 0]
Sigma: [1 1 1 1 1 1]
CategoricalPredictors: []
EstimationPeriod: 1000
IsWarm: 0
ContaminationFraction: 0
NumTrainingObservations: 0
NumPredictors: 6
ScoreThreshold: 0
ScoreWarmupPeriod: 0
PredictorNames: {'age' 'fnlwgt' 'education_num' 'capital_gain' 'capital_loss' 'hours_per_week'}
ScoreWindowSize: 1000
Methods, Superclasses
The reset function resets the warm-up status of the model (IsWarm = 0), the score threshold, the number of training observations, and the estimated hyperparameters (Mu and Sigma).
Input Arguments
Incremental RRCF model, specified as an
incrementalRobustRandomCutForest model object. You can
create forest directly or by converting a supported,
traditionally trained RRCF model using the incrementalLearner function. For more details, see the incrementalRobustRandomCutForest object page.
Version History
Introduced in R2023b
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)