intelligent-crowdworker-selection

Code associated to the article "Who knows best? Intelligent Crowdworker Selection via Deep Learning"

https://github.com/ies-research/intelligent-crowdworker-selection

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (11.2%) to scientific vocabulary

Keywords

crowdsourcing deep-learning noisy-labels
Last synced: 10 months ago · JSON representation ·

Repository

Code associated to the article "Who knows best? Intelligent Crowdworker Selection via Deep Learning"

Basic Info
Statistics
  • Stars: 1
  • Watchers: 2
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
crowdsourcing deep-learning noisy-labels
Created almost 3 years ago · Last pushed almost 2 years ago
Metadata Files
Readme Citation

README.md

Who knows best? Intelligent Crowdworker Selection via Deep Learning

Authors: Marek Herde, Denis Huseljic, Bernhard Sick, Ulrich Bretschneider, and Sarah Oeste-Reiß

Project Structure

How to execute experiments?

In the following, we describe step-by-step how to execute all experiments presented in the accompanied article. As a prerequisite, we assume to have a Linux distribution as operating system and conda installed on your machine.

  1. Setup Python environment: bash projectpath$ conda create --name crowd python=3.9 projectpath$ conda activate crowd First, we need to install torch with the build (1.13.1). For this purpose, we refer to pytorch. An exemplary command for a Linux operating system would be: bash projectpath$ pip install torch==1.13.1+cu116 torchvision==0.14.1+cu116 torchaudio==0.13.1 --extra-index-url https://download.pytorch.org/whl/cu116 Subsequently, we install the remaining requirements: bash projectpath$ pip install -r requirements.txt
  2. Create and download data sets: Start jupyter-notebook and follow the instructions in the jupyter-notebook file notebooks/data_set_creation_download.ipynb. bash projectpath$ conda activate crowd projectpath$ jupyter-notebook
  3. Simulate annotators: Start jupyter-notebook and follow the instructions in the jupyter-notebook file notebooks/annotator_simulation.ipynb. bash projectpath$ conda activate crowd projectpath$ jupyter-notebook
  4. Execute experiment scripts: The files evaluation/letter.sh and evaluation/cifar10.sh corresponds to evaluating MaDL on CIFAR10 and LETTER. Such a file consists of multiple commands executing the file evaluation/run_experiment.py with different configurations. For a better understanding of these possible configurations, we refer to the explanations in the file evaluation/run_experiment.py. Further you need to specify certain paths, e.g., for logging before execution. You can now execute such a bash script via: bash projectpath$ conda activate crowd projectpath$ ./evaluation/crowd_letter.sh projectpath$ ./evaluation/crowd_cifar10.sh Alternatively, you can use the sbatch command: bash projectpath$ conda activate crowd projectpath$ sbatch ./evaluation/letter.sh projectpath$ sbatch ./evaluation/crowd_cifar10.sh

How to investigate the experimental results?

Once, an experiment is completed, its associated results are saved as a .csv file at the directory specified by evaluation.run_experiment.RESULT_PATH. For getting a summarized presentation of these results, you need to start jupyter-notebook and follow the instructions in the jupyter-notebook file notebooks/evaluation.ipynb. bash projectpath$ conda activate crowd projectpath$ jupyter-notebook

References

The code is majorly based on and adopted from Multi-annotator Deep Learning (MaDL).

Citing

If you use this software in one of your research projects or would like to reference the accompanied article, please use the following:

@inproceedings{ herde2023who, title={Who knows best? Intelligent Crowdworker Selection via Deep Learning}, author={Marek Herde and Denis Huseljic and Bernhard Sick and Ulrich Bretschneider and Sarah Oeste-Rei{\ss}}, booktitle={Interactive Adaptive Learning Workshop @ ECML/PKDD}, pages={14--18}, year={2023}, url={https://ceur-ws.org/Vol-3470/paper3.pdf}, }

Owner

  • Name: Intelligent Embedded Systems
  • Login: ies-research
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Herde"
  given-names: "Marek"
  orcid: "https://orcid.org/0000-0003-4908-122X"
- family-names: "Huseljic"
  given-names: "Denis"
  orcid: "https://orcid.org/0000-0001-6207-1494"
- family-names: "Sick"
  given-names: "Bernhard"
  orcid: "https://orcid.org/0000-0001-9467-656X"
- family-names: "Ulrich"
  given-names: "Bretschneider"
  orcid: "https://orcid.org/0000-0002-2494-0457"
- family-names: "Sarah"
  given-names: "Oeste-Rei{\ss}"
  orcid: "https://orcid.org/0000-0002-6576-8841"
title: "intelligent-crowdworker-selection"
date-released: 2023-09-21
url: "https://github.com/ies-research/intelligent-crowdworker-selection"
preferred-citation:
  type: inproceedings
  authors:
  - family-names: "Herde"
    given-names: "Marek"
    orcid: "https://orcid.org/0000-0003-4908-122X"
  - family-names: "Huseljic"
    given-names: "Denis"
    orcid: "https://orcid.org/0000-0001-6207-1494"
  - family-names: "Sick"
    given-names: "Bernhard"
    orcid: "https://orcid.org/0000-0001-9467-656X"
  - family-names: "Ulrich"
    given-names: "Bretschneider"
    orcid: "https://orcid.org/0000-0002-2494-0457"
  - family-names: "Sarah"
    given-names: "Oeste-Rei{\ss}"
    orcid: "https://orcid.org/0000-0002-6576-8841"
  url: "https://ceur-ws.org/Vol-3470/paper3.pdf"
  booktitle: "International Workshop on Interactive Adaptive Learning @ ECML/PKDD"
  pages: "14--18"
  title: "Who knows best? Intelligent Crowdworker Selection via Deep Learning"
  year: 2023

GitHub Events

Total
Last Year

Dependencies

requirements.txt pypi
  • Pillow ==10.0.1
  • annotlib ==1.0.0
  • ipywidgets ==7.6.3
  • iteration_utilities ==0.11.0
  • jupyterlab ==3.5.0
  • matplotlib ==3.6.2
  • numpy ==1.23.5
  • pandas ==1.5.2
  • pytorch-lightning ==1.8.3.post1
  • requests ==2.31.0
  • sacred ==0.8.2
  • scikit-activeml ==0.3.1
  • scikit-learn ==1.1.3
  • scipy ==1.10.0