--- language: - zh license: mit tags: - music-source-separation - chinese-folk-music - audio - pytorch datasets: - ccmusic-database/CTIS - ccmusic-database/erhu_playing_tech - ccmusic-database/Guzheng_Tech99 - M4Singer/M4Singer --- # Loom of Time — Model Weights Model checkpoints for **Loom of Time (岁月织机)**, an interactive art installation presented at ACM Multimedia 2026 (Interactive Art Track). **GitHub repository:** [HAoyu-baller/Loom-of-Time-Music-Viz](https://github.com/HAoyu-baller/Loom-of-Time-Music-Viz) --- ## Contents ``` models/ separator/ best.pt # BSRoformer 5-stem separator (best val loss) last.pt # BSRoformer 5-stem separator (final epoch) classifier/ loom_best.pth # ResNet18 regional classifier (5 Chinese folk regions) ``` --- ## Models ### BSRoformer Separator (`models/separator/best.pt`) Separates a Chinese folk music recording into 5 stems: **vocal · erhu · plucked strings · wind · percussion** | Config | Value | |---|---| | Architecture | Band-Split Rotary Transformer (BSRoformer) | | dim | 256 | | depth | 6 | | heads | 8 | | Parameters | ~15–20 M | | Sample rate | 22,050 Hz | | Chunk size | 132,300 samples (6 s) with 22,050-sample overlap | ### ResNet18 Classifier (`models/classifier/loom_best.pth`) Classifies the regional origin of a Chinese folk song into one of 5 categories: **Jiangnan · Shaanxi · Yungui · Huanan · Dongbei** | Config | Value | |---|---| | Backbone | ResNet18 (ImageNet pretrained) | | Head | Dropout(0.4) → Linear(512,256) → ReLU → Dropout(0.3) → Linear(256,5) | | Input | Mel-spectrogram image (128 mel bins, magma colormap, 224×224 px) | | Inference | Chunk-based hard voting across 6-second clips | --- ## Usage See the [GitHub repository](https://github.com/HAoyu-baller/Loom-of-Time-Music-Viz) for full installation instructions and inference code. ```python from huggingface_hub import hf_hub_download hf_hub_download('Haoyu123123/loom-of-time-models', 'models/separator/best.pt', local_dir='backend/training/checkpoints') hf_hub_download('Haoyu123123/loom-of-time-models', 'models/classifier/loom_best.pth', local_dir='backend/classifier/models') ``` --- ## Citation ```bibtex @inproceedings{ruan2026loom, title = {Loom of Time: Real-Time Chinese Folk Music Decomposition and Generative Weaving Visualization}, author = {Ruan, Haoyu}, booktitle = {Proceedings of the 34th ACM International Conference on Multimedia (Interactive Art Track)}, year = {2026}, publisher = {ACM} } ```