Python 3.x 计算具有统计意义的迭代次数

Python 3.x 计算具有统计意义的迭代次数,python-3.x,numpy,statistics,heuristics,Python 3.x,Numpy,Statistics,Heuristics,假设我有一组方程,我想看看它们在一组可能的系数组合上的分布: f(x) = a.x^5 + b.x^4 + c.x^3 + d.x^2 + e.x^1 g(x) = p.x^5 + q.x^4 + r.x^3 + s.x^2 + t.x^1 也就是说,目标是评估f(x)和g(x)保持x固定到某个值 所有系数:a、b、c、d、e、p、q、r、s、t一次可以取值0或1。这意味着这些系数存在2^10可能的组合 因此,假设x是固定的,系数由m=[a,b,c,d,e,p,q,r,s,t]表示,输入向量和

假设我有一组方程,我想看看它们在一组可能的系数组合上的分布:

f(x) = a.x^5 + b.x^4 + c.x^3 + d.x^2 + e.x^1
g(x) = p.x^5 + q.x^4 + r.x^3 + s.x^2 + t.x^1
也就是说,目标是评估
f(x)
g(x)
保持
x
固定到某个值

所有系数:
a、b、c、d、e、p、q、r、s、t
一次可以取值
0或1
。这意味着这些系数存在
2^10
可能的组合

因此,假设
x
是固定的,系数由
m=[a,b,c,d,e,p,q,r,s,t]
表示,输入向量和I可以使用命令在
(0或1)
的范围内生成此大小的随机输入

m = numpy.random.randint(2,size=10) # 2 means values lie 0 or 1; 10 is the length of vector generated
关键是,生成此类输入的
2^10
不是一种切实可行的方法,如果系数数量增加,情况会更糟

所以我的问题是,我应该生成多少这样的输入,这样我才能确定函数值分布的性质?

如果使用所有可能的输入来评估这些功能,是否有任何直接的方法来决定紧密反映功能值的输入数量


p.S我不确定这个问题是否属于stackoverflow的范畴

我不能很好地理解你的问题。一方面,
numpy.random.randint(2,5)
给出了[2,5]范围内的一个整数,你的意思是
numpy.random.randint(0,2,(2,5))
?其次,你说
x=[a,…,t]
,但是
x
也是
f
g
中的变量。多项式
f
g
的计算值是多少?您希望得到什么准确值,类似于所有可能的参数组合的平均计算值(
a
t
)?很难说你到底想计算什么。@jdehesa我已经做了更正。我明白了,谢谢。仍然很难理解你想做什么。你在考虑
f(x)
g(x)吗
作为随机函数,并且想要计算它们的期望值或标准偏差,考虑到每个系数,例如,一个p=0.5的伯努利分布变量?如果是这样的话,
f(x)
g(x)
等效?否则,您考虑的概率分布是什么?以及“确定分布的性质”的确切含义是什么?@jdehesa我只是为所有可能的系数组合独立计算这些函数的值。就是这样。之后可以观察到所有这些函数值的分布。我关心的是不同的。因为系数可以取0或1的值,所以这些系数组合的总和将
2^10
。现在生成所有输入不是一个实用的解决方案,因此我想知道这些系数输入向量的最小数目是多少,它可以为我计算这些函数提供所有可能的系数输入向量的良好近似值