Mercurial > repos > goeckslab > image_learner
comparison image_learner.xml @ 20:64872c48a21f draft
planemo upload for repository https://github.com/goeckslab/gleam.git commit d4b122527a2402e43512f9b4bda00c7bff0ec9e9
| author | goeckslab |
|---|---|
| date | Tue, 06 Jan 2026 15:35:11 +0000 |
| parents | c460abae83eb |
| children | d5c582cf74bc |
comparison
equal
deleted
inserted
replaced
| 19:c460abae83eb | 20:64872c48a21f |
|---|---|
| 27 #if $input_csv | 27 #if $input_csv |
| 28 #set $sanitized_input_csv = re.sub('[^\w\-_\.]', '_', $input_csv.element_identifier.strip()) | 28 #set $sanitized_input_csv = re.sub('[^\w\-_\.]', '_', $input_csv.element_identifier.strip()) |
| 29 ln -sf '$input_csv' "./${sanitized_input_csv}"; | 29 ln -sf '$input_csv' "./${sanitized_input_csv}"; |
| 30 #end if | 30 #end if |
| 31 | 31 |
| 32 #set $selected_validation_metric = "" | |
| 32 #if $task_selection.task == "binary" | 33 #if $task_selection.task == "binary" |
| 33 #set $selected_validation_metric = $task_selection.validation_metric_binary | 34 #set $selected_validation_metric = $task_selection.validation_metric_binary |
| 34 #elif $task_selection.task == "classification" | 35 #elif $task_selection.task == "classification" |
| 35 #set $selected_validation_metric = $task_selection.validation_metric_multiclass | 36 #set $selected_validation_metric = $task_selection.validation_metric_multiclass |
| 36 #elif $task_selection.task == "regression" | 37 #elif $task_selection.task == "regression" |
| 37 #set $selected_validation_metric = $task_selection.validation_metric_regression | 38 #set $selected_validation_metric = $task_selection.validation_metric_regression |
| 38 #else | 39 #else |
| 39 #set $selected_validation_metric = None | 40 #if $task_selection.validation_metric_auto |
| 41 #set $selected_validation_metric = $task_selection.validation_metric_auto | |
| 42 #end if | |
| 40 #end if | 43 #end if |
| 41 | 44 |
| 42 python '$__tool_directory__/image_learner_cli.py' | 45 python '$__tool_directory__/image_learner_cli.py' |
| 43 --csv-file "./${sanitized_input_csv}" | 46 --csv-file "./${sanitized_input_csv}" |
| 44 --image-zip "$image_zip" | 47 --image-zip "$image_zip" |
| 78 --target-column "$column_override.target_column" | 81 --target-column "$column_override.target_column" |
| 79 #end if | 82 #end if |
| 80 #if $column_override.image_column | 83 #if $column_override.image_column |
| 81 --image-column "$column_override.image_column" | 84 --image-column "$column_override.image_column" |
| 82 #end if | 85 #end if |
| 86 #end if | |
| 87 #if $sample_id_column | |
| 88 --sample-id-column "$sample_id_column" | |
| 83 #end if | 89 #end if |
| 84 --image-resize "$image_resize" | 90 --image-resize "$image_resize" |
| 85 --random-seed "$random_seed" | 91 --random-seed "$random_seed" |
| 86 --output-dir "." && | 92 --output-dir "." && |
| 87 | 93 |
| 101 <option value="binary">Binary Classification</option> | 107 <option value="binary">Binary Classification</option> |
| 102 <option value="classification">Multi-class Classification</option> | 108 <option value="classification">Multi-class Classification</option> |
| 103 <option value="regression">Regression</option> | 109 <option value="regression">Regression</option> |
| 104 </param> | 110 </param> |
| 105 <when value="binary"> | 111 <when value="binary"> |
| 106 <param name="validation_metric_binary" type="select" optional="true" label="Validation metric (binary)" help="Metrics accepted by Ludwig for binary outputs."> | 112 <param name="validation_metric_binary" type="select" optional="true" label="Validation metric (binary)" help="Metrics accepted by Ludwig 0.10.1 for binary outputs."> |
| 107 <option value="roc_auc" selected="true">ROC-AUC</option> | 113 <option value="" selected="true">Auto (use task default)</option> |
| 114 <option value="roc_auc">ROC-AUC</option> | |
| 108 <option value="accuracy">Accuracy</option> | 115 <option value="accuracy">Accuracy</option> |
| 109 <option value="precision">Precision</option> | 116 <option value="precision">Precision</option> |
| 110 <option value="recall">Recall</option> | 117 <option value="recall">Recall</option> |
| 111 <option value="specificity">Specificity</option> | |
| 112 <option value="loss">Loss</option> | 118 <option value="loss">Loss</option> |
| 113 </param> | 119 </param> |
| 114 </when> | 120 </when> |
| 115 <when value="classification"> | 121 <when value="classification"> |
| 116 <param name="validation_metric_multiclass" type="select" optional="true" label="Validation metric (multi-class)" help="Metrics accepted by Ludwig for multi-class outputs."> | 122 <param name="validation_metric_multiclass" type="select" optional="true" label="Validation metric (multi-class)" help="Metrics accepted by Ludwig 0.10.1 for multi-class outputs."> |
| 117 <option value="accuracy" selected="true">Accuracy</option> | 123 <option value="" selected="true">Auto (use task default)</option> |
| 118 <option value="balanced_accuracy">Balanced Accuracy</option> | 124 <option value="accuracy">Accuracy</option> |
| 119 <option value="hits_at_k">Hits at K (top-k)</option> | |
| 120 <option value="loss">Loss</option> | 125 <option value="loss">Loss</option> |
| 121 </param> | 126 </param> |
| 122 </when> | 127 </when> |
| 123 <when value="regression"> | 128 <when value="regression"> |
| 124 <param name="validation_metric_regression" type="select" optional="true" label="Validation metric (regression)" help="Metrics accepted by Ludwig for regression outputs."> | 129 <param name="validation_metric_regression" type="select" optional="true" label="Validation metric (regression)" help="Metrics accepted by Ludwig 0.10.1 for regression outputs."> |
| 125 <option value="mean_squared_error" selected="true">Mean Squared Error</option> | 130 <option value="" selected="true">Auto (use task default)</option> |
| 131 <option value="mean_squared_error">Mean Squared Error</option> | |
| 126 <option value="mean_absolute_error">Mean Absolute Error</option> | 132 <option value="mean_absolute_error">Mean Absolute Error</option> |
| 127 <option value="root_mean_squared_error">Root Mean Squared Error</option> | 133 <option value="root_mean_squared_error">Root Mean Squared Error</option> |
| 128 <option value="root_mean_squared_percentage_error">Root Mean Squared Percentage Error</option> | 134 <option value="root_mean_squared_percentage_error">Root Mean Squared Percentage Error</option> |
| 129 <option value="loss">Loss</option> | 135 <option value="loss">Loss</option> |
| 130 </param> | 136 </param> |
| 131 </when> | 137 </when> |
| 132 <when value="auto"> | 138 <when value="auto"> |
| 133 <!-- No validation metric selection; tool will infer task and metric. --> | 139 <param name="validation_metric_auto" type="select" optional="true" label="Validation metric (auto)" help="Auto defers to the inferred task and picks the best default metric; use this only to override the choice."> |
| 140 <option value="" selected="true"></option> | |
| 141 </param> | |
| 134 </when> | 142 </when> |
| 135 </conditional> | 143 </conditional> |
| 136 <conditional name="column_override"> | 144 <conditional name="column_override"> |
| 137 <param name="override_columns" type="select" label="Overwrite label and/or image column names?" help="Select yes to specify custom column names instead of the defaults 'label' and 'image_path'."> | 145 <param name="override_columns" type="select" label="Overwrite label and/or image column names?" help="Select yes to specify custom column names instead of the defaults 'label' and 'image_path'."> |
| 138 <option value="false" selected="true">No</option> | 146 <option value="false" selected="true">No</option> |
| 139 <option value="true">Yes</option> | 147 <option value="true">Yes</option> |
| 140 </param> | 148 </param> |
| 141 <when value="true"> | 149 <when value="true"> |
| 142 <param name="target_column" type="text" optional="true" label="Target/label column name" help="Overrides the default 'label' column name in the metadata CSV." /> | 150 <param name="target_column" type="data_column" data_ref="input_csv" use_header_names="true" optional="true" label="Target/label column name" help="Overrides the default 'label' column name in the metadata CSV." /> |
| 143 <param name="image_column" type="text" optional="true" label="Image column name" help="Overrides the default 'image_path' column name in the metadata CSV." /> | 151 <param name="image_column" type="data_column" data_ref="input_csv" use_header_names="true" optional="true" label="Image column name" help="Overrides the default 'image_path' column name in the metadata CSV." /> |
| 144 </when> | 152 </when> |
| 145 <when value="false"> | 153 <when value="false"> |
| 146 <!-- No additional parameters --> | 154 <!-- No additional parameters --> |
| 147 </when> | 155 </when> |
| 148 </conditional> | 156 </conditional> |
| 157 <param name="sample_id_column" type="data_column" data_ref="input_csv" use_header_names="true" optional="true" label="Sample ID column (optional)" help="Optional column used to group samples during splitting to prevent data leakage (e.g., patient_id or slide_id). Only used when no split column is provided." /> | |
| 149 <param name="model_name" type="select" optional="false" label="Select a model for your experiment" > | 158 <param name="model_name" type="select" optional="false" label="Select a model for your experiment" > |
| 150 | 159 |
| 151 <option value="resnet18">Resnet18</option> | 160 <option value="resnet18">Resnet18</option> |
| 152 <option value="resnet34">Resnet34</option> | 161 <option value="resnet34">Resnet34</option> |
| 153 <option value="resnet50">Resnet50</option> | 162 <option value="resnet50">Resnet50</option> |
| 562 <param name="image_zip" value="mnist_subset.zip" ftype="zip" /> | 571 <param name="image_zip" value="mnist_subset.zip" ftype="zip" /> |
| 563 <param name="model_name" value="resnet18" /> | 572 <param name="model_name" value="resnet18" /> |
| 564 <param name="advanced_settings|customize_defaults" value="true" /> | 573 <param name="advanced_settings|customize_defaults" value="true" /> |
| 565 <param name="advanced_settings|threshold" value="0.6" /> | 574 <param name="advanced_settings|threshold" value="0.6" /> |
| 566 <param name="task_selection|task" value="classification" /> | 575 <param name="task_selection|task" value="classification" /> |
| 567 <param name="task_selection|validation_metric_multiclass" value="balanced_accuracy" /> | 576 <param name="task_selection|validation_metric_multiclass" value="accuracy" /> |
| 568 <output name="output_report"> | 577 <output name="output_report"> |
| 569 <assert_contents> | 578 <assert_contents> |
| 570 <has_text text="Config and Overall Performance Summary" /> | 579 <has_text text="Config and Overall Performance Summary" /> |
| 571 <has_text text="Training and Validation Results" /> | 580 <has_text text="Training and Validation Results" /> |
| 572 <has_text text="Test Results" /> | 581 <has_text text="Test Results" /> |
| 589 Image Learner for Classification/regression: trains and evaluates a image classification/regression model. | 598 Image Learner for Classification/regression: trains and evaluates a image classification/regression model. |
| 590 It uses the metadata csv to find the image paths and labels. | 599 It uses the metadata csv to find the image paths and labels. |
| 591 The metadata csv should contain a column with the name 'image_path' and a column with the name 'label'. | 600 The metadata csv should contain a column with the name 'image_path' and a column with the name 'label'. |
| 592 Optionally, you can also add a column with the name 'split' to specify which split each row belongs to (train, val, test). | 601 Optionally, you can also add a column with the name 'split' to specify which split each row belongs to (train, val, test). |
| 593 If you do not provide a split column, the tool will automatically split the data into train, val, and test sets based on the proportions you specify or [0.7, 0.1, 0.2] by default. | 602 If you do not provide a split column, the tool will automatically split the data into train, val, and test sets based on the proportions you specify or [0.7, 0.1, 0.2] by default. |
| 603 You can optionally specify a sample ID column to keep related samples in the same split and prevent data leakage. | |
| 594 | 604 |
| 595 **Models Available** | 605 **Models Available** |
| 596 This tool supports a wide range of state-of-the-art image classification models including: | 606 This tool supports a wide range of state-of-the-art image classification models including: |
| 597 - Traditional CNNs (ResNet, EfficientNet, VGG, etc.) | 607 - Traditional CNNs (ResNet, EfficientNet, VGG, etc.) |
| 598 - Vision Transformers (ViT, Swin Transformer) | 608 - Vision Transformers (ViT, Swin Transformer) |
