def add_noise(self, labels, seed_str):
if self.false_positive_rate > 0 or self.false_negative_rate > 0:
r = np.random.RandomState()
b = bytes(",".join(
[seed_str, str(self.false_positive_rate),
str(self.false_negative_rate)]), 'ascii')
r.seed(list(hashlib.md5(b).digest()))
p = r.rand(len(labels))
original_labels = np.copy(labels)
labels[(~original_labels) & (p < self.false_positive_rate)] = True
labels[(original_labels) & (p < self.false_negative_rate)] = False
return labels
## currently unused, randomizes *noise_prob* of the labels
评论列表
文章目录