如何解决GPy - 获取 GPCoregionalizedRegression 模型的对数预测密度
我想知道在 GPy 中使用 GPCoregionalizedRegression 模型时获取 log_predictive_density 的正确方法是什么?
我尝试了以下方法,都导致抛出相同的错误
AttributeError: 'Mixednoise' object has no attribute 'gp_link'
示例 1:
lcm = GPy.util.multIoUtput.LCM(input_dim=28,num_outputs=2,kernels_list=[k1,k2])
m = GPy.models.GPCoregionalizedRegression([x_train,x_train],[y1_train,y2_train],kernel=lcm)
m.optimize(messages=False)
m.log_predictive_density(newX,newY)
示例 2:
lcm = GPy.util.multIoUtput.LCM(input_dim=28,kernel=lcm)
m.optimize(messages=False)
noise_dict = {'output_index':newX[:,-1].astype(int)}
m.log_predictive_density(newX,newY,Y_Metadata=noise_dict)
在这两种情况下,'newX' 都是维度为 (1,28+1) 的行向量,其中附加列是 0 或 1,具体取决于我要使用的输出索引。
我已经确认在使用 GPRegression 模型时示例 1 工作正常,并且示例 2 中的 noise_dict
也为 mean,var = m.predict(newX,Y_Metadata=noise_dict)
提供了正确的结果。我是否特别遗漏了对 log_predictive_density 函数的一些调整?
感谢您的时间!
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。