class_docstr: Stores any kind of features ready to be used by a RasaModel.
  
  Next to the input numpy array of features, it also received the number of
  dimensions of the features.
  As our features can have 1 to 4 dimensions we might have different number of numpy
  arrays stacked. The number of dimensions helps us to figure out how to handle this
  particular feature array. Also, it is automatically determined whether the feature
  array is sparse or not and the number of units is determined as well.
  
  Subclassing np.array: https://numpy.org/doc/stable/user/basics.subclassing.html
class_docstr_tok: ["Stores","any","kind","of","features","ready","to","be","used","by","a","RasaModel",".","Next","to","the","input","numpy","array","of","features",",","it","also","received","the","number","of","dimensions","of","the","features",".","As","our","features","can","have","1","to","4","dimensions","we","might","have","different","number","of","numpy","arrays","stacked",".","The","number","of","dimensions","helps","us","to","figure","out","how","to","handle","this","particular","feature","array",".","Also",",","it","is","automatically","determined","whether","the","feature","array","is","sparse","or","not","and","the","number","of","units","is","determined","as","well",".","Subclassing","np.array",":","https",":","\/\/numpy.org\/doc\/stable\/user\/basics.subclassing.html"]
docstr: Initialize. FeatureArray.
  
  Needed in order to avoid 'Invalid keyword argument number_of_dimensions
  to function FeatureArray.__init__ '
  Args:
      input_array: the array that contains features
      number_of_dimensions: number of dimensions in input_array
docstr_tok: ["Initialize",".","FeatureArray",".","Needed","in","order","to","avoid","'Invalid","keyword","argument","number_of_dimensions","to","function","FeatureArray.__init__","'","Args",":","input_array",":","the","array","that","contains","features","number_of_dimensions",":","number","of","dimensions","in","input_array"]
code: def __init__(
      self, input_array: Any, number_of_dimensions: int, **kwargs: Any
  ) -> None:
      """Initialize. FeatureArray.
  
      Needed in order to avoid 'Invalid keyword argument number_of_dimensions
      to function FeatureArray.__init__ '
      Args:
          input_array: the array that contains features
          number_of_dimensions: number of dimensions in input_array
      """
      super().__init__(**kwargs)
      self.number_of_dimensions = number_of_dimensions
  
imports: import logging
  from typing import Optional, DefaultDict, Dict, Iterable, Text, List, Tuple, Any, Union, NamedTuple, ItemsView, overload, cast
  from collections import defaultdict, OrderedDict
  import numpy
  import scipy.sparse
  from sklearn.model_selection import train_test_split
label_desc: Use image node_id 2 to create a new FeatureArray object from inherited base classes: np with example: obj = FeatureArray(input_array, number_of_dimensions)