Closed whedon closed 2 years ago
Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @seankmartin, @patrickmineault it looks like you're currently assigned to review this paper :tada:.
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
: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
For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:
@whedon generate pdf
Software report (experimental):
github.com/AlDanial/cloc v 1.88 T=0.16 s (396.3 files/s, 143004.9 lines/s)
-------------------------------------------------------------------------------
Language files blank comment code
-------------------------------------------------------------------------------
Python 30 1995 1963 4615
Jupyter Notebook 11 0 9723 1496
MATLAB 9 558 790 1406
Markdown 2 94 0 234
YAML 2 10 10 42
reStructuredText 8 29 40 36
DOS Batch 1 8 1 26
make 1 4 7 9
-------------------------------------------------------------------------------
SUM: 64 2698 12534 7864
-------------------------------------------------------------------------------
Statistical information for the repository '0f55aadd4137f41905c03063' was
gathered on 2022/01/25.
The following historical commit information, by author, was found:
Author Commits Insertions Deletions % of changes
Alexander Kiefer 2 5 3 0.01
Beren 4 193 54 0.32
Brennan Klein 1 1 1 0.00
Conor Heins 87 8074 2193 13.16
alec-tschantz 55 8626 6334 19.18
arun 3 88 73 0.21
conorheins 237 26192 26172 67.13
Below are the number of rows from each author that have survived and are still
intact in the current revision:
Author Rows Stability Age % in comments
Alexander Kiefer 5 100.0 6.5 0.00
Beren 13 6.7 20.0 15.38
alec-tschantz 1245 14.4 18.4 12.21
arun 13 14.8 11.6 0.00
conorheins 7297 27.9 7.3 9.09
PDF failed to compile for issue #4098 with the following error:
Can't find any papers to compile :-(
@whedon generate pdf from branch paper_branch
Attempting PDF compilation from custom branch paper_branch. Reticulating splines etc...
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@whedon check references from branch paper_branch
Attempting to check references... from custom branch paper_branch
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1371/journal.pone.0006421 is OK
- 10.1038/s41586-020-2649-2 is OK
- 10.1162/neco_a_01354 is OK
- 10.1080/17588928.2015.1020053 is OK
- 10.1038/s41598-018-38246-3 is OK
- 10.1561/2200000001 is OK
- 10.1167/jov.20.4.12 is OK
- 10.1038/ncomms14218 is OK
- 10.3390/e22050552 is OK
- 10.1162/neco.1992.4.3.415 is OK
- 10.1016/j.neuroimage.2004.07.041 is OK
- 10.1080/01621459.2017.1285773 is OK
- 10.1126/science.1238406 is OK
- 10.1007/s00422-012-0512-8 is OK
- 10.1016/j.tics.2011.11.018 is OK
- 10.1162/neco_a_01357 is OK
- 10.1109/IJCNN48605.2020.9207382 is OK
- 10.1016/0166-2236(83)90190-X is OK
- 10.1523/JNEUROSCI.11-03-00641.1991 is OK
- 10.1162/NECO_a_00912 is OK
- 10.3390/e21030257 is OK
- 10.3389/frobt.2019.00020 is OK
- 10.1007/s00422-018-0785-7 is OK
- 10.1371/journal.pcbi.1007805 is OK
- 10.1109/ICASSP40776.2020.9054364 is OK
- 10.1016/B978-0-12-372560-8.X5000-1 is OK
- 10.1038/nrn2787 is OK
- 10.1016/j.jmp.2020.102447 is OK
- 10.1016/S0004-3702(98)00023-X is OK
- 10.1162/neco_a_01351 is OK
- 10.1093/cercor/bhu159 is OK
- 10.1016/j.drugalcdep.2020.108208 is OK
- 10.1503/jpn.200032 is OK
- 10.31234/osf.io/b4jm6 is OK
- 10.1016/j.neuroimage.2008.02.054 is OK
- 10.1016/j.jmp.2020.102348 is OK
- 10.1007/978-3-030-64919-7_1 is OK
- 10.1016/j.neubiorev.2016.06.022 is OK
- 10.1162/neco.1995.7.5.889 is OK
- 10.1037/13536-000 is OK
- 10.1016/j.neunet.2021.05.010 is OK
- 10.1109/LRA.2021.3090015 is OK
- 10.1016/B978-0-323-88506-5.50066-8 is OK
- 10.1007/s00422-019-00805-w is OK
- 10.3390/e23020198 is OK
- 10.1080/10407413.2021.1965480 is OK
- 10.1098/rsif.2013.0475 is OK
- 10.7554/eLife.41703 is OK
- 10.1162/neco_a_00999 is OK
MISSING DOIs
- 10.1162/neco_a_01427 may be a valid DOI for title: Chance-Constrained Active Inference
- 10.1017/s0140525x19001353 may be a valid DOI for title: Generative models as parsimonious descriptions of sensorimotor loops
- 10.7551/mitpress/7111.003.0009 may be a valid DOI for title: Perceptions as hypotheses
- 10.31234/osf.io/2rzu5 may be a valid DOI for title: Active inference, selective attention, and the cocktail party problem
- 10.1016/j.schres.2021.07.032 may be a valid DOI for title: Everything is connected: Inference and attractors in delusions
- 10.31234/osf.io/bsuh8 may be a valid DOI for title: Long-term stability of computational parameters during approach-avoidance conflict in a transdiagnostic psychiatric patient sample
INVALID DOIs
- None
Hi everyone :wave: Thanks again for agreeing to review this submission ! The review will take place in this issue.
Whenever possible, please open relevant issues on the linked software repository (and cross-link them with this issue) rather than discussing them here. This helps to make sure that feedback is translated into actionable items to improve the software.
If you aren't sure how to get started, please see the Reviewing for JOSS guide -- and, of course, feel free to ping me with any questions !
Cool, thanks! I should be able to get to doing the review fairly soon
@whedon commands
Here are some things you can ask me to do:
# List Whedon's capabilities
@whedon commands
# List of editor GitHub usernames
@whedon list editors
# List of reviewers together with programming language preferences and domain expertise
@whedon list reviewers
EDITORIAL TASKS
# Compile the paper
@whedon generate pdf
# Compile the paper from alternative branch
@whedon generate pdf from branch custom-branch-name
# Ask Whedon to check the references for missing DOIs
@whedon check references
# Ask Whedon to check repository statistics for the submitted software
@whedon check repository
I'm in progress with the review. I've raised a non-blocking issue about some missing API documentation here https://github.com/infer-actively/pymdp/issues/67. The paper is missing an explicit summary section, which I think should be added. Will post a final update after checking functionality!
@whedon remind @seankmartin in 4 days
I'm sorry @seankmartin, I'm afraid I can't do that. That's something only editors are allowed to do.
I'm going to wait until @seankmartin completes a first pass until I look at this.
@whedon remind @seankmartin in 3 days
Reminder set for @seankmartin in 3 days
@seankmartin I've set the reminder :) Thanks for starting on this and cross-linking the opened issue !
:wave: @seankmartin, please update us on how your review is going (this is an automated reminder).
:wave: @seankmartin, please update us on how your review is going (this is an automated reminder).
:wave: @patrickmineault, please update us on how your review is going (this is an automated reminder).
I'm in progress with the review. I've raised a non-blocking issue about some missing API documentation here infer-actively/pymdp#67. The paper is missing an explicit summary section, which I think should be added. Will post a final update after checking functionality!
Hi @emdupre, I'm wondering if we can already start responding to the issues raised by @seankmartin ? Or should we wait until both reviewers are finished before we start responding? Thanks :)
Hi @conorheins, thanks for confirming on this ! It's entirely up to you whether you'd like to address @seankmartin and @patrickmineault's reviews as they come in or all at once.
After the reviews are in, I'll check-in with you on the status of your response. If you've been addressing comments as they come in, this will usually mean confirming that you're ready to receive additional reviewer feedback on your revisions. If instead you've elected to wait until all comments are available, then I'll ask for your anticipated timeline for making revisions.
If you have any other questions, please don't hesitate to ask.
Ok I'm finished a first pass now. Sincere apologies for the delay in particular to @patrickmineault since you were waiting for me.
I am very happy with the functionality of the package. The tests all pass and are useful, and I have manually verified some outputs in places which also were correct. I have also run all of the demos/tutorials. I think the cue chaining (Epistemic Chaining) demo is particularly well written and is probably the best branching point for doing your own stuff with pymdp. I like that the env and agent classes follow a similar pattern to OpenAI Gym, just makes it easier to work with.
My main concerns would be as before then (about API docs and no explicit summary section in paper):
The package in general is very well documented, such as in the control.py
file where the docstrings are very informative and have API docs on pymdp's read the docs website.
I think that the Agent and Env class are critical and that they should have class docstrings and should be included on the read the docs website.
Overall I think the package is great and clearly has had an lot of effort put into it!
Hi @seankmartin , thanks for your comments and reviewing our package. We believe we have addressed the main API documentation issues you raised. The latest version of the RTD page with new sections for Agent
and Env
API documentation can be found here: https://pymdp-rtd.readthedocs.io/en/paper_branch.
I haven't addressed your issue about the README.md badges yet: https://github.com/infer-actively/pymdp/issues/68 but I thought I'd just post an update here now, to signal that we believe we've addressed Issue https://github.com/infer-actively/pymdp/issues/67 and the main brunt of your review.
Note we've also added an explicit summary section in the paper, as requested.
Thanks for the update @conorheins - the docs look good!
No worries about the README badges, that is just a suggestion, not required by any means.
:wave: Hi @patrickmineault, please let us know how your review is going !
@editorialbot set paper_branch as branch
Done! branch is now paper_branch
@editorialbot generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
Apologies, will get to it this weekend.
Hi @patrickmineault, just checking in on this review
Apologies for the lateness of my review - this is great! The authors very clearly explain the need in the companion paper - currently, the mysteries of the free energy principle are accessible to few and tucked away in a corner of the Matlab package SPM. By making their methods widely accessible across a wide audience, they're opening the field. I really appreciate the effort that went into making the API compatible with OpenAI gym - and would love to see deeper comparisons of RL and POMDP free energy agents. As a side note, the star history (+150% stars since the start of the year) makes it clear that people already find it useful.
The docs are generally great, and the emphasis on tutorials should make it easy for anyone to get up and running. I've opened a few very minor, and optional issues on the Github repo about the first two tutorials. I see that you've addressed @seankmartin 's issues with Agent being undocumented in the latest RDC, which was also a point of contention.
It's ready to ship as far as I'm concerned.
Hi @patrickmineault,
Thanks very much for the kinds words/ thoughtful reviews, particularly the attention you gave to the tutorials - those were all fantastic suggestions and I will get down to incorporating your changes this weekend at the latest.
Great! I think we are both in agreement then 😃
Thank you @seankmartin and @patrickmineault for your thoughtful reviews !
@conorheins, I see that https://github.com/infer-actively/pymdp/issues/67, https://github.com/infer-actively/pymdp/issues/68, https://github.com/infer-actively/pymdp/issues/71, and https://github.com/infer-actively/pymdp/issues/72 are all open from this review process, though the reviewers are quite consistent in noting that these are optional asks.
Could you please confirm when you're finished incorporating this reviewer feedback and are ready to move forward with the submission ? I'll also provide a few editorial comments shortly.
@editorialbot check references
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1371/journal.pone.0006421 is OK
- 10.1038/s41586-020-2649-2 is OK
- 10.1162/neco_a_01354 is OK
- 10.1080/17588928.2015.1020053 is OK
- 10.1038/s41598-018-38246-3 is OK
- 10.1561/2200000001 is OK
- 10.1167/jov.20.4.12 is OK
- 10.1038/ncomms14218 is OK
- 10.3390/e22050552 is OK
- 10.1162/neco.1992.4.3.415 is OK
- 10.1016/j.neuroimage.2004.07.041 is OK
- 10.1080/01621459.2017.1285773 is OK
- 10.1126/science.1238406 is OK
- 10.1007/s00422-012-0512-8 is OK
- 10.1016/j.tics.2011.11.018 is OK
- 10.1162/neco_a_01357 is OK
- 10.1109/IJCNN48605.2020.9207382 is OK
- 10.1016/0166-2236(83)90190-X is OK
- 10.1523/JNEUROSCI.11-03-00641.1991 is OK
- 10.1162/NECO_a_00912 is OK
- 10.3390/e21030257 is OK
- 10.3389/frobt.2019.00020 is OK
- 10.1007/s00422-018-0785-7 is OK
- 10.1371/journal.pcbi.1007805 is OK
- 10.1109/ICASSP40776.2020.9054364 is OK
- 10.1016/B978-0-12-372560-8.X5000-1 is OK
- 10.1038/nrn2787 is OK
- 10.1016/j.jmp.2020.102447 is OK
- 10.1016/S0004-3702(98)00023-X is OK
- 10.1162/neco_a_01351 is OK
- 10.1093/cercor/bhu159 is OK
- 10.1016/j.drugalcdep.2020.108208 is OK
- 10.1503/jpn.200032 is OK
- 10.31234/osf.io/b4jm6 is OK
- 10.1016/j.neuroimage.2008.02.054 is OK
- 10.1016/j.jmp.2020.102348 is OK
- 10.1007/978-3-030-64919-7_1 is OK
- 10.1016/j.neubiorev.2016.06.022 is OK
- 10.1162/neco.1995.7.5.889 is OK
- 10.1037/13536-000 is OK
- 10.1016/j.neunet.2021.05.010 is OK
- 10.1109/LRA.2021.3090015 is OK
- 10.1016/B978-0-323-88506-5.50066-8 is OK
- 10.1007/s00422-019-00805-w is OK
- 10.3390/e23020198 is OK
- 10.1080/10407413.2021.1965480 is OK
- 10.1098/rsif.2013.0475 is OK
- 10.7554/eLife.41703 is OK
- 10.1162/neco_a_00999 is OK
MISSING DOIs
- 10.1162/neco_a_01427 may be a valid DOI for title: Chance-Constrained Active Inference
- 10.1017/s0140525x19001353 may be a valid DOI for title: Generative models as parsimonious descriptions of sensorimotor loops
- 10.7551/mitpress/7111.003.0009 may be a valid DOI for title: Perceptions as hypotheses
- 10.1007/978-3-030-93736-2_48 may be a valid DOI for title: Towards stochastic fault-tolerant control using precision learning and active inference
- 10.31234/osf.io/2rzu5 may be a valid DOI for title: Active inference, selective attention, and the cocktail party problem
- 10.1016/j.schres.2021.07.032 may be a valid DOI for title: Everything is connected: Inference and attractors in delusions
- 10.31234/osf.io/bsuh8 may be a valid DOI for title: Long-term stability of computational parameters during approach-avoidance conflict in a transdiagnostic psychiatric patient sample
INVALID DOIs
- None
Hi @emdupre,
Even though they're optional, I can address those remaining issues this weekend (namely https://github.com/infer-actively/pymdp/issues/71, and https://github.com/infer-actively/pymdp/issues/72) before we fully proceed -- I'd also like to edit an affiliations and a funding acknowledgement, if that's okay. As soon as I'm finished I'll post here to confirm that I'm all set.
And a quick question regarding the closing of issues -- I was planning to wait until paper_branch was merged with master before I closed https://github.com/infer-actively/pymdp/issues/67 (and the others of course, but that's the only one I've already addressed) but I can already close it now if that's preferable for the review process. Would that be preferable?
Thanks, Conor
As soon as I'm finished I'll post here to confirm that I'm all set.
That sounds perfect ! Thank you.
I was planning to wait until paper_branch was merged with master before I closed https://github.com/infer-actively/pymdp/issues/67 (and the others of course, but that's the only one I've already addressed) but I can already close it now if that's preferable for the review process. Would that be preferable?
It makes it a bit clearer that you consider the issue(s) entirely address, though closing before merging in the branch is not a requirement -- especially since these are optional additions to the project !
I also have a few requests on the paper itself. If you could please:
arXiv. <arXiv-URL>
while Laar et al (2021) is cited with arXiv Preprint <arXiv:URI>
More generally, too: Could you clarify the relationship between this paper and the companion arXiv preprint ? There are partially overlapping sections, and I want to make sure I understand the relationship between these two resources !
Hi @emdupre,
Thanks for pointing out these issues, I've attempted to address them all. Let me know if there are any further issues. For the missing DOIs, some of the suggestions were correct, some of them were not, so I just manually added them all in. I hope I did so correctly :)
[x] add in DOIs to those references noted with "DOI missing" in the most https://github.com/openjournals/joss-reviews/issues/4098#issuecomment-1092161263. The bot has suggested a potential DOI for each reference, but please confirm if these are correct
[x] update the ForneyLab citation to match their citation.bib file ?
[x] standardize the formatting of arXiv references; e.g., Baioumy et al (2021) is cited with arXiv.
And finally, regarding the clarification between the arXiv preprint companion and this JOSS submission -- we wrote the longer, technical version for arXiv first, to be out there for those who are interested in the mathematical background of these models (POMDPs) that one can build in pymdp
. Then we decided to make the submission for JOSS just a shortened, more cleaned up / tighter version of the arXiv version, that focuses on the software itself and its goals/advantages. That's why you'll notice groups of overlapping text (particularly in the earlier sections), because for all intents and purposes the arXiv preprint version is just a longer, more technical version of the JOSS submission.
So given all that: would it be okay for us to keep the arXiv preprint online, as the more technical version of the JOSS article, but then ask users to officially cite the JOSS version? I think it would be helpful to have that longer, more mathematical version with the appendices available as a pedagogical resource. But obviously we would want the JOSS version to be the "official" version that is cited.
Hi @emdupre,
Even though they're optional, I can address those remaining issues this weekend (namely infer-actively/pymdp#71, and infer-actively/pymdp#72) before we fully proceed -- I'd also like to edit an affiliations and a funding acknowledgement, if that's okay. As soon as I'm finished I'll post here to confirm that I'm all set.
And a quick question regarding the closing of issues -- I was planning to wait until paper_branch was merged with master before I closed infer-actively/pymdp#67 (and the others of course, but that's the only one I've already addressed) but I can already close it now if that's preferable for the review process. Would that be preferable?
Thanks, Conor
Oh and I forgot to confirm the resolution of the issues. Regarding the optional requests raised by the reviewers, I've now addressed nearly all of them, and just left some minor bits open that I'd like to work out in the future. But otherwise I am ready to proceed with the submission.
@editorialbot generate pdf
:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:
@editorialbot check references
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):
OK DOIs
- 10.1371/journal.pone.0006421 is OK
- 10.1038/s41586-020-2649-2 is OK
- 10.1162/neco_a_01354 is OK
- 10.1080/17588928.2015.1020053 is OK
- 10.1038/s41598-018-38246-3 is OK
- 10.1561/2200000001 is OK
- 10.1167/jov.20.4.12 is OK
- 10.1038/ncomms14218 is OK
- 10.3390/e22050552 is OK
- 10.1162/neco.1992.4.3.415 is OK
- 10.1016/j.neuroimage.2004.07.041 is OK
- 10.1080/01621459.2017.1285773 is OK
- 10.1126/science.1238406 is OK
- 10.1007/s00422-012-0512-8 is OK
- 10.1016/j.tics.2011.11.018 is OK
- 10.1162/neco_a_01357 is OK
- 10.1109/IJCNN48605.2020.9207382 is OK
- 10.1016/0166-2236(83)90190-X is OK
- 10.1523/JNEUROSCI.11-03-00641.1991 is OK
- 10.1162/NECO_a_00912 is OK
- 10.3390/e21030257 is OK
- 10.3389/frobt.2019.00020 is OK
- 10.1007/s00422-018-0785-7 is OK
- 10.1371/journal.pcbi.1007805 is OK
- 10.1109/ICASSP40776.2020.9054364 is OK
- 10.1016/B978-0-12-372560-8.X5000-1 is OK
- 10.1038/nrn2787 is OK
- 10.1016/j.jmp.2020.102447 is OK
- 10.1016/S0004-3702(98)00023-X is OK
- 10.1162/neco_a_01351 is OK
- 10.1093/cercor/bhu159 is OK
- 10.1016/j.drugalcdep.2020.108208 is OK
- 10.1503/jpn.200032 is OK
- 10.1016/j.jmp.2021.102632 is OK
- 10.1016/j.neuroimage.2008.02.054 is OK
- 10.1016/j.jmp.2020.102348 is OK
- 10.1007/978-3-030-64919-7_1 is OK
- 10.1016/j.ijar.2018.11.002 is OK
- 10.1017/S0140525X19001353 is OK
- 10.1098/rstb.1980.0090 is OK
- 10.1016/j.neubiorev.2016.06.022 is OK
- 10.1162/neco.1995.7.5.889 is OK
- 10.1037/13536-000 is OK
- 10.1007/978-3-030-93736-2_48 is OK
- 10.1016/j.neunet.2021.05.010 is OK
- 10.1109/LRA.2021.3090015 is OK
- 10.1016/B978-0-323-88506-5.50066-8 is OK
- 10.1007/s00422-019-00805-w is OK
- 10.3390/e23020198 is OK
- 10.1080/10407413.2021.1965480 is OK
- 10.1098/rsif.2013.0475 is OK
- 10.7554/eLife.41703 is OK
- 10.1162/neco_a_00999 is OK
- 10.1016/j.neubiorev.2021.09.038 is OK
- 10.1016/j.schres.2021.07.032 is OK
- 10.1038/s41598-021-91308-x is OK
MISSING DOIs
- 10.1162/neco_a_01427 may be a valid DOI for title: Chance-Constrained Active Inference
INVALID DOIs
- None
Thank you, @conorheins !
I'm confirming the best course of action under JOSS policy for the arXiv companion piece, and I will have an answer for you -- along with next steps -- shortly.
Submitting author: !--author-handle-->@conorheins<!--end-author-handle-- (Conor Heins) Repository: https://github.com/infer-actively/pymdp Branch with paper.md (empty if default branch): master Version: v0.0.5 Editor: !--editor-->@emdupre<!--end-editor-- Reviewers: @seankmartin, @patrickmineault Archive: 10.5281/zenodo.6484849
:warning: JOSS reduced service mode :warning:
Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.
Status
Status badge code:
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) by leaving comments 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.)
Reviewer instructions & questions
@seankmartin & @patrickmineault, 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.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @emdupre know.
✨ Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest ✨
Review checklist for @seankmartin
✨ Important: Please do not use the Convert to issue functionality when working through this checklist, instead, please open any new issues associated with your review in the software repository associated with the submission. ✨
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper
Review checklist for @patrickmineault
✨ Important: Please do not use the Convert to issue functionality when working through this checklist, instead, please open any new issues associated with your review in the software repository associated with the submission. ✨
Conflict of interest
Code of Conduct
General checks
Functionality
Documentation
Software paper