class_docstr: Base class for properties.
  
  Parameters
  ----------
  default : object
      Default property value. Defaults to ``None``.
  
  required : bool
      If parameter equal to ``True`` and value is not defined
      after initialization then exception will be triggered.
      Defaults to ``False``.
  
  allow_none : bool
      When value is equal to ``True`` than ``None`` is a valid
      value for the parameter. Defaults to ``False``.
  
  Attributes
  ----------
  name : str or None
      Name of the property. ``None`` in case if name
      wasn't specified.
  
  expected_type : tuple or object
      Expected data types of the property.
class_docstr_tok: ["Base","class","for","properties",".","Parameters","--","--","--","--","--","default",":","object","Default","property","value",".","Defaults","to","``","None","``",".","required",":","bool","If","parameter","equal","to","``","True","``","and","value","is","not","defined","after","initialization","then","exception","will","be","triggered",".","Defaults","to","``","False","``",".","allow_none",":","bool","When","value","is","equal","to","``","True","``","than","``","None","``","is","a","valid","value","for","the","parameter",".","Defaults","to","``","False","``",".","Attributes","--","--","--","--","--","name",":","str","or","None","Name","of","the","property",".","``","None","``","in","case","if","name","was","n't","specified",".","expected_type",":","tuple","or","object","Expected","data","types","of","the","property","."]
docstr: Validate properties value
  
  Parameters
  ----------
  value : object
docstr_tok: ["Validate","properties","value","Parameters","--","--","--","--","--","value",":","object"]
code: def validate(self, value):
      """
      Validate properties value
  
      Parameters
      ----------
      value : object
      """
      if not isinstance(value, self.expected_type):
          availabe_types = as_tuple(self.expected_type)
          availabe_types = ", ".join(t.__name__ for t in availabe_types)
          dtype = value.__class__.__name__
  
          raise TypeError(
              "Invalid data type `{0}` for `{1}` property. "
              "Expected types: {2}".format(
                  dtype, self.name, availabe_types
              )
          )
  
imports: import numbers
  import inspect
  import numpy
  import tensorflow
  from neupy import init
  from neupy.utils import as_tuple
  from neupy.core.docs import SharedDocs
label_desc: Use image node_id 4 for calling the BaseProperty obj's underlying member method code with example usage: obj.validate(value) without return types