class_docstr: Progressive Neural Network layer.
  
  The adaptation phase assumes that each experience is a separate task.
  Multiple experiences with the same task label or multiple task labels
  within the same experience will result in a runtime error.
code: def num_columns(self):
      return len(self.columns)
  
imports: import torch
  import torch.nn.functional
  from torch import nn
  from avalanche.benchmarks.utils.flat_data import ConstantSequence
  from avalanche.models import MultiTaskModule
  from avalanche.models import MultiHeadClassifier
  from avalanche.benchmarks.scenarios import CLExperience
label_desc: Use image node_id 2 for calling the PNNLayer obj's underlying member method code with example usage: obj.num_columns() and returns: len