How to enforce weight matrix to be of a certain form (train a subset) in Flux?

For example, I want a layer specified by a symmetric or a tridiagonal matrix. Obviously, train! does not know about it, and an error is raised:
ArgumentError: cannot set entry (3, 1) off the tridiagonal band to a nonzero value (0.03524077074068107).

How to tell Flux to train only a certain subset of parameters (diagonals/upper half, etc)?