- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有两个问题,我正在尝试用 bh_sne
绘制我的数据库,但是由于该算法的性质是基于每次运行中的随机数,因此我得到了不同的结果。我想在每次运行时得到相同的结果。 random_state
似乎很有帮助。但我不知道这到底是什么意思,为 random_state
选择不同的整数。
例如 random_state=0
和 random_state=1
或 random_state=42
.. 和 random_state= 之间有什么不同无
其次,当我在我的函数中应用此参数并提供除 None 之外的任何值时,我收到以下错误。
AttributeError: 'int' object has no attribute 'randint'
我的 pycharm 中没有任何随机命名的文件。
这是我的代码:
data = bh_sne(X, random_state =1 )
X
包含我的特征值。
最佳答案
这个库使用了 numpy 的随机模块,更具体地说:this part .
就这样使用它:
import numpy as np
bh_sne(X, random_state=np.random.RandomState(0)) # init with integer 0
这可以通过简单的随机源搜索看到(见下图),它还显示了一些单元测试!
一个整数(上面的 0)只是一些熵源,它导致内部随机数生成器的一些状态。如果不分析 PRNG,则无法保证种子数 0 与 1 或 40 相比如何表现。它不需要不同(但通常是)!
只有一个保证:确定性!从用数字 seed=my_integer
初始化的 PRNG 中获取随机数,每次使用这个确切的种子完成时都会返回相同的路径/相同的数字(前 x 个数字每次都相等;x 任意) .
但是intro-page可能给出了一个更重要的通知(这是我在 python 中工作时看到你使用的库时的第一个问题):
注意:Scikit-learn v0.17 包括 TSNE 算法,您可能应该使用它们而不是这个。
关于python - 在 TSNE (python) 中选择 random_State 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47840056/
我是一名优秀的程序员,十分优秀!