预测机理
femtools的Python项目详细描述
预测诱导机制
实施4篇论文:
- 来自两块岩石的水:最大化互信息(MCG)
- 具有恒定任务数的绝对真实多任务对等预测(DMI)
- 主观数据贝叶斯真值血清(BTS)
- 多任务对等预测(CA)中的知情真实性
使用
开始
您可以使用pip安装包femtools
pip install femtools
首先,导入femtools
^{pr2}$基站
对于贝叶斯真值血清,我们用有限的参与者实现了这个版本。调用函数BTS
,答案为x
,预测频率为y
,返回每个应答者的得分。x
和{numpy.array
或{x
应该是n维向量,x
中的每个答案都应该是{y
是表示预测频率的n*m
矩阵。BTS评分由信息得分和预测得分组成,因此控制预测得分权重的可选参数alpha可以在(0,1]
之间赋值。默认情况下,alpha
是1
。在
下面是一些例子
>>> fem.BTS([3, 2, 1, 1, 0],
... [[0.1, 0.1, 0.3, 0.5],
... [0.1, 0.2, 0.5, 0.2],
... [0.3, 0.4, 0.2, 0.1],
... [0.3, 0.4, 0.1, 0.2],
... [0.1, 0.3, 0.2, 0.4]])
array([-3.28030172, -2.40787449, -0.29706308, -0.29706308, -1.074341 ])
>>> fem.BTS([0, 0, 0],
... [[0.5, 0.5],
... [0.5, 0.5],
... [0.5, 0.5]], alpha = 0.5)
array([0.51873113, 0.51873113, 0.51873113])
加利福尼亚州
对于相关协议机制,我们实现了无细节版本。CA-Detail-Free是针对n个agent和m个任务的多任务问题而设计的。使用n*m
报告矩阵reports
调用函数CA
,返回每个代理的分数。reports
可以numpy.array
形式或list
形式给出。为了方便起见,矩阵reports
可以用可选参数agent_first = False
进行转置。默认情况下,agent_first
设置为True
。此外,函数CA
不希望元素是整数。在
这是一个例子
>>> fem.CA([['subway', 'subway', 'subway', 'burgerK', 'burgerK', 'burgerK'],
... ['burgerK', 'McDonald', 'subway', 'McDonald', 'burgerK', 'burgerK'],
... ['burgerK', 'McDonald', 'subway', 'McDonald', 'burgerK', 'burgerK'],
... ['KFC', 'KFC', 'KFC', 'PizzaHot', 'McDonald', 'McDonald'],
... ['PizzaHot', 'PizzaHot', 'PizzaHot', 'PizzaHot', 'PizzaHot', 'McDonald'],
... ['PizzaHot', 'PizzaHot', 'PizzaHot', 'KFC', 'PizzaHot', 'subway'],
... ['McDonald', 'McDonald', 'McDonald', 'McDonald', 'McDonald', 'McDonald'],
... ['burgerK', 'burgerK', 'McDonald', 'burgerK', 'burgerK', 'burgerK'],
... ['burgerK', 'subway', 'subway', 'PizzaHot', 'subway', 'subway'],
... ['burgerK', 'burgerK', 'McDonald', 'burgerK', 'burgerK', 'burgerK'],
... ['PizzaHot', 'PizzaHot', 'PizzaHot', 'PizzaHot', 'PizzaHot', 'McDonald'],
... ], agent_first = False)
array([23, 20, 12, 23, 25, 25])
DMI公司
调用函数DMI
,并给出答案x
和选择数C
。x
应该以numpy.array
或{x
是一个n*m
矩阵。请确保m >= 2c
和x
中的每个答案都是[0, c)
中的整数,否则函数将引发ValueError
。DMI分数将以numpy.array
的形式返回。在
这里有一个例子
>>> fem.DMI([[1, 1, 0, 1, 1, 0, 1, 1, 1], [1, 1, 0, 0, 1, 0, 1, 0, 1]], 2)
array([1.5, 1.5])
微克
在Bernoulli分布的情况下,我们实现了多任务共地机制MCG(f)。用答案调用函数MCG
,函数f
和prior。对于2个个体的预测,答案应该是numpy.array
形式或{2*n
矩阵,答案中的所有数字都应该是[0, 1]
。前面的也是[0, 1]
中的一个数字。f
应分别为总变异距离和KL散度。默认情况下,f = "TVD"
。未来将支持更多功能。付款将以numpy.array
形式返回。在
这里有一个例子
>>> fem.DMI([[0.2, 0.3, 0.2], [0.3, 0.5, 0.3]], 'TVD', 0.3)
array([0.3333333333333333, 0.3333333333333333])
- 项目
标签: