s = rng;
[idx,~] = kmeans(Z1,ClusterNum);
rng(s);
如上述代码所示,在使用matlab的kmeans函数的时候,原来的随机函数流被破坏,导致后续的随机序列发生改变,从而使得蒙特卡洛迭代得不到正确的结果,为了解决这个问题,我们需要保存当前的随机函数状态,在这里需要使用rng函数来获取当前随机种子状态。即
s = rng;
在调用完kmeans之后,使用
rng(s);
恢复随机种子状态。
matlab的参考文档如下:

最后
以上就是优雅发夹最近收集整理的关于matlab随机函数的种子状态的保存与恢复的全部内容,更多相关matlab随机函数内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复