Submitting author: @PGijsbers (Pieter Gijsbers)
Repository: https://github.com/PGijsbers/GAMA
Version: v0.1.0
Editor: @arokem
Reviewer: @jsgalan
Archive: 10.5281/zenodo.2545472
Status badge code:
HTML: <a href="http://joss.theoj.org/papers/74cfa7e5796270cd2a96005370973c71"><img src="http://joss.theoj.org/papers/74cfa7e5796270cd2a96005370973c71/status.svg"></a>
Markdown: [](http://joss.theoj.org/papers/74cfa7e5796270cd2a96005370973c71)
Reviewers and authors:
Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)
@jsgalan, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:
The reviewer guidelines are available here: https://joss.theoj.org/about#reviewer_guidelines. Any questions/concerns please let @arokem know.
โจ Please try and complete your review in the next two weeks โจ
paper.md file include a list of authors with their affiliations?Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @jsgalan it looks like you're currently assigned as the reviewer for this paper :tada:.
:star: Important :star:
If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews ๐ฟ
To fix this do the following two things:


For a list of things I can do to help you, just type:
@whedon commands
Attempting PDF compilation. Reticulating splines etc...
Just making sure I did not miss anything, but there is not something _I_ should be doing right now, correct?
Just making sure I did not miss anything, but there is not something I should be doing right now, correct?
Correct, we're waiting on @jsgalan to complete their review (by updating the checklist above).
@jsgalan
I am sorry to bother and I know there have been holidays in-between, but given the indicated review period I felt compelled to ask. I was wondering if there is any estimate of when you plan to work on this? Or should we see if we can find a substitute?
edit: to be clear, there are no bad feelings here, just looking for an update.
Hi all, i proceeded with the first steps of the review (installation and upgrades here:
installation-gama.txt )
Everything is installed correctly, however I get the following errors,
For Example #1

For Example #2

For Example #3

Any clues?
Best
That's odd, I can not recreate the issue locally (tried a clean install on a ubuntu docker image). It looks like you installed it to a 'gama' virtual environment, are you also running the scripts from that environment?
Hi, i restarted the computer and everything worked fine :)
Here are my results for the tests provided in the documentation:

Had a few warnings for run-test2.txt and run-test5.txt
And the rest looked fine also for
run-test3.txt and example 4

I have a few suggestions to be made to the authors:
1- add a few examples (not just the minimal example, but all five examples) to the Github repository. Also please check that the examples is wrongly edited, missing the last part of the statement

2- Provide a more detailed examples and explanations of the following sections: Using ARFF files, Logging, Log Visualization and GAMA Search Space Configuration.
3- The authors could add in the manuscript a few lines describing in detai
l logging and log visualization aspects, which can be interesting for a user/reader.
4- Documentation should be complete, in the comparison with other AutoML tools a paragraph is missing.

Good to hear it works now! Thank you for the feedback, I will ping you here when I am done resolving the issues. I expect to be able to finish them all by tomorrow.
Hi @jsgalan!
I processed your feedback best I could, but I still have some questions:
I changed log levels of some statements so that anything of at least logging.INFO level will not end with a stream of warning statements. The reported crashes in the statements were harmless to the optimization process, but I concede that it is not a nice user experience :)
For all other aspects, I updated the docs.
Thanks again for your time.
Hi all,
Sorry for being so vague on my descriptions. I will reformulate:
1- add a few examples (not just the minimal example, but all five examples) to the Github repository.
1.1-Also please check that the examples is wrongly edited, missing the last part of the statement <-- this was done! [check!]
2- What more detailed explanation are you missing for the log visualization? <- can this link or this information be found somewhere on the initial Github webpage
3- We mentioned the log visualization and type of questions you can currently answer with it in our paper submission. What in particular were you missing or expected to be changed?
The article currently reads:
In addition to its general use AutoML functionality, GAMA aims to serve AutoML researches as well. During the optimization process, GAMA keeps an extensive log of
progress made. Using this log, insight can be obtained on the behaviour of the population of pipelines. It can answer questions such as which mutation operator is most
effective, how fitness changes over time, and how much time each algorithm takes
I think is important to include in those lines regarding the aspects such as:
a) the figures/plots it produces. (a.e Fitness over number of evaluations vs No. evaluations, Pipeline length over number of evaluations vs No. evaluations and more importantly how Fitness over number of evaluations by main learner vs No. evaluations )
b) all the methods/models that can be learned (a.e NB, Decision Tree,Boosting, Random Forest, KNN, SVC, LogReg). This is not stated clearly in the documentation.
Sorry for being stubborn but I think this should be main focus of the article and be very well described in the Github website, showing all the full capabilities of the software and all the models that can be tested using the implementation.
After revising I think some extra homework...
4- There were .csv files generated that are not well described anywhere

