sklearn random_state 无法正常工作
sklearn random_state is not working properly
我阅读了与此相关的所有内容,但仍然不明白真正的问题是什么。基本上,我将 T运行catedSVD 与 random_state 一起使用,然后为其打印 explained_variance_ratio_.sum() 。每次我 运行 代码时它都会改变。这正常吗?
from sklearn.decomposition import TruncatedSVD
SVD = TruncatedSVD(n_components=40, n_iter=7, random_state=42)
XSVD = SVD.fit_transform(X)
print(SVD.explained_variance_ratio_.sum())
问题是后来我使用umap并绘制了结果图。每次我 运行 代码时,我都有不同的图表。我不明白这是由于 T运行catedSVD 还是 UMAP。我使用 random_state=42 来阻止事情发生变化,但看起来真的没有效果。
你可能做错了什么,因为我无法用 scikit-learn 0.22 重现你的问题
In [16]: import numpy as np
...: from sklearn.decomposition import TruncatedSVD
...:
...: rng = np.random.RandomState(42)
...: X = rng.randn(10000, 100)
...: def func(X):
...: SVD = TruncatedSVD(n_components=40, n_iter=7, random_state=42)
...: XSVD = SVD.fit_transform(X)
...: print(SVD.explained_variance_ratio_.sum())
...: func(X);func(X);func(X);
0.43320350603512425
0.43320350603512425
0.43320350603512425
我阅读了与此相关的所有内容,但仍然不明白真正的问题是什么。基本上,我将 T运行catedSVD 与 random_state 一起使用,然后为其打印 explained_variance_ratio_.sum() 。每次我 运行 代码时它都会改变。这正常吗?
from sklearn.decomposition import TruncatedSVD
SVD = TruncatedSVD(n_components=40, n_iter=7, random_state=42)
XSVD = SVD.fit_transform(X)
print(SVD.explained_variance_ratio_.sum())
问题是后来我使用umap并绘制了结果图。每次我 运行 代码时,我都有不同的图表。我不明白这是由于 T运行catedSVD 还是 UMAP。我使用 random_state=42 来阻止事情发生变化,但看起来真的没有效果。
你可能做错了什么,因为我无法用 scikit-learn 0.22 重现你的问题
In [16]: import numpy as np
...: from sklearn.decomposition import TruncatedSVD
...:
...: rng = np.random.RandomState(42)
...: X = rng.randn(10000, 100)
...: def func(X):
...: SVD = TruncatedSVD(n_components=40, n_iter=7, random_state=42)
...: XSVD = SVD.fit_transform(X)
...: print(SVD.explained_variance_ratio_.sum())
...: func(X);func(X);func(X);
0.43320350603512425
0.43320350603512425
0.43320350603512425