Пример #1
0
  def setParameter(self, name, index, value):
    """Set the value of a parameter."""

    if name == "SVDSampleCount":
      self._SVDSampleCount = value
    elif name == "logPath":
      self._logPath = value
    else:
      PyRegion.setParameter(self, name, index, value)
Пример #2
0
    def setParameter(self, name, index, value):
        """Set the value of a parameter."""

        if name == "SVDSampleCount":
            self._SVDSampleCount = value
        elif name == "logPath":
            self._logPath = value
        else:
            PyRegion.setParameter(self, name, index, value)
Пример #3
0
    def setParameter(self, name, index, value):
        """
    Set the value of the parameter.

    @param name -- the name of the parameter to update, as defined
            by the Node Spec.
    @param value -- the value to which the parameter is to be set.
    """
        if name == "learningMode":
            self.learningMode = bool(int(value))
        elif name == "inferenceMode":
            self.inferenceMode = bool(int(value))
        else:
            return PyRegion.setParameter(self, name, index, value)
Пример #4
0
  def setParameter(self, name, index, value):
    """
    Set the value of the parameter.

    @param name -- the name of the parameter to update, as defined
            by the Node Spec.
    @param value -- the value to which the parameter is to be set.
    """
    if name == "learningMode":
      self.learningMode = bool(int(value))
    elif name == "inferenceMode":
      self.inferenceMode = bool(int(value))
    else:
      return PyRegion.setParameter(self, name, index, value)
Пример #5
0
    def setParameter(self, name, index, value):
        """
    Set the value of the parameter.

    @param name -- the name of the parameter to update, as defined
            by the Node Spec.
    @param value -- the value to which the parameter is to be set.
    """
        if name == "trainRecords":
            # Ensure that the trainRecords can only be set to minimum of the ROWID in
            # the saved states
            if not (isinstance(value, float) or isinstance(value, int)):
                raise CLAModelInvalidArgument(
                    "Invalid argument type \'%s\'. threshold "
                    "must be a number." % (type(value)))

            if len(self._recordsCache
                   ) > 0 and value < self._recordsCache[0].ROWID:
                raise CLAModelInvalidArgument(
                    "Invalid value. autoDetectWaitRecord "
                    "value must be valid record within output stream. Current minimum "
                    " ROWID in output stream is %d." %
                    (self._recordsCache[0].ROWID))

            self.trainRecords = value
            # Remove any labels before the first cached record (wont be used anymore)
            self._deleteRangeFromKNN(0, self._recordsCache[0].ROWID)
            # Reclassify all states
            self.classifyStates()
        elif name == "anomalyThreshold":
            if not (isinstance(value, float) or isinstance(value, int)):
                raise CLAModelInvalidArgument(
                    "Invalid argument type \'%s\'. threshold "
                    "must be a number." % (type(value)))
            self.anomalyThreshold = value
            self.classifyStates()
        elif name == "classificationMaxDist":
            if not (isinstance(value, float) or isinstance(value, int)):
                raise CLAModelInvalidArgument(
                    "Invalid argument type \'%s\'. "
                    "classificationMaxDist must be a number." % (type(value)))
            self._classificationMaxDist = value
            self.classifyStates()
        elif name == "activeColumnCount":
            self._activeColumnCount = value
        else:
            return PyRegion.setParameter(self, name, index, value)
