在tensorflow中,函数tf.einsum,tf.matmul和tf.tensordot都可以用于相同的任务.(我意识到tf.einsum并且tf.tensordot有更多的一般定义;我也意识到它tf.matmul具有批处理功能.)在可以使用三者中的任何一种的情况下,一个函数是否最快?还有其他推荐规则吗?
例如,假设这A是一个rank-2张量,并且b是rank-1张量,并且您想要计算产品c_j = A_ij b_j.在三个选项中:
c = tf.einsum('ij,j->i', A, b)
c = tf.matmul(A, tf.expand_dims(b,1))
c = tf.tensordot(A, b, 1)
是否通常比其他人更好?
我有一个使用glmnet包制作的逻辑回归模型.我的响应变量被编码为一个因子,我将其称为"a"和"b".
逻辑回归的数学将两个类中的一个标记为"0",将另一个标记为"1".逻辑回归模型的特征系数为正,负或零.如果特征"f"的系数是正的,则增加测试观察x的"f"的值增加了模型将x分类为类"1"的概率.
我的问题是:给定一个glmnet模型,你怎么知道如何glmnet将数据的因子标签{"a","b"}映射到基础数学'因子标签{"0","1"}?因为您需要知道正确解释模型的系数.
您可以通过predict在应用于玩具观察时试验函数的输出来手动解决这个问题.但是如何glmnet隐式处理映射以加速解释过程会很好.
谢谢!