Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python > #64261
| From | Peter Otten <__peter__@web.de> |
|---|---|
| Subject | Re: Need help vectorizing code |
| Date | 2014-01-18 22:50 +0100 |
| Organization | None |
| References | <140f8aea-d3c5-4c0d-94f5-6aa064e353d1@googlegroups.com> |
| Newsgroups | comp.lang.python |
| Message-ID | <mailman.5691.1390081794.18130.python-list@python.org> (permalink) |
Kevin K wrote: > I have some code that I need help vectorizing. > I want to convert the following to vector form, how can I? I want to get > rid of the inner loop - apparently, it's possible to do so. X is an NxD > matrix. y is a 1xD vector. > > def foo(X, y, mylambda, N, D, epsilon): > ... > for j in xrange(D): > aj = 0 > cj = 0 > for i in xrange(N): > aj += 2 * (X[i,j] ** 2) > cj += 2 * (X[i,j] * (y[i] - w.transpose()*X[i].transpose() > + w[j]*X[i,j])) > > ... > > If I call numpy.vectorize() on the function, it throws an error at > runtime. Maybe a = (2*X**2).sum(axis=0) c = no idea. Judging from the code y should be 1xN rather than 1xD. Also, should w.transpose()*X[i].transpose() be a vector or a scalar? If the latter, did you mean numpy.dot(w, X[i]) ?
Back to comp.lang.python | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Need help vectorizing code Kevin K <richyokevin@gmail.com> - 2014-01-18 12:51 -0800 Re: Need help vectorizing code Joshua Landau <joshua@landau.ws> - 2014-01-18 21:04 +0000 Re: Need help vectorizing code Kevin K <richyokevin@gmail.com> - 2014-01-18 13:18 -0800 Re: Need help vectorizing code Peter Otten <__peter__@web.de> - 2014-01-18 22:50 +0100 Re: Need help vectorizing code Oscar Benjamin <oscar.j.benjamin@gmail.com> - 2014-01-19 15:46 +0000
csiph-web