code: def test_multilabel_accuracy(self):
      predictions = [[0.5, 0.2, 0.3], [0.1, 0.6, 0.3], [0.5, 0.2, 0.3]]
      labels = [[1, 0, 0], [0, 1, 1], [1, 0, 1]]
      # At a threshold=0.5, 5 of the total 9 lables are correct.
      self.assertAlmostEqual(
          mia._get_multilabel_accuracy(predictions, labels),
          5 / 9,
          places=6,
      )
      self.assertIsNone(mia._get_accuracy(None, labels))
  
imports: from unittest import mock
  from absl.testing import absltest
  from absl.testing import parameterized
  import numpy
  from tensorflow_privacy.privacy.privacy_tests import epsilon_lower_bound
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack import membership_inference_attack
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack import models
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack.data_structures import AttackInputData
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack.data_structures import AttackType
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack.data_structures import DataSize
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack.data_structures import SingleSliceSpec
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack.data_structures import SlicingFeature
  from tensorflow_privacy.privacy.privacy_tests.membership_inference_attack.data_structures import SlicingSpec
label_desc: Use image node_id 9 for calling the RunAttacksTestOnMultilabelData obj's underlying member method code with example usage: obj.test_multilabel_accuracy() without return types