TinyLoRA を発展させると W exp(k_1 A_1) の形で書ける。…
jrf> TinyLoRA を発展させると W exp(k_1 A_1) の形で書ける。
これは W exp(k_1 A_1) exp(k_2 A_2) のように拡張できる。
ここで A_i はランダム行列でもよいので、逆に「基底」を共有して、各重み W ごとに係数 k_i だけを学習するという方向が考えられる。さらに A_i 自体も、k_i より遅いスケールで学習する(メタ的に更新する)こともできる。
これは LoRA とは異なる「乗法的な変換」の軸になっている。
したがって
W_{eff} = W_0 exp(sum_i k_i A_i) + B_t C_t
のように、LoRA(加法)と組み合わせることができる。
実験すると、
・LoRA的なデータでは LoRA が効く
・指数型の構造がある場合はこちらが効く
・混合の場合はハイブリッドが最も良い
という結果になった。
直感的には「ax + b」の非線形版(乗法 + 加法)になっており、少ないパラメータで広い変形を表現できる可能性がある。
ChatGPTとの議論とコードで検証した:
会話URL: https://chatgpt.com/share/69e3afc7-3e0c-83e8-94f6-f26100c77992
Colab URL: https://colab.research.google.com/drive/1Ql1ncYjvm9aYsy_b15qSLq-yc_UtJFp9