class_docstr: Optimization was interrupted by a callback.
  
  Parameters
  ----------
  error: float
      The KL divergence of the embedding.
  
  final_embedding: Union[TSNEEmbedding, PartialTSNEEmbedding]
      Is either a partial or full embedding, depending on where the error was
      raised.
class_docstr_tok: ["Optimization","was","interrupted","by","a","callback",".","Parameters","--","--","--","--","--","error",":","float","The","KL","divergence","of","the","embedding",".","final_embedding",":","Union","[","TSNEEmbedding",",","PartialTSNEEmbedding","]","Is","either","a","partial","or","full","embedding",",","depending","on","where","the","error","was","raised","."]
code: def __init__(self, error, final_embedding):
      super().__init__()
      self.error = error
      self.final_embedding = final_embedding
  
imports: import inspect
  import logging
  import multiprocessing
  from collections.abc import Iterable
  from types import SimpleNamespace
  from time import time
  import numpy
  from sklearn.base import BaseEstimator
  from openTSNE import _tsne
  from openTSNE import initialization
  from openTSNE.affinity import Affinities, MultiscaleMixture
  from openTSNE.quad_tree import QuadTree
  from openTSNE import utils
label_desc: Use image node_id 1 to create a new OptimizationInterrupt object from inherited base classes: InterruptedError with example: obj = OptimizationInterrupt(error, final_embedding)