The HPREDUCE Procedure

Unsupervised Variable Selection with the HPREDUCE Procedure

The following statements use PROC HPREDUCE for unsupervised variable selection. The statements specify that the technique used for variable selection is variance analysis. The maximum number of variables to select is 5, and the maximum percentage of the total variance to explain is 95%. The procedure stops when either of two conditions is satisfied.

 proc hpreduce data=getstarted technique=VarianceAnalysis;
     class C;
     reduce unsupervised C x1-x10 / maxeffects=5 varexp=0.95;
     performance details;
 run;

The output from this analysis is presented in Figure 1 through Figure 6.

Figure 1 shows the "Performance Information" table, which indicates that the procedure ran locally with four threads.

Figure 1: Performance Information

The HPREDUCE Procedure

Performance Information
Execution ModeSingle-Machine
Number of Threads16


Figure 2 shows the "Data Access Information" table, which provides the information about the data sets that the HPREDUCE procedure has accessed and generated.

Figure 2: Data Access Information

Data Access Information
DataEngineRolePath
WORK.GETSTARTEDV9InputOn Client


Figure 3 displays the "Model Information" and "Number of Observations" tables. The "Model Information" table shows that the HPREDUCE procedure is used for unsupervised variable selection. The CLASS variable C is parameterized in the general linear model (GLM) parameterization, which is the default. The total number of variables is 11. The technique used for variable selection is variance analysis. The maximum number of variables to select is 5, and the maximum percentage of the total variance to explain is 95%. The "Number of Observations" table shows that all 100 observations in the data set are used in the analysis.

Figure 3: Model Information and Number of Observations

Model Information
Data SourceGETSTARTED
Model TypeUnsupervised
Class ParameterizationGLM
Selection TechniqueVariance Analysis
Number of Variables11
Number of Variables to Select5
Variance to Explain0.95

Number of Observations Read100
Number of Observations Used100


Figure 4 shows the "Class Level Information" table, which indicates that the CLASS variable C has 10 unique formatted levels.

Figure 4: Class Level Information and Response Profile

Class Level Information
ClassLevelsValues
C10A B C D E F G H I J


Figure 5 shows the "Selection Summary" and "Selected Variables" tables. The "Selection Summary" table shows which variable (or level for CLASS variables) is selected in each step, in addition to the total variance that is explained by the variables selected so far. The "Selected Variables" table presents all the selected variables and their corresponding variable types.

Figure 5: Selection Summary and Selected Variables

Selection Summary
IterationSelected
Effect
LevelProportion
of
Variance
Explained
SSEMSEAICAICCBIC
1x3-0.068118.63800.18837.105227.21632.9713
2x7-0.132617.34840.17706.993526.09402.9456
3x10-0.193316.13410.16636.860924.94552.9191
4CI0.252914.94230.15566.704223.76752.8884
5CF0.312013.76070.14486.521822.55852.8521
6CJ0.369012.62100.13436.315421.32022.8117
7CB0.425711.48560.12356.081120.04872.7635
8CG0.481310.37490.11285.819418.74442.7078
9CD0.53519.29800.10225.529817.40702.6443
10CH0.58898.22180.09145.206816.03082.5673
11CA0.64077.18670.08074.852214.61782.4788
12x5-0.69166.16780.07014.459313.16112.3720

Selected Variables
NumberSelected
Variable
Variable
Type
1x3INTERVAL
2x7INTERVAL
3x10INTERVAL
4CCLASS
5x5INTERVAL


Figure 6 shows the "Procedure Task Timing" table, which provides details about how much time is used by each processing step.

Figure 6: Procedure Task Timing

Procedure Task Timing
TaskSecondsPercent
Data Read and Variable levelization0.013.63%
Effect Levelization0.000.21%
Data Preparation for Discriminant Analysis0.000.00%
Cross-product Accumulation0.1988.94%
Variable Selection0.027.22%


Last updated: May 25, 2022