コード例 #1
0
ファイル: predictions.py プロジェクト: pombredanne/lsh-hdc
def sample_with_error(label, error_distribution, null_distribution):
    """Return label given error probability and null distributions

    error_distribution must be of form {False: 1.0 - p_err, True: p_err}
    """
    if discrete_sample(error_distribution):
        # to generate error properly, draw from null distribution
        return discrete_sample(null_distribution)
    else:
        # no error: append actual class label
        return label
コード例 #2
0
def sample_with_error(label, error_distribution, null_distribution):
    """Return label given error probability and null distributions

    error_distribution must be of form {False: 1.0 - p_err, True: p_err}
    """
    if discrete_sample(error_distribution):
        # to generate error properly, draw from null distribution
        return discrete_sample(null_distribution)
    else:
        # no error: append actual class label
        return label
コード例 #3
0
def simulate_predictions(n=100, seed=None):
    """simulate classifier predictions for data size of n
    """
    if seed is None:
        seed = random_seed()
    np.random.seed(seed % (2 ** 32))
    probas = np.random.random(n)
    classes = [discrete_sample({0: (1 - p), 1: p}) for p in probas]
    return classes, probas
コード例 #4
0
ファイル: test_ranking.py プロジェクト: escherba/lsh-hdc
def simulate_predictions(n=100, seed=None):
    """simulate classifier predictions for data size of n
    """
    if seed is None:
        seed = random_seed()
    np.random.seed(seed % (2 ** 32))
    probas = np.random.random(n)
    classes = [discrete_sample({0: (1 - p), 1: p}) for p in probas]
    return classes, probas
コード例 #5
0
ファイル: strings.py プロジェクト: escherba/lsh-hdc
 def mutate(self, seq):
     """
     :param seq: sequence
     :type seq: str
     :returns: mutated sequence
     :rtype: str
     """
     delimiter = self.delimiter
     doc_list = list(intersperse(delimiter, seq)) + [delimiter]
     mutation_site = random.randint(0, len(doc_list) - 1)
     from_letter = doc_list[mutation_site]
     prob_dist = self.chain[from_letter]
     to_letter = discrete_sample(prob_dist)
     doc_list[mutation_site] = to_letter
     return ''.join(el for el in doc_list if el != delimiter)
コード例 #6
0
ファイル: strings.py プロジェクト: escherba/lsh-hdc
 def generate(self, start, length):
     """Generate a sequence according to a Markov chain"""
     for _ in xrange(length):
         prob_dist = self.chain[start]
         start = discrete_sample(prob_dist)
         yield start