def initializeClassifiers(Nelements, encoder):
  cla = CLAClassifier(steps=[0])

  nn_classifier = NeuralNetClassifier(numInputs=encoder.n,
                                      steps=[0], alpha=0.1)

  patternNZ = list(numpy.where(encoder.encode(Nelements-1))[0])
  classification = {'bucketIdx': Nelements-1, 'actValue': Nelements-1}

  # feed in the pattern with the highest bucket index
  claRetval = cla.compute(0, patternNZ, classification,
                           learn=True, infer=True)
  nnRetval = nn_classifier.compute(0, patternNZ, classification,
                                    learn=True, infer=True)
  return cla, nn_classifier
  printTPRegionParams(model._getTPRegion())

  inputData = "%s/%s.csv" % (DATA_DIR, dataSet.replace(" ", "_"))

  sensor = model._getSensorRegion()
  encoderList = sensor.getSelf().encoder.getEncoderList()
  if sensor.getSelf().disabledEncoder is not None:
    classifier_encoder = sensor.getSelf().disabledEncoder.getEncoderList()
    classifier_encoder = classifier_encoder[0]
  else:
    classifier_encoder = None

  # initialize new classifier
  numTMcells = model._getTPRegion().getSelf()._tfdr.numberOfCells()
  nn_classifier = NeuralNetClassifier(numInputs=numTMcells,
                                      steps=[5], alpha=0.005)

  _METRIC_SPECS = getMetricSpecs(predictedField, stepsAhead=_options.stepsAhead)
  metric = metrics.getModule(_METRIC_SPECS[0])
  metricsManager = MetricsManager(_METRIC_SPECS, model.getFieldInfo(),
                                  model.getInferenceType())

  if plot:
    plotCount = 1
    plotHeight = max(plotCount * 3, 6)
    fig = plt.figure(figsize=(14, plotHeight))
    gs = gridspec.GridSpec(plotCount, 1)
    plt.title(predictedField)
    plt.ylabel('Data')
    plt.xlabel('Timed')
    plt.tight_layout()