Text Classification
Transformers
lora
fine-tuning
adaptive
research
nested-lora
synaptic-plasticity
rank-adaptation
Instructions to use Simo76/Unified-LoRA with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use Simo76/Unified-LoRA with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-classification", model="Simo76/Unified-LoRA")# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("Simo76/Unified-LoRA", device_map="auto") - Notebooks
- Google Colab
- Kaggle
Document experimental results for Unified-LoRA
Browse files- docs/experimental_results.md +144 -0
docs/experimental_results.md
ADDED
|
@@ -0,0 +1,144 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
## π Experimental Evidence β Rank Dynamics under Disturbance
|
| 2 |
+
|
| 3 |
+
This section summarizes the **qualitative experimental evidence** supporting the design of **Unified-LoRA**, focusing on *rank dynamics* rather than downstream accuracy.
|
| 4 |
+
|
| 5 |
+
The goal is **not** to compete on SOTA benchmarks, but to demonstrate a **structural difference** in how model capacity is controlled during fine-tuning.
|
| 6 |
+
|
| 7 |
+
---
|
| 8 |
+
|
| 9 |
+
## Experimental Setting
|
| 10 |
+
|
| 11 |
+
All methods were evaluated under **identical conditions**:
|
| 12 |
+
|
| 13 |
+
- **Model:** `Qwen/Qwen3-4B-Instruct-2507`
|
| 14 |
+
- **Task:** GLUE CoLA (classification, autoregressive formulation)
|
| 15 |
+
- **Environment:** Tinker (black-box setting β loss not directly observable)
|
| 16 |
+
- **Hardware:** Standard cloud GPU (T4-class)
|
| 17 |
+
- **Training length:** ~60 steps per method
|
| 18 |
+
|
| 19 |
+
This setup reflects realistic **API-based / enterprise fine-tuning**, where internal loss signals are not exposed.
|
| 20 |
+
|
| 21 |
+
---
|
| 22 |
+
|
| 23 |
+
## Methods Compared
|
| 24 |
+
|
| 25 |
+
| Method | Category | Control Logic |
|
| 26 |
+
|------|---------|---------------|
|
| 27 |
+
| Standard LoRA | Baseline | Fixed rank |
|
| 28 |
+
| Schedule-free / Fixed Rank | Baseline+ | Fixed rank, optimized LR |
|
| 29 |
+
| AdaLoRA-like | Open-loop adaptive | Rank = function of time |
|
| 30 |
+
| **Unified-LoRA (proposed)** | **Closed-loop continuous** | **Rank = function of stress** |
|
| 31 |
+
|
| 32 |
+
---
|
| 33 |
+
|
| 34 |
+
## Rank Dynamics β Comparative Analysis
|
| 35 |
+
|
| 36 |
+
### Axes
|
| 37 |
+
- **X-axis:** training step (0 β ~60)
|
| 38 |
+
- **Y-axis:** effective LoRA rank
|
| 39 |
+
|
| 40 |
+
### 1οΈβ£ AdaLoRA-like (budget-based)
|
| 41 |
+
|
| 42 |
+
- Stepwise, monotonic decreasing trajectory
|
| 43 |
+
- Starts at **rank = 32**
|
| 44 |
+
- Slowly decays according to a predefined schedule
|
| 45 |
+
- At step ~60 remains around **rank β 23β24**
|
| 46 |
+
- **No reaction** to shocks or dynamic changes
|
| 47 |
+
|
| 48 |
+
**Interpretation:**
|
| 49 |
+
Adaptive *offline*, but **blind to the real training state**. Rank allocation follows a schedule, not feedback.
|
| 50 |
+
|
| 51 |
+
---
|
| 52 |
+
|
| 53 |
+
### 2οΈβ£ Schedule-free / Standard LoRA
|
| 54 |
+
|
| 55 |
+
- Flat trajectory
|
| 56 |
+
- **Fixed rank = 16**
|
| 57 |
+
- No dynamics, no feedback, no adaptation
|
| 58 |
+
|
| 59 |
+
**Interpretation:**
|
| 60 |
+
A stable but **capacity-blind baseline**. Learning rate optimization cannot compensate for lack of structural flexibility.
|
| 61 |
+
|
| 62 |
+
---
|
| 63 |
+
|
| 64 |
+
### 3οΈβ£ Unified-LoRA (loss-proxy + injected shocks)
|
| 65 |
+
|
| 66 |
+
- Continuous, **non-monotonic** trajectory
|
| 67 |
+
- Starts from **rank = 6** (minimum capacity)
|
| 68 |
+
- Progressively grows up to **rank β 31**
|
| 69 |
+
- **Immediate reaction** to injected disturbances (e.g. steps ~20, ~30, ~45)
|
| 70 |
+
- No unstable oscillations observed
|
| 71 |
+
|
| 72 |
+
**Interpretation:**
|
| 73 |
+
True **closed-loop control** over model capacity. Rank adapts to *observed stress*, not to a predefined schedule.
|
| 74 |
+
|
| 75 |
+
---
|
| 76 |
+
|
| 77 |
+
## π Key Observation β Disturbance Rejection
|
| 78 |
+
|
| 79 |
+
| Method | Shock Reaction | Stability | Recovery |
|
| 80 |
+
|------|----------------|----------|----------|
|
| 81 |
+
| Standard / Schedule-free | β None | Passive | β |
|
| 82 |
+
| AdaLoRA-like | β οΈ Indirect, delayed | Partial | Limited |
|
| 83 |
+
| **Unified-LoRA** | β
Immediate | Stable | Immediate |
|
| 84 |
+
|
| 85 |
+
π **Only Unified-LoRA exhibits disturbance rejection**, a property expected from closed-loop control systems and absent in open-loop approaches.
|
| 86 |
+
|
| 87 |
+
---
|
| 88 |
+
|
| 89 |
+
## Control-Theoretic Interpretation
|
| 90 |
+
|
| 91 |
+
- **Standard / Schedule-free / AdaLoRA:** open-loop control
|
| 92 |
+
- **Unified-LoRA:** closed-loop continuous control
|
| 93 |
+
|
| 94 |
+
Formally:
|
| 95 |
+
|
| 96 |
+
Standard / AdaLoRA: rank = f(step)
|
| 97 |
+
Unified-LoRA: rank = f(stress(step, history))
|
| 98 |
+
|
| 99 |
+
|
| 100 |
+
Where **stress** is a continuous, smoothed, normalized signal derived from observable training dynamics.
|
| 101 |
+
|
| 102 |
+
---
|
| 103 |
+
|
| 104 |
+
## Why Black-Box Matters
|
| 105 |
+
|
| 106 |
+
Unified-LoRA operates **without direct access to the loss**.
|
| 107 |
+
|
| 108 |
+
In Tinker-like environments, the system observes *trajectory-level signals*, not internal optimization variables.
|
| 109 |
+
|
| 110 |
+
> βI observe the missile trajectory, not the engine β yet I can still control it.β
|
| 111 |
+
|
| 112 |
+
This capability is critical for:
|
| 113 |
+
- API-based fine-tuning
|
| 114 |
+
- enterprise training pipelines
|
| 115 |
+
- safety- or cost-constrained environments
|
| 116 |
+
|
| 117 |
+
---
|
| 118 |
+
|
| 119 |
+
## Computational Overhead
|
| 120 |
+
|
| 121 |
+
Unified-LoRA introduces:
|
| 122 |
+
|
| 123 |
+
- **O(1)** computation per step
|
| 124 |
+
- No SVD
|
| 125 |
+
- No matrix decomposition
|
| 126 |
+
- Negligible overhead relative to the training step
|
| 127 |
+
|
| 128 |
+
---
|
| 129 |
+
|
| 130 |
+
## Takeaway
|
| 131 |
+
|
| 132 |
+
Unified-LoRA is:
|
| 133 |
+
- **not** a scheduler
|
| 134 |
+
- **not** a rank budget
|
| 135 |
+
- **not** a learning-rate trick
|
| 136 |
+
|
| 137 |
+
It implements a **dynamic controller over model capacity**.
|
| 138 |
+
|
| 139 |
+
At equal training conditions:
|
| 140 |
+
- higher stability
|
| 141 |
+
- better resource utilization
|
| 142 |
+
|
| 143 |
+
Under disturbances:
|
| 144 |
+
- **it is the only method that reacts correctly**
|