code: def __get__(self, instance, owner):
      choice_key = super(ChoiceProperty, self).__get__(instance, owner)
  
      if isinstance(choice_key, six.string_types):
          return self.choices[choice_key]
  
      return choice_key
  
imports: from __future__ import division
  from collections import namedtuple
  import six
  import numpy
  from numpy.linalg import norm
  from neupy import init
  from neupy.utils import as_tuple, format_data
  from neupy.algorithms import Kohonen
  from neupy.exceptions import WeightInitializationError
  from neupy.algorithms.associative.base import BaseAssociative
  from neupy.core.properties import BaseProperty, TypedListProperty, ChoiceProperty, NumberProperty, ParameterProperty, IntProperty
  from .randomized_pca import randomized_pca
  from .neighbours import find_step_scaler_on_rect_grid, find_neighbours_on_rect_grid, find_neighbours_on_hexagon_grid, find_step_scaler_on_hexagon_grid
label_desc: Use image node_id 2 for calling the SOFMWeightParameter obj's underlying member method code with example usage: obj.__get__(instance, owner) and returns: choice_key, self