示例#1
0
                    type=int,
                    help='The minimum number of samples required in a '
                    'neighborhood to consider a point a core point')
params = bench.parse_args(parser)

# Load generated data
X, _, _, _ = bench.load_data(params)

# Create our clustering object
dbscan = DBSCAN(eps=params.eps, min_samples=params.min_samples)

# Time fit
time, _ = bench.measure_function_time(dbscan.fit, X, params=params)
labels = dbscan.labels_

X_host = bench.convert_to_numpy(X)
labels_host = bench.convert_to_numpy(labels)

acc = davies_bouldin_score(X_host, labels_host)
params.n_clusters = len(set(labels_host)) - (1 if -1 in labels_host else 0)

bench.print_output(library='cuml',
                   algorithm='dbscan',
                   stages=['training'],
                   params=params,
                   functions=['DBSCAN'],
                   times=[time],
                   metrics=[acc],
                   metric_type='davies_bouldin_score',
                   data=[X],
                   alg_instance=dbscan)
示例#2
0
                 init=X_init,
                 max_samples_per_batch=params.samples_per_batch)
    alg.fit(X)
    return alg


# Time fit
fit_time, kmeans = measure_function_time(kmeans_fit, X_train, params=params)
train_predict = kmeans.predict(X_train)

# Time predict
predict_time, test_predict = measure_function_time(kmeans.predict,
                                                   X_test,
                                                   params=params)

X_train_host = convert_to_numpy(X_train)
train_predict_host = convert_to_numpy(train_predict)
acc_train = davies_bouldin_score(X_train_host, train_predict_host)

X_test_host = convert_to_numpy(X_test)
test_predict_host = convert_to_numpy(test_predict)

acc_test = davies_bouldin_score(X_test_host, test_predict_host)

print_output(library='cuml',
             algorithm='kmeans',
             stages=['training', 'prediction'],
             columns=columns,
             params=params,
             functions=['KMeans.fit', 'KMeans.predict'],
             times=[fit_time, predict_time],
示例#3
0
params = parse_args(parser)

# Load generated data
X, _, _, _ = load_data(params)

# Create our clustering object
dbscan = DBSCAN(eps=params.eps, min_samples=params.min_samples)

columns = ('batch', 'arch', 'prefix', 'function', 'threads', 'dtype', 'size',
           'n_clusters', 'time')

# Time fit
time, _ = measure_function_time(dbscan.fit, X, params=params)
labels = dbscan.labels_

X_host = convert_to_numpy(X)
labels_host = convert_to_numpy(labels)

acc = davies_bouldin_score(X_host, labels_host)
params.n_clusters = len(set(labels_host)) - (1 if -1 in labels_host else 0)

print_output(library='cuml',
             algorithm='dbscan',
             stages=['training'],
             columns=columns,
             params=params,
             functions=['DBSCAN'],
             times=[time],
             accuracies=[acc],
             accuracy_type='davies_bouldin_score',
             data=[X],