A toolset for creating Qualtrics-based IAT experiments

Overview

Qualtrics IAT Tool

A web app for generating the Implicit Association Test (IAT) running on Qualtrics

Online Web App

The app is hosted by Streamlit, a Python-based web framework. You can use the app here: Qualtrics IAT Tool.

Run Web App Offline

Alternatively, you can run the app offline. The general steps are:

  1. Download the latest version of the repository.
  2. Install Python and Streamlit.
  3. Run the web app in a Terminal with the command: streamlit run your_directory/qualtrics_iat/web_app.py

Citation:

Cui Y., Robinson, J.D., Kim, S.K., Kypriotakis G., Green C.E., Shete S.S., & Cinciripini P.M., An open source web app for creating and scoring Qualtrics-based implicit association test. Behavior Research Methods (submitted)

Key Functionalities

The web app has three key functionalities: IAT Generator, Qualtrics Tools, and IAT Data Scorer. Each functionality is clearly described on the web app regarding what parameters are expected and what they mean. If you have any questions, please feel free to leave a comment or send your inquiries to me.

IAT Generator

In this section, you can generate the Qualtrics survey template to run the IAT experiment. Typically, you need to consider specifying the following parameters. We'll use the classic flower-insect IAT as an example. As a side note, there are a few other IAT tasks (e.g., gender-career) in the app for your reference.

  • Positive Target Concept: Flower
  • Negative Target Concept: Insect
  • Positive Target Stimuli: Orchid, Tulip, Rose, Daffodil, Daisy, Lilac, Lily
  • Negative Target Stimuli: Wasp, Flea, Roach, Centipede, Moth, Bedbug, Gnat
  • Positive Attribute Concept: Pleasant
  • Negative Attribute Concept: Unpleasant
  • Positive Attribute Stimuli: Joy, Happy, Laughter, Love, Friend, Pleasure, Peace, Wonderful
  • Negative Attribute Stimuli: Evil, Agony, Awful, Nasty, Terrible, Horrible, Failure, War

Once you specify these parameters, you can generate a Qualtrics template file, from which you can create a Qualtrics survey that is ready to be administered. Please note that not all Qualtrics account types support creating surveys from a template. Alternatively, you can obtain the JavaScript code of running the IAT experiment and add the code to a Qualtrics question. If you do this, please make sure that you set the proper embedded data fields.

Qualtrics Tools

In this section, you can directly interact with the Qualtrics server by invoking its APIs. To use these APIs, you need to obtain the token in your account settings. Key functionalities include:

  • Upload Images to Qualtrics Graphic Library: You can upload images from your local computer to your Qualtrics Graphics Library. You need to specify the library ID # and the name of the folder to which the images will be uploaded. If the upload succeeds, the web app will return the URLs for these images. You can set these URLs as stimuli in the IAT if your experiment uses pictures.

  • Create Surveys: You can create surveys by uploading a QSF file or the JSON text. Please note that the QSF file uses JSON as its content. If you're not sure about the JSON content, you can inspect a template file.

  • Export Survey Responses: You can export a survey's responses for offline processing. You need to specify the library ID # and the export file format (e.g., csv).

  • Delete Images: You can delete images from your Qualtrics Graphics Library. You need to specify the library ID # and the IDs for the images that you want to delete.

  • Delete Survey: You can delete surveys from your Qualtrics Library. You need to specify the survey ID #.

IAT Data Scorer

In this section, you can score the IAT data from the exported survey response. Currently, there are two calculation algorithms supported: the conventional and the improved.

Citation for the algorithms: Greenwald et al. Understanding and Using the Implicit Association Test: I. An Improved Scoring Algorithm. Journal of Personality and Social Psychology 2003 (85)2:192-216

The Conventional Algorithm

  1. Use data from B4 & B7 (counter-balanced order will be taken care of in the calculation).
  2. Nonsystematic elimination of subjects for excessively slow responding and/or high error rates.
  3. Drop the first two trials of each block.
  4. Recode latencies outside 300/3,000 boundaries to the nearer boundary value.
  5. 5.Log-transform the resulting values.
  6. Average the resulting values for each of the two blocks.
  7. Compute the difference: B7 - B4.

The Improved Algorithm

  1. Use data from B3, B4, B6, & B7 (counter-balanced order will be taken care of in the calculation).
  2. Eliminate trials with latencies > 10,000 ms; Eliminate subjects for whom more than 10% of trials have latency less than 300 ms.
  3. Use all trials; Delete trials with latencies below 400 ms (alternative).
  4. Compute mean of correct latencies for each block. Compute SD of correct latencies for each block (alternative).
  5. Compute one pooled SD for all trials in B3 & B6, another for B4 & B7; Compute one pooled SD for correct trials in B3 & B6, another for B4 & B7 (alternative).
  6. Replace each error latency with block mean (computed in Step 5) + 600 ms; Replace each error latency with block mean + 2 x block SD of correct responses (alternative 1); Use latencies to correct responses when correction to error responses is required (alternative 2).
  7. Average the resulting values for each of the four blocks.
  8. Compute two differences: B6 - B3 and B7 - B4.
  9. Divide each difference by its associated pooled-trials SD.
  10. Average the two quotients.

Questions?

If you have any questions or would like to contribute to this project, please send me an email: [email protected].

License

