预测机理

femtools的Python项目详细描述


预测诱导机制

实施4篇论文:

  • 来自两块岩石的水:最大化互信息(MCG)
  • 具有恒定任务数的绝对真实多任务对等预测(DMI)
  • 主观数据贝叶斯真值血清(BTS)
  • 多任务对等预测(CA)中的知情真实性

使用

开始

您可以使用pip安装包femtools

pip install femtools

首先,导入femtools

^{pr2}$

基站

对于贝叶斯真值血清,我们用有限的参与者实现了这个版本。调用函数BTS,答案为x,预测频率为y,返回每个应答者的得分。x和{}可以numpy.array或{}形式给出。如果有n个应答者和m个可能的答案,x应该是n维向量,x中的每个答案都应该是{}中的一个整数。类似地,y是表示预测频率的n*m矩阵。BTS评分由信息得分和预测得分组成,因此控制预测得分权重的可选参数alpha可以在(0,1]之间赋值。默认情况下,alpha1。在

下面是一些例子

>>> 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和选择数Cx应该以numpy.array或{}形式给出。如果有n个agent和m个任务,x是一个n*m矩阵。请确保m >= 2cx中的每个答案都是[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])

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何修复尝试将用户签名到服务器主机时出现的“字符串无法转换为json对象”错误?   控制台Java:不使用新行更新命令行中的文本   java servlet接收xml数据时,出现错误   使用REST API在Bitbucket中复制或复制存储库   java如何在JavaFX中对齐一行?   java如何在活动中显示通过服务获得的数据?   返回BigDecimal作为字符串:返回int   java组织。openqa。硒。InvalidSelectorException:尝试查找元素时选择器无效   java仅在阻塞状态下通知和通知所有影响线程   java JBOSS无法启动部署   java方法的返回值能保证类型安全吗?   JavaeShadoop序列化组织。阿帕奇。hadoop。木卫一。短写失败   java如果我在同一个类上同步了两个方法,它们能同时运行吗?   不使用java数据库的spring分页实现   java如何将字符串切碎成这样的数组?