
Ортогонализация во второй Гемме не работает.
Проблему я понял довольно быстро, просто там есть дополнительный RMSNorm перед добавлением чего угодно в остаточный поток. То есть между изменяемыми матрицами и теми местами, где по умолчанию снимаются активации, есть ещё один слой.
Но пока исправить это не получилось. Я попробовал:
1) Снимать активации напрямую с выходов внимания и MLP, до нормализации. Для этого пришлось немного переписать TransformersLens. Почему-то это незначительно влияет на итоговые тексты, цензура не снимается.
2) Обращать RMSNorm. То есть снимать активации с того же места, где и раньше, но перед ортогонализацией делить направление на w из RMSNorm. Аналогично, ноль эффекта, временные интервенции работают, а ортогонализация — нет.
Звучит так, что я недостаточно хорошо понимаю, что вообще происходит, разбираюсь.
Проблему я понял довольно быстро, просто там есть дополнительный RMSNorm перед добавлением чего угодно в остаточный поток. То есть между изменяемыми матрицами и теми местами, где по умолчанию снимаются активации, есть ещё один слой.
Но пока исправить это не получилось. Я попробовал:
1) Снимать активации напрямую с выходов внимания и MLP, до нормализации. Для этого пришлось немного переписать TransformersLens. Почему-то это незначительно влияет на итоговые тексты, цензура не снимается.
2) Обращать RMSNorm. То есть снимать активации с того же места, где и раньше, но перед ортогонализацией делить направление на w из RMSNorm. Аналогично, ноль эффекта, временные интервенции работают, а ортогонализация — нет.
Звучит так, что я недостаточно хорошо понимаю, что вообще происходит, разбираюсь.