NewsReX TCCM β€” JAX β€” MIND-small

TCCM news recommendation model trained on MIND-small using the NewsReX framework (JAX).

Test Results

Seed AUC MRR NDCG@5 NDCG@10
123 0.6678 0.3167 0.3523 0.4152
42 * 0.6809 0.3251 0.3634 0.4253
456 0.6714 0.3205 0.3564 0.4178
mean Β± std 0.6734Β±0.0055 0.3208Β±0.0034 0.3574Β±0.0046 0.4194Β±0.0043

* Best seed (weights at repo root)

Experiment Configuration

model:
  name: tccm
  architecture:
    news_encoder:
      type: multi_head_self_attention
      news_dim: 400
      num_heads: 20
      head_dim: 20
      co_num_heads: 5
      co_head_dim: 40
      attention_hidden_dim: 200
      entity_embedding_dim: 100
      category_embedding_dim: 200
    popularity_embedding_bins: 200
    popularity_embedding_dim: 400
    popularity_encoder:
      token_embedding_bins: 200
      token_embedding_dim: 200
      num_heads: 1
      head_dim: 400
      content_dims:
      - 256
      - 256
      - 128
    time_module:
      embedding_bins: 505
      embedding_dim: 100
      dense_dims:
      - 64
      - 64
      lambda_exp: 2.0
    activity_gate_dims:
    - 128
    - 64
    use_entity: true
    use_activity_gate: true
    use_causal_intervention: false
    intervention_value: 0.5
  embedding:
    size: 300
    trainable: true
  dropout_rate: 0.2
  seed: 42
inputs:
  title:
    max_length: 30
  history:
    max_length: 50
  impressions:
    max_length: 5
  max_entities: 5
  process_title: true
  process_abstract: false
  process_category: false
  process_subcategory: false
  process_user_id: false
training:
  loss:
    name: categorical_crossentropy
    from_logits: true
    reduction: sum_over_batch_size
    label_smoothing: 0.0
  optimizer: adam
  learning_rate: 0.0001
  batch_size: 256
  num_epochs: 20
  early_stopping:
    patience: 5
    min_improvement: 0.01
  negative_sampling:
    strategy: random
    candidates: 1
evaluation:
  mode: fast
  evaluator: tccm
  metrics:
  - auc
  - mrr
  - ndcg@5
  - ndcg@10
  batch_size: 256

Repository Structure

newsrex/TCCM-JAX-MIND-small/
β”œβ”€β”€ model.safetensors          ← best seed (42)
β”œβ”€β”€ test_results.json
β”œβ”€β”€ training_run_summary.json
β”œβ”€β”€ seed_123/model.safetensors
β”œβ”€β”€ seed_42/model.safetensors
β”œβ”€β”€ seed_456/model.safetensors
└── README.md

Usage

git clone https://github.com/igor17400/NewsReX.git
cd NewsReX && uv sync

# Run evaluation with best seed weights
uv run python src/eval.py \
    experiment=mind/tccm \
    framework=jax \
    weights=hf://newsrex/TCCM-JAX-MIND-small/model.safetensors

# Run evaluation with a specific seed
uv run python src/eval.py \
    experiment=mind/tccm \
    framework=jax \
    weights=hf://newsrex/TCCM-JAX-MIND-small/seed_42/model.safetensors

Citation

@misc{newsrex2026,
  title={NewsReX: An Open-Source Multi-Framework for Neural News Recommendation},
  author={Igor L. R. Azevedo and Toyotaro Suzumura and Yuichiro Yasui},
  year={2025},
  eprint={2508.21572},
  archivePrefix={arXiv},
  primaryClass={cs.IR},
  url={https://arxiv.org/abs/2508.21572},
}
Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. πŸ™‹ Ask for provider support

Paper for newsrex/TCCM-JAX-MIND-small