Case Study: Buffered Neyman-Pearson Classification with Spline-based Feature Transforms

Back to main page

——————————————————————–———————————————————————————
At the link below, a set of MATLAB scripts are available which demonstrate how to solve the Buffered Neyman-Pearson Classification problem as is detailed in Section 6.6. of “Error Control and Neyman-Pearson Classification With Buffered Probability and Support Vectors” by M. Norton and S. Uryasev (2017). The script utilizes Portfolio Safeguard (PSG) as the optimization back-end. A description of the file contents can be found further below the link.
——————————————————————–———————————————————————————
Description of MATLAB Components:
File: pm_pen_minimization_oos_subroutines.m
Contents: This file contains the primary MATLAB routine and contains three components. First, in “Part I”, the dataset is partitioned for k-fold cross validation. Then, an optimal spline transformation is found for each dimension of the input data (calls to sub1.m). Second, in “Part II”, the transformed features are utilized in Buffered Neyman-Pearson Classification (calls to sub2.m). Finally, “Part III” summarizes the results and stores them in a structure. An optional file “best_f_all.mat” can be called at the beginning of Part II. It contains subsets of the transformed features which were deemed through feature selection procedures to be the most informative sets of features. This file also contains the set of all features, which would be the default choice without feature selection.
File: sub1.m
Contents: This file contains the subroutine called in “Part I” of pm_pen_minimization_oos_subroutines.m. It solves the Buffered Neyman-Pearson classification problem, but utilizes only one dimension of the original input vector as well as a spline transformation of the feature. The routine then learns the optimal feature transformation for the one dimensional Buffered Neyman-Pearson classification problem, with learned features that will be utilized in the overall Buffered Neyman-Pearson classification problem.
File: sub2.m
Contents: This file contains the subroutine called in “Part II” of pm_pen_minimization_oos_subroutines.m. It solves the Buffered Neyman-Pearson classification problem utilizing the transformed features found in Part I via sub1.m.
File: spamebase.mat
Contents: The spambase dataset from the UCI Machine Learning Repository.
File: best_f_all.mat
Contents: An optional file to call which contains reduced sets of transformed features. A feature selection procedure was performed on the transformed features, and this file contains subsets of features.
File: report_2_spline_oos_parfor.mat
Contents: Container file for results.
File: report_3_pr_pen_oos_parfor.mat
Contents: Container file for results.
References
• “Error Control and Neyman-Pearson Classification With Buffered Probability and Support Vectors” by M. Norton and S. Uryasev (2017).