openjournals / joss-reviews

Reviews for the Journal of Open Source Software
Creative Commons Zero v1.0 Universal
714 stars 38 forks source link

[REVIEW]: Learning from Crowds with Crowd-Kit #6227

Closed editorialbot closed 6 months ago

editorialbot commented 8 months ago

Submitting author: !--author-handle-->@dustalov<!--end-author-handle-- (Dmitry Ustalov) Repository: https://github.com/Toloka/crowd-kit Branch with paper.md (empty if default branch): Version: v1.2.1 Editor: !--editor-->@arfon<!--end-editor-- Reviewers: @jorgedch, @Mind-the-Cap, @mitchellg Archive: 10.5281/zenodo.10934189

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/2684e43cf35482812ae02396b3312fad"><img src="https://joss.theoj.org/papers/2684e43cf35482812ae02396b3312fad/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/2684e43cf35482812ae02396b3312fad/status.svg)](https://joss.theoj.org/papers/2684e43cf35482812ae02396b3312fad)

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

@jorgedch, your review will be checklist based. Each of you will have a separate checklist that you should update when carrying out your review. First of all you need to run this command in a separate comment to create the checklist:

@editorialbot generate my checklist

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @arfon 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

Checklists

📝 Checklist for @Mind-the-Cap

📝 Checklist for @mitchellg

📝 Checklist for @jorgedch

editorialbot commented 8 months ago

Hello humans, I'm @editorialbot, a robot that can help you with some common editorial tasks.

For a list of things I can do to help you, just type:

@editorialbot commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@editorialbot generate pdf
editorialbot commented 8 months ago
Software report:

github.com/AlDanial/cloc v 1.88  T=0.16 s (632.8 files/s, 188051.0 lines/s)
-------------------------------------------------------------------------------
Language                     files          blank        comment           code
-------------------------------------------------------------------------------
Python                          78           1703           2247           6615
Jupyter Notebook                 6              0          15669           2141
YAML                            10              5              3            737
TeX                              1             37              0            425
Markdown                         5            120              0            310
TOML                             1              0              0              3
-------------------------------------------------------------------------------
SUM:                           101           1865          17919          10231
-------------------------------------------------------------------------------

gitinspector failed to run statistical information for the repository
editorialbot commented 8 months ago

Wordcount for paper.md is 2354

editorialbot commented 8 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1145/1866029.1866078 is OK
- 10.2307/2334029 is OK
- 10.1145/2433396.2433420 is OK
- 10.1609/aaai.v35i7.16730 is OK
- 10.2307/2346806 is OK
- 10.1109/ASRU.1997.659110 is OK
- 10.1162/neco.1997.9.8.1735 is OK
- 10.1287/opre.2013.1235 is OK
- 10.18653/v1/D19-5904 is OK
- 10.1145/3397271.3401239 is OK
- 10.1007/978-3-319-10602-1_48 is OK
- 10.17863/CAM.45912 is OK
- 10.1109/ICASSP.2010.5494979 is OK
- 10.25080/Majora-92bf1922-00a is OK
- 10.1609/aaai.v32i1.11506 is OK
- 10.1007/s11263-016-0940-3 is OK
- 10.1609/hcomp.v1i1.13088 is OK
- 10.14778/3055540.3055547 is OK

MISSING DOIs

- None

INVALID DOIs

- None
editorialbot commented 8 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

arfon commented 8 months ago

@jorgedch – This is the review thread for the paper. All of our communications will happen here from now on.

Please read the "Reviewer instructions & questions" in the first comment above. Please create your checklist typing:

@editorialbot generate my checklist

As you go over the submission, please check any items that you feel have been satisfied. There are also links to the JOSS reviewer guidelines.

The JOSS review is different from most other journals. Our goal is to work with the authors to help them meet our criteria instead of merely passing judgment on the submission. As such, the reviewers are encouraged to submit issues and pull requests on the software repository. When doing so, please mention https://github.com/openjournals/joss-reviews/issues/6227 so that a link is created to this thread (and I can keep an eye on what is happening). Please also feel free to comment and ask questions on this thread. In my experience, it is better to post comments/questions/suggestions as you come across them instead of waiting until you've reviewed the entire package.

We aim for the review process to be completed within about 4-6 weeks but please make a start well ahead of this as JOSS reviews are by their nature iterative and any early feedback you may be able to provide to the author will be very helpful in meeting this schedule.

