Fine-tuning a model changed one of its big matrices of weights. Storing the whole change costs as much as the matrix itself, but this change is special: every row is the same pattern, scaled by some amount. Write compress(change): return two short lists, [column, row], that rebuild it: change[i][j] = column[i] * row[j] for every i and j.
| 0 | 1 | 2 | 3 |
|---|---|---|---|
| 1 | 2 | 4 | 6 |
| 2 | −1 | −2 | −3 |