<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def returnFalseNegatives(kw, noisePct, n, theta):
 """ Generate a weight vector W, with kw non-zero components. Generate 1000 noisy versions of W and return the match statistics. Noisy version of W is generated by randomly setting noisePct of the non-zero components to zero. :param kw: k for the weight vectors :param noisePct: percent noise, from 0 to 1 :param n: dimensionality of input vector :param theta: threshold for matching after dot product :return: percent that matched, number that matched, total match comparisons """


  W = getSparseTensor(kw, n, 1, fixedRange=1.0 / kw)

  # Get permuted versions of W and see how many match
  m2 = 10
  inputVectors = getPermutedTensors(W, kw, n, m2, noisePct)
  dot = inputVectors.matmul(W.t())

  numMatches = ((dot >= theta).sum()).item()
  pctMatches = numMatches / float(m2)

  return pctMatches, numMatches, m2