Changeset 34786
- Timestamp:
- 2021-02-01T18:31:25+13:00 (3 years ago)
- 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 11 11 "$output_data_filename" 12 12 13 echo "****"14 echo "* Saved output data: $output_data_filename"15 echo "****"16 17 13 18 14 -
main/trunk/model-sites-dev/mars/src/java/org/greenstone/mars/WekaApplyArousalModel.java
r34785 r34786 28 28 class WekaApplyArousalModel 29 29 { 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 /* 36 37 public static Instances applyFilter(Instances data_instances,String additional_remove) 37 38 { … … 58 59 return filtered_data_instances; 59 60 } 60 61 61 */ 62 63 /* 62 64 63 65 public static void checkDatasetInstancesCompatible(Instances new_instances) … … 87 89 88 90 } 91 */ 89 92 90 93 public static void main(String[] args) … … 113 116 System.out.println("Loading unlabeled instances: " + unclassified_data_input_filename); 114 117 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 120 118 DataSource data_source = new DataSource(unclassified_data_input_filename); 121 119 Instances unlabeled_instances = data_source.getDataSet(); … … 129 127 if (predict_attribute == null) { 130 128 131 unlabeled_instances = applyFilter(unlabeled_instances,null); // no additional top-up to remove129 unlabeled_instances = WekaUtil.applyFilter(unlabeled_instances,null); // no additional top-up to remove 132 130 int num_attributes = unlabeled_instances.numAttributes(); 133 131 134 Attribute arousal_attribute = new Attribute( AROUSAL_ATTRIBUTE_NAME);132 Attribute arousal_attribute = new Attribute(WekaUtil.AROUSAL_ATTRIBUTE_NAME); 135 133 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++; 151 135 } 152 136 else { … … 155 139 // => in fact has 'valance' attribute too, which we want to remove 156 140 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' 159 142 160 143 // reference share this as 'groundtruth_instances' to trigger error calculation and output … … 163 146 164 147 int num_attributes = unlabeled_instances.numAttributes(); 148 149 // Set class attribute 165 150 unlabeled_instances.setClassIndex(num_attributes - 1); 166 151 167 checkDatasetInstancesCompatible(unlabeled_instances); 168 169 // Set class attribute 170 //unlabeled_instances.setClassIndex(gt_instances.numAttributes() - 2); 171 152 WekaUtil.checkDatasetInstancesCompatible(unlabeled_instances); 172 153 173 154 // Create copy where the predictions are to be made -
main/trunk/model-sites-dev/mars/src/java/org/greenstone/mars/WekaTrainArousalModel.java
r34785 r34786 49 49 DataSource data_source = new DataSource(input_arff_filename); 50 50 Instances data_instances = data_source.getDataSet(); 51 52 Instances filtered_data_instances = WekaUtil.applyFilter(data_instances,"472"); // top-up with removal of 'valance' 51 53 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); 63 57 64 58 … … 71 65 System.out.println(classifier); 72 66 73 67 // Evaluate 74 68 Evaluation eval = new Evaluation(filtered_data_instances); 75 69 Random rand = new Random(1);
Note:
See TracChangeset
for help on using the changeset viewer.