I believe in Theano world, "dot" is only meant for vector-to-vector dot products. Where as in Numpy world, it as an overloaded operator/function that is sometimes a matrix-vector product, a matrix-matrix product or a vector-vector product depending on the input.
On Tue, Oct 2, 2018 at 7:40 PM DL_user <stehu...@gmail.com> wrote: > I would think z=np.dot(x,y) is more meaningful but anyway apparently dot() > has different meanings in Theano's world. > > thanks > > On Tuesday, October 2, 2018 at 3:59:14 PM UTC-7, Buruk Aregawi wrote: >> >> It seems that np.dot is interpreting this as the more standard A*x where >> A is a 2x3 matrix and x is a 3 dimensional vector. Where as theano is >> interpreting it is X*A where X is a 3x1 matrix and A is a 2x3 matrix. >> If you do >> z = T.dot(x,y) >> instead of >> z = np.dot(x,y) >> they will both work the same and the theano function will interpret it as >> the standard A*x. >> >> On Tuesday, October 2, 2018 at 5:55:10 PM UTC-4, DL_user wrote: >>> >>> Why do these two functions have different outputs, even both of them >>> defined from numpy's dot() function: >>> >>> x = T.dmatrix('x') >>> >>> y = T.dvector('y') >>> >>> z = np.dot(x,y) >>> >>> f = theano.function([x,y],z) >>> >>> f([[1,2,3],[4,5,6]],[7,8,9]) >>> Out[31]: >>> array([[ 7., 16., 27.], >>> [28., 40., 54.]]) >>> >>> np.dot([[1,2,3],[4,5,6]],[7,8,9]) >>> Out[32]: array([ 50, 122]) >>> >> -- > > --- > You received this message because you are subscribed to the Google Groups > "theano-users" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to theano-users+unsubscr...@googlegroups.com. > For more options, visit https://groups.google.com/d/optout. > -- --- You received this message because you are subscribed to the Google Groups "theano-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to theano-users+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.