LoRA内幕机制解析(53)
但是,得益于矩阵乘法的分配律,我们可以将LoRA拆分为两个传播过程:一个是通过基础层的前向传播,另一个是通过生成的低秩矩阵的前向传播。
这非常方便且易于实现,因为我们可以保留原始流程(如下图左侧所示),同时使用两个小矩阵计算一个额外的输出。最后,我们只需将这两个输出相加即可:
同样,用代码表示如下:
regular_output = batch @ base_layer.weight.data.T
additional_output = batch @
但是,得益于矩阵乘法的分配律,我们可以将LoRA拆分为两个传播过程:一个是通过基础层的前向传播,另一个是通过生成的低秩矩阵的前向传播。
这非常方便且易于实现,因为我们可以保留原始流程(如下图左侧所示),同时使用两个小矩阵计算一个额外的输出。最后,我们只需将这两个输出相加即可:
同样,用代码表示如下:
regular_output = batch @ base_layer.weight.data.T
additional_output = batch @