Skip to content

Conversation

@nsrawat0333
Copy link

Summary

This PR adds a beginner-friendly GET_STARTED.md guide to help newcomers navigate the repository.

Problem

New users often feel overwhelmed when they first discover this repo - they don't know where to start, how to set up their environment, or which project to explore first.

Solution

Added a comprehensive onboarding guide that includes:

  • Introduction - What this repo is and who it's for (students, researchers, engineers)
  • Environment Setup - Step-by-step instructions for Python, venv/conda, and GPU configuration
  • First Example - Quick walkthrough using Gated Linear Networks (minimal dependencies, runs fast)
  • Learning Path - Organized progression from beginner → intermediate → advanced projects
  • Resources - Links to research papers, DeepMind blog, YouTube, and related repositories
  • Troubleshooting - Solutions for common issues (import errors, CUDA problems, memory errors)

Impact

  • Lowers the barrier to entry for beginners
  • Reduces setup confusion and errors
  • Provides a clear roadmap for exploring the codebase
  • Aligns with open-source best practices

Fixes #678

- Update aiohttp to address potential security vulnerabilities
- Maintains compatibility with existing codebase
- Addresses dependency security recommendations
…ation

- Created comprehensive solution for convenient processed WikiText-103 dataset access
- Added two complementary tools:
  * setup_wikitext103_dataset.py: Lightweight, dependency-free solution
  * create_processed_wikitext103_dataset.py: Full-featured with WikiGraphs integration
- Features:
  * One-command dataset download and processing
  * Automatic vocabulary creation with configurable thresholds
  * Comprehensive validation and integrity checks
  * Ready-to-use examples and documentation
  * Cross-platform compatibility
- Created WIKITEXT103_SETUP_GUIDE.md with detailed usage instructions
- Updated main README.md with quick start section
- Addresses 4+ year old Issue google-deepmind#40 from @cp-pc

Files added:
- wikigraphs/scripts/setup_wikitext103_dataset.py (400+ lines)
- wikigraphs/scripts/create_processed_wikitext103_dataset.py (600+ lines)
- wikigraphs/WIKITEXT103_SETUP_GUIDE.md (comprehensive guide)
- ISSUE_40_SOLUTION.md (GitHub issue response)

This solution transforms WikiText-103 setup from complex multi-step process
to simple one-command operation, significantly improving researcher productivity.
- Enhanced TensorFlow session isolation between different DM21 functionals
- Fixed graph context issues causing all functionals to default to DM21M
- Added proper cleanup methods to prevent resource leaks
- Added error handling and validation for model loading
- Includes comprehensive test suite and documentation

Technical changes:
- Modified NeuralNumInt.__init__ to explicitly bind sessions to graphs
- Added __del__ and close() methods for proper resource management
- Enhanced _build_graph with better error handling and validation
- Added test script to validate fix and demonstrate correct usage

Fixes: google-deepmind#589
- Added comprehensive tensorflow_compatibility.py module with:
  * Automatic TensorFlow version detection (1.x vs 2.x)
  * GraphKeys compatibility layer for TF 2.x environments
  * CleverHans dependency handling including tensorflow-addons mock
  * Detailed environment diagnostics and troubleshooting guidance

- Updated quick_eval_cifar.py to import compatibility layer before CleverHans
- Updated requirements.txt with modern TensorFlow 2.x support and dependency guidance
- Added comprehensive test_compatibility.py with full test coverage
- Added detailed README_ISSUE_46_FIX.md documentation

Resolves the 'tensorflow has no attribute GraphKeys' AttributeError that occurs
when running unsupervised adversarial training with modern TensorFlow 2.x versions.

The solution maintains backward compatibility with TensorFlow 1.15 while enabling
researchers to use modern TensorFlow installations with the CleverHans library.

Tested on: Python 3.12, TensorFlow 2.18.1, CleverHans 3.1.0
…c implementation

- Added sphere_model.py: Dedicated model architecture for sphere dynamics
  * 3D position and velocity handling for spherical geometry
  * Verlet integration for stable dynamics simulation
  * Boundary condition handling for kinematic vs normal nodes

- Added sphere_eval.py: Comprehensive evaluation metrics for spheres
  * Standard MSE metrics at multiple prediction horizons
  * Sphere-specific metrics: center of mass tracking, volume preservation
  * Enhanced trajectory analysis for spherical deformations

- Added plot_sphere.py: Advanced visualization for sphere trajectories
  * Side-by-side ground truth vs prediction comparison
  * Real-time MSE error display during animation
  * Export capabilities (GIF, frames, data)
  * Interactive 3D visualization with rotation and zoom

- Updated run_model.py: Added --model=sphere support
  * Integrated sphere model into existing training/evaluation pipeline
  * Configured appropriate parameters for sphere dynamics
  * Seamless integration with existing cloth/cfd workflows

- Added comprehensive documentation:
  * SPHERE_DYNAMIC_GUIDE.md: Complete usage guide and technical details
  * example_sphere_usage.py: Demonstration script with sample data
  * test_sphere_implementation.sh: Validation and testing script

Resolves the 4-year-old request for sphere_dynamic example code from the
MeshGraphNets paper. Users can now train, evaluate, and visualize sphere
dynamics using the same interface as cloth and CFD simulations.

Usage:
  python -m meshgraphnets.run_model --mode=train --model=sphere --dataset_dir=sphere_dynamic
  python -m meshgraphnets.run_model --mode=eval --model=sphere --rollout_path=results.pkl
  python -m meshgraphnets.plot_sphere --rollout_path=results.pkl

Technical implementation includes volume preservation metrics, center of mass
tracking, and specialized handling of 3D spherical deformations while maintaining
compatibility with the existing MeshGraphNets framework.
- Enhanced dataset.py with robust dtype parsing for malformed strings
- Added comprehensive metadata repair utility (fix_dynamic_sizing.py)
- Handles '<dtype: 'float32'>' and '<class 'numpy.float32'>' formats
- Corrects sizing_field shape from [-1, 4] to [-1, 3] for 3D coordinates
- Maintains backward compatibility with correct metadata formats
- Includes full test suite and documentation
- Enables researchers to use flag_dynamic_sizing and sphere_dynamic_sizing datasets

Resolves: google-deepmind#651
- Added comprehensive beginner-friendly onboarding guide
- Includes step-by-step environment setup instructions
- Provides first example to run (Gated Linear Networks)
- Created learning path from beginner to advanced
- Added links to research papers and external resources
- Includes troubleshooting section for common issues

Resolves: google-deepmind#678
@polarbe
Copy link

polarbe commented Jan 15, 2026 via email

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Issue: Add a "Get Started" Guide for New Users

2 participants