docstr: Calculate the score based on the lexical overlap of hypothesis and premise
  Args:
      sample: data sample
      fields: list of str
      **kwargs:
  
  Returns: int, score for sample
docstr_tok: ["Calculate","the","score","based","on","the","lexical","overlap","of","hypothesis","and","premise","Args",":","sample",":","data","sample","fields",":","list","of","str","*","*","kwargs",":","Returns",":","int",",","score","for","sample"]
code: def score(self, sample, fields, **kwargs):
      """Calculate the score based on the lexical overlap of hypothesis and premise
      Args:
          sample: data sample
          fields: list of str
          **kwargs:
  
      Returns: int, score for sample
  
      """
      assert (
          len(fields) == 2
      ), "Need two field for this subpopulation, given {0}".format(
          fields
      )
      tokens_0 = set(
          [tok.lower() for tok in sample.get_words(fields[0])]
      )
      tokens_1 = set(
          [tok.lower() for tok in sample.get_words(fields[1])]
      )
  
      return len(tokens_0.intersection(tokens_1)) / float(
          len(tokens_0.union(tokens_1))
      )
  
imports: from ..subpopulation import SubPopulation
label_desc: Use image node_id 3 for calling the LexicalSubPopulation obj's underlying member method code with example usage: obj.score(sample, fields) and returns: unknown