随机(Random)

简介: 随机(Random)随机是智能的基础,人工智能的很多技术都需要用到随机,因此有必要把这个提到前面谈谈一考虑基于C/C++,般我们都是使用的rand ()等函数实现随机,当然我们也有吊炸天的boost库可以实现各种伪随机#include uniform_int distribution(1, 100)...

随机(Random)
随机是智能的基础,人工智能的很多技术都需要用到随机,因此有必要把这个提到前面谈谈
一考虑基于C/C++,般我们都是使用的rand ()等函数实现随机,当然我们也有吊炸天的boost库可以实现各种伪随机
#include <boost/random.hpp>
uniform_int<> distribution(1, 100) ;
mt19937 engine ;
variate_generator<mt19937, uniform_int<> > myrandom (engine, distribution);

// uniform_smallint:在小整数域内的均匀分布 
// uniform_int:在整数域上的均匀分布 
// uniform_01:在区间[0,1]上的实数连续均匀分布 
// uniform_real:在区间[min,max]上的实数连续均匀分布 
// bernoulli_distribution:伯努利分布 
// binomial_distribution:二项分布 
// cauchy_distribution:柯西(洛伦兹)分布 
// gamma_distribution:伽马分布 
// poisson_distribution:泊松分布 
// geometric_distribution:几何分布 
// triangle_distribution:三角分布 
// exponential_distribution:指数分布 
// normal_distribution:正态分布 
// lognormal_distribution:对数正态分布 
// uniform_on_sphere:球面均匀分布 


但是这个取到的数据都是伪随机数,或依靠系统时间,或依靠日期等,显然这个对于人工智能是不够的,我们需要真随机,C++11的std ::random_device给了我们希望,如名这个的随机石使用的硬件,linux是读取dev/urandom硬件设备,但是windows居然还是调用的rand_s()函数!这个没什么太多说的,买点专业硬件即可。

目录
相关文章
Random随机数的使用
Random随机数的使用
137 0
|
5月前
|
Java
成随机数的几种方法、Math.random()随机数的生成、Random()的使用
这篇文章介绍了生成随机数的三种方法:使用`System.currentTimeMillis()`获取当前时间的毫秒值来生成0到100的随机整数、使用`Math.random()`生成[0,1)范围内的`double`类型随机数并扩大到指定范围、以及使用`Random`对象的`nextInt()`方法生成指定范围内的随机整数,并提供了相应的Java代码示例和测试结果。
成随机数的几种方法、Math.random()随机数的生成、Random()的使用
|
6月前
|
安全 算法 Java
使用Random.next生成随机数
使用Random.next生成随机数
|
算法 JavaScript Java
Math.random()传参?什么是随机种子?什么是洗牌算法?
Math.random()传参?什么是随机种子?什么是洗牌算法?
200 1
Random生成伪随机数
Random生成伪随机数
88 0
Random类和Math.random生成的随机数
Random类和Math.random生成的随机数
220 0
|
Python
Python中的np.random.seed()随机数种子:使得随机数据可预测
Python中的np.random.seed()随机数种子:使得随机数据可预测
600 0
|
Java
Random rand = new Random(47);的简单解释
Random rand = new Random(47);的简单解释
338 0
关于Numpy中np.random.seed()随机种子用法
关于Numpy中np.random.seed()随机种子用法

热门文章

最新文章