Exemple #1
0
        params.append(curr_params)

        # fit model
        currtime = time.time()
        model = SparseComponentAnalysis(
            n_components=n_components,
            max_iter=max_iter,
            gamma=gamma,
            verbose=10,
            tol=tol,
        )
        S_train = model.fit_transform(X_train)
        train_time = time.time() - currtime
        print(f"{train_time:.3f} elapsed to train model.")

        S_test = model.transform(X_test)

        # save model fit
        models_by_params[curr_params] = model
        S_train_by_params[curr_params] = S_train
        S_test_by_params[curr_params] = S_test

        # save metrics
        metrics = compute_metrics(model, X_train, X_test)
        metrics["sparsity_param"] = gamma
        metrics["sparsity_level"] = gamma
        metrics["n_components"] = n_components
        metrics["train_time"] = train_time
        metrics["method"] = method
        metric_rows.append(metrics)
        print(f"Component L0 ratio: {metrics['p_nonzero']}")
Exemple #2
0
np.random.seed(seed)
currtime = time.time()
pca = PCA(n_components=n_components)
X_train_pca = pca.fit_transform(X_train)
print(f"{time.time() - currtime:.3f} elapsed to fit PCA model.")
X_test_pca = pca.transform(X_test)
#%%
np.random.seed(seed + 2)
currtime = time.time()
sca = SparseComponentAnalysis(n_components=n_components,
                              max_iter=30,
                              gamma=50,
                              verbose=10)
X_train_sca = sca.fit_transform(X_train)
print(f"{time.time() - currtime:.3f} elapsed for SCA.")
X_test_sca = sca.transform(X_test)

#%%
neuron_types = sequencing_df.index.get_level_values("Neuron_type").values
neuron_type_palette = dict(zip(np.unique(neuron_types), cc.glasbey_light))

y_train = index_train.get_level_values(level="Neuron_type").values
y_test = index_test.get_level_values(level="Neuron_type").values

pg = pairplot(X_train_sca[:, :4],
              labels=y_train,
              palette=neuron_type_palette,
              diag_kind=None)
pg._legend.remove()

pg = pairplot(X_test_sca[:, :4],
Exemple #3
0
        curr_params = (n_components, gamma)
        params.append(curr_params)

        # fit model
        currtime = time.time()
        sca = SparseComponentAnalysis(
            n_components=n_components,
            max_iter=max_iter,
            gamma=gamma,
            verbose=10,
            tol=tol,
        )
        S_train = sca.fit_transform(X_train)
        print(f"{time.time() - currtime:.3f} elapsed to train SCA model.")

        S_test = sca.transform(X_test)

        # save model fit
        models_by_params[curr_params] = sca
        S_train_by_params[curr_params] = S_train

        # save metrics
        metrics = compute_metrics(sca)
        metrics["gamma"] = gamma
        metrics["n_components"] = n_components
        metric_rows.append(metrics)

        print("\n\n\n")

#%%
n_subsamples = 5