test_pca.py 文件源码

python
阅读 23 收藏 0 点赞 0 评论 0

项目:dask-ml 作者: dask 项目源码 文件源码
def test_pca_score_with_different_solvers():
    digits = datasets.load_digits()
    X_digits = digits.data

    dX_digits = da.from_array(X_digits, chunks=X_digits.shape)

    pca_dict = {svd_solver: dd.PCA(n_components=30, svd_solver=svd_solver,
                                   random_state=0, iterated_power=3)
                for svd_solver in solver_list}

    for pca in pca_dict.values():
        pca.fit(dX_digits)
        # Sanity check for the noise_variance_. For more details see
        # https://github.com/scikit-learn/scikit-learn/issues/7568
        # https://github.com/scikit-learn/scikit-learn/issues/8541
        # https://github.com/scikit-learn/scikit-learn/issues/8544
        assert np.all((pca.explained_variance_ - pca.noise_variance_) >= 0)

    # Compare scores with different svd_solvers
    score_dict = {svd_solver: pca.score(dX_digits)
                  for svd_solver, pca in pca_dict.items()}
    assert_almost_equal(score_dict['full'], score_dict['randomized'],
                        decimal=3)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号