首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CVXPY中的广播

CVXPY中的广播
EN

Stack Overflow用户
提问于 2019-07-14 00:12:00
回答 1查看 1.1K关注 0票数 1

我正在尝试使用CVXPY训练一个有偏差的线性模型。假设给定了inputtarget。假设loss是一个cvxpy函数,它的第一个参数是凸的。我有以下代码:

代码语言:javascript
复制
import cvxpy as cvx
n_data = 100
d_in = 10
d_out = 10
beta = cvx.Variable(d_in, d_out)
bias = cvx.Variable(d_out)

input = np.random.rand(n_data, d_in)
...
objective = cvx.Minimize(loss(input @ beta + bias, target))
problem = cvx.Problem(objective)

problem.solve()

由于input @ beta + bias导致广播错误:无法广播维度(100,10) (10,)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-07-14 01:12:21

用1的向量编写bias的外积,然后定义bias = cvx.Variable((d_out, 1))就行了。使用:

代码语言:javascript
复制
input @ beta + np.ones((n_data, 1)) @ bias
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57020813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档