Skip to content

behavioral-ds/citrus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Estimating Online Influence Needs Causal Modeling! Counterfactual Analysis of Misinformation Engagement on Social Media

This repository contains implementations of CITRUS that incorporate external signals (such as Google Trends data) through different mechanisms.

Quick Start

  1. Setup Environment ```bash ./setup.sh pip install -r requirements.txt ```

  2. Generate External Signal Data ```bash python scripts/generate_external_data.py --num-samples 10000 --output data/external_signals.npy ```

  3. Run Quick Test ```bash ./run_experiments.sh quick_test ```

  4. Train Specific Model ```bash ./train_model.sh --model-type mamba --variant adapter --epochs 100 ```

Model Variants

Mamba Variants

  • Token Augmented: External signals as additional tokens
  • Attention Head Augmented: Dedicated attention for external signals
  • Selection Augmented: External signals modulate selection mechanism
  • Adapter Augmented: Lightweight adapters for external signals

Transformer Variants

  • Token Augmented: External signals with type embeddings
  • Attention Head Augmented: Dedicated attention heads
  • Selection Augmented: Attention weight modulation
  • Adapter Augmented: Adapter modules at each layer

Hyperparameter Search

Run comprehensive hyperparameter search: ```bash ./hyperparam_search.sh grid ```

Training Script Options

Key parameters:

  • `--model-type`: mamba or transformer
  • `--variant`: token, attention_head, selection, adapter
  • `--external-dim`: Dimension of external signal
  • `--epochs`: Number of training epochs
  • `--lr`: Learning rate
  • `--batch-size`: Batch size

See `./train_model.sh --help` for all options.

About

Git repo for CITRUS

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors