Skip to main content

A virtual environment that generates vision-language tasks with varying complexity.

Reason this release was yanked:

broken

Project description

iWISDM

iWISDM, short for instructed-Virtual VISual Decision Making, is a virtual environment capable of generating a limitless array of vision-language tasks with varying complexity. iWISDM encompasses a broad spectrum of tasks that engage executive functions such as inhibition of action, working memory, attentional set, task switching, and schema generalization. It is also a scalable and extensible framework which allows users to easily define their own task space and stimuli dataset. iWISDM builds on the compositional nature of human behavior, and the fact that complex tasks are often constructed by combining smaller task units together in time.

Below is an example of the generated tasks: Screenshot 2024-06-24 at 8 43 41 PM

iWISDM inherits several classes from COG (https://github.com/google/cog) to build task graphs. For convenience, we have pre-implemented several commonly used cognitive tasks in task_bank.py.

For usage instructions, please refer to Usage

Additionally, for convenience, we have pre-generated four benchmarks of increased complexity level for evaluation of large multi-modal models.

Benchmark details for each level of complexity

These datasets can be generated from /benchmarking or downloaded: iWISDM_benchsets.tar.gz

For further details, please refer to (https://arxiv.org/submit/5678755/view)

Usage

Install Instructions

Poetry

Install Poetry

curl -sSL https://install.python-poetry.org | python3 -

Conda + Poetry

Create conda python environment

conda create --name iwisdm python=3.11

Install packages

poetry install

ShapeNet Subset

A large-scale repository of shapes represented by 3D CAD models of objects (Chang et. al. 2015).

Pre-rendered Dataset Download

shapenet_handpicked.tar.gz

Basic Usage

# imports
from iwisdm import make
from iwisdm import read_write

# environment initialization
with open('../benchmarking/configs/high_complexity_all.json', 'r') as f:
    config = json.load(f)  # using pre-defined AutoTask configuration
env = make(env_id='ShapeNet')
env.set_env_spec(
    env.init_env_spec(
        auto_gen_config=config,
    )
)

# AutoTask procedural task generation and saving trial
tasks = env.generate_tasks(10)  # generate 10 random task graphs and tasks
_, (_, temporal_task) = tasks[0]
trials = env.generate_trials(tasks=[temporal_task])  # generate a trial
imgs, _, info_dict = trials[0]
read_write.write_trial(imgs, info_dict, f'output/trial_{i}')

See /tutorials for more examples.

Acknowledgements

This repository builds upon the foundational work presented in the COG paper (https://arxiv.org/abs/1803.06092).

Yang, Guangyu Robert, et al. "A dataset and architecture for visual reasoning with a working memory." Proceedings of the European Conference on Computer Vision (ECCV). 2018.

Citation

If you find iWISDM useful in your research, please use the following BibTex:

@inproceedings{lei2024iwisdm,
  title={iWISDM: Assessing instruction following in multimodal models at scale},
  author={Lei, Xiaoxuan and Gomez, Lucas and Bai, Hao Yuan and Bashivan, Pouya},
  booktitle={Conference on Lifelong Learning Agents (CoLLAs 2024)},
  year={2024}
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

iwisdm-0.1.1.2.tar.gz (47.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

iwisdm-0.1.1.2-py3-none-any.whl (51.9 kB view details)

Uploaded Python 3

File details

Details for the file iwisdm-0.1.1.2.tar.gz.

File metadata

  • Download URL: iwisdm-0.1.1.2.tar.gz
  • Upload date:
  • Size: 47.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.10

File hashes

Hashes for iwisdm-0.1.1.2.tar.gz
Algorithm Hash digest
SHA256 e5f3023bff4d2569d7742ceb6362050a202f10eb9fb20d52f0046b1a72bcd6c3
MD5 f82d2848fa48b9683b0113f509ccdcd3
BLAKE2b-256 baf01a605b39ef158411cad256503d8141026154810532d04d09278a7d550c74

See more details on using hashes here.

File details

Details for the file iwisdm-0.1.1.2-py3-none-any.whl.

File metadata

  • Download URL: iwisdm-0.1.1.2-py3-none-any.whl
  • Upload date:
  • Size: 51.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.10

File hashes

Hashes for iwisdm-0.1.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 65e7c12fa1dad5edcffa3e484d243d80a398fa43962f68f34a3dd906163e2bc6
MD5 656e4d29b0289190050c6dc18ecad611
BLAKE2b-256 50c7c3f24a010304ee34ba03d6d41bb375a9624aa561de653193ef03f11159f7

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page