RLPR / LabelReviews

Reproducible Label Reviews
https://rlpr.github.io
4 stars 0 forks source link

S16 - Creating Classifier Ensembles through Meta-heuristic Algorithms for Aerial Scene Classification #16

Closed fariafabio closed 2 years ago

fariafabio commented 3 years ago

General info

Reviewer feedback

The execution of the commands did not pose any particular problem and the output was produced as expected. Results relative to accuracies (Table III) are not exactly the same as the ones presented in the paper. However, as stated by the authors, "as the algorithms are non-deterministic approaches, it's possible to get different classification results within standard deviation ranges". The ranking of the different methods is however consistent with the results presented in the paper. Results relative to execution time could however not really be related to the ones presented in Table IV.

Details Results

akrah commented 3 years ago

Hi @fariafabio, Thanks for your submission! All seems good except that I don't have access to your paper. Probably it's a private repo? If you don't want add a public link here, please sent us your paper by private email.

akrah commented 3 years ago

Moreover, could you please indicate in "Platform" which OS (and computer if needed) you used to compile/execute your code? (ex: Ubuntu 20.04, MacOS 10.15.6, etc.)

akrah commented 3 years ago

@fariafabio I started to try to reproduce your results. My remarks:

akrah commented 3 years ago

@fariafabio Thanks to have take into account the remarks.

I tested the script pipeline.sh and I have four remarks:

  1. precise the shell used as first line (like #!/bin/sh or #!/bin/bash) to be compliant with usual good practices of script shell

  2. like your README now specify that you need ti use python3, you can change the calls to python by calls to python3

  3. the line FOLDS=(1 2 3 4 5 6) is not consistent with the cotent of folders data/XXX/val/ that only have xxx_1.txt to xxx_5.txt but not xxx_6.txt. You need to change this line or add the xxx_6.txt files.

  4. The call to ensemble_learning_with_umda.py generate the following error:

    --- Logging error ---
    Traceback (most recent call last):
    File "/usr/lib/python3.7/logging/__init__.py", line 1034, in emit
    msg = self.format(record)
    File "/usr/lib/python3.7/logging/__init__.py", line 880, in format
    return fmt.format(record)
    File "/usr/lib/python3.7/logging/__init__.py", line 619, in format
    record.message = record.getMessage()
    File "/usr/lib/python3.7/logging/__init__.py", line 380, in getMessage
    msg = msg % self.args
    TypeError: not all arguments converted during string formatting
    Call stack:
    File "ensemble_learning_with_umda.py", line 65, in <module>
    history = w.optimize_umda(opt_fn, n_agents, n_variables, n_iterations, hyperparams)
    File "/.../evolutionary_ensembles/utils/wrapper.py", line 110, in optimize_umda
    optimizer = UMDA(hyperparams=hyperparams)
    File "/home/xxx/.local/lib/python3.7/site-packages/opytimizer/optimizers/boolean/umda.py", line 49, in __init__
    self._build(hyperparams)
    File "/home/xxx/.local/lib/python3.7/site-packages/opytimizer/optimizers/boolean/umda.py", line 140, in _build
    self.built)
    Message: 'Algorithm: {self.algorithm} | Hyperparameters: p_selection = %s, bounds = ({%s, %s) | Built: %s.'
    Arguments: ('UMDA', 0.75, 0.05, 0.95, True)
akrah commented 3 years ago

@fariafabio I temporary fixed the problems of the script that generates a lot of files (375) in the output folder.

Now my question: How to generate the results of figures III and IV from all these files? To be considered as reproducible, you should give the procedure (or furnish a script) that directly generate the values of tables. In case of a script, the output could be an image, a latex code or a text file (i.e. a Markdown table).

fariafabio commented 3 years ago

Hi Mr. Pierre,

The project has been updated.

Please, check it and let me know if you have any problem.

Thank you very much and take care!