4.1- There were folders empty folders created with the same name of the .csv files.
4.2- Can the user specify the folder/csv files names instead of automatically assigning the date of the experimental run?
Hope this helps.
add a few examples (not just the minimal example, but all five examples) to the Github repository.
Could you elaborate what you mean specifically? I made three of them into separate scripts in the example folder and linked them from the README.md. What other examples are you referring to? Setting log output and adding an event hook?
can this link or this information be found somewhere on the initial Github webpage
It is referred to in the documentation but I will add it to the README.md, good call.
4, 4.1
I turned it off for examples now, as I don't think examples should produce extra files. I will add documentation regarding the files should you wish to produce them.
Can the user specify the folder/csv files names instead of automatically assigning the date of the experimental run?
Yes, using the 'cache_dir' hyperparameter when initializing a GamaClassifier or GamaRegressor object. I will make sure it also shows up in the regular documentation (not just API docs).
I'll make the changes tomorrow.
Sorry for being stubborn [...]
Also, no worries :) it's your job ๐ I appreciate the effort you put in
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
@whedon generate pdf
Attempting PDF compilation. Reticulating splines etc...
@whedon generate pdf
Sorry for the spam. It seems that Whedon did not take the last version last time? Missing a line-break.
Attempting PDF compilation. Reticulating splines etc...
Hi @jsgalan,
add a few examples (not just the minimal example, but all five examples) to the Github repository.
No news since last comment.
What more detailed explanation are you missing for the log visualization? <- can this link or this information be found somewhere on the initial Github webpage
Added link and example image to the README.md.
I think is important to include in those lines regarding the aspects such as:
a) the figures/plots it produces [..]
b) all the methods/models that can be learned [..]
I added a plot example to the paper and also explicitly named some algorithms as well as emphasize using scikit-learn algorithms (see the latest article proof).
Furthermore I also explicitly wrote out and linked some of the algorithms used in the documentation.
However, I think including all the different plots produced and algorithms used is not a great idea for three reasons:
I find the adjustments I made are a reasonable balance between providing too little information and all information. Please let me know if you disagree.
- There were .csv files generated that are not well described anywhere
4.1 There were folders empty folders created with the same name of the .csv files.
4.2- Can the user specify the folder/csv files names instead of automatically assigning the date of the experimental run?
They now have their section in the documentation.
After reconsideration, the .csv is no longer be generated as gama.log supersedes it (and is thus not documented).
Hi all @arfon @PGijsbers
I just revised and all the changes suggested were made in documents and pdf, respectively. I am happy to say that from my part all the requirements were fulfilled.
However, I think including all the different plots produced and algorithms used is not a great idea for three reasons:
There are many different plots and algorithms, taking up a lot of space while I think the current selection gives a good impression.
Precise plots and algorithms are not what defines the package. You are free to extract more information from logs and/or add your own algorithms or remove used ones.
Algorithms and visualization are susceptible to change. Other machine learning packages might be incorporated and/or better visualizations might be developed
Answering to this comment, after my initial thoughts and replies, I imagined that the package can be (and will be extended) to include different types of tests or can be put into a greater pipeline using various packages, so i concur with your reasoning.
Happy to revise and test this novel tool that will be beneficial for the ML community.
Best
Thanks again for all your effort @jsgalan!
I just noticed @arokem was not pinged, but he is the editor, I figure he needs to be pinged too/instead. So.. there :)
Great work everyone! Thanks for the review @jsgalan!
@PGijsbers : your paper is ready to be processed for acceptance.
Could you please create an archive of the current state of your software (e.g., by creating a tag/version of the software and uploading that to zenodo).
Once you have a DOI for the software, please post it here, so we can add the archive to the paper.
Done. Zenodo directs me here but it doesn't show. I assume it will just take a few minutes?
Seems like it is all fixed @arokem
@whedon set 10.5281/zenodo.2545472 as archive
I'm sorry @PGijsbers, I'm afraid I can't do that. That's something only editors are allowed to do.
Actually not sure what is preferred here:
I think that this one is fine: 10.5281/zenodo.2545472
This is the version you generated after incorporating all of the reviewer comments?
Could you please edit the metadata of the Zenodo page (title and authors), so that it matches the paper?
Thanks!
Done!
@whedon set 10.5281/zenodo.2545472 as archive
OK. 10.5281/zenodo.2545472 is the archive.
Congratulations! Your paper is now ready to be accepted.
Stand by for EIC or an Associate EIC to drop by and finalize this.
Thanks for editing @arokem
Thanks for reviewing @jsgalan
And thanks for submitting @PGijsbers
@whedon accept
Attempting dry run of processing paper acceptance...
```Reference check summary:
OK DOIs
MISSING DOIs
INVALID DOIs
Check final proof :point_right: https://github.com/openjournals/joss-papers/pull/460
If the paper PDF and Crossref deposit XML look good in https://github.com/openjournals/joss-papers/pull/460, then you can now move forward with accepting the submission by compiling again with the flag deposit=true e.g.
@whedon accept deposit=true
@whedon accept deposit=true
Doing it live! Attempting automated processing of paper acceptance...
๐จ๐จ๐จ THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! ๐จ๐จ๐จ
Here's what you must now do:
Party like you just published a paper! ๐๐๐ฆ๐๐ป๐ค
Any issues? notify your editorial technical team...
:tada::tada::tada: Congratulations on your paper acceptance! :tada::tada::tada:
If you would like to include a link to your paper from your README use the following code snippets:
Markdown:
[](https://doi.org/10.21105/joss.01132)
HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.01132">
<img src="http://joss.theoj.org/papers/10.21105/joss.01132/status.svg" alt="DOI badge" >
</a>
reStructuredText:
.. image:: http://joss.theoj.org/papers/10.21105/joss.01132/status.svg
:target: https://doi.org/10.21105/joss.01132
This is how it will look in your documentation:
We need your help!
Journal of Open Source Software is a community-run journal and relies upon volunteer effort. If you'd like to support us please consider doing either one (or both) of the the following:
Most helpful comment
Thanks for editing @arokem
Thanks for reviewing @jsgalan
And thanks for submitting @PGijsbers