Пример #6
0
  def setParameter(self, name, index, value):
    """
    Set the value of the parameter.

    @param name -- the name of the parameter to update, as defined
            by the Node Spec.
    @param value -- the value to which the parameter is to be set.
    """
    if name == "trainRecords":
      # Ensure that the trainRecords can only be set to minimum of the ROWID in
      # the saved states
      if not (isinstance(value, float) or isinstance(value, int)):
        raise CLAModelInvalidArgument("Invalid argument type \'%s\'. threshold "
          "must be a number." % (type(value)))

      if len(self._recordsCache) > 0 and value < self._recordsCache[0].ROWID:
        raise CLAModelInvalidArgument("Invalid value. autoDetectWaitRecord "
          "value must be valid record within output stream. Current minimum "
          " ROWID in output stream is %d." % (self._recordsCache[0].ROWID))
      
      self.trainRecords = value
      # Remove any labels before the first cached record (wont be used anymore)
      self._deleteRangeFromKNN(0, self._recordsCache[0].ROWID)
      # Reclassify all states
      self.classifyStates()
    elif name == "anomalyThreshold":
      if not (isinstance(value, float) or isinstance(value, int)):
        raise CLAModelInvalidArgument("Invalid argument type \'%s\'. threshold "
          "must be a number." % (type(value)))
      self.anomalyThreshold = value
      self.classifyStates()
    elif name == "classificationMaxDist":
      if not (isinstance(value, float) or isinstance(value, int)):
        raise CLAModelInvalidArgument("Invalid argument type \'%s\'. "
          "classificationMaxDist must be a number." % (type(value)))
      self._classificationMaxDist = value
      self.classifyStates()
    elif name == "activeColumnCount":
      self._activeColumnCount = value
    else:
      return PyRegion.setParameter(self, name, index, value)
Пример #7
0
    def setParameter(self, name, index, value):
        """
    Set the value of the parameter.

    @param name -- the name of the parameter to update, as defined
            by the Node Spec.
    @param value -- the value to which the parameter is to be set.
    """
        if name == "learningMode":
            if int(value) and not self.learningMode:
                self._restartLearning()
            self.learningMode = bool(int(value))
            self._epoch = 0
        elif name == "inferenceMode":
            self._epoch = 0
            if int(value) and not self.inferenceMode:
                self._finishLearning()
            self.inferenceMode = bool(int(value))
        elif name == "distanceNorm":
            self._knn.distanceNorm = value
        elif name == "distanceMethod":
            self._knn.distanceMethod = value
        elif name == "keepAllDistances":
            self.keepAllDistances = bool(value)
            if not self.keepAllDistances:
                # Discard all distances except the latest
                if self._protoScores is not None and self._protoScores.shape[
                        0] > 1:
                    self._protoScores = self._protoScores[-1, :]
                if self._protoScores is not None:
                    self._protoScoreCount = 1
                else:
                    self._protoScoreCount = 0
        elif name == "clVerbosity":
            self.verbosity = value
            self._knn.verbosity = value
        elif name == "doSelfValidation":
            self.doSelfValidation = value
        else:
            return PyRegion.setParameter(self, name, index, value)
Пример #8
0
  def setParameter(self, name, index, value):
    """
    Set the value of the parameter.

    @param name -- the name of the parameter to update, as defined
            by the Node Spec.
    @param value -- the value to which the parameter is to be set.
    """
    if name == "learningMode":
      if int(value) and not self.learningMode:
        self._restartLearning()
      self.learningMode = bool(int(value))
      self._epoch = 0
    elif name == "inferenceMode":
      self._epoch = 0
      if int(value) and not self.inferenceMode:
        self._finishLearning()
      self.inferenceMode = bool(int(value))
    elif name == "distanceNorm":
      self._knn.distanceNorm = value
    elif name == "distanceMethod":
      self._knn.distanceMethod = value
    elif name == "keepAllDistances":
      self.keepAllDistances = bool(value)
      if not self.keepAllDistances:
        # Discard all distances except the latest
        if self._protoScores is not None and self._protoScores.shape[0] > 1:
          self._protoScores = self._protoScores[-1,:]
        if self._protoScores is not None:
          self._protoScoreCount = 1
        else:
          self._protoScoreCount = 0
    elif name == "clVerbosity":
      self.verbosity = value
      self._knn.verbosity = value
    elif name == "doSelfValidation":
      self.doSelfValidation = value
    else:
      return PyRegion.setParameter(self, name, index, value)