class_docstr: Returns triplets that form an angle greater than some threshold (angle).
  The angle is computed as defined in the angular loss paper:
  https://arxiv.org/abs/1708.01682
class_docstr_tok: ["Returns","triplets","that","form","an","angle","greater","than","some","threshold","(","angle",")",".","The","angle","is","computed","as","defined","in","the","angular","loss","paper",":","https",":","\/\/arxiv.org\/abs\/1708.01682"]
code: def __init__(self, angle=20, **kwargs):
      super().__init__(**kwargs)
      c_f.assert_distance_type(
          self, LpDistance, p=2, power=1, normalize_embeddings=True
      )
      self.angle = np.radians(angle)
      self.add_to_recordable_attributes(
          list_of_names=["angle"], is_stat=False
      )
      self.add_to_recordable_attributes(
          list_of_names=[
              "average_angle",
              "average_angle_above_threshold",
              "average_angle_below_threshold",
              "min_angle",
              "max_angle",
              "std_of_angle",
          ],
          is_stat=True,
      )
  
file_path: pytorch-metric-learning/src/pytorch_metric_learning/miners/angular_miner.py
imports: import numpy
  import torch
  from ..distances import LpDistance
  from ..utils import common_functions
  from ..utils import loss_and_miner_utils
  from .base_miner import BaseMiner
label_desc: Use image node_id 1 to create a new AngularMiner object from inherited base classes: BaseMiner with example: obj = AngularMiner(angle)