MIT License

Official code for our ICCV paper: "From Continuity to Editability: Inverting GANs with Consecutive Images"

GANInversion_with_ConsecutiveImgs Official code for our ICCV paper: "From Continuity to Editability: Inverting GANs with Consecutive Images" https://a

QingyangXu 38 Dec 07, 2022
Understanding the Generalization Benefit of Model Invariance from a Data Perspective

Understanding the Generalization Benefit of Model Invariance from a Data Perspective This is the code for our NeurIPS2021 paper "Understanding the Gen

1 Jan 15, 2022
harmonic-percussive-residual separation algorithm wrapped as a VST3 plugin (iPlug2)

Harmonic-percussive-residual separation plug-in This work is a study on the plausibility of a sines-transients-noise decomposition inspired algorithm

Derp Learning 9 Sep 01, 2022
PyTorch implementation of PP-LCNet

PP-LCNet-Pytorch Pre-Trained Models Google Drive p018 Accuracy Models Top1 Top5 PPLCNet_x0_25 0.5186 0.7565 PPLCNet_x0_35 0.5809 0.8083 PPLCNet_x0_5 0

24 Dec 12, 2022
Fuzzy Overclustering (FOC)

Fuzzy Overclustering (FOC) In real-world datasets, we need consistent annotations between annotators to give a certain ground-truth label. However, in

2 Nov 08, 2022
A Deep Learning based project for creating line art portraits.

ArtLine The main aim of the project is to create amazing line art portraits. Sounds Intresting,let's get to the pictures!! Model-(Smooth) Model-(Quali

Vijish Madhavan 3.3k Jan 07, 2023
Matching python environment code for Lux AI 2021 Kaggle competition, and a gym interface for RL models.

Lux AI 2021 python game engine and gym This is a replica of the Lux AI 2021 game ported directly over to python. It also sets up a classic Reinforceme

Geoff McDonald 74 Nov 03, 2022
An implementation of chunked, compressed, N-dimensional arrays for Python.

Zarr Latest Release Package Status License Build Status Coverage Downloads Gitter Citation What is it? Zarr is a Python package providing an implement

Zarr Developers 1.1k Dec 30, 2022
An example project demonstrating how the Autonomous Learning Library can be used to build new reinforcement learning agents.

About This repository shows how Autonomous Learning Library can be used to build new reinforcement learning agents. In particular, it contains a model

Chris Nota 5 Aug 30, 2022
Self-Supervised Pillar Motion Learning for Autonomous Driving (CVPR 2021)

Self-Supervised Pillar Motion Learning for Autonomous Driving Chenxu Luo, Xiaodong Yang, Alan Yuille Self-Supervised Pillar Motion Learning for Autono

QCraft 101 Dec 05, 2022
EssentialMC2 Video Understanding

EssentialMC2 Introduction EssentialMC2 is a complete system to solve video understanding tasks including MHRL(representation learning), MECR2( relatio

Alibaba 106 Dec 11, 2022
code from "Tensor decomposition of higher-order correlations by nonlinear Hebbian plasticity"

Code associated with the paper "Tensor decomposition of higher-order correlations by nonlinear Hebbian learning," Ocker & Buice, Neurips 2021. "plot_f

Gabriel Koch Ocker 4 Oct 16, 2022
a generic C++ library for image analysis

VIGRA Computer Vision Library Copyright 1998-2013 by Ullrich Koethe This file is part of the VIGRA computer vision library. You may use,

Ullrich Koethe 378 Dec 30, 2022
Self-supervised Label Augmentation via Input Transformations (ICML 2020)

Self-supervised Label Augmentation via Input Transformations Authors: Hankook Lee, Sung Ju Hwang, Jinwoo Shin (KAIST) Accepted to ICML 2020 Install de

hankook 96 Dec 29, 2022
JupyterLite demo deployed to GitHub Pages 🚀

JupyterLite Demo JupyterLite deployed as a static site to GitHub Pages, for demo purposes. ✨ Try it in your browser ✨ ➡️ https://jupyterlite.github.io

JupyterLite 223 Jan 04, 2023
Multi-Scale Geometric Consistency Guided Multi-View Stereo

ACMM [News] The code for ACMH is released!!! [News] The code for ACMP is released!!! About ACMM is a multi-scale geometric consistency guided multi-vi

Qingshan Xu 118 Jan 04, 2023
Piotr - IoT firmware emulation instrumentation for training and research

Piotr: Pythonic IoT exploitation and Research Introduction to Piotr Piotr is an emulation helper for Qemu that provides a convenient way to create, sh

Damien Cauquil 51 Nov 09, 2022
Torch-mutable-modules - Use in-place and assignment operations on PyTorch module parameters with support for autograd

Torch Mutable Modules Use in-place and assignment operations on PyTorch module p

Kento Nishi 7 Jun 06, 2022
Local-Global Stratified Transformer for Efficient Video Recognition

DualFormer This repo is the implementation of our manuscript entitled "Local-Global Stratified Transformer for Efficient Video Recognition". Our model

Sea AI Lab 19 Dec 07, 2022
Focal Loss for Dense Rotation Object Detection

Convert ResNets weights from GluonCV to Tensorflow Abstract GluonCV released some new resnet pre-training weights and designed some new resnets (such

17 Nov 24, 2021