Also, noting here that @jorgedch believes it will take them more like 6-8 weeks to complete their review.

arfon commented 8 months ago

@neothethird @Mind-the-Cap - :wave: would you be willing to review this submission for JOSS? The submission under consideration is Learning from Crowds with Crowd-Kit

The review process at JOSS is unique: it takes place in a GitHub issue, is open, and author-reviewer-editor conversations are encouraged. You can learn more about the process in these guidelines: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html

Based on your experience, we think you might be able to provide a great review of this submission. Please let me know if you think you can help us out!

Many thanks Arfon

Mind-the-Cap commented 8 months ago

Hi, very happy to review this submission, which is connected to my own research!

arfon commented 8 months ago

@editorialbot add @Mind-the-Cap as reviewer

@Mind-the-Cap – amazing, thank you! I'll go ahead and add you as a reviewer now, please take a look at the instructions at the top of the thread to get you started.

editorialbot commented 8 months ago

@Mind-the-Cap added to the reviewers list!

Mind-the-Cap commented 8 months ago

Review checklist for @Mind-the-Cap

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

Mind-the-Cap commented 8 months ago

Hi @dustalov, I see Boris Tseitlin in the paper authors list but I don't see his account in the contributors list https://github.com/Toloka/crowd-kit/graphs/contributors

I suspect some code has been copied from an internal repo, would you be able to confirm that or to give me the explanation? Many thanks!

dustalov commented 8 months ago

Hi @Mind-the-Cap, Boris and Nikita worked on crowd-kit[learning] subpackage together in an internal repo at Toloka (Yandex Toloka at the time). Then, the corresponding code was open-sourced by Nikita.

mitchellg commented 7 months ago

@arfon has asked me to affirm here that I'm willing to be a reviewer. I affirm!

arfon commented 7 months ago

@editorialbot add @mitchellg as reviewer

editorialbot commented 7 months ago

@mitchellg added to the reviewers list!

arfon commented 7 months ago

@mitchellg – apologies for dropping the ball here and not getting you added sooner. Please see the instructions above and let me know if you have any questions. Thanks again!

mitchellg commented 7 months ago

Review checklist for @mitchellg

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

mitchellg commented 7 months ago

This is mostly looking good! The one area in the checklist that I couldn't find was "clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support".

dustalov commented 7 months ago

Hi @mitchellg, thank you!

1. We have a CONTRIBUTING.md document inside the repository, but README.md does not mention it (however, it is present in issue/PR templates). We can state and link it explicitly.

2 & 3. We accept feature requests and issue reports and offer help via GitHub Issues. I'll make an update to the documentation.

Would these steps address your comments?

mitchellg commented 7 months ago

Thanks! Yup that seems like enough to check the box. Done!

jorgedch commented 7 months ago

Review checklist for @jorgedch

Conflict of interest

Code of Conduct

General checks

Functionality

Documentation

Software paper

jorgedch commented 7 months ago

Hi @dustalov @arfon,

I've gone through each element in the checklist now. I've ran the unit tests, code coverage (95%), successfully ran the jupyter notebook with the complete tutorial, went through all the documentation and the paper. The text is clear and well referenced.

The project is very mature. All code is well documented with type definitions, docstrings and references where relevant. The installation process runs smoothly as indicated in the README and the process for contributors is now clearly stated after the initial feedback has been addressed. Finally, the aggregation (GLAD, DawidSkene, MajorityVote) and learning (CoNAL, CrowdLayer) methods ran pretty fast on my local machine.

It would be nice to use a dataset where the f1 score of Dawid-Skene or GLAD have a larger improvement over Majority Vote to understand when is that such methods shine over the baseline. But this is just a nice-to-have, nothing that takes away from the package itself.

I only would add that I'm glad to have found this project and looking forward to integrating it in future developments. Congratulations to all the authors for the great work!

Good to go from my side 👍

dustalov commented 7 months ago

Thank you for the kind review! In the paper (see above), we reported a series of experiments where Majority Vote was outperformed by more complex methods like Dawid-Skene. These methods are more useful only if the dataset is of moderate size or larger, e.g., contains at least 1K items.

arfon commented 6 months ago

:wave: @Mind-the-Cap – how are you getting on with your review?

arfon commented 6 months ago

