Changeset 34786


Ignore:
Timestamp:
2021-02-01T18:31:25+13:00 (3 years ago)
Author:
davidb
Message:

Code tidy-up

Location:
main/trunk/model-sites-dev/mars
Files:
1 added
3 edited

Legend:

Unmodified
Added
Removed
  • main/trunk/model-sites-dev/mars/RUN-APPLY-AROUSAL-MODEL.sh

    r34785 r34786  
    1111     "$output_data_filename"
    1212
    13 echo "****"
    14 echo "* Saved output data: $output_data_filename"
    15 echo "****"
    16 
    1713
    1814
  • main/trunk/model-sites-dev/mars/src/java/org/greenstone/mars/WekaApplyArousalModel.java

    r34785 r34786  
    2828class WekaApplyArousalModel
    2929{
    30     public final static String AROUSAL_ATTRIBUTE_NAME = "arousal_sample_26500ms";
    31     public final static String VALANCE_ATTRIBUTE_NAME = "valance_sample_26500ms";
    32 
    33     public final static String PREDICT_ATTRIBUTE_NAME = "arousal_sample_26500ms";
    34    
    35 
     30    //public final static String AROUSAL_ATTRIBUTE_NAME = "arousal_sample_26500ms";
     31    //public final static String VALANCE_ATTRIBUTE_NAME = "valance_sample_26500ms";
     32
     33    public final static String PREDICT_ATTRIBUTE_NAME = WekaUtil.AROUSAL_ATTRIBUTE_NAME;
     34   
     35
     36    /*
    3637    public static Instances applyFilter(Instances data_instances,String additional_remove)
    3738    {
     
    5859    return filtered_data_instances;
    5960    }
    60 
    61 
     61    */
     62   
     63    /*
    6264   
    6365    public static void checkDatasetInstancesCompatible(Instances new_instances)
     
    8789
    8890    }
     91    */
    8992   
    9093    public static void main(String[] args)
     
    113116        System.out.println("Loading unlabeled instances: " + unclassified_data_input_filename);
    114117
    115         //FileReader fr = new FileReader(unclassified_data_input_filename);
    116         //BufferedReader br = new BufferedReader(fr);
    117         //Instances unlabeled_instances = new Instances(br);
    118         //br.close();
    119 
    120118        DataSource data_source = new DataSource(unclassified_data_input_filename);
    121119        Instances unlabeled_instances = data_source.getDataSet();
     
    129127        if (predict_attribute == null) {
    130128
    131         unlabeled_instances = applyFilter(unlabeled_instances,null); // no additional top-up to remove     
     129        unlabeled_instances = WekaUtil.applyFilter(unlabeled_instances,null); // no additional top-up to remove     
    132130        int num_attributes = unlabeled_instances.numAttributes();
    133131
    134         Attribute arousal_attribute = new Attribute(AROUSAL_ATTRIBUTE_NAME);
     132        Attribute arousal_attribute = new Attribute(WekaUtil.AROUSAL_ATTRIBUTE_NAME);
    135133        unlabeled_instances.insertAttributeAt(arousal_attribute,num_attributes);
    136         num_attributes++;
    137        
    138         //Attribute valance_attribute = new Attribute(VALANCE_ATTRIBUTE_NAME);
    139         //unlabeled_instances.insertAttributeAt(valance_attribute,num_attributes);
    140         //num_attributes++;
    141 
    142         //predict_attribute = new Attribute(PREDICT_ATTRIBUTE_NAME);
    143         //unlabeled_instances.insertAttributeAt(predict_attribute,num_attributes);
    144         //unlabeled_instances.setClassIndex(num_attributes);
    145         //num_attributes++;
    146 
    147         //predict_attribute = unlabeled_instances.attribute(PREDICT_ATTRIBUTE_NAME);
    148         //unlabeled_instances.setClass(predict_attribute);
    149 
    150         //unlabeled_instances.setClassIndex(num_attributes - 1);
     134        num_attributes++;       
    151135        }
    152136        else {
     
    155139        //   => in fact has 'valance' attribute too, which we want to remove
    156140       
    157         unlabeled_instances = applyFilter(unlabeled_instances,"472"); // top-up with removal of 'valance'
    158         //unlabeled_instances.setClass(predict_attribute);
     141        unlabeled_instances = WekaUtil.applyFilter(unlabeled_instances,"472"); // top-up with removal of 'valance'
    159142       
    160143        // reference share this as 'groundtruth_instances' to trigger error calculation and output
     
    163146
    164147        int num_attributes = unlabeled_instances.numAttributes();
     148       
     149        // Set class attribute
    165150        unlabeled_instances.setClassIndex(num_attributes - 1);
    166151       
    167         checkDatasetInstancesCompatible(unlabeled_instances);
    168        
    169         // Set class attribute
    170         //unlabeled_instances.setClassIndex(gt_instances.numAttributes() - 2);
    171 
     152        WekaUtil.checkDatasetInstancesCompatible(unlabeled_instances);
    172153
    173154        // Create copy where the predictions are to be made
  • main/trunk/model-sites-dev/mars/src/java/org/greenstone/mars/WekaTrainArousalModel.java

    r34785 r34786  
    4949        DataSource data_source = new DataSource(input_arff_filename);
    5050        Instances data_instances = data_source.getDataSet();
     51       
     52        Instances filtered_data_instances = WekaUtil.applyFilter(data_instances,"472"); // top-up with removal of 'valance'
    5153
    52         // Filter out Valence
    53         //String[] filter_options = weka.core.Utils.splitOptions("-R 472");
    54         //String[] filter_options = weka.core.Utils.splitOptions("-R 472 -R 458-466");
    55         String[] filter_options = weka.core.Utils.splitOptions("-R 425,458-466,472"); // remove ordinal attributes and 'valance'
    56         Remove filter_remove = new Remove();
    57         filter_remove.setOptions(filter_options);
    58         filter_remove.setInputFormat(data_instances);
    59         Instances filtered_data_instances = Filter.useFilter(data_instances, filter_remove);
    60 
    61         // **** have removed R472, so class to predict is numAttributes()-1
    62         filtered_data_instances.setClassIndex(filtered_data_instances.numAttributes() - 1);
     54           
     55        // Filtering above has removed R472, so class to predict is numAttributes()-1
     56        filtered_data_instances.setClassIndex(filtered_data_instances.numAttributes()-1);
    6357       
    6458
     
    7165        System.out.println(classifier);
    7266
    73 
     67        // Evaluate     
    7468        Evaluation eval = new Evaluation(filtered_data_instances);
    7569        Random rand = new Random(1);
Note: See TracChangeset for help on using the changeset viewer.