Beispiel #1
0
def check_write_logger(tmpdir, log_file):
    if log_file is not None:
        log_fp = os.path.join(tmpdir, log_file)
    else:
        log_fp = None

    settings = ASReviewSettings(mode="simulate", model="nb",
                                query_strategy="rand_max",
                                balance_strategy="simple")

    n_records = 6
    n_half = int(n_records/2)
    start_labels = np.full(n_records, np.nan, dtype=np.int)
    labels = np.zeros(n_records, dtype=np.int)
    labels[::2] = np.ones(n_half, dtype=np.int)
    methods = np.full((n_records), "initial")
    methods[2::] = np.full((int(n_records-2)), "random")
    methods[2::2] = np.full((int((n_records-2)/2)), "max")

    with open_logger(log_fp) as logger:
        logger.add_settings(settings)
        logger.set_labels(start_labels)
        current_labels = np.copy(start_labels)
        for i in range(n_records):
            query_i = int(i/2)
            proba = None
            if i >= 2 and (i % 2) == 0:
                proba = np.random.rand(n_records)
            logger.add_classification([i], [labels[i]], [methods[i]], query_i)
            if proba is not None:
                logger.add_proba(np.arange(i+1, n_records), np.arange(i+1),
                                 proba, query_i)
            current_labels[i] = labels[i]
            logger.set_labels(current_labels)
            check_logger(logger, i, query_i, labels, methods, proba)
Beispiel #2
0
def test_read_dict_logger():
    with open_logger(None) as logger:
        assert isinstance(logger, DictLogger)
Beispiel #3
0
def test_read_hdf5_logger():
    log_fp = Path("test", "log_files", "test_1_inst.h5")
    with open_logger(str(log_fp)) as logger:
        assert isinstance(logger, HDF5Logger)
Beispiel #4
0
def test_read_json_logger():

    log_fp = Path("test", "log_files", "test_1_inst.json")

    with open_logger(str(log_fp)) as logger:
        assert isinstance(logger, JSONLogger)