:wave: @Mind-the-Cap – just checking in again here. It looks like you've started your review in early February but haven't got very far through yet. If we don't receive a complete review from you this week I'll move forward with the two reviews I have from @jorgedch and @mitchellg.

Mind-the-Cap commented 6 months ago

@arfon sorry for the delay, there was trouble on my side (not linked with the review). I just finished the review and saw no problems, I want to congratulate the authors for their efforts!

dustalov commented 6 months ago

Thank you!

arfon commented 6 months ago

@dustalov – looks like we're very close to being done here. I will circle back here next week, but in the meantime, please give your own paper a final read to check for any potential typos etc.

After that, could you make a new release of this software that includes the changes that have resulted from this review. Then, please make an archive of the software in Zenodo/figshare/other service and update this thread with the DOI of the archive? For the Zenodo/figshare archive, please make sure that:

dustalov commented 6 months ago

@arfon: sure, will do. I'll post an update here when we're ready.

dustalov commented 6 months ago

@editorialbot generate pdf

editorialbot commented 6 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

dustalov commented 6 months ago

@editorialbot generate pdf

dustalov commented 6 months ago

@arfon: we read the paper, released the new version to PyPI, and uploaded the source archive to Zenodo.

editorialbot commented 6 months ago

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

arfon commented 6 months ago

@editorialbot set 10.5281/zenodo.10934189 as archive

editorialbot commented 6 months ago

Done! archive is now 10.5281/zenodo.10934189

arfon commented 6 months ago

@editorialbot recommend-accept

editorialbot commented 6 months ago
Attempting dry run of processing paper acceptance...
editorialbot commented 6 months ago

:wave: @openjournals/dsais-eics, this paper is ready to be accepted and published.

Check final proof :point_right::page_facing_up: Download article

If the paper PDF and the deposit XML files look good in https://github.com/openjournals/joss-papers/pull/5221, then you can now move forward with accepting the submission by compiling again with the command @editorialbot accept

editorialbot commented 6 months ago
Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1145/1866029.1866078 is OK
- 10.2307/2334029 is OK
- 10.1145/2433396.2433420 is OK
- 10.1609/aaai.v35i7.16730 is OK
- 10.2307/2346806 is OK
- 10.1109/ASRU.1997.659110 is OK
- 10.1162/neco.1997.9.8.1735 is OK
- 10.1287/opre.2013.1235 is OK
- 10.18653/v1/D19-5904 is OK
- 10.1145/3397271.3401239 is OK
- 10.1007/978-3-319-10602-1_48 is OK
- 10.17863/CAM.45912 is OK
- 10.1109/ICASSP.2010.5494979 is OK
- 10.25080/Majora-92bf1922-00a is OK
- 10.1609/aaai.v32i1.11506 is OK
- 10.1007/s11263-016-0940-3 is OK
- 10.1609/hcomp.v1i1.13088 is OK
- 10.1609/aaai.v37i13.26886 is OK
- 10.14778/3055540.3055547 is OK

MISSING DOIs

- No DOI given, and none found for title: Overview of the TREC 2010 Relevance Feedback Track...
- No DOI given, and none found for title: Aggregation of pairwise comparisons with reduction...
- No DOI given, and none found for title: Improving Web Ranking with Human-in-the-Loop: Meth...
- No DOI given, and none found for title: Learning Whom to Trust with MACE
- No DOI given, and none found for title: Quality Evaluation Methods for Crowdsourced Image ...
- No DOI given, and none found for title: Content Analysis: An Introduction to Its Methodolo...
- No DOI given, and none found for title: Learning Multiple Layers of Features from Tiny Ima...
- No DOI given, and none found for title: RoBERTa: A Robustly Optimized BERT Pretraining App...
- No DOI given, and none found for title: Adversarial Crowdsourcing Through Robust Rank-One ...
- No DOI given, and none found for title: Learning Word Vectors for Sentiment Analysis
- No DOI given, and none found for title: CrowdSpeech and Vox DIY: Benchmark Dataset for Cro...
- No DOI given, and none found for title: IMDB-WIKI-SbS: An Evaluation Dataset for Crowdsour...
- No DOI given, and none found for title: PyTorch: An Imperative Style, High-Performance Dee...
- No DOI given, and none found for title: Scikit-learn: Machine Learning in Python
- No DOI given, and none found for title: spark-crowd: A Spark Package for Learning from Cro...
- No DOI given, and none found for title: Very Deep Convolutional Networks for Large-Scale I...
- No DOI given, and none found for title: Toloka Public Datasets for Machine Learning and Da...
- No DOI given, and none found for title: Calculating Worker Agreement with Aggregate (Wawa)
- No DOI given, and none found for title: Whose Vote Should Count More: Optimal Integration ...
- No DOI given, and none found for title: CEKA: A Tool for Mining the Wisdom of Crowds

