class_docstr: Linear layer with weight normalized kernel.
code: def param(self, name: str, *args, **kwargs):
      param = super().param(name, *args, **kwargs)
      if name == "kernel":
          param /= jnp.linalg.norm(param, axis=0, keepdims=True) + 1e-10
      return param
  
imports: import copy
  import functools
  from typing import Any, Optional, Tuple
  import flax.linen
  import jax
  import jax.numpy
  import ml_collections
  import numpy
  from scenic.model_lib.base_models import base_model
  from scenic.model_lib.base_models import classification_model
  from scenic.model_lib.base_models import model_utils
  from scenic.model_lib.layers import attention_layers
  from scenic.model_lib.layers import nn_layers
  from scenic.projects.baselines import vit
label_desc: Use image node_id 1 for calling the WeightNormDense obj's underlying member method code with example usage: obj.param(name) and returns: param