code: def __init__(self):
      self.current_predicates: tuple[Predicate, ...] = ()
      self._cached_scores: numpy.typing.NDArray[
          numpy.float_
      ] | None = None
      self._old_dupes: TrainingExamples = []
  
imports: from __future__ import annotations
  import logging
  import random
  from abc import ABC, abstractmethod
  from typing import TYPE_CHECKING, overload
  from warnings import warn
  import numpy
  import numpy.typing
  import sklearn.linear_model
  import dedupe.core
  import dedupe.training
label_desc: Use image node_id 1 to create a new BlockLearner object from inherited base classes: Learner with example: obj = BlockLearner()