@@ -703,59 +703,42 @@ protected override void PrintFoldResultsCore(IChannel ch, Dictionary<string, IDa
703
703
}
704
704
}
705
705
706
- var args = new ChooseColumnsTransform . Arguments ( ) ;
707
- var cols = new List < ChooseColumnsTransform . Column > ( )
708
- {
709
- new ChooseColumnsTransform . Column ( )
710
- {
711
- Name = string . Format ( FoldDrAtKFormat , _k ) ,
712
- Source = AnomalyDetectionEvaluator . OverallMetrics . DrAtK
713
- } ,
714
- new ChooseColumnsTransform . Column ( )
715
- {
716
- Name = string . Format ( FoldDrAtPFormat , _p ) ,
717
- Source = AnomalyDetectionEvaluator . OverallMetrics . DrAtPFpr
718
- } ,
719
- new ChooseColumnsTransform . Column ( )
720
- {
721
- Name = string . Format ( FoldDrAtNumAnomaliesFormat , numAnomalies ) ,
722
- Source = AnomalyDetectionEvaluator . OverallMetrics . DrAtNumPos
723
- } ,
724
- new ChooseColumnsTransform . Column ( )
725
- {
726
- Name = AnomalyDetectionEvaluator . OverallMetrics . ThreshAtK
727
- } ,
728
- new ChooseColumnsTransform . Column ( )
729
- {
730
- Name = AnomalyDetectionEvaluator . OverallMetrics . ThreshAtP
731
- } ,
732
- new ChooseColumnsTransform . Column ( )
733
- {
734
- Name = AnomalyDetectionEvaluator . OverallMetrics . ThreshAtNumPos
735
- } ,
736
- new ChooseColumnsTransform . Column ( )
737
- {
738
- Name = BinaryClassifierEvaluator . Auc
739
- }
740
- } ;
706
+ var kFormatName = string . Format ( FoldDrAtKFormat , _k ) ;
707
+ var pFormatName = string . Format ( FoldDrAtPFormat , _p ) ;
708
+ var numAnomName = string . Format ( FoldDrAtNumAnomaliesFormat , numAnomalies ) ;
709
+
710
+ ( string Source , string Name ) [ ] cols =
711
+ {
712
+ ( AnomalyDetectionEvaluator . OverallMetrics . DrAtK , kFormatName ) ,
713
+ ( AnomalyDetectionEvaluator . OverallMetrics . DrAtPFpr , pFormatName ) ,
714
+ ( AnomalyDetectionEvaluator . OverallMetrics . DrAtNumPos , numAnomName )
715
+ } ;
716
+
717
+ // List of columns to keep, note that the order specified determines the order of the output
718
+ var colsToKeep = new List < string > ( ) ;
719
+ colsToKeep . Add ( kFormatName ) ;
720
+ colsToKeep . Add ( pFormatName ) ;
721
+ colsToKeep . Add ( numAnomName ) ;
722
+ colsToKeep . Add ( AnomalyDetectionEvaluator . OverallMetrics . ThreshAtK ) ;
723
+ colsToKeep . Add ( AnomalyDetectionEvaluator . OverallMetrics . ThreshAtP ) ;
724
+ colsToKeep . Add ( AnomalyDetectionEvaluator . OverallMetrics . ThreshAtNumPos ) ;
725
+ colsToKeep . Add ( BinaryClassifierEvaluator . Auc ) ;
726
+
727
+ overall = new CopyColumnsTransform ( Host , cols ) . Transform ( overall ) ;
728
+ IDataView fold = SelectColumnsTransform . CreateKeep ( Host , overall , colsToKeep . ToArray ( ) ) ;
741
729
742
- args . Column = cols . ToArray ( ) ;
743
- IDataView fold = new ChooseColumnsTransform ( Host , args , overall ) ;
744
730
string weightedFold ;
745
731
ch . Info ( MetricWriter . GetPerFoldResults ( Host , fold , out weightedFold ) ) ;
746
732
}
747
733
748
734
protected override IDataView GetOverallResultsCore ( IDataView overall )
749
735
{
750
- var args = new DropColumnsTransform . Arguments ( ) ;
751
- args . Column = new [ ]
752
- {
753
- AnomalyDetectionEvaluator . OverallMetrics . NumAnomalies ,
754
- AnomalyDetectionEvaluator . OverallMetrics . ThreshAtK ,
755
- AnomalyDetectionEvaluator . OverallMetrics . ThreshAtP ,
756
- AnomalyDetectionEvaluator . OverallMetrics . ThreshAtNumPos
757
- } ;
758
- return new DropColumnsTransform ( Host , args , overall ) ;
736
+ return SelectColumnsTransform . CreateDrop ( Host ,
737
+ overall ,
738
+ AnomalyDetectionEvaluator . OverallMetrics . NumAnomalies ,
739
+ AnomalyDetectionEvaluator . OverallMetrics . ThreshAtK ,
740
+ AnomalyDetectionEvaluator . OverallMetrics . ThreshAtP ,
741
+ AnomalyDetectionEvaluator . OverallMetrics . ThreshAtNumPos ) ;
759
742
}
760
743
761
744
protected override IEnumerable < string > GetPerInstanceColumnsToSave ( RoleMappedSchema schema )
0 commit comments