class_docstr: Inverse synthesis model (ddsp-inv).
  
  EXPERIMENTAL
  
  Builds a hierarchical model of audio:
  Audio -> Sinusoid -> Harmonic -> Sinusoid -> Audio.
  
  Unlike other models, the processor group is defined in the constructor, as
  there are many synthesizer specific regularizers and self-supervised losses.
class_docstr_tok: ["Inverse","synthesis","model","(","ddsp-inv",")",".","EXPERIMENTAL","Builds","a","hierarchical","model","of","audio",":","Audio","-",">","Sinusoid","-",">","Harmonic","-",">","Sinusoid","-",">","Audio",".","Unlike","other","models",",","the","processor","group","is","defined","in","the","constructor",",","as","there","are","many","synthesizer","specific","regularizers","and","self-supervised","losses","."]
docstr: Extract self-supervised dictionary from list with normal features.
  
  Args:
    features: A list/tuple of feature dictionaries.
  
  Returns:
    An ordered tuple of feature dictionaries (normal, self-supervised).
docstr_tok: ["Extract","self-supervised","dictionary","from","list","with","normal","features",".","Args",":","features",":","A","list\/tuple","of","feature","dictionaries",".","Returns",":","An","ordered","tuple","of","feature","dictionaries","(","normal",",","self-supervised",")","."]
code: def parse_zipped_features(self, features):
      """Extract self-supervised dictionary from list with normal features.
  
      Args:
        features: A list/tuple of feature dictionaries.
  
      Returns:
        An ordered tuple of feature dictionaries (normal, self-supervised).
      """
      # Assumes two datasets, supervised, self_supervised (has 'sin_amps' key).
      assert len(features) == 2
      ss_idx = int(features[1].get("sin_amps") is not None)
      s_idx = int(not ss_idx)
      return features[s_idx], features[ss_idx]
  
file_path: ddsp/ddsp/training/models/inverse_synthesis.py
imports: import functools
  import ddsp
  from ddsp.training.models.model import Model
  import tensorflow
label_desc: Use image node_id 3 for calling the InverseSynthesis obj's underlying member method code with example usage: obj.parse_zipped_features(features) and returns: features,  features