class_docstr: Lexicon acquisition. produce opinion lexicon and an aspect lexicon based
  on input dataset.
  
  Attributes:
      opinion_candidate_list_curr_iter (dict): candidate opinion terms in the current iteration
      opinion_candidate_list_prev_iter (dict): opinion candidates list of previous iteration
      opinion_candidate_list (dict): opinion terms learned across all iterations
      opinion_candidates_list_final (list): final opinion candidates list
      opinion_candidate_list_raw (dict): all instances of candidate opinion terms
                                         across all iterations
      aspect_candidate_list_curr_iter (dict): candidate terms in the current iteration
      aspects_candidate_list_prev_iter(list): Aspect candidates list of previous iteration
      aspect_candidate_list (list):  aspect terms learned across all iterations
      aspect_candidates_list_final (list): final aspect candidates list
      aspect_candidate_list_raw (dict): all instances of candidate aspect terms
                                        across all iterations
docstr: Validates a candidate term.
  
  Args:
      cand_term (CandidateTerm): candidate terms list.
docstr_tok: ["Validates","a","candidate","term",".","Args",":","cand_term","(","CandidateTerm",")",":","candidate","terms","list","."]
code: def _is_valid_term(self, cand_term):
      """Validates a candidate term.
  
      Args:
          cand_term (CandidateTerm): candidate terms list.
      """
      term = str(cand_term)
      for pattern in self.FILTER_PATTERNS:
          if pattern.match(term):
              return False
      if self.OPINION_STOP_LIST.is_in_stop_list(term):
          return False
      if term.lower() != term and term.upper() != term:
          return False
      return True
  
imports: import copy
  import re
  import sys
  from os import PathLike
  from tqdm import tqdm
  from nlp_architect.models.absa import TRAIN_LEXICONS, LEXICONS_OUT
  from nlp_architect.models.absa import GENERIC_OP_LEX
  from nlp_architect.models.absa.inference.data_types import Polarity
  from nlp_architect.models.absa.train.data_types import AspectTerm, DepRelation, DepRelationTerm, LoadOpinionStopLists, LoadAspectStopLists, OpinionTerm, QualifiedTerm
  from nlp_architect.models.absa.train.rules import rule_1, rule_2, rule_3, rule_4, rule_5, rule_6
  from nlp_architect.models.absa.utils import _load_parsed_docs_from_dir, _write_final_opinion_lex, _load_lex_as_list_from_csv, read_generic_lex_from_file
label_desc: Use image node_id 4 for calling the AcquireTerms obj's underlying member method code with example usage: obj._is_valid_term(cand_term) and returns: True, False, False, False