INVALID DOIs

- None
arfon commented 6 months ago

@editorialbot accept

editorialbot commented 6 months ago
Doing it live! Attempting automated processing of paper acceptance...
editorialbot commented 6 months ago

Ensure proper citation by uploading a plain text CITATION.cff file to the default branch of your repository.

If using GitHub, a Cite this repository menu will appear in the About section, containing both APA and BibTeX formats. When exported to Zotero using a browser plugin, Zotero will automatically create an entry using the information contained in the .cff file.

You can copy the contents for your CITATION.cff file here:

CITATION.cff

``` cff-version: "1.2.0" authors: - family-names: Ustalov given-names: Dmitry orcid: "https://orcid.org/0000-0002-9979-2188" - family-names: Pavlichenko given-names: Nikita orcid: "https://orcid.org/0000-0002-7330-393X" - family-names: Tseitlin given-names: Boris orcid: "https://orcid.org/0000-0001-8553-4260" contact: - family-names: Ustalov given-names: Dmitry orcid: "https://orcid.org/0000-0002-9979-2188" doi: 10.5281/zenodo.10934189 message: If you use this software, please cite our article in the Journal of Open Source Software. preferred-citation: authors: - family-names: Ustalov given-names: Dmitry orcid: "https://orcid.org/0000-0002-9979-2188" - family-names: Pavlichenko given-names: Nikita orcid: "https://orcid.org/0000-0002-7330-393X" - family-names: Tseitlin given-names: Boris orcid: "https://orcid.org/0000-0001-8553-4260" date-published: 2024-04-06 doi: 10.21105/joss.06227 issn: 2475-9066 issue: 96 journal: Journal of Open Source Software publisher: name: Open Journals start: 6227 title: Learning from Crowds with Crowd-Kit type: article url: "https://joss.theoj.org/papers/10.21105/joss.06227" volume: 9 title: Learning from Crowds with Crowd-Kit ```

If the repository is not hosted on GitHub, a .cff file can still be uploaded to set your preferred citation. Users will be able to manually copy and paste the citation.

Find more information on .cff files here and here.

editorialbot commented 6 months ago

🐘🐘🐘 👉 Toot for this paper 👈 🐘🐘🐘

editorialbot commented 6 months ago

🚨🚨🚨 THIS IS NOT A DRILL, YOU HAVE JUST ACCEPTED A PAPER INTO JOSS! 🚨🚨🚨

Here's what you must now do:

  1. Check final PDF and Crossref metadata that was deposited :point_right: https://github.com/openjournals/joss-papers/pull/5222
  2. Wait five minutes, then verify that the paper DOI resolves https://doi.org/10.21105/joss.06227
  3. If everything looks good, then close this review issue.
  4. Party like you just published a paper! 🎉🌈🦄💃👻🤘

Any issues? Notify your editorial technical team...

arfon commented 6 months ago

@jorgedch, @Mind-the-Cap, @mitchellg – many thanks for your reviews here! JOSS relies upon the volunteer effort of people like you and we simply wouldn't be able to do this without you ✨

@dustalov – your paper is now accepted and published in JOSS :zap::rocket::boom:

editorialbot commented 6 months ago

: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:
[![DOI](https://joss.theoj.org/papers/10.21105/joss.06227/status.svg)](https://doi.org/10.21105/joss.06227)

HTML:
<a style="border-width:0" href="https://doi.org/10.21105/joss.06227">
  <img src="https://joss.theoj.org/papers/10.21105/joss.06227/status.svg" alt="DOI badge" >
</a>

reStructuredText:
.. image:: https://joss.theoj.org/papers/10.21105/joss.06227/status.svg
   :target: https://doi.org/10.21105/joss.06227

This is how it will look in your documentation:

DOI

We need your help!

The 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:

editorialbot commented 6 months ago

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@editorialbot commands

dustalov commented 6 months ago

@editorialbot generate preprint