|
Download README.md from tekitoutarou/First-RoKAN-Model: direct link, hf CLI and curl.
- Browser
- Download file 3.77 kB
-
https://huggingface.co/tekitoutarou/First-RoKAN-Model/resolve/main/README.md
- Command line
-
hf download hf://tekitoutarou/First-RoKAN-Model/README.md
-
curl -L -o README.md https://huggingface.co/tekitoutarou/First-RoKAN-Model/resolve/main/README.md
3.77 kB
| # Important | |
| please do report how was the results of using this repository | |
| # Faster-RoKAN Core | |
| Faster-RoKAN is a next-generation hybrid architecture that integrates Faster-KAN (Kolmogorov-Arnold Networks) into the BS-Roformer audio source separation model. | |
| ## Features | |
| - **Isomorphic Conversion**: Convert standard BS-Roformer or MelBand-Roformer models to the RoKAN architecture with ZERO fidelity loss (MAE ≈ 0.0). | |
| - **Faster-KAN (RSWAF)**: Replaces linear MLP layers with Reflectional Switch Wavelet Activation Functions for efficient, expressive, and detailed non-linear learning. High-frequency artifacts are filtered out through smooth geometric spline curves. | |
| - **Gentle Training**: Optimized for standard consumer hardware with thermal management considerations. | |
| ## Includes Base Model | |
| To get you started immediately, we have included a pre-converted **`Base_Model.ckpt`** and **`Base_Model.yaml`** in this package. | |
| This base model is already functioning perfectly. You skip the conversion step entirely and jump straight to fine-tuning it on your own dataset! | |
| ## Setup | |
| ```bash | |
| pip install -r requirements.txt | |
| ``` | |
| ## Usage | |
| ### 0. (Optional) How to Make Your Own RoKAN Model | |
| If you want to use a different checkpoint rather than the provided `Base_Model`, you can convert your existing standard `.ckpt` to the RoKAN format automatically with `convert_bs_to_rokan.py`. | |
| **(Note: You do NOT need to do this if you just want to use the included `Base_Model`.)** | |
| ```bash | |
| python convert_bs_to_rokan.py \ | |
| --src_yaml dataset/Models/your_model.yaml \ | |
| --src_ckpt dataset/Models/your_model.ckpt \ | |
| --out_yaml converted/rokan.yaml \ | |
| --out_ckpt converted/rokan.ckpt | |
| ``` | |
| **How it works (For both BS & MelBand):** | |
| The `convert_bs_to_rokan.py` script automatically analyzes your `.yaml` configuration to determine whether it is a **BS-Roformer** or a **MelBand-Roformer** (by checking for the `num_bands` parameter). | |
| Depending on the architecture, it seamlessly intercepts the standard linear MLP components located inside the Siamese or Standard Transformer FeedForward blocks, and replaces them with our custom `FasterKANLinear` blocks. All base knowledge is perfectly preserved without any fidelity loss. | |
| ### 1. Fine-tuning | |
| Train only the new KAN spline parameters on your dataset to remove high-frequency artifacts and teach the model geometric patterns. The script will automatically unfreeze *only* the new KAN parameters while keeping the base knowledge perfectly intact. | |
| ```bash | |
| python train_rokan.py --ckpt_path Base_Model.ckpt --yaml_path Base_Model.yaml | |
| ``` | |
| *(Store your vocal audio in `dataset/vocals/` and instrumental audio in `dataset/instrumentals/` before running).* | |
| ### 2. Inference | |
| Run source separation using the pre-tuned or fine-tuned model: | |
| ```bash | |
| python run_infer_rokan.py \ | |
| --model_path Base_Model.ckpt \ | |
| --config_path Base_Model.yaml \ | |
| --input_audio your_song.wav | |
| ``` | |
| --- | |
| ## Credits, Contact & Disclaimer | |
| **All Method Made By Himadayon.** | |
| **IMPORTANT:** If you release or distribute any models that utilize this architecture or are fine-tuned using this repository, you **must** explicitly explicitly credit `Himadayon` in your release notes or repository. | |
| **Contact:** | |
| If you have any questions or inquiries regarding this project, please send an email to: | |
| 📧 **Joker200702@gmail.com** | |
| *(Please make sure to include a clear subject line and detailed contents in your email).* | |
| **Disclaimer:** | |
| For the purpose of experimental verification and architectural testing, existing base models originally developed by **unwa** and **Aname** were utilized during the development of this project.Also I do not contact to these 2 goats, I js use their model without ask them. Big shoutout to Unwa